关于 NSGA 2 的查询:锦标赛选择

问题描述

在 NSGA 2 算法中,我们采用二元锦标赛选择作为从种群中生成交配父母的选择程序。后代数据集的大小与父母的大小相同。 我对此有疑问。我是 GA 的新手,这对一些更有经验的用户来说可能听起来很荒谬,但我们将不胜感激。

最初,在非支配的基础上创建和排序父种群 Po。 使用二元锦标赛、交叉和变异来创建与父代相同大小的后代种群。

二元锦标赛选择用于选择配对池。

后代种群与父代的大小相同,这意味着交配池与父集的大小相同,并且将包含父集的所有元素。

那么,在这种情况下,为什么我们需要采用锦标赛选择?我们可以根据适应度值降序对父集进行排序,并确保按照适应度降序对种群进行交叉和变异。

初始种群是否应该大于父种群规模?

K.Deb 博士关于 NSGA 2 的原始论文: https://www.iitk.ac.in/kangal/Deb_NSGA-II.pdf

没有提到我们需要一个比父代种群更大的种群集合才能发生交配

解决方法

你唯一错的是个人被替换了。

一个人可以多次被选为父母(比赛选择是替换的)。

最好的个体预计会被多次选中,这种现象称为“选择压力”。这是为了将最佳个体的基因传播到后代群体中。

为了完整起见:您并不总是希望相似个体之间发生交叉,这可能会导致缺乏多样性。排序的想法并不理想。