crossover1.asv
来自「请大家看一看, 我编的这个用遗传算法求 f(x)=xsin(10pi*x)+2」· ASV 代码 · 共 20 行
ASV
20 行
%遗传算法中交叉部分程序;
%采用单点交叉的方式,随机选中其中的一位,作为交叉点.
function newpop=crossover1(oldpop,pc)
[px,py]=size(oldpop);
crosssite=round(rand*py);
for i=1:2:px
if rand<pc
newpop(i,:)=[oldpop(i,1:crosssite) oldpop(i+1,crosssite+1:py)];
newpop(i+1,:)=[oldpop(i+1,1:crosssite) oldpop(i,crosssite+1:py)];
else
newpop(i,:)=oldpop(i,:);
newpop(i+1,:)=oldpop(i+1,:);
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?