遗传算法交叉操作
发布网友
发布时间:2022-04-25 16:30
我来回答
共2个回答
热心网友
时间:2023-10-17 22:45
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
从程序可以看出,当两个个体满足交叉概率后每个基因即进行无条件交叉,应属于多点交叉的范畴。
热心网友
时间:2023-10-17 22:46
就是最典型的两点交叉