锦标赛选择是一种选择策略,用于在遗传算法中从当前一代中选择最适合的候选人。然后将这些选定的候选人传递给下一代。在 K-way 锦标赛选择中,我们选择 k-个人并在其中运行锦标赛。只有那些被选中的候选人中最适合的候选人才会被选中并传递给下一代。通过这种方式,许多这样的比赛发生了,我们最终选择了进入下一代的候选人。它还有一个称为选择压力的参数,它是候选人参加锦标赛可能性的概率度量。如果锦标赛规模较大,弱候选人被选中的机会较小,因为它必须与更强大的候选人竞争。选择压力参数决定了遗传算法的收敛速度。选择压力越大,收敛率就越大。 GA 能够在广泛的选择压力范围内确定最佳或接近最佳的解决方案。锦标赛选择也适用于负适应度值。
Algorithm --
1.Select k individuals from the population and perform a tournament amongst them
2.Select the best individual from the k individuals
3. Repeat process 1 and 2 until you have the desired amount of population
让我们有一个 3 路锦标赛选择,我们想要的人口规模是 6,初始人口的适应度分数是 [1, 2, 3, 4, 5, 6]。我们的第一场比赛看起来像这样(见图),适应度值为 6 的获胜者将进入下一代。
在第一场比赛之后,我们选择的人口为 [6]。
经过几次这样的比赛后,我们可能会选择 [6, 6, 6, 5, 4, 3] 的人口。它甚至可能是 [6, 6, 5, 4, 3, 2]。因此,最适合的候选者更有可能被选为下一代。
如果以概率 p 选择最佳候选者
那么下一个最佳候选者将以 p*(1-p) 的概率被选中
和下一个 p*(1-p) 2
等等 …
参考 –
1.http://wpmedia.wolfram.com/uploads/sites/13/2018/02/09-3-2.pdf
2.https://en.wikipedia.org/wiki/Tournament_selection