多目标优化:使用NSGA进行选择与使用VEGA进行选择

|| 我想知道在多目标优化中进行选择时,矢量生成遗传算法(VEGA)与非支配排序遗传算法(NSGA)算法之间存在什么区别? (我知道NSGA是基于pareto的,而VEGA不是基于pareto的。)     
已邀请:
差异很大。如您所说,一个是基于帕累托的,另一个不是。在MOO中,这是一件大事。 VEGA的工作原理是将总体划分为不相交的集合,并迫使不同的集合朝着不同的单个目标发展。那里有一些机制可以帮助将它们组合成帕累托集的有意义的表示形式,但这基本上只是针对不同目标的解决方案的组合。选择是通过选择相对于其各自设置的目标函数更好的解决方案来完成的。 NSGA和其他基于Pareto的方法完全不同。他们的选择不是基于目标的任何特定选择,而是基于解决方案彼此之间的属性。每个此类算法在执行这些比较的方式上都会做出稍有不同的选择,而NSGA-II(您肯定应该使用该算法的第二个版本)是通过非主导排序来完成的。基本上,您会找到所有非主导解决方案,并将其称为集合1。然后,您发现如果删除集合1的元素,它们将成为非集合2的所有非解决方案。您一直进行下去,直到解决了所有解决方案,结果就像剥洋葱层一样。然后,选择过程是始终选择较低类的成员(设置#1,然后#2,依此类推)。如果您不能采用某个特定级别的所有要素,则可以通过选择该级别中与其他解决方案之间更远的解决方案来打破联系,这种想法是,如果您无法全部采用这些解决方案,则至少应尽量避免从一个很小的小集群中挑选您要做的。 通常,您应该查看基于Pareto的方法。至少10到15年以来,它们一直是行之有效的选择。特别是,您应该专注于基于精英Pareto的方法,例如NSGA-II,SPEA2,epsilon-MOEA,以及一些其他竞争者。     

要回复问题请先登录注册