crossover.m

来自「用遗传算法及佳点集算法测试同一标准函数,普通的遗传算法和佳点集遗传算法的基本思想」· M 代码 · 共 26 行

M
26
字号
%交叉操作,概率为0.8,单点交叉   crossover.m

for i=1:2:39
    cross_P=rand;   %随机产生一个数,以比较交叉概率
    if cross_P<0.8  %交叉概率为0.8
        cross_pos=round(10*rand);   %交叉位置为0~9,若位置为0或1,则不进行交叉操作
        if or(cross_pos==0,cross_pos==1)
            continue;
        end
 for k=1:2
        for j=cross_pos:10
            temp=pop(i,k,j);
            pop(i,k,j)=pop(i+1,k,j);
            pop(i+1,k,j)=temp;
        end
      end
    end
end
 
clear i;
clear k;
clear j;
clear temp;
clear cross_P;
clear cross_pos;

⌨️ 快捷键说明

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