在 NEAT 算法中调整适应度

adjusted fitness in NEAT algorithm

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

我无法理解调整后的适应度如何惩罚大型物种并阻止它们主宰种群,我将通过一个例子来证明我目前的理解,希望有人能纠正我的理解。

假设我们有两个物种,A 和 B,物种 A 在上一代表现非常好并且获得了更多 children,这一代他们有 4 children 并且他们的适应度是 [8, 10,10,12] 而 B 有 2 并且他们的适应度是 [9,9] 所以现在他们调整后的适应度将是 A[2, 2.5, 2.5, 3] 和 B[4.5, 4.5].

现在开始分发 children,论文指出:"Every species is assigned a potentially different number of offspring in proportion to the sum of adjusted fitnesses f'_i of its member organisms"

所以调整后的适应度总和对于 A 为 10,对于 B 为 9,因此 A 变得更多 children 并保持增长,那么这个过程如何惩罚大型物种并防止它们控制种群?

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

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

关于选项 A: 在你引用的那一行之后,论文说 "Species then reproduce by first eliminating the lowest performing members from the population. The entire population is then replaced by the offspring of the remaining organisms in each species." 这可以实现,以便每个物种主要取代其自身最弱的生物体,这将使竞争主要发生在物种内部。这是一种称为拥挤的技术(在本文引用的 Mahfoud,1995 年的论文中介绍),它可以产生与适应度共享类似的效果,特别是如果它与某些其他实施决策相结合。然而,如果他们这样做了,却没有提及,然后说他们正在使用健身共享而不是拥挤,那就太奇怪了。所以我觉得这个解释不太可能。

关于选项 B:大多数计算机科学期刊论文,例如这篇论文,都是基于最初展示该作品的会议论文组。介绍了大部分 NEAT 形态研究的会议论文在这里:https://pdfs.semanticscholar.org/78cc/6d52865d2eab817aaa3efd04fd8f46ca8b61.pdf。在健身共享的解释中,该论文说:"Species then grow or shrink depending on whether their average adjusted fitness is above or below the population average"(强调我的)。这与您链接到的论文中提到的调整适应度的 sum 不同。如果他们实际上使用的是平均值(并且错误地说是总和),他们实际上会除以每个物种的成员数量两次,这将使所有其他声明准确无误,并使数据有意义。

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

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