sexual_reproduction.asv
来自「遗传算法」· ASV 代码 · 共 57 行
ASV
57 行
% Sexual_Reproduction function
clear;clc;
GAInitial;
GenerateBoat;
fi(1,BOAT_NUM) = 0;
averageFitnessEachGeneration(1,MAX_GEN) = 0;
for k = 1:MAX_GEN
PickLocation;
PickIndividual;
A1 = L + range;
PickIndividual;
B1 = L + range;
C1 = Fitness(A1,ROWER,boat);
D1 = Fitness(B1,ROWER,boat);
if C1 > D1
parent1 = A1;
else parent1 = B1;
end
PickIndividual;
E1 = L + range;
PickIndividual;
F1 = L + range;
G1 = Fitness(E1,ROWER,boat);
H1 = Fitness(F1,ROWER,boat)
if G1 > H1
parent2 = E1;
else parent2 = F1;
end
parent2
Crossover;
child
% S_Mutation;
child
PickIndividual;
replacement = L + range
for i = 1:ROWER
boat(replacement,i) = child(1,i);
end
for n = 1:BOAT_NUM
fi(1,n) = Fitness(n,ROWER,boat);
end
fi
averageFitnessEachGeneration(1,k) = sum(fi) / BOAT_NUM
end
b = 1:MAX_GEN;
figure,plot(b,averageFitnessEachGeneration);
xlabel('generation');
ylabel('the average fitness');
clear n;
clear b;
clear m;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?