遗传algorithm和进化algorithm之间的区别?
遗传algorithm和进化algorithm有区别吗? 我已经阅读了多篇论文,谈论遗传或进化algorithm,虽然非常相似,但我认为它们可能不是同一回事。
遗传algorithm是一类进化algorithm。 虽然遗传algorithm是最常遇到的进化algorithmtypes,但还有其他types,如进化策略 。 所以,演化algorithm包含遗传algorithm,等等。
遗传algorithm使用交叉(因此名称中的“基因”)和变异来search可能解的空间。
进化规划主要使用变异。
如已经发布的,这两种都是演化algorithm的types。
从Z. Michalewicz 1996 – “遗传algorithm+数据结构=进化程序”[p.289]:
演化程序大量借用遗传algorithm。 但是,他们通过使用“自然”数据结构和问题敏感的“遗传”操作符来整合特定于问题的知识。 GAs和EPs之间的基本区别在于前者被分类为弱的,问题无关的方法,而后者则不是这种情况。
所以一个遗传algorithm应该可以解决任何一个EP / EA解决的问题,但是EP / EA将无法解决遗传algorithm解决的所有问题。 当然,对于GA的普遍性来说,效率是很高的。
而且,如果候选解决scheme不直接相互交换信息,似乎algorithm不是EA / EP(D.Simon 2013 – “演化优化algorithm” [p.243])。
PS: D.西蒙2013年 – “演化优化algorithm”是一本令人惊叹的书!