EAG-MOEA/D
动机
-
MOEA/D基于这样一个基本的假设:两个相邻的问题应该有相似的最优解。这适用于典型连续MOP中的大多数子问题。然而在组合多目标优化问题中有一些不满足该假设。因此,针对这类组合多目标优化问题单独使用MOEA/D表现不佳。为了解决这个问题,最近许多基于MOEA/D和支配技术结合的算法已经被研究。
-
理想的情况是:子问题与PF上的点(最优解)一一对应。然而,存在这样一种现象(如图Fig. 1a所示):不同的子问题对应相同的最优解。如此,即使子问题的数目非常大也不能合理地逼近PF。
-
在MOEA/DDRA中,子问题的效用定义为其目标函数改进与在过去几代中分配的计算工作量(资源)的比率。这些效用函数可以很好地用于连续的MOPs。然而,由于每个效用函数只度量了单个子问题的进展,而没有考虑所有子问题的贡献,它可能不适用在离散MOPs上。因此,需要设计一个考虑搜索进程中所有子问题对搜索过程的贡献的效用函数。
-
在具有二个或三个目标的优化问题中,NSGA-II中的快速非支配排序和拥挤距离可以有效地选择具有代表性的(即,收敛性和多样性)高质量解。本文使用NSGA-II的思想评估每个解对新MOEA/D框架搜索过程的贡献。
几个关键点:
-
双种群(合作)协同演化
算法运行在两个种群上,内部(工作)种群和外部存档。算法利用分解策略进化工作种群,而使用支配排序维持存档的多样性。利用从存档中获取的信息来决定每次迭代中需要搜索的区域,这是通过NSGA-II选择操作(建立偏序集)实现的。
-
MOEA/D算法分析
构成MOEA/D算法的三个要素是:子问题分解,邻域关系 和 子种群协作;
MOEA/D中子问题之间的邻域关系很重要,它强调从邻域中选择父个体,通过交叉操作产生新个体,并在领域中按照一定的规则进行种群更新。这个过程实现了局部搜索以及信息共享,从而加快种群的收敛速度。
当MOEA/D处理离散MOP时,之所以会出现多个子问题对应相同解,主要原因是在不同的搜索阶段,MOEA/D中的每个子问题对搜索过程的贡献是不同的。因此,这种情况下,不同的子问题不应该分配数量相同的计算资源。 -
动态资源分配
MOEA/D的一个变体,MOEA/D-DRA,基于每个子问题搜索过程分配计算资源。与之不同的是,EAG-MOEA/D使用外部存档指导子种群间的资源分配。前者适用于连续MOP优化中的资源分配,而后者的资源分配方式适用于连续和离散MOP优化。
具体来说,能进入存档中的个体被认为是成功的个体,这是通过NSGA-II的选择操作实现的。
选择概率计算如下:
由此,在一代演化过程中,一个子问题可能被多次选中来产生新个体。这就实现了资源分配。
Algorithm
-
The Framework
-
New Solution Generation
-
Population Update