mutation.m

来自「用matlab自编写的简单遗传算法程序(SGA)」· M 代码 · 共 18 行

M
18
字号
function[newpop]=mutation(pop,pm)
[px,py]=size(pop);newpop=ones(size(pop));
for i=1:px
    if(rand<pm)
        mpoint=round(rand*py);
        if mpoint<=0
            mpoint=1;
        end
        newpop(i,:)=pop(i,:);
        if any(newpop(i,mpoint)==0)
            newpop(i,mpoint)=1;
        else
            newpop(i,mpoint)=0;
        end
    else
       newpop(i,:)=pop(i,:)  ;
    end
end

⌨️ 快捷键说明

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