调整后的适应度如何惩罚 NEAT 中的大型物种?

人工智能 神经网络 遗传算法 整洁的 神经进化 适应功能
2021-11-15 23:29:17

我正在从论文Evolving Neural Networks through Augmenting Topologies中了解 NEAT

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

假设我们有两个物种,AB, 物种A上一代做得很好,生了更多的孩子,这一代他们有4儿童及其健康状况[8,10,10,12], 尽管B拥有2儿童及其健康状况[9,9]. 调整后的适应度为A将会[2,2.5,2.5,3]而对于 B 将是[4.5,4.5].

现在,关于分发孩子,论文指出:

根据调整后的适应度总和,每个物种都被分配了可能不同数量的后代fi其成员生物。

因此,调整后的适应度之和为10为了A9为了B, 因此A得到更多的孩子并不断成长。

这个过程如何惩罚大型物种并防止它们在种群中占主导地位?

2个回答

考虑一下如果根据适应度(未调整)分配后代会产生什么结果。A适应度总和为40B=18两个物种的适应度比都是2.(2):1. 在调整适应度的情况下,数字是A=15B=9,它给出 的比率1.(6):1,因此A根据调整后的适应度分配的后代较少,然后是未调整的。

另请注意,分配给一个物种的每个新基因组都会降低其所有成员调整后的适应度。在您的情况下,物种A的成员比 的成员更成功B,所以它应该增长。该机制旨在阻碍成功物种的生长,而不是完全阻止它。这允许更多的多样性,当一个成功的物种走到死胡同并且以前不太成功的物种可以接管时,这一点很重要。

调整适应度阻止物种变大的原因是,确定调整适应度函数中除数的总和减少到 f i所属物种的基因组数量,因此随着物种增长调整适应度属于它的每个基因组都被一个更大的数字除以,因此得到一个较低的调整适应度值,这反过来也会降低该物种的总调整适应度。然后,这种较小的调整适应度会影响该物种在精英主义减少人口后将产生的后代数量。