【问题标题】:How genetic algorithm is different from random selection and evaluation for fittest?遗传算法与随机选择和适者评估有何不同?
【发布时间】:2014-07-24 13:29:45
【问题描述】:

我已经学习遗传算法 2 个月了。我知道初始种群的创建、选择、交叉和变异等过程。但无法理解我们如何能够在每一代中获得更好的结果,以及它与随机搜索最佳解决方案有何不同。下面我用一个例子来解释我的问题。

让我们以旅行商问题为例。假设我们有几个城市,如 X1,X2....X18,我们必须找到最短的旅行路径。所以当我们在选择了最适合的人之后进行交叉时,我们怎么知道交叉后我们会得到更好的染色体。这同样适用于突变。

我觉得它只需要一个城市安排。计算旅行它们的最短距离。然后存储距离和排列。然后选择另一种安排/组合。如果它比上一个排列好,则保存当前排列/组合和距离,否则丢弃当前排列。通过这样做,我们将得到一些解决方案。

我只想知道随机选择和遗传算法之间的区别在哪里。在遗传算法中,有什么标准不能选择我们已经评估过的城市的排列/组合?

我不确定我的问题是否清楚。但我很开放,我可以就我的问题解释更多。如果我的问题不清楚,请告诉我。

【问题讨论】:

    标签: random selection genetic-algorithm


    【解决方案1】:

    随机算法每次都从一张完全空白的纸开始。每次迭代都会生成一个新的随机解,而不会记住之前迭代中发生的事情。

    遗传算法有历史,所以它不会从一张白纸开始,除非是从一开始。每一代都选择最好的解决方案群体,以某种方式发生变异,然后进入下一代。人口中最差的成员被淘汰。

    遗传算法建立在先前的成功之上,因此它们能够比随机算法更快地推进。一个非常简单的遗传算法的经典示例是Weasel program。它比随机机会更快地找到目标,因为每一代它都以部分解决方案开始,并且随着时间的推移,这些初始部分解决方案更接近所需的解决方案。

    【讨论】:

    • 一般来说,选择最佳解决方案是不正确的。它通常是一个喜欢更好解决方案的随机过程,当然并不总是能保证。
    • @luk32 “最佳”解决方案是在评估算法中得分最高的解决方案,用于对每一代进行一次总体排序。该算法可能包括一个随机元素,例如锦标赛回合。更好的解决方案将有更高的机会使其后代进入下一代。
    • 是的,当然,但只有精英主义保证才能最好地生存,休息是有可能的。更好的解决方案有更高的机会,但不确定,我相信你在你的答案中暗示了这一点。选择不是排序,它是一个不确定的随机过程。 IMO 强调这一点很重要。
    【解决方案2】:

    我认为您要问的有两件事。 GA 有效的数学证明和经验证明,可以免除您的顾虑。

    虽然我不知道是否有一般证明,但我很确定 John Holland 在他的书自然和人工系统的适应中至少给出了一个很好的证明草图,用于优化使用二进制编码的问题。有一个东西叫Holland's schemata theoerm。但是你知道,这是启发式的,所以从技术上讲,它不一定是。它基本上说,提高平均适应度的基因型短方案随着连续几代而呈指数增长。然后交叉将它们组合在一起。我认为证明只针对二进制编码,也受到了一些批评。

    关于您的担忧。当然,您不能保证交叉会产生更好的结果。因为两个聪明或美丽的父母可能有丑陋愚蠢的孩子。 GA的前提是它不太可能发生。 (据我了解)二进制编码的证明取决于这样一个理论,即良好的部分模式将开始出现,并且鉴于基因型的长度应该足够长,驻留在不同样本中的这些模式有机会组合成总体上改善他的健康状况。

    我认为就 TSP 而言相当容易理解。交叉有助于将良好的子路径累积到一个样本中。当然这一切都取决于交叉方法的选择。

    此外,GA 的解决方案也不是纯粹随机的。它通过随机机制朝着某个方向移动以逃避陷阱。如果您允许,您可能失去最佳解决方案。它之所以有效,是因为它希望朝着当前的最佳解决方案迈进,但是您拥有大量样本,并且它们共享知识。它们都是相似的,但鉴于您保留了多样性,可以将新的更好的部分模式引入整个人群并纳入最佳解决方案。这就是为什么人口多样性被认为非常重要的原因。

    作为最后一点,请记住 GA 是一个非常广泛的主题,您几乎可以通过任何方式修改基础。您可以引入精英主义、禁忌、利基等。没有唯一的方法/实施。

    【讨论】:

      猜你喜欢
      • 2016-02-02
      • 2019-12-26
      • 1970-01-01
      • 2016-09-11
      • 2020-10-14
      • 2015-11-10
      • 1970-01-01
      • 2011-10-07
      • 2016-07-18
      相关资源
      最近更新 更多