mutation.m

来自「遗传算法得一种编译程序,不是很正统」· M 代码 · 共 19 行

M
19
字号
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 + -
显示快捷键?