论文中展示了PAES、SPEA、NSGA II三个算法的对比实验结果。
本篇论文采用的多目标优化测试函数为:SCH、FON、POL、KUR、ZDT1~ZDT4、ZDT6。ZDT问题集基本构建过程如下: m i n f 1 ( x ) m i n f 2 ( x ) = g ( x ) h ( f 1 ( x ) , g ( x ) ) minf_1(x)\\minf_2(x)=g(x)h(f_1(x),g(x)) minf1(x)minf2(x)=g(x)h(f1(x),g(x))更多关于ZDT问题的介绍参考该篇博客。
所有的测试函数都有两个目标函数 f 1 ( x ) , f 2 ( x ) f_1(x),f_2(x) f1(x),f2(x),且上述问题都没有约束条件。论文中的Table I给出了这些测试问题的决策变量个数、决策变量边界、Pareto最优解(Optimal solutions)以及Pareto前沿的性质(commet:凹凸、是否连续等)。
二进制编码GA:单点交叉+按位变异;【进化计算(二)——简单的遗传算法编程(Matlab)代码中使用的就是单点交叉和按位变异的操作。】
对实数编码GA:模拟二进制交叉SBX算子+多项式变异;
迭代次数:250;
交叉概率 p c = 0.9 p_c=0.9 pc=0.9;
变异概率 p m = 1 / n o r 1 / l p_m=1/n\quad or\quad1/l pm=1/nor1/l,其中 n n n是实数编码GA中决策变量的个数, l l l是二进制编码GA中字符串的长度;
实数编码:模拟二进制算子及多项式变异中分布指数取 η c = η m = 20 \eta _c=\eta _m=20 ηc=ηm=20;
作者定义了两个指标 Υ \Upsilon Υ和 Δ \Delta Δ分别用于完成对收敛性和分布性的度量。
分布性 Υ \Upsilon Υ:从真实PF中选取500个等间隔分布的Pareto解,计算所获得的解与这500个解之间的最小欧式距离,这些距离的平均值即为 Υ \Upsilon Υ。 Υ \Upsilon Υ值越小,收敛性越好。
收敛性 Δ \Delta Δ:计算所获得的非支配解集中连续解之间的欧几里得距离 d i d_i di并取所有距离的平均值 d ˉ \bar{d} dˉ。首先通过拟合一个与PF平行的曲线计算极限解。然后使用下式计算分布的不均匀性:
其中, d f d_f df和 d l d_l dl是极限解与所获得的位于边界的分支配解之间的欧氏距离。 N N N是最优非支配前沿上解的个数。易判断, Δ \Delta Δ越小,分布性越好(当满足所有的 d i = d ˉ d_i=\bar{d} di=dˉ且 d f = d l = 0 d_f=d_l=0 df=dl=0时, Δ = 0 \Delta=0 Δ=0)。具体如下图所示:
文章中的Table II和Table III展示了NSGA-II( Real-coded)、NSGA-II (Binary-coded)、SPEA、PAES四种算法的 Υ \Upsilon Υ和 Δ \Delta Δ对比结果(均值/方差)。
结果显示:
特别的,由于ZDT4函数有 2 1 9 21^9 219个不同的局部Pareto最优前沿,其中只有一个是全局Pareto最优前沿,所以在求解过程中很容易陷入局部最优。但从下图看出,NSGA-II算法虽然也陷入了局部最优,但其收敛性和分布性相对来说性能还是比较好的。
此外,作者还通过改变迭代次数等参数对结果进行了进一步解读:
参数交互会给多目标优化问题带来另一层面上的困难。针对上述三种算法,论文基于R1问题完成对旋转问题的讨论。
R1问题:
通常EA算法中决策向量为x,上述问题中的决策向量为x经旋转矩阵R变换的向量y。在这种方式下,目标函数就是一个线性组合的决策变量的函数。
测试时,采用SBX算子,迭代次数选500,种群规模选100。此外,为了满足 ∣ f 1 ∣ ≤ 0.3 |f_1|\le 0.3 ∣f1∣≤0.3,对在此范围外的的目标都附加一惩罚因子。结果显示,在该旋转问题中,NSGA-II表现性能更好。
该方法使用二进制锦标赛选择法,种群中的两个解更好的解被选中。在存在约束的情况下,可能有下边三种情况:①选出的两个解都是可行解;②其中一个解是可行解,另一个不是;③两个解都不是可行解。单目标优化可以用较简单的方法选中一个解:①选择目标函数值更好的解;②选择可行解;③选择约束冲突更小的解。
多目标优化中,②③两种情况限制处理同上。对于①,则可以使用拥挤比较算子解决。为了保证程序的模块化,作者对多目标优化问题下的支配关系进行了如下扩充定义。
D e f i n a t i o n : Defination: Defination:满足下列任一情况,可以说明解 i i i限制支配解 j j j。
在这种支配关系下,所有的可行解拥有比任一不可行解更好的非支配排序等级。所有的可行解根据目标函数值获取非支配等级。对于两个不可行解,约束冲突值小的解被分配更好的非支配等级。该算法与Fonseca and Fleming的约束处理算法仅在不可行解之间的支配关系定义方面有所区别。
该方法中对于所有约束条件的约束冲突并不简单求和,而是针对所有的约束冲突也进行非支配核对。虽然这种方法同时使用了目标函数值和约束冲突值,但是该方法无需任何惩罚因子。具体处理方法如下:
该种算法可以解决一些工程问题,但是也引入了许多不同的算子,在解决更复杂问题时可能存在计算复杂度过高等问题。
作者在四个限制约束问题CONSTR、SRN、TNK、WATER上进行proposed constraint-handling technique和Ray–Tai–Seow’s constraint-handling technique的对比仿真。针对四个问题,各自约束条件下的Pareto最优区域为:
仿真时,作者选取种群规模为100,迭代次数为500,实数编码中SBX和多项式变异中的分布参数分别选取20和100。