遗传算法和迭代局部搜索算法有什么区别?

时间:2018-02-20 07:07:53

标签: algorithm optimization genetic-algorithm

我基本上尝试使用遗传算法或迭代局部搜索算法来获得问题的最佳解决方案。有人可以解释一下这两种算法之间的基本区别是什么,有没有一种情况,其中一种更好比另一个?

1 个答案:

答案 0 :(得分:0)

让我从第二个问题开始。我相信没有任何试验和测试,没有办法确定给定问题的更好的算法。算法的行为在很大程度上取决于问题的属性。如果我们谈论的是成千上万个变量的复杂问题,那么预测任何事情都太困难了。我不是在谈论你的工程师的直觉,一些深刻的问题理解,以前的经验等等,它们并不是真正可以衡量的。

全局搜索和本地搜索之间的主要区别非常简单 - 本地搜索只考虑一个或多个可能的解决方案,并尝试通过一些修改来改进它们。因此,每次迭代它只考虑搜索空间的一小部分(=本地neighboorhood)。全局搜索尝试同时考虑其所有参数的整个问题。例如,PSO对大量候选人进行抽样,并尝试使用一些简单的公式将所有候选人移动到全局最佳方向。