The NSGA-II is one of the most prominent algorithms to solve multi-objective optimization problems. Despite numerous successful applications, several studies have shown that the NSGA-II is less effective for larger numbers of objectives. In this work, we use mathematical runtime analyses to rigorously demonstrate and quantify this phenomenon. We show that even on the simple $m$-objective generalization of the discrete OneMinMax benchmark, where every solution is Pareto optimal, the NSGA-II also with large population sizes cannot compute the full Pareto front (objective vectors of all Pareto optima) in sub-exponential time when the number of objectives is at least three. The reason for this unexpected behavior lies in the fact that in the computation of the crowding distance, the different objectives are regarded independently. This is not a problem for two objectives, where any sorting of a pair-wise incomparable set of solutions according to one objective is also such a sorting according to the other objective (in the inverse order).
翻译:NSGA-II是求解多目标优化问题最著名的算法之一。尽管已有大量成功应用,多项研究表明NSGA-II在目标数量较多时效率较低。本研究利用数学运行时分析严格证明并量化了这一现象。我们证明,即使在离散OneMinMax基准测试的$m$目标泛化问题中(其中每个解均为帕累托最优),当目标数量至少为三时,即使采用较大种群规模,NSGA-II也无法在亚指数时间内计算出完整帕累托前沿(所有帕累托最优解的目标向量)。这一反常行为的根源在于:在拥挤距离计算过程中,不同目标被独立对待。这在双目标情形下不会产生问题,因为对于任意一组两两不可比解集,按某一目标排序的结果必然与按另一目标排序的结果(逆序)一致。