文章品读:基于多个指标的多目标优化随机排序算法(Stochastic Ranking Algorithm for Many-Objective Optimization Based on Multiple Indicators)
Optimization Based on Multiple Indicators))
前言
本文介绍了一种基于多个指标的的随机排序算法来进行多目标的优化。然后在DTLZ和WFG上和其他一些前沿的算法进行了比较,证明了本算法的可行性。
摘要
传统的多目标进化算法在处理多目标的时候面临着一个巨大的挑战。这是由于人口中非支配解占有较高的比例和较低的Pareto front选择压(选择压是一个性状被选择而生存下来的优势。选择压打,生物就会发生大面积死亡,产生狭窄的适应类群,反之会产生多适应的种)。为了解决这一问题,一系列的基于指标的算法被提出来通过Pareto front来指导搜索过程。然而,一个单独的指标可能会有偏见并导致人口收敛于Pareto front的子区域。本文中,一个针对多目标优化问题的基于多指标的算法被提了出来。这一提出的算法,即基于随机排序的多指标算法(SRA),采用随机排序技术来平衡不同指标的搜索偏见。实验研究基于两个定义很好的,有着5个,10个,15个目标的,有着大量的问题实例的基准集(一共39个问题实例)证明了在和前沿的算法比较中,在SRA在IGD和HV标准上具有较好的表现。实验研究童谣揭露了当一个问题需要需要其算法具有很强的收敛能力的时候,SRA可以通过融入一个基于方向的档案去存储收敛的很好的解来进一步提高算法的表现同时维持其多样性。
一、介绍
随着问题中目标个数的增多,非支配解的比例变得很大,传统的Pareto支配方法失去了他的有效性获得一个接近Pareto front的人口。这被称为支配阻止现象。为了克服这一问题,研究者提出了各种多目标进化算法。基于使用的关键想法,这些方法可以被分成六类。
(1)宽松的基于支配的算法尝试通过扩大解的支配区域来缓解其支配的无效性。这类方法的一个问题是对于不同问题要去决定新的支配定义需要宽松的程度以及其动态的调整方法。
(2)基于多样性的方法尝试提高表现通过提高多样性维持策略。但是,人们想知道随着选择压的增加,这个策略的花费会变得如何。
(3)基于集成的方法使用一系列的标量函数去将多目标优化问题拆分成一个单目标子问题集合。MOEA/D是一个很受欢迎的基于聚集的方法。但是在高维度的问题中他具有较弱的多样性。此外,不同问题的标量函数仍需要进行更深的研究。
(4)基于指标的方法利用指标值去指导搜索过程。但可能会受到所采用到指标的一些约束,例如耗时过长或者需要参考集等。
(5)基于偏好的算法通过用户的偏好信息集中于所感兴趣的区域。但是如何选择合适的偏好模型可能是一个依赖于问题的任务。
(6)最近,一些混合的多目标进化算法结合了两个或多个上述的技术被提了出来。
然而,一个单独的指标可能存在偏见,导致搜索到一个子区域中。由于指标可能存在不同的偏见,例如偏向收敛性或者多样性,因此可以让他们相互补充,使用一个多指标来进行环境的选择。关键的问题是研究一个算法如何基于多指标进行环境选择来使他们之间不互相冲突。在此,我们选择了随机排序技术。
本文的主要贡献总结如下:
(1)介绍了一个新的技术,平衡了不同指标影响的多目标优化算法。通过一个基于随机冒泡排序的排序程序。带有可调整的参数,它能够对不同的指标进行适当的权衡。
(2)为了使算法具有较强的收敛能力,一个基于方向的档案(DBA)融入了SRA算法去存储收敛较好的解,同时维持了多样性。
(3)在DTLZ和WFG问题上进行综合实验研究揭露了不同数据集偏爱不同的算法并证明使用全部二者对算法进行评估的必要性。
二、前期背景
A. 多目标优化问题
其中,x是决策向量,F是目标函数集合,m是目标个数(m>1)。
B. Pareto 支配
给两个解x,y,当在任意目标上 f i ( x ) ≤ f i ( y ) f_i(x) \le f_i(y) fi(x)≤fi(y)并且存在一个目标 j j j使得 f j ( x ) < f j ( y ) f_j(x) \lt f_j(y) fj(x)<fj(y)就称x支配y。
C. Pareto最优解
一个解x称为Pareto最优解,当没有其他解可以支配解x。
D. Pareto集合
所有Pareto最优解的集合称为Pareto集合。
** E. Pareto front**
Pareto集合的相应目标向量集称为Pareto front。
F. 相似集合
一个相似集合A定义为一个解集中没有一个解支配或等于其他任何一个集合中的解。最好的相似集包括以下两个子目标:(1)收敛性:A尽可能靠近于PF。(2)多样性。
G. 质量指标
质量指标量化一个解集某方面的好坏程度,例如收敛性、多样性或者两者。
三、提出SRA
3.1 综述
在SRA中,基于多指标的随机排序程序被用于环境选择中。整个SRA算法框架如下图所示。
3.2 指标
上述算法其实可以使用任意可计算的指标。这里我们采用其中两个,具体如下。
在此算法中,P表示的是上图伪代码中的
U
t
U_t
Ut
其中,y precedes x表示在集合中y的位置下标应比x小,即排序在x之前。这与原论文,这是出于对计算成本的考虑,最后发现这一改变不会影响算法表现。
3.3 基于随机排序的环境选择
我们需要从2N个个体中选出N个。具体分为两步,即2N个个体通过一个标准进行排序,然后选出最好的N个。在多标准中,可能出现不同标准喜欢不同个体,因此排序的结果应该要能较好的平衡不同的标准。因此,SRA利用随机排序技术解决这一问题。
随机排序是一个随机冒泡排序算法。它通过扫描所有人口(大小为2N)N次来对所有个体进行排序。每次扫描过程中,所有个体都通过随机选择的指标来进行对比。选择指标根据参数 p c p_c pc控制。具体的随机排序环境选择伪代码如下。
3.4 时间复杂度分析
总时间复杂度 O ( m N 2 ) O(mN^2) O(mN2),和NSGA-III和Two_Arch2相同。
四、带档案的SRA
一些方案,例如维护一个外部的档案在多目标优化问题上有较好的表现。因此,一个变种的SRA算法,称为带档案的SRA(SRA2)通过融入一个DBA到SRA中。其中,搜索方向通过一个权重向量定义,而权重向量的设置通过NSGA-III论文得出。SRA2中初始生成2N个个体,N个随机分配给每个权重向量,并视为初始档案。剩下N个作为初始人口。每一代中,档案中的每个成员和群体中的随机一个个体结合产生下一代。然后再环境选择步骤结束后,通过新的人口更新档案。
其中,档案更新过程的伪代码如下图所示。SRA2中,个体将与与其垂直距离最短的权重向量相联系起来。一个个体最多可以替换 n r n_r nr个档案成员相应于所属权重向量的邻居,当其相较于档案成员有更好的适应度。其中我们采用了PBI适应函数。
SRA2的时间复杂度也是
O
(
m
N
2
)
O(mN^2)
O(mN2)。
五、实验
整个实验将本文提出的算法和一些较先进的算法进行了对比,对比的算法有HypE、AGE-II、NSGA-III、Two_Arch2、SPEA2+SDE、MOEA/D、IBEA算法,通过DTLZ和WFG测试问题,每个问题都采用5、10、15个目标,一共39个案例。而评价指标测选择了IGD和HV指标,最终测试结果显示SRA和SRA2结果较好,具备可行性。