特出一种新的使用帕累托自适应参考点的多目标进化算法。在此算法中,使用欧氏距离的比例估计帕累托最优前沿的形状。如果估计的形状可能是凸的,则用最差点作为参考点来计算个体的收敛性和多样性指标。否则,参照点设为理想点。此外,对最差点(nadir point)的估计与文献中广泛使用的方法不同。在基于帕累托的算法中,最差点和理想点一起提供了一种可行的方法处理难以检测和清除的抗支配解。将该算法与现有的多目标优化算法在许多多至15个目标的无约束和约束测试问题进行了比较。实验结果表明它比其他算法在大多数测试实例中更好。而且,新的算法在帕累托最优前沿不规则(不连续的、退化的、弯曲的、混合的)的问题中有好的性能。所观察到的高性能和固有的良好性能(如不受权向量和控制参数的影响)使新方案成为解决其他类似问题的一个很有前途的工具。
关键词:多目标优化、帕累托自适应参照点、最差点估计、非支配解。
MaOPs是多于三个冲突目标的MOPs。对于MOPs,通常不存在同时优化所有目标的单解,而是一组代表目标间权衡的解。因此,帕累托最优解得到了更多的关注。
对于最小化m个目标n个决策变量的MOP问题:
帕累托支配:若对于所有的 i ∈ { 1 , 2 , . . . , m } 都 有 f i ( x ) ≤ f i ( y ) i \in\{1,2,...,m\}都有f_i(x) \leq f_i(y) i∈{1,2,...,m}都有fi(x)≤fi(y)且至少存在一个 j ∈ { 1 , 2 , . . . , m } j \in\{1,2,...,m\} j∈{1,2,...,m}使得 f j ( x ) < f j ( y ) f_j(x)<f_j(y) fj(x)<fj(y),则称 x = ( x 1 , x 2 , . . . , x n ) x=(x_1,x_2,...,x_n) x=(x1,x2,...,xn)帕累托支配 y = ( y 1 , y 2 , . . . , y n ) y=(y_1,y_2,...,y_n) y=(y1,y2,...,yn)。意即x在所有目标上不差于y,且至少在一个目标上优于y。
帕累托最优解:若不存在任何x帕累托支配 x ∗ x^* x∗,则称 x ∗ x^* x∗为帕累托最优解。
帕累托最优集(PS):帕累托最优解的集合。
帕累托前沿(PF):PS在目标空间的投影。
近年来,许多多目标进化算法(MaOEAs)被提出以解决MaOPs。基于使用的选择策略,这些算法可以分为三大类:1)基于帕累托支配的算法,如NSGA-II+SDE, GrEA, VaEA, PICEA-g;2)基于分解的方法,如MOEA/D, RVEA, MOEA/DD, NSGA-III;3)基于性能指标的算法,如IBEA, HypE and MOMBI2。
然而,每类算法解决MaOPs时都有各自的缺点。
对于基于帕累托支配的算法,一个主要问题是在高维目标空间中大量的解之间是彼此非支配的,因此朝向真实PF的选择压力很低。
基于分解的算法需要解决以下问题:
最后,基于性能指标的方法的缺点是某些质量指标的计算复杂度很高,如超容量(HV)。
在最近的MaOEAs中,如MOEA/D, MOEA/DD, NSGA-III, RVEA和VaEA,种群朝着目标空间的理想点进化。理想点的广泛使用部分是因为比最差点更容易估计。由于真正的理想点是未知的,所以在优化过程中往往会对其进行估计。然而,仅仅使用理想点来指导搜索有时可能会有问题:
Qi等人表明使用切比雪夫倒数分解的MOEA/D的性能可通过简单的把参照点设置为更乐观的乌托邦点而不是理想点得到显著的提升。新算法使用乌托邦点对于PF的形状不敏感。
Sato等人提出了一个使用倒PBI函数的MOEA/D变体(MOEA/D-IPBI)。它通过使标度函数值最大化而从当前的最差点演化出解。在MOEA/D-IPBI中,通过找出当前种群中每个目标的最坏函数值来估计最差点。
为了增强MOEA/D-IPBI的鲁棒性,Qi等人建议一种自适应参考点策略,将IPBI标度函数中的最差点设置如下:如果估计的理想点在最后G次迭代中保持不变,则将最差点设为极上界。否则,它将被设置为当前种群的最差目标向量。
为了近似给定问题的全部PF,Saborido等人提出GWASF-GA。在该算法中,适应度函数定义为基于切比雪夫距离的成果标度函数(ASF),其中乌托邦点和最差点都被用作参考点。研究表明,同时考虑两个参考点对获得一组近似整个PF的最终非支配解具有重要作用。
相似的,Wang等人首先研究了基于分解算法中参照点设置对算法选择的影响。为了平衡收敛性和多样性,他们提出了一种使用理想点和最差点的基于分解算法的新变体。
最近,Wu等人提出了一种对抗分解方法(MOEA/AD),其中,两个共进化的种群同时由两个不同的标度函数:PBI函数与改进的增强实现标量化函数 (MA-ASF)维持。一方面,PBI函数尽可能地将解拉到理想点,另一方面,MA-ASF尽可能地将解从最差点推开。在前面的工作中,我们提出了一种新的多目标优化算法PAEA。在PAEA中,理想点和最低点都作为适应度函数的参考点。
如果对PF有先验知识,或者可以粗略估计PF的形状,则可以自适应地选择参考点。
沿着这个方向,Liu等人提出一种使用逐个选择策略的多目标进化算法。在该算法根据问题的PF形状,从理想点和最差点中选取最合适的参考点,计算收敛指标。其中PF的形状被认为是已知的。然而,对于实际的优化问题,PF的形状通常是未知的。
Jiang等人提出MOEA/D-TPN解决复杂的PF问题,整个优化过程分为两个阶段。第一阶段正常使用理想点;在第二阶段若估计的PF形状可能是凸的则使用最差点。
在具有适应性参考点的MaOEAs设计中,以下三个问题至关重要,但可能尚未得到充分解决:
为了进一步解决上述问题,本文提出了一种基于非分解的带Pareto自适应参考点的MaOEA(PaRP/EA)。在该方案中,每一代的参考点根据PF的形状进行自适应更新,PF使用非支配解的欧几里德距离在当前种群中的比例来估计。如果形状可能是凸的,则使用最差点。否则,将参考点设置为理想点。此外,与常用的最差点估计方法不同的是,本文给出了一种新的最差点估计方法。在目标空间中,由最差点与理想点共同定义超立方体,并消除超立方体外的解。这实际上为处理DRS提供了一种可行和有效的方法。本文提出的PaRP/EA算法是针对多个具有15个目标的测试问题进行测试的,这些问题的PF具有不同的几何特征,形状是线性的、凹的、凸的,不连续,退化,高度弯曲和混合。
本文的主要贡献总结如下:
算法1给出了该方法的框架。首先,在整个决策空间Ω中随机生成N个解,构成初始种群P。为了生成后代,从P中随机选择两个双亲。通过对亲代使用变化操作(交叉变异),可以每次生成两个解。重复以上选择和变化操作N/2次,可以获得N个新解组成的子代种群P’。最后,通过从P和P‘的合集Q中选择N个解来构造下一代的新种群。重复上述程序,直到达到终止标准。
1)自适应正则化:种群Q的最小点 z m i n = ( z 1 m i n , z 2 m i n , . . . , z m m i n ) z^{min}=(z_1^{min},z_2^{min},...,z_m^{min}) zmin=(z1min,z2min,...,zmmin)通过确定每个目标 i = 1 , 2 , . . . , m i=1,2,...,m i=1,2,...,m的最小值 z i m i n z_i^{min} zimin构造。然后,Q中每个个体的目标值可以转换如 f i ′ ( x ) = f i ( x ) − z i m i n f_i'(x)=f_i(x)-z_i^{min} fi′(x)=fi(x)−zimin。因此,变换后的种群最小点变成了零向量。在此基础上,通过求出使下列成果标度函数(ASF)最小化的解 x i ∈ Q x^i \in Q xi∈Q来确定目标轴 f i f_i fi中的极值点 e i ∈ R m e_i\in \mathbb{R}^m ei∈Rm。
A S F ( x , w i ) = max j = 1 m f j ( x ) − z j m i n w i , j = max j = 1 m f j ′ ( x ) w i , j ASF(x,w_i)=\max_{j=1}^{m} \frac{f_j(x)-z_j^{min}}{w_{i,j}}=\max_{j=1}^m\frac{f_j'(x)}{w_{i,j}} ASF(x,wi)=j=1maxmwi,jfj(x)−zjmin=j=1maxmwi,jfj′(x)其中 w i = ( w i , 1 , w i , 2 , . . . , w i , m ) w_i=(w_{i,1},w_{i,2},...,w_{i,m}) wi=(wi,1,wi,2,...,wi,m)是目标轴 f i f_i fi的轴方向。满足若 i = ̸ j i =\not j i≠j则 w i , j = 0 w_{i,j}=0 wi,j=0,否则 w i , j = 1 w_{i,j}=1 wi,j=1。将其中的0替换为 1 0 − 6 10^{-6} 10−6。即 e i = f ( x i ) = ( f 1 ( x i ) , . . . , f m ( x i ) ) e_i=f(x^i)=(f_1(x^i),...,f_m(x^i)) ei=f(xi)=(f1(xi),...,fm(xi))。在得到了m个极值解后,利用它们构造了一个m-D超平面。利用第i个目标轴的截距 a i a_i ai进一步正则化目标函数:
f i ′ ′ ( x ) = f i ′ ( x ) a i , i = 1 , 2 , . . . , m f_i''(x)=\frac{f_i'(x)}{a_i}, i=1,2,...,m fi′′(x)=aifi′(x),i=1,2,...,m请注意,每个正则化目标轴上的截距现在 f i ′ ′ = 1 f_i''=1 fi′′=1处。由这些截距构造的超平面将满足 ∑ i = 1 m f i ′ ′ = 1 \sum_{i=1}^{m}f_i''=1 ∑i=1mfi′′=1。为了简单起见,正则化目标 f i ′ ′ ( x ) f_i''(x) fi′′(x)在其后仍然用 f i ( x ) f_i(x) fi(x)表示。
上图给出了双目标空间中自适应正则化过程的一个例子。在图a中先求出种群Q的最小点 z m i n z^{min} zmin,然后将它转换为原点(图b)。随后,通过计算和比较ASF值,可以确定每个目标轴的极值解。假设图b中 A = ( 1 0 − 6 , 30 ) A=(10^{-6},30) A=(10−6,30), B = ( 0.01 , 3 ) B=(0.01,3) B=(0.01,3), w 2 = ( 1 0 − 6 , 1 ) w_2=(10^{-6},1) w2=(10−6,1),则 A S F ( A , w 2 ) = m a x { 1 0 − 6 1 0 − 6 , 30 1 } = 30 ASF(A,w_2)=max\{\frac{10^{-6}}{10^{-6}},\frac{30}{1}\}=30 ASF(A,w2)=max{10−610−6,130}=30, A S F ( B , w 2 ) = m a x { 0.01 1 0 − 6 , 3 1 } = 1 0 4 ASF(B,w_2)=max\{\frac{0.01}{10^{-6}},\frac{3}{1}\}=10^4 ASF(B,w2)=max{10−60.01,13}=104。因为 A S F ( A , w 2 ) < A S F ( B , w 2 ) ASF(A,w_2)<ASF(B,w_2) ASF(A,w2)<ASF(B,w2),A是 f 2 f_2 f2的极值解。但是,在这种情况下,A可能不是DRS。
“DRSS在至少一个目标上极逊于其他人。”,但“几乎找不到支配DRS的解。”DRS被重新定义为“在至少一个目标中具有极差值的解,但在其他目标中具有(几乎)最优值”或“DRSS至少在其中一个目标上非常差,而在另一些目标上则非常好。”尽管上述DRS的定义在数学意义上还不够清楚,我们可以识别DRS的一个共同特征:至少有一个极好的和一个极差的目标值。
对于 A = ( 1 0 − 6 , 30 ) A=(10^{-6},30) A=(10−6,30)中的第二目标值并不是非常差。从这个角度来看,A可能不是DRS。然而,如果 A = ( 1 0 − 6 , 1 0 5 ) A=(10^{-6},10^5) A=(10−6,105),则 A S F ( A , w 2 ) = m a x { 1 0 − 6 1 0 − 6 , 1 0 5 − 1 } = 1 0 5 ASF(A,w_2)=max\{\frac{10^{-6}}{10^{-6}},\frac{10^5}{-1}\}=10^5 ASF(A,w2)=max{10−610−6,−1105}=105,比 A S F ( B , w 2 ) = 1 0 4 ASF(B,w_2)=10^4 ASF(B,w2)=104大。在这种情况下,B变成了极值解,而A可以被看作是一个DRS。相似的,如果 C = ( 3 , 0.01 ) , D = ( 1 0 5 , 1 0 − 6 ) C=(3,0.01),D=(10^5,10^{-6}) C=(3,0.01),D=(105,10−6),则在 f 1 f_1 f1轴上,C是极值解,D是DRS。如图c所示,若B和C都是极值解,可以求出由这些解确定的直线或平面/超平面(当m>2)。图c中的直线是 f 1 3.01 + f 2 3.01 = 1 \frac{f_1}{3.01}+\frac{f_2}{3.01}=1 3.01f1+3.01f2=1,表示 a 1 , a 2 a_1,a_2 a1,a2都是3.01。最后种群中的成员使用这些截距正则化。正则化之后,如图d所示,每个正则化目标轴截距为1。鉴于DRS的存在,正则化目标不一定在区域[0,1]。例如,A正则化为 ( 3.3 × 1 0 − 7 , 3.3 × 1 0 4 ) (3.3\times10^{-7},3.3\times10^4) (3.3×10−7,3.3×104),D正则化为 ( 3.3 × 1 0 4 , 3.3 × 1 0 − 7 ) (3.3\times10^4,3.3\times10^{-7}) (3.3×104,3.3×10−7)。这些解将从种群中移除。注意,若图c中的A和D都是极值解,那么正则化的目标值都在[0,1]范围内。
2)形状评估和参照点更新:PF的形状对于引导搜索很有用。首先,用帕累托支配分类(算法2第三行)混合种群 Q = S n d ∪ S d Q=S_{nd} \cup S_d Q=Snd∪Sd, S n d S_{nd} Snd是一组非支配解, S d S_d Sd是一组支配解。然后使用 S n d S_{nd} Snd中的解估计PF的形状(算法2第四行)。特别地, S n d S_{nd} Snd中的m个最近解与m维向量 v = ( 1 , 1 , . . . , 1 ) v=(1,1,...,1) v=(1,1,...,1)根据v与每个解之间的角度识别。比例
q = d ˉ d ⊥ q=\frac{\bar{d}}{d^\perp} q=d⊥dˉ用来估计PF的形状。其中 d ˉ \bar{d} dˉ是m个最近解到原点的平均欧式距离, d ⊥ d^\perp d⊥是原点到超平面 ∑ i = 1 m f i = 1 \sum_{i=1}^mf_i=1 ∑i=1mfi=1的欧氏距离,因为
d ⊥ = ∣ − 1 ∣ m = 1 m d^\perp=\frac{|-1|}{\sqrt{m}}=\frac{1}{\sqrt{m}} d⊥=m∣−1∣=m1则
q = d ˉ × m q=\bar{d} \times \sqrt{m} q=dˉ×m
上图显示了一个二维目标空间中的例子。因为 < O C → , v > <\overrightarrow{OC},v> <OC,v>和 < O D → , v > <\overrightarrow{OD},v> <OD,v>小于其他角,则与向量v=(1,1)的两个最近解为C和D。因此, q = ∣ ∣ O C → ∣ ∣ + ∣ ∣ O D → ∣ ∣ 2 ⋅ 2 q=\frac{||\overrightarrow{OC}||+||\overrightarrow{OD}||}{2}·\sqrt{2} q=2∣∣OC∣∣+∣∣OD∣∣⋅2,其中||·||是向量的l2范数。图中显示的是凸的PF,则 d ˉ \bar{d} dˉ显然小于 d ⊥ d^\perp d⊥。因此q小于1可能表示凸的PF。同样的,如果q显然大于1,那么认为PF是凹的;如果q非常接近1,那么PF很可能是线性的。此文中设置一个间隔 q ∈ [ 0.9 , 1.1 ] q \in [0.9,1.1] q∈[0.9,1.1]粗略估计PF是否是线性的。因此,PF的形状估计如下:
每一代基于PF的形状估计,动态更新参照点 r = ( r 1 , r 2 , . . . , r m ) r=(r_1,r_2,...,r_m) r=(r1,r2,...,rm)(算法2第五行)。参照点用于计算解的适应度和它们之间的角度,对于算法的性能有很大影响。若PF是凸的,r设置为最差点 z n a d = ( z 1 n a d , z 2 n a d , . . . , z m n a d ) z^{nad}=(z_1^{nad},z_2^{nad},...,z_m^{nad}) znad=(z1nad,z2nad,...,zmnad)。否则设置为理想点 z ∗ = ( z 1 ∗ , z 2 ∗ , . . . , z m ∗ ) z^*=(z_1^{*},z_2^{*},...,z_m^{*}) z∗=(z1∗,z2∗,...,zm∗)。
如图所示,最差点定义为I=(1,1…,1),理想点定义为O=(0,0,…,0)。注意到最差点没有定义为最大值点 z m a x = ( z 1 m a x , z 2 m a x , . . . , z m m a x ) z^{max}=(z_1^{max},z_2^{max},...,z_m^{max}) zmax=(z1max,z2max,...,zmmax),其中 z i m a x z_i^{max} zimax是当前种群中第i个目标的最差值。
3)适应度分配:适应度主要衡量解的收敛性能。解的适应度应根据PF的形状评估:
所有这些适应度估计量都是计算效率高且易于获得的。选择这些适应度估计器的主要原因是,它们有利于解决PF与这些估计量形成的等高线相匹配的问题。
4)由超立方体分类:如算法2第六行所示。该过程检查 S n d S_{nd} Snd的大小是否大于N。若 ∣ S n d ∣ ≤ N |S_{nd}| \leq N ∣Snd∣≤N,将 S n d S_{nd} Snd的所有成员添加进P,根据适应值将 S d S_d Sd中前 N − ∣ P ∣ N-|P| N−∣P∣个最佳个体填充进种群(算法2第13-15行);若 ∣ S n d ∣ > N |S_{nd}| >N ∣Snd∣>N,这通常是对于有大量目标问题的情况,将 S n d S_{nd} Snd中的解进一步基于由 z ∗ z^* z∗和 z n a d z^{nad} znad约束的超立方体划分为两组(算法2第7行)。 S + S_+ S+包含超立方体内的解, S − S_- S−包含超立方体外的解。
如上图, S − S_- S−有两解c,d, S + S_+ S+包含剩余全部十个解。实际上,超立方体的分类为处理DRS提供了一种可行的方法。假设上图 a = ( 0.01 , 0.90 ) , b = ( 0.90 , 0.01 ) , c = ( 0.0 , 1 0 7 ) , d = ( 1 0 7 , 0.0 ) a=(0.01,0.90),b=(0.90,0.01),c=(0.0,10^7),d=(10^7,0.0) a=(0.01,0.90),b=(0.90,0.01),c=(0.0,107),d=(107,0.0)。由于c和d与其他解无关,Pareto支配(算法2中的第3行)的分类不能消除它们,而超立方体的分类可以。 w 1 = ( 1 , 0 ) w_1=(1,0) w1=(1,0), A S F ( b , w 1 ) = m a x { 0.90 1 , 0.01 1 0 − 6 } = 1 0 4 , A S F ( d , w 1 ) = { 1 0 7 1 , 0.0 1 0 − 6 } = 1 0 7 ASF(b,w_1)=max\{\frac{0.90}{1},\frac{0.01}{10^{-6}}\}=10^4,ASF(d,w_1)=\{\frac{10^7}{1},\frac{0.0}{10^{-6}}\}=10^7 ASF(b,w1)=max{10.90,10−60.01}=104,ASF(d,w1)={1107,10−60.0}=107。因为 A S F ( b , w 1 ) < A S F ( d , w 1 ) ASF(b,w_1)<ASF(d,w_1) ASF(b,w1)<ASF(d,w1),目标轴 f 1 f_1 f1的极值解是b而不是d。相同的,目标轴 f 2 f_2 f2的极值解是a而不是c。因此,基于a和b构建的超平面(图中直线)由于超立方体的分类只在空间[0,1]×[0,1]中保留解,则c和d将被舍弃。由于DRS通常远离真正的PF,因此去除它们有助于提高收敛性。
5)逐个选择解:分类后,如果 S + S_+ S+的大小仍然超过N,则将采用选择过程逐个从 S + S_+ S+中选择N个解(算法2第八、九行);否则将 S + S_+ S+的所有成员添加进P,根据适应值将 S − S_- S−中前 N − ∣ P ∣ N-|P| N−∣P∣个最佳个体填充进种群(算法2第11行)。详细选择过程如算法3:
选择过程首先将m个极值解添加到P中,然后从 S + S_+ S+中删除它们。这里极端解与自适应正则化中的定义相同,并在此阶段确定。接下来,根据逐个删除过程或逐个添加过程选择其余的解,该过程根据 S − S_- S−的大小确定。若 S − > 0 S_->0 S−>0,表明存在收敛性差的解,然后逐个执行移除过程,既强调收敛性,又强调解的多样性。否则,我们将逐一执行添加,特别强调解的多样性。对于逐个删除的过程,这实际上是我们前面工作(算法3中的第4-7行)中使用的消除过程。从所有的成对解中找到最小角度的一对解,然后从 S + S_+ S+中根据适应值删除最差的一个解。重复上述运算,直到P和 S + S_+ S+之和达到N。最后,将 S + S_+ S+中剩余解全添加进P。对于逐步添加过程,它与最大角度优先原则相同。每一次,我们把最远的解加到新的种群P上,应该注意到,个体之间的“距离”是用角度而不是欧几里得距离来测量的。
逐步移除和逐步添加都是用角度评估解的密度。事实上,人们已经很好地证明了角度在测量解之间的距离时是有效的,特别是对于MaOP来说。
这一部分提出了一个受约束的版本:轻微修改算法2中的环境选择。修改后的环境选择如算法4:
种群Q在正则化后由约束分类过程分成两个集合。 S F S_F SF包含可行解, S I S_I SI包含不可行解。若 S F S_F SF的大小不大于N,则 S F S_F SF中的所有成员添加进P,其余的解是根据约束冲突值(CV)从 S I S_I SI中选择的。解x的CV计算如下: C V ( x ) = ∑ j = 1 J < g j ( x ) > + ∑ k = 1 K ∣ h k ( x ) ∣ CV(x)=\sum_{j=1}^J<g_j(x)>+\sum_{k=1}^K|h_k(x)| CV(x)=j=1∑J<gj(x)>+k=1∑K∣hk(x)∣其中 g j ( x ) g_j(x) gj(x)是第j个不等式约束: g j ( x ) ≥ 0 , j = 1 , 2 , . . . , J g_j(x)\geq0,j=1,2,...,J gj(x)≥0,j=1,2,...,J, h k ( x ) h_k(x) hk(x)是第k个等式约束: h k ( x ) = 0 , k = 1 , 2 , . . . , K h_k(x)=0,k=1,2,...,K hk(x)=0,k=1,2,...,K, < p > <p> <p>表示若p<0,返回p的负数,否则返回零。对于CV(x),需要一个较小的值。对于可行解,CV(x)总是为零。在 S F > N S_F>N SF>N的情况下,只考虑 S F S_F SF。这个集合被分配给Q,其余的操作与算法2的第3-15行相同。
此外,在交配选择中,我们首先从母体中随机选择两个成员,然后应用下面的二元竞赛选择来选择一个更好的解决方案。给出两个解 p 1 p_1 p1和 p 2 p_2 p2,选择CV较小的一个作为亲代。若 C V ( p 1 ) = C V ( p 2 ) CV(p_1)=CV(p_2) CV(p1)=CV(p2),则随机选择亲代。通过重复上面的操作N次,我们可以得到N个父母。
在所有算法中,采用模拟二元交叉(SBX)和多项式变异(PM)生成后代。两个遗传算子中的参数设置如下 p c = 1.0 , p m = 1 / n , η c = 30 , η m = 20 p_c=1.0,p_m=1/n,\eta_c=30,\eta_m=20 pc=1.0,pm=1/n,ηc=30,ηm=20,其中 p c p_c pc是交叉概率 p m p_m pm是变异概率, η c \eta_c ηc是SBX分布指标, η m \eta_m ηm是PM分布指标。