selection.m

来自「遗传算法的代码,可以仿照这个学习一下,希望有所帮助」· M 代码 · 共 15 行

M
15
字号
%--------------------------------------------------
%                    选择算子             
%--------------------------------------------------
function new_gen = selection(old_gen,fitness,popsize)

index = [1:popsize];
new_gen = old_gen(index,:);
ps = fitness / sum(fitness);            % 采用轮盘赌方法
pscum = cumsum(ps);
r = rand(1,popsize);
selected = sum(pscum * ones(1,popsize) < ones(popsize,1) * r) + 1;
new_gen = new_gen(selected,:);


⌨️ 快捷键说明

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