| 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 |