Multimodal Multiobjective Optimization 多模态多目标优化
在优化问题中,“模态”指的是解的分布形态。一个函数的“峰”或“谷”就是一个模态。指的是一个目标函数存在多个相同或相近的最优解。这些解在中是截然不同的,但在中却对应着相同(或非常接近)的目标函数值。在一个多目标优化问题中,帕累托前沿 (Pareto Front) 上的(代表一种特定的目标权衡),可能对应着决策空间中。
1.多模态多目标定义
在优化问题中,“模态”指的是解的分布形态。一个函数的“峰”或“谷”就是一个模态。
多模态优化指的是一个目标函数存在多个相同或相近的最优解。这些解在决策空间 (Decision Space) 中是截然不同的,但在目标空间 (Objective Space) 中却对应着相同(或非常接近)的目标函数值。

在一个多目标优化问题中,帕累托前沿 (Pareto Front) 上的同一个点(代表一种特定的目标权衡),可能对应着决策空间中多个不同的帕累托最优解。
2.问题的难点
解决多模态多目标问题 需要做到1.良好的收敛 2 .决策空间多样 3.目标空间多样
图a的情况是目标空间多样 决策空间的多样较差 ; 图b的情况是 决策空间多样 ,目标空间多样较差;

图C 则是目标空间和决策空间都比较好
3.解决思路
为了实现上述目标,MMO算法通常采用以下几种策略:
A. 在决策空间中维持多样性 (Maintaining Diversity in Decision Space)
这是解决MMO问题的关键所在,也是与传统MOO算法最大的区别。常用技术包括:
-
引入决策空间“拥挤度”:在选择要保留或淘汰的个体时,不仅考虑它们在目标空间的分布,还计算它们在决策空间的分布。
-
思路:如果两个解在目标空间中非常相似,那么优先保留那个处在决策空间中“不拥挤”(即周围邻居较少)区域的解。
-
例子:DN-NSGAII 算法在经典NSGA-II的拥挤度计算中,增加了一个决策空间的拥挤度计算。
-
-
小生境技术 (Niching):在决策空间中创建“小生境”或“聚类”,确保每个小生境中都有代表性的解被保留下来。
-
思路:将决策空间中相似的解划分为一个簇(niche),然后在每个簇内进行选择,而不是全局选择。这样可以保护那些虽然目标值相似但决策变量差异大的解。
-
例子:MMOEA/D 算法在基于分解的框架中,为每个子问题维护多个解,鼓励找到多个模态。
-
-
特殊交配选择 (Special Mating Selection):在选择父代进行繁殖时,倾向于选择决策空间中距离较远的个体。
-
思路:通过让差异大的解进行交配,可以更有效地探索整个决策空间,避免搜索过早地集中在某一个区域。
-
B. 在目标空间中维持多样性 (Maintaining Diversity in Objective Space)
这部分继承了传统多目标优化算法的成熟思想:
-
非支配排序 (Non-dominated Sorting):将种群分层,优先保留支配关系最优的层级。这是保证收敛性的基础。
-
目标空间拥挤度/密度估计:在同一层级中,优先选择那些位于帕累托前沿上稀疏区域的解,以保证解集在前沿上分布均匀。例如NSGA-II中的拥挤度距离或SPEA2中的密度估计。
C. 结合两种空间的信息
最先进的MMO算法通常会巧妙地结合这两个空间的信息。算法的“选择”机制是关键,它决定了哪些解能在进化中存活下来。一个典型的MMO选择流程可能是:
-
第一轮筛选(基于收敛性):使用非支配排序,优先保留最优层级的解。
-
第二轮筛选(当需要从同一层级的解中选择时):
-
比较目标空间:如果两个解在目标空间中相距很远,则它们都很重要,可能都会被保留。
-
比较决策空间:如果两个解在目标空间中非常接近(可能对应同一个目标点),则计算它们在决策空间的距离。如果距离很远,说明找到了一个新的模态,也应该保留;如果距离很近,则它们是冗余的,可以淘汰一个。
-
主流算法框架
解决MMO问题的算法绝大多数是进化算法 (Evolutionary Algorithms) 的变体,因为它们基于种群的搜索机制天然适合寻找多个解。主要有以下几类:
-
基于支配关系的算法:改进自NSGA-II、SPEA2等。例如
DN-NSGAII、MM-NSGA-II。 -
基于分解的算法:改进自MOEA/D。例如
MOEA/D-MMO。 -
基于指标的算法:使用如超体积(Hypervolume)等指标来引导搜索。
-
其他群智能算法:如多模态多目标粒子群优化算法 (
MMOPSO)。
更多推荐



所有评论(0)