为什么NSGAII(多目标优化算法)总是在算法的拥挤距离分配部分中选择两个边界点?

时间:2012-04-19 14:26:56

标签: optimization selection evolutionary-algorithm

为什么NSGA II(多目标优化)总是在算法的拥挤距离分配部分中选择两个边界点? 我知道在每次迭代中它选择具有多目标函数值之一的最佳值的解,但为什么它也选择具有最差值的解? 对我来说,似乎这种算法试图尽可能扩展Pareto前端(或主动搜索的解决方案空间)。

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.18.4257

伪代码第5页

293次引用因此NSGA II是多目标优化的非常流行的算法,所以我认为我的问题不是太具体。

1 个答案:

答案 0 :(得分:1)

你必须明白,一个目标的最差值(在两个目标案例中)通过帕累托前线的定义在第二个目标中产生最佳值。

此无名解决方案列表根据第一个目标(最小化)进行排序

(0, 5), (1, 4), (2, 3), (3, 2), (4, 1), (5, 0)

第一个值是第一个目标的最佳值,但是第二个值的最差值,但仍然是未命名的。保持这种解决方案有助于在当前的帕累托战线之外,将演变作为一种解决方案。问题的真正帕累托前沿是未知的,可能会进一步扩展到目前为止发现的极值。

此外,一个实践者可能希望有一套有争议的解决方案,可以从他的最终解决方案中进行选择,并可能决定他不能在一个目标上做出妥协。因此,极端的解决方案是他根据自己的决策标准可以采取的最佳解决方案。

三个(以及更多)客观案例不太明显,但仍然是正确的。