📄 select.m
字号:
function [selectedparent1 selectedparent2]= select(fitness,totpop)
rand('state',sum(100*clock));
%selection of new generation by roulette wheel selection
disp('selection of new generation');
sumfitness=sum(fitness);
slotvalue(1:totpop)=fitness(1:totpop);
roulettevalue=sumfitness*rand(1);
totalslots=slotvalue(1);
index=2;
while roulettevalue>totalslots
totalslots=totalslots+slotvalue(index);
index=index+1;
end
selectedparent1=index-1;
roulettevalue=sumfitness*rand(1);
totalslots=slotvalue(1);
index=2;
while roulettevalue>totalslots
totalslots=totalslots+slotvalue(index);
index=index+1;
end
selectedparent2=index-1;
% while selectedparent2==selectedparent1
% disp('selectedparents are equal')
% roulettevalue=sumfitness*rand(1);
% totalslots=slotvalue(1);
% index=2;
% while roulettevalue>totalslots
% totalslots=totalslots+slotvalue(index);
% index=index+1;
% end
% selectedparent2=index-1;
% end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -