【问题标题】:adjusted fitness in NEAT algorithmNEAT 算法中的调整适应度
【发布时间】:2018-06-02 13:05:38
【问题描述】:

我正在从以下论文中了解 NEAT:http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf

我无法理解调整后的适应度如何惩罚大型物种并阻止它们在种群中占主导地位,我将通过一个例子展示我目前的理解,希望有人能纠正我的理解。

假设我们有两个物种,A 和 B,物种 A 上一代做得很好,并且生了更多的孩子,这一代他们有 4 个孩子,他们的适应度是 [8,10,10,12] 而 B 有 2他们的适应度是 [9,9] 所以现在调整后的适应度是 A[2, 2.5, 2.5, 3] 和 B[4.5, 4.5]。

现在关于分配子代,论文指出:“每个物种被分配的后代数量可能与其成员生物的调整适应度 f'_i 的总和成比例”

所以调整后的适应度之和是 A 为 10,B 为 9,因此 A 得到更多的孩子并不断成长,那么这个过程如何惩罚大型物种并防止它们在种群中占主导地位?

【问题讨论】:

    标签: machine-learning neural-network genetic-algorithm


    【解决方案1】:

    好问题!我完全同意这篇论文(特别是你引用的部分)说后代是根据一个物种内调整后的适应度总和来分配的。由于调整后的适应度是通过将适应度除以物种成员的数量来计算的,这在数学上等同于根据每个物种的平均适应度分配后代(如您的示例中所示)。正如你所说,这本身不应该具有限制大型物种生长的效果。

    除非我遗漏了什么,否则论文中没有足够的信息来确定是否 A) 论文中没有提到的其他实现细节导致此选择方案具有所述效果,B) 这是一个错误在论文的写作中,或 C) 这就是算法的实际实现方式,并且由于作者认为的原因,物种形成没有帮助。

    关于选项 A:紧接在您引用的那一行之后,论文说“物种然后通过首先从种群中消除表现最差的成员来繁殖。然后整个种群被每个物种中剩余的生物。”这可以实现,使得每个物种主要替换其自身最弱的生物,这将使竞争主要发生在物种内部。这是一种称为拥挤的技术(在本文引用的 Mahfoud,1995 年的论文中引入),它可以产生与健身共享类似的效果,特别是如果它与某些其他实施决策相结合。但是,他们这样做会非常奇怪,没有提及它,然后说他们使用的是健身共享而不是拥挤。所以我认为这种解释不太可能。

    关于选项 B:大多数计算机科学期刊论文,例如这篇论文,都是基于最初发表该工作的会议论文组。介绍 NEAT 的大部分物种形成研究的会议论文在这里:https://pdfs.semanticscholar.org/78cc/6d52865d2eab817aaa3efd04fd8f46ca8b61.pdf。在对适应度共享的解释中,该论文说:“物种然后根据其平均调整后的适应度是高于还是低于人口平均水平而增长或缩小”(强调我的)。这与您链接到的论文中提到的调整适应度的 sum 不同。如果他们真的使用平均值(并且错误地表示总和),他们实际上会除以每个物种的成员数量两次,这将使所有其他声明准确,并使数据有意义。

    关于选项 C: 这个选项似乎不太可能,因为图 7 表明,在没有某种负频率依赖性的情况下,肯定存在比您预期更长的稳定共存时间。此外,他们显然在剖析物种形成的影响方面付出了很多努力,所以我不希望他们错过这样的事情。尤其是在如此有影响力的论文中,很多人都以此为基础。

    所以,总的来说,我会说我的钱花在了解释 B 上——这是一个单词错误,大大改变了意思。但很难确定。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多