crossovercon.m

来自「用matlab编写的自适应小生境递阶遗传算法,非常适合于学习自适应遗传算法的朋友」· M 代码 · 共 30 行

M
30
字号
function pop1=crossovercon(pop,popsize,pc,l)
%
%
%
%
%
%

pop1=pop;
for i=1:popsize
    index(i)=i;
end
%
for i=1:popsize
    point=round(rand*(popsize-i));
    temp=index(i);
    index(i)=index(point+i);
    index(point+i)=temp;
end
%
for i=1:2:(popsize-1)
    p=rand;
    if p<pc
        point=round(rand*(l-2))+1;
        ch=pop1(index(i),point:l);
        pop1(index(i),point:l)=pop1(index(i+1),point:l);
        pop1(index(i+1),point:l)=ch;
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?