GA中的精英主义:我应该让精英被选为父母吗?

时间:2013-01-31 09:27:05

标签: genetic-algorithm evolutionary-algorithm

我对遗传算法(和其他进化算法)中的精英主义概念感到有些困惑。当我保留然后将1个(或更多)精英个人复制到下一代时,

  • 我是否应该考虑当前一代的父选择中的精英解决方案(制作新的人口)?
  • 或者,我是否应该使用其他人(将精英放在一边)来建立新的人口并将精英直接复制到下一代?

如果是后者,精英主义的用途是什么?是不是因为没有失去最佳解决方案?因为在这个方案中,它根本无助于收敛。

例如,在交叉/突变部分下的here,表明精英没有参与。

(当然,可以询问有关幸存者选择部分的相同问题。)

4 个答案:

答案 0 :(得分:11)

精英主义只意味着最适合少数人保证在下一代中占有一席之地 - 通常不会发生突变。除了自己被提出之外,他们仍然可以被选为父母。

这篇文章对精英主义采取了一种略微奇怪的方法。它建议复制最合适的个人 - 该个人在下一代获得两个保留的插槽。其中一个插槽是突变的,另一个不是。这意味着,在下一代中,至少有一个时段将作为父母重新进入一般人口,如果两者都被超越,可能会有两个。

这似乎是一种可行的方法。无论哪种方式 - 无论是选择精英作为父母,还是通过抄袭精英然后改变精英,精英们仍然应该与大众密切相关,以便他们可以分享他们的有益基因。

@Peladao的回答和评论也是绝对的 - 尤其是需要保持多样性并避免过早收敛,精英应该只占人口的一小部分。

答案 1 :(得分:7)

我认为没有理由为什么人们不会将精英用作父母,除了多样性的微小损失。 (因此,与人口规模相比,精英人数应该很少)。

由于精英是最好的人,他们是使用交叉创造新个体的宝贵候选人,只要精英本身也被复制(未改变)到新的人口中。

保持足​​够的多样性并避免过早收敛对于精英不被用作父母也很重要。

答案 2 :(得分:2)

正如其他有效答案所指出的那样,存在用于实现精英主义的不同方法 一般来说,对于精英主义,只需在新一代中复制N个人而不进行任何改变。然而,这些人可以通过健身排名(真正的精英主义)来选择,保证真实地保存"保存"或者可以通过比例选择来选择(正如书中所指出的机器学习 by Mitchell T.)。后者与轮盘选择中使用的相同,但请注意,在这种情况下,个体不会用于生成新的后代,而是直接复制到新的群体中(幸存者!)。 当精英主义的选择成比例时,我们在缺乏多样性和过早适应的情况之间获得了良好的妥协。

运用真正的精英主义,避免使用"精英"因为父母会适得其反,特别是考虑到交叉行动的有效性。

答案 3 :(得分:0)

简而言之,使用精英主义的要点是:

  1. 为保持多样性,人口中的精英人数不应超过总人口的10%。
  2. 除此之外,5%可能是下一代的直接部分,剩下的应该与其他非精英人群进行交叉和变异。