13 有人能向我解释遗传算法与其他传统搜索和优化方法相比的优势吗? genetic-algorithms — 莱克什 source 4 什么样的GA?比起什么“传统”方法?没有这一点,就只能说诸如“更快的收敛和在某些应用中陷入局部最优的较小危险”之类的话,与任何其他优化方法一样。
19 使用遗传算法的主要原因是: 有多个局部最优 目标函数不平滑(因此无法应用导数方法) 参数数量非常大 目标函数是嘈杂的还是随机的 当您没有梯度的定义时,对于基于导数的方法,大量参数可能会成为问题。在这种情况下,您可以通过GA找到一个不错的解决方案,然后使用基于导数的方法对其进行改进。“大”的定义一直在增长。 — 帕特里克·伯恩斯 source 3 +1。我曾经迷上通用航空,但现在倾向于避免使用它们。在我看来,他们经历了一个大肆宣传的阶段,启发了一堆类似自然的方法(ACO等),然后逐渐退居至利基市场。就我个人而言,有点像神经网络。(也就是说,我最近使用过ES。) — Wayne'2 1 韦恩,我同意。我倾向于对任何进化策略都说“ GA”,并且将其他技术混合在一起通常也是一个好主意。传统的GA效率极低。 — Patrick Burns
7 概念很容易理解 模块化,与应用分开 支持多目标 优化适用于“嘈杂”的环境 永远是答案;随着时间的流逝答案会越来越好 天生平行 容易分发 — 白雪公主 source 在我的工作中,简单的并行化是使用遗传算法而不是模拟退火之类的最重要的因素。 — veryshuai 2014年
6 遗传算法在四个重要方面与传统的搜索和优化方法不同: 遗传算法从大量点中并行搜索。因此,它具有避免陷入像传统方法那样从单一点搜索的局部最优解的能力。 遗传算法使用概率选择规则,而不是确定性规则。 遗传算法在染色体上工作,该染色体是潜在解决方案参数(而不是参数本身)的编码版本。 遗传算法使用适应度评分,该评分是从目标函数获得的,没有其他导数或辅助信息 — 莱克什 source
3 遗传算法是最后的手段。仅当解析解决方案不可行时(它们是最常见的原因,请参见Patrick的回答),并且您手中有很多CPU时间,它们才有用。 — 卡洛斯·阿乔里(Carlos Accioly) source