作业帮 > 综合 > 作业

遗传算法交叉操作Pc = 0.90;for i = 1 :2 :Size-1temp = rand;if Pc > te

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/30 10:52:22
遗传算法交叉操作
Pc = 0.90;
for i = 1 :2 :Size-1
temp = rand;
if Pc > temp
alfa = rand;
TempE(i,:) = alfa*E(i+1,:) + (1-alfa)*E(i,:);
TempE(i+1,:) = alfa*E(i,:) + (1-alfa)*E(i+1,:);
end
end
TempE(Size,:) = BestS;
E = TempE;
谁能告诉我这是什么交叉方法.
for i = 1 :2 :Size-1%个体两两交叉,不重复
temp = rand;%随机交叉概率值
if Pc > temp%%若随机交叉概率值满足交叉概率,则进行交叉
alfa = rand;%交叉算子
TempE(i,:) = alfa*E(i+1,:) + (1-alfa)*E(i,:);%无条件交叉
TempE(i+1,:) = alfa*E(i,:) + (1-alfa)*E(i+1,:);%无条件交叉
end
end
从程序可以看出,当两个个体满足交叉概率后每个基因即进行无条件交叉,应属于多点交叉的范畴.