郑州大学学报(理学版)  2018, Vol. 50 Issue (4): 8-13  DOI: 10.13705/j.issn.1671-6841.2018037

引用本文  

林涛, 霍丽娜. 基于变量分组的大规模多目标优化算法[J]. 郑州大学学报(理学版), 2018, 50(4): 8-13.
LIN Tao, HUO Li'na. Based on Variable Grouping for Large-scale Many-objective Optimization Algorithm[J]. Journal of Zhengzhou University(Natural Science Edition), 2018, 50(4): 8-13.

基金项目

天津市自然科学基金重点项目(13jczdjc34400)

通信作者

作者简介

林涛(1970—),男,天津人,教授,主要从事物联网技术与数据分析研究,E-mail:1965511415@qq.com;
霍丽娜(1992—),女,河北保定人,硕士研究生,主要从事数据分析与智能算法研究,E-mail:huolina121@163.com

文章历史

收稿日期:2018-01-21
基于变量分组的大规模多目标优化算法
林涛 , 霍丽娜     
河北工业大学 计算机科学与软件学院 天津 300400
摘要:含有大规模决策变量的多目标优化问题,是当前多目标进化算法领域中的研究难点之一.针对此问题,提出一种基于变量分组的大规模多目标优化算法.该算法的贡献在于两个方面:1)提出一种新的决策变量分组方法,该方法通过随机采样与非支配排序,将决策变量分为收敛性变量和多样性变量;2)在种群进化过程中,采用levy分布函数产生新个体,同时设计出适应于此分布函数的优化过程.以反向世代距离(inverted generational distance, IGD)作为评价指标,在标准测试集函数上进行实验,实验结果证明该算法在解决大规模多目标优化问题时是有效的.
关键词大规模    多目标    进化算法    变量分组    levy分布    
Based on Variable Grouping for Large-scale Many-objective Optimization Algorithm
LIN Tao , HUO Li'na     
School of Computer Science and Engineering, Hebei University of Technology, Tianjin 300400, China
Abstract: In the field of many-objective evolutionary algorithm, the multi-objective optimization problem with large-scale decision variables was one of the difficult points. A large-scale many-objective optimization algorithm based on variable grouping was proposed. The contribution of the algorithm lied in the following two aspects. Firstly, a new method of the decision variables grouping was put forward. The decision variables were divided into convergence related and diversity related, through the sample randomly process and non-dominated sorting method. Secondly, in the process of population evolution, It was used the levy distribution function to generate new individuals, and designed the optimization process adapting to the distribution function. Inversed generational distance(IGD) as evaluation index, It was tested on standard test function DTLZ.Experimental results proved that, the algorithm was effective in solving large-scale many-objective optimization.
Key words: large scale    many-objective    evolutionary algorithm    ovariable grouping    levy distribution    
0 引言

MOEA/D[1]、NSGA-Ⅲ[2]、GHEA2、IBEA等这些多目标进化算法在解决多目标优化问题时,大多关注目标数量增多时的性能,没有考虑含有大规模变量的情况,将决策变量当作整体优化,因此比较适合低维决策变量的多目标优化问题.文献[3-4]提出了一些大规模变量的单目标优化方法,但与多目标问题之间相互冲突,解决大规模变量的多目标优化问题更为复杂.文献[5]与文献[6]类似,采用决策变量随机分解策略,将大规模变量随机分组,然后融合合作协同框架[7]与粒子群算法[8],进行优化,此算法易陷入局部最优,也没有提供一种降低分组变量之间依赖性的明确方法.在国外的文献中,2016年提出的MOEA/DVA[9]算法,根据变量的控制属性将变量分为3类:多样性相关变量;收敛性相关变量;混合变量(两者都相关的变量).从而将大规模变量的多目标优化问题分解为多个简单的子多目标优化问题.但该算法不能处理混合变量过多的问题,并且算法只研究了目标数为2或3时的算法性能,对高维目标优化问题并不适用.受MOEA/DVA算法启发,文献[10]提出了LMEA算法,经过奇异值分解.计算角度、误差平方和等,基于聚类分析,首先将变量分为收敛性变量和多样性变量,然后再应用不同的优化策略分别优化.经实验验证,LMEA算法处理大规模变量多目标优化问题时,性能优于NSGA-Ⅲ等主流优化算法.但LMEA算法变量分组效果并不稳定且分解过程过于复杂.本文基于LMEA算法框架,首先提出了一种变量分解方法,不仅简化变量分解过程,并且提高变量分组准确率,然后在优化阶段采用levy变异策略产生子代,提高算法的全局寻优能力.

1 相关理论 1.1 变量相关性分析

相互独立的变量可以分开优化,各自的优化结果不会相互影响,相关变量因为它们之间的相关性,整体优化的结果可能与它们分开优化的结果不同,所以不能分开优化.设多目标优化问题min f(x)=(f1(x),f2(x),…,fn(x)),如果存在决策向量x,实数a1a2b1b2和至少一个目标函数fk,1≤kn,使得fk(x)|xi=a2xj=b1 < fk(x)|xi=a1xj=b1fk(x)|xi=a2xj=b2>fk(x)|xi=a1xj=b2,那么决策变量xixj相关.

1.2 levy变异策略

levy变异[11]能够产生更强烈的扰动作用,有助于提高算法的全局寻优能力.设种群规模为N,变量维度为D,其中个体x=(x1,…,xD),经过levy变异产生的新个体设为x'=(x1,…,xD),那么xx'存在的关系为$ \left\{ \begin{array}{l} x{'_i} = {x_i} + {\delta _i} \cdot {L_i}\left( \beta \right), i = 1, 2, \cdots , D\\ {\delta _i} = \exp \left\{ {\tau N\left( {0, 1} \right) + \tau 'N\left( {0, 1} \right)} \right\} \end{array} \right.$, 其中:N(0, 1)是满足均值为0, 方差为1的正态分布;$\tau = 1/\sqrt N ;\tau ' = 1/\sqrt {2\sqrt N } ;{L_i}\left( \beta \right) $是满足levy分布的随机数,β=0.8.

2 基于变量分组的多目标优化算法(GLEA) 2.1 基于随机采样与非支配排序的大规模变量分组策略

根据变量的控制属性,MOEA/DVA算法将大规模变量分为了3类:多样性变量;收敛性变量;混合变量.基于此,LMEA更细致地将变量分为收敛性变量和多样性变量.本文优化了LMEA算法的变量分解过程,通过对变量随机采样,根据对应目标空间的非支配排序结果,更简单精确地将变量分为收敛性变量和多样性变量.

设多目标优化问题为:$ \min \mathit{\boldsymbol{f}} = \min ({f_1}, {f_2});{f_1} = (1 + \sqrt {x_1^2 + x_2^2} )(2 - {x_3} - {x_4});{f_2} = (1 + \sqrt {x_1^2 + x_2^2} )$·(x3+x4); xi∈[0, 1],i=1,2,3,4.其中x1x2x3x4为决策变量.4个变量分组过程为,对变量x1,从种群中随机选择一个个体,对个体中的x1随机采样5次,采样过程为在决策变量所在范围内,随机生成一个值,个体中的其他变量值保持不变,这样就得到一个拥有5个新个体的种群,在目标空间中对应的位置如图 1(a)x1所示,然后对5个个体进行非支配排序.x2x3x4x1的处理过程相同,4个变量的非支配排序结果如图 1(b)所示.从图中可以看出,变量x1x2非支配等级覆盖范围从1到5,个体朝最优解的方向收敛,变量表现为收敛性相关,而变量x3x4对应的非支配等级只有1,没有收敛性,表现为多样性相关.于是根据非支配等级覆盖范围将变量分为了两组.

图 1 变量分组过程 Figure 1 The process of variable grouping

设个体为x=(x1,…,xD),决策变量分组算法流程如下.

Step1:输入当前种群Pop,随机采样的次数nSample,初始化收敛性变量集合CV=∅,多样性变量集合DV=∅,i=1;

Step2:当iD时,执行以下步骤,否则算法结束,输出变量分组后的结果CVDV集合;

Step3:从Pop中随机选择一个个体p1

Step4:对p1中的变量xi随机采样nSample次,形成一个种群SP

Step5:对种群SP进行非支配排序,排序后的非支配序集合为{1,2,…,maxRankNo};

Step6:如果maxRankNo>nSample/2,那么判定决策变量xi是收敛性变量CV∪{xi},否则为多样性变量DV∪{xi};

Step7:i++,转到Step2.

其中,本文都采用T-ENS[10]进行非支配排序.

2.2 基于levy变异的优化算法

将大规模变量分组后,对于收敛性变量和多样性变量两类变量,分别采用不同的优化策略.多样性变量集合中的变量同时优化,收敛性变量集合中的变量经过相关性分析后划分为多个子组,每个子组中的变量同时优化.

在多样性变量的优化策略中,对当前种群P通过levy变异操作得到第1代子种群,从第2代开始,将父代种群与子代种群合并,进行非支配排序分级,若前k个非支配层中的个体数量和大于P种群大小,那么前k-1非支配排序分级层中的个体直接作为下1代种群的一部分,另一部分从第k非支配层中选取,选取过程基于角度,首先计算第k非支配层中和已选中的个体在目标空间中的两两角度,记录每个第k非支配层中的个体与其他个体所成角度的最小角度,相继选择其中值最大的个体进入下1代种群.直到新的父代种群大小与原种群P大小相同.多样性变量的优化过程如下.

Step1:输入当前种群P,多样性变量集合DV,初始化下1代种群Q为空;

Step2:从种群|P|中随机选择P个个体{P1,…,Pm,…,P|p|},对每个个体Pm(m=1,2,…,|P|)中的与多样性相关的变量值(即DV集合中指示的决策变量),都通过levy分布产生一个新值,如此便得到|P|个新的个体,组成种群O

Step3:将种群O与种群P合并,并进行非支配排序,得到f个非支配层,Fi表示第i个非支配层;

Step4:从非支配层的第1层开始累加,若第1层中的个体数量超过了P种群的个体数量,即|Fi|>P,那么首先选出F1中的极值放入QFk=F1\Q; 若加到第k(k>1)层时,个体数量便超过了P种群数量,即|F1|+…+|Fk|>|P|,|F1|+…+|Fk-1|≤|P|, 那么将前k-1层的个体都放入种群Q

Step5:在目标空间中计算QFk中的任何两个解的角度;

Step6:如果|Q| < |P|,执行Step7,否则输出新种群Q, 优化结束;

Step7:记录Fk中每个个体与Q中个体所成角度的最小角,并将Fk中的个体按照角度从大到小排序,从中选择最大角度的个体放入Q中,转到Step6.

优化收敛性变量,以相关性分析后生成的收敛性变量子组为单位,应用二元联赛法从当前种群中循环选择较优个体,以非支配序和目标空间个体到原点的距离分别作为第1和第2选择依据.通过levy变异策略产生子代,后代种群与父代种群合并,以距离和非支配序作为选择依据,从中选取较优个体生成下1代种群.收敛性变量的优化过程如下.

Step1:输入当前种群P、收敛性变量集合CV,经过相关性分析过程后生成的子组集合subCVs={group1group2,…,groupn},n表示子组的个数;

Step2:对种群P进行非支配排序;

Step3:在目标空间中计算种群P中每个个体到原点的距离;

Step4:i=1;

Step5:判断i是否小于n,如果i < n,执行后面步骤,否则输出优化后的种群P

Step6:从种群P中,应用二元联赛法选择一个个体p1,非支配排序和距离分别作为第1和第2选择依据,将p1中对应集合groupi中指示的变量都通过levy分布产生1个新值,生成1个新的个体p'1,重复此步骤,直到产生P个新个体,组成种群O

Step7:将两个种群OP合并,进行非支配排序;

Step8:计算两个种群中所有个体到原点的距离;

Step9:根据非支配排序等级和距离,用O中的解代替P中的解;

Step10:i++,转到Step5.

2.3 算法总体框架

GLEA算法主要分为4步:首先随机初始化规模为N的初始种群;然后将变量分组;再对收敛性变量集合进行相关性分析;最后分别优化多样性变量和收敛性变量,总流程如下.

Step1:输入种群规模N,随机采样次数nSample,相关性分析时选取的解的次数nCor,初始化种群P(N);

Step2:执行变量分组过程,[DVCV] ←VariableGroup(PnSample);

Step3:对Step2中输出的收敛性变量集合进行相关性分析,subCVsInteractionAnalysis(PCVnCor);

Step4:当不满足结束条件时,执行Step5,否则输出最终种群P

Step5:执行多样性变量的优化过程,PDiversityOptimization(P, DV)和收敛性变量的优化过程,PConvergenceOptimization(P, subCVs).

3 实验

本文采用测试集函数DTLZ系列作为测试函数[12], 选择NSGA-Ⅲ、KnEA[13]、MOEA/DVA、LMEA作为对比算法,算法的性能评价采用IGD[14]指标.每个测试函数分别考虑5个和10个目标,分别取100、500、1 000个决策变量,每个算法独立运行20次,取平均值.得到表 1中对应的平均IGD指标值,表中加粗的数据是每个测试实例最好的结果.IGD指标计算公式为$ IGD(P, {P^*}) = (\mathop \sum \limits_{v \in {P^*}} d\left( {v, P} \right))/(|{P^*}|)$,其中:P是求解的最优Pareto前沿;P*是真实的Pareto前沿,|P*|值越大越能表示真实的Pareto前沿;d(v, P)是P*中的个体vP中所有个体的最小欧氏距离.本文采用文献[15]中的方法生成P*中的个体.IGD值能够反映P相对P*的多样性与收敛性,IGD值越小,说明PP*越相近,优化效果越好.

表 1 IGD Table 1 The value of IGD
3.1 参数设置

模拟二项式交叉、多项式变异的分布指数设为20, 交叉与变异概率分别设为Pc=1.0, Pm=1/D, D表示变量维度;在目标数为5时,种群规模设为126,NSGA-Ⅲ算法中帕累托前沿的边界层和内层参考点的数量分别设为5和0;目标数为10时,种群规模设为275,NSGA-Ⅲ算法中帕累托前沿的边界层和内层参考点的数量分别设为3和2;算法的终止为,100维决策变量时,最大评价次数设为1.0e+6;500维决策变量时,最大评价次数设为6.8e+6;1 000维决策变量时,最大评价次数设为1.7e+7;在KnEA算法中控制Knee points比率的参数T,5个目标时,DTLZ1、DTLZ3设置为0.3,10个目标时设置为0.1.5个目标时,DTLZ5、DTLZ6设置为0.4,10个目标时设置为0.3.DTLZ2、DTLZ4、DTLZ7在5个、10个目标时都设置为0.5.MOEA/DVA算法相关性分析的数量和控制属性分析的数量分别设置为NIA=6、NCA=50.LMEA算法在变量分组过程选择的解的数量nSel=2, 随机采样的次数nPer=4;相关性分析过程选择解的数量nCor=6.

3.2 实验结果

表 1所示,表中加粗的数据是每个测试实例最好的结果.总体来看,LMEA与GLEA算法相对于NSGA-Ⅲ与KnEA、MOEA/DVA算法在大规模多目标问题上性能良好,并且IGD结果相近,LMEA与GLEA随着变量维度增大,性能表现一致,具有良好的伸缩性.GLEA在DTLZ1到DTLZ6测试函数为10个目标时,在几个算法中都是较优的;在DTLZ4、DTLZ5、DTLZ6测试函数上,GLEA不论5个目标还是10个目标时,表现较优;对于DTLZ7测试函数,10个目标时LMEA与GLEA算法结果基本相等,GLEA算法稍逊于LMEA.从IGD测试指标可以看出,对比其他几个多目标算法,GLEA在解决大规模多目标问题时是有效的.

4 总结

本文提出的GLEA算法,在变量分解过程中,根据变量的控制属性,通过扰动变量和非支配排序,将大规模决策变量简单精确地分为两类,在进化过程中,采用levy变异策略产生子代,提高算法的全局寻优能力.在标准测试函数DTLZ系列进行仿真实验,用IGD指标进行性能评价,实验结果表明:GLEA比NSGA-Ⅲ、KnEA、MOEA/DVA性能提升显著.当目标数分别增加到5个、10个超多目标,决策变量分别增加到100维、500维、1 000维大规模的决策变量时,GLEA能够更好地保持解的多样性与收敛性.对比LMEA算法,GLEA整体稍好于LMEA.GLEA能够较好地解决大规模决策变量的多目标优化问题.

参考文献
[1]
ZHANG Q, LI H. MOEA/D: a multiobjective evolutionary algorithm based on decomposition[J]. IEEE transactions on evolutionary computation, 2007, 11(6): 712-731. DOI:10.1109/TEVC.2007.892759 (0)
[2]
DEB K, JAIN H. An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part ⅰ: solving problems with box constraints[J]. IEEE transactions on evolutionary computation, 2014, 18(4): 577-601. DOI:10.1109/TEVC.2013.2281535 (0)
[3]
CHENG R, JIN Y. A competitive swarm optimizer for large scale optimization[J]. IEEE transactions on cybernetics, 2015, 45(2): 191-204. DOI:10.1109/TCYB.2014.2322602 (0)
[4]
CHENG R, JIN Y. A social learning particle swarm optimization algorithm for scalable optimization[J]. Information sciences, 2015, 291(6): 43-60. (0)
[5]
邱飞岳, 莫雷平, 江波, 等. 基于大规模变量分解的多目标粒子群优化算法研究[J]. 计算机学报, 2016, 39(12): 2598-2613. DOI:10.11897/SP.J.1016.2016.02598 (0)
[6]
邱飞岳, 莫雷平, 王丽萍, 等. 周期性变量分解的多目标进化算法研究[J]. 小型微型计算机系统, 2016, 37(6): 1318-1322. DOI:10.3969/j.issn.1000-1220.2016.06.039 (0)
[7]
POTTER M A, JONG K A D. A cooperative coevolutionary approach to function optimization[M]. Berlin: Springer-Verlag, 1994: 249-257. (0)
[8]
王杰, 李慧慧, 彭金柱. 一种拟随机初始化模拟退火粒子群算法[J]. 郑州大学学报(理学版), 2016, 48(3): 75-81. (0)
[9]
MA X, LIU F, QI Y, et al. A multiobjective evolutionary algorithm based on decision variable analyses for multiobjective optimization problems with large-scale variables[J]. IEEE transactions on evolutionary computation, 2016, 20(2): 275-298. DOI:10.1109/TEVC.2015.2455812 (0)
[10]
ZHANG X Y, TIAN Y, CHENG R, et al. A decision variable clustering-based evolutionary algorithm for large-scale many-objective optimization[J]. IEEE transactions on evolutionary computation, 2018, 22(1): 97-112. (0)
[11]
董红斌, 黄厚宽, 何军, 等. 一种求解约束优化问题的演化规划算法[J]. 计算机研究与发展, 2006(5): 841-850. (0)
[12]
DEB K, THIELE L, LAUMANNS M, et al. Scalable test problems for evolutionary multiobjective optimization[M]. London: Springer-Verlag, 2005: 105-145. (0)
[13]
ZHANG X Y, TIAN Y, JIN Y. A knee point-driven evolutionary algorithm for many-objective optimization[J]. IEEE transactions on evolutionary computation, 2015, 19(6): 761-776. DOI:10.1109/TEVC.2014.2378512 (0)
[14]
ZHOU A, JIN Y, ZHANG Q, et al. Combining model-based and genetics-based offspring generation for multi-objective optimization using a convergence criterion[C]//Proceedings of the IEEE Congress on Evolutionary Computation. Vancouver, 2006: 892-899. (0)
[15]
DAS I, DENNIS J E. Normal-boundary intersection: a new method for generating the pareto surface in nonlinear multicriteria optimization problems[J]. Siam journal on optimization, 1998, 8(3): 631-657. DOI:10.1137/S1052623496307510 (0)