我应该阻止个人在 EA 中与自己交配吗?

数据挖掘 进化算法
2022-03-01 22:27:50

在进化算法中,我是否应该始终避免个体与自己交配(交叉)?也就是说,我是否应该阻止选择算法两次选择单亲来产生自己的孩子?

我对一般情况以及锦标赛选择感兴趣。

1个回答

在谈论进化算法时,您必须在可能的解决方案的多样性或专业化之间做出决定。

您不应该让个人交叉自己,因为您将失去算法的多样性。

但是,这条规则有一个例外:如果他是最好的,你需要确保你不会惩罚他的成功,你可以通过保留最好的父母来确保这个人传给下一代。

您的问题的答案是:防止自动交叉,但确保在选择传递给下一代的解决方案时不要放弃此解决方案(精英组,传递n个最好的父母)

在锦标赛选择中,两次选择同一个人作为锦标赛参与者的情况并不常见,因此这种可能性不应成为您的担忧之一。

在轮盘赌选择中,请确保您不会排除成功的个人。