📄 realmutate.asv
字号:
function realmutate(v)
global
%yl;yu;y;rnd;val;deltaq;xy;
for i=1:size(v,1)
if (rand(1)<=0.05)
y=v(i);
yl=0;
yu=10;
if (y>yl)
if (y-yl<yu-y)
delta=y-yl/yu-yl;
else
delta=yu-y/yu-yl;
end
indi=1.0/(n_distribution_m+1.0);
xy=1.0-delta;
rnd=rand(1);
if (rnd<=0.5)
val=2*rnd+(1-2*rnd)*xy^(n_distribution_m+1);
deltaq=val^indi-1.0;
else
val=2.0*(1.0-rnd)+2.0*(rnd-0.5)*xy^(n_distribution_m+1);
deltaq=1.0-val^indi;
end
y=y+deltaq*(yu-yl);
else
xy=rand(1);
y=xy*(yu-yl)+yl;
end
if (y>yu)
y=yu;
end
if (y<yl)
y=yl;
end
SelCh(i,j)=y;
end
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -