mark2
【摘要】
L=32;N=60;M=80;T=100;Pc=0.6;Pm=0.02;for i=1:1:N x10(1,i)=unidrnd(2^L-1); x10(2,i)=unidrnd(2^L-1); x11(1,i)=double(x10(1,i))/(2^L-1)*10-5; x11(2,i)=double(x10...
-
L=32;
-
N=60;
-
M=80;
-
T=100;
-
Pc=0.6;
-
Pm=0.02;
-
for i=1:1:N
-
x10(1,i)=unidrnd(2^L-1);
-
x10(2,i)=unidrnd(2^L-1);
-
x11(1,i)=double(x10(1,i))/(2^L-1)*10-5;
-
x11(2,i)=double(x10(2,i))/(2^L-1)*10-5;
-
end
-
for t=1:1:T
-
t
-
for i=1:1:N
-
temp1(1,i)=x11(1,i)^2+x11(2,i)^2;
-
y1(1,i)=0.5-(sin(sqrt(temp1(1,i)))^2-0.5)/(1+0.001*temp1(1,i));
-
grayCode1(1,i,:)=num2gray(x10(1,i),L);
-
grayCode1(2,i,:)=num2gray(x10(2,i),L);
-
end
-
for i=1:1:M
-
[a,b]=max(y1);
-
grayCode2(1,i,:)=grayCode1(1,b,:);
-
grayCode2(2,i,:)=grayCode1(2,b,:);
-
y1(1,b)=-inf;
-
end
-
for i=1:1:M/2
-
p=unidrnd(L);
-
if rand()<Pc
-
for j=p:1:L
-
temp=grayCode2(1,i,j);
-
grayCode2(1,i,j)=grayCode2(1,M-i+1,j);
-
grayCode2(1,M-i+1,j)=temp;
-
文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。
原文链接:wenyusuran.blog.csdn.net/article/details/43406681
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)