Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2008-04-19
年龄: 42
帖子: 4
声望力: 0 ![]() |
![]()
下面是一个简单的程序
function[sol,val] = FN(sol) sum=0; for x=0:stepx:Xmax %(x,y)为点,这些点是均匀分布在Xmax乘以Ymax的矩形区域的。 for y=0:stepy:Ymax F=0; for i=1:k % K代表有K个圆 squareD=(x-sol(2*i-1))^2+(y-sol(2*i))^2; % 求解(x,y)与K个圆圆心之间的距离 if squareD<=r^2 % K个圆 ,每个圆的半径为r F=1; break; end end if F==1 sum=sum+1; end end end val=sum/((Xmax/stepx+1)*(Ymax/stepy+1)); 其中val是求得的适应度,定义空间是Xmax*Ymax的矩形,stepx和stepy分别是X和Y的取点间隔, squareD是一点到一个圆心的距离,sum为求得的在所有的圆覆盖范围内的总数。 求解的目的要使得val最大。 想用遗传算法求解这个问题,或者遗传算法工具箱求解,function[sol,val] = FN(sol) 这一句中的sol 什么意思 我不太懂,我觉得大意就是开始给定K个圆的圆心,但是怎么给定了? 最后求解的结果是在val最大的情况下,求得K个圆的坐标 。 请大家帮助,谢谢! |
![]() |
![]() |
![]() |
主题工具 | |
显示模式 | |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
[求助]如何将SIMULINK的仿真结果曲线显示到GUI界面中? | 草木人 | MATLAB论坛 | 5 | 2009-07-22 10:27 |
求达人帮忙:为啥while嵌套while出不来哦 | liusanshao | MATLAB论坛 | 2 | 2009-03-26 17:38 |
[求助]MATLAB中的非线性限制的优化问题 | yx2001001 | MATLAB论坛 | 1 | 2009-03-06 16:40 |
[求助]solve 函数问题 | mumudengyuan | MATLAB论坛 | 0 | 2008-11-16 13:37 |
[资料]Matlab-频谱分析 | 小树桩 | MATLAB论坛 | 0 | 2008-11-02 08:41 |