主要内容

健身缩放

缩放健身得分

健身缩放将健身函数返回的原始健身得分转换为适合选择函数的范围内的值。选择功能使用缩放的健身值来选择下一代的父母。选择函数将选择概率分配给具有较高尺度值的个体。

缩放值的范围会影响遗传算法的性能。如果缩放值的变化太大,则尺度值最高的个体会过快地再现,从而接管人群基因库过快,并防止遗传算法搜索溶液空间的其他区域。另一方面,如果缩放值只有一点变化,则所有个体的繁殖机会大致相同,并且搜索的进展将非常缓慢。

默认健身缩放选项,,根据每个人的等级而不是其得分来缩放原始分数。一个人的等级是其在排序分数中的位置:最合适的个体的等级是1,下一个最合适的是2,依此类推。等级缩放函数分配了缩放值,以便

  • 具有等级的个人的缩放价值n与成比例 1 / n

  • 整个人群中缩放值的总和等于创建下一代所需的父母数量。

等级适应性缩放消除了原始分数传播的效果。

以下图显示了典型人群的20个人的原始得分,按顺序越来越多。

以下图显示了使用等级缩放的原始分数的缩放值。

由于算法最小化适应性函数,因此较低的原始分数具有较高的比例值。同样,由于等级缩放分配仅取决于个人等级的值,因此所显示的缩放值对于任何20个大小的人群和等于32的父母的数量都是相同的。

比较排名和最高缩放

要查看缩放的效果,您可以使用等级缩放与其他缩放选项之一的遗传算法的结果进行比较最佳。默认情况下,顶级缩放率将优胜劣汰的个人的40%分配给相同的缩放值,并将其余的个体分配给值0。使用默认选择功能,只有40%的优胜金个体可以选择为父母。

下图比较的比例值a population of size 20 with number of parents equal to 32 using rank and top scaling.

因为顶级缩放限制了父母对最适合个人的限制,所以与等级缩放相比,它产生的种群少。以下图比较了使用等级和顶级缩放的每一代个体之间的距离方差。

External Websites