基于-支配的多目标进化算法及自适应调整策略

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1基于-支配的多目标进化算法及自适应调整策略刘鎏1,李敏强1,林丹21(天津大学系统工程研究所天津300072)2(天津大学理学院应用数学系天津300072)摘要:本文提出了一类新的基于-支配关系的多目标进化算法。该算法采用配对比较选择和稳态替换策略,提高了算法的收敛速度,降低了计算时间。首先,在保持种群分布性上,采用了一种新的基于-支配关系的精英保留策略,避免了传统修剪策略所引起的Pareto前沿面的退化。其次,根据不同取值分析了算法收敛性,提出了一种自适应调整策略。最后,通过5个常用的双目标测试函数的计算,验证了包括该自适应调整策略的多目标进化算法在求解质量上要显著强于NSGAII,SPEA2和-MOEA等主流多目标进化算法。关键词:多目标优化;-支配;进化算法;自适应调整;精英保留策略;稳态策略1.前言求解最优化问题(也称数学规划问题)是指从所有可能的方案中选择最合理的一种以达到目标优化的过程。当优化问题的目标个数多于一个时,称之为多目标优化。在通常情况下,同一问题中的多个目标函数是彼此矛盾的,因此最终结果是获得一系列折衷解。多目标进化算法是指利用进化搜索的技术去解决多目标优化问题。DavidSchaffer[1]提出了第一个多目标进化算法即向量进化遗传算法,而后该领域专家又提出了多种多目标进化算法并应用于求解实际问题。Coello[2]总结了目前的多目标进化算法,并将它们分为两代:第一代强调简洁,第二代强调效率,它们之间的主要区别在于精英个体是否被引入种群的进化过程之中。Laumanns[3]归纳了采用精英策略的多目标进化统一模型(AunifiedmodelforMOEAs,UMMEA),通过将存储当前所有非被支配个体的种群同一般的进化种群相结合,实现精英参与种群的进化。大部分第二代的多目标进化算法,如强度Pareto进化算法(SPEA)[4],强度Pareto进化算法2(SPEA2)[5],Pareto包络选择算法(PAES)[6],都符合这样的模型结构。另一个常用的非劣排序遗传算法2(NSGAII)没有直接利用外部种群。它将子代种群和父代种群相结合,优先选择其中的精英个体去构成下一代的进化种群。这种策略也实现了精英个体加入种群进化,并取得了很好的计算结果。另一个分类标准即是否采用了Pareto支配排序。Goldberg[7]率先将Pareto优化的概念引入多目标进化算法。当前的多目标进化算法大多通过Pareto支配关系的排序来计算种群中个体的适应值,从而引导种群朝向Pareto前沿面进化。虽然这种方法可以较好地改善算法的收敛性,但是排序过程要耗费大量的计算。为了提高进化算法效率,一些研究者采用了稳态的进化策略。所谓稳态是当新个体产生后立即加入种群的下一代进化过程之中,如简单进化算法(SEAMO)[8],Pareto收敛遗传算法(PCGA)[9],-多目标进化算法(-MOEA)[10]。在选择个体进入交配池的操作中,它们均采用配对比较的方法,而没有进行个体适应值的计算。实验结果表明这些基于稳态的进化算法在处理某些问题上要优于基于Pareto排序的算法[8,11]。本文研究工作受国家自然科学基金(No.70571057,No.70171002)和“新世纪优秀人才支持计划”(NCET-05-0253)资助。刘鎏,男,1982年生,博士研究生,研究方向为多目标进化算法理论及其应用。Email:liuliu.tju@gmail.com。李敏强,男,1965年生,教授,博士生导师,主要研究领域为进化计算理论,数据挖掘和机器学习。林丹,男,1968年生,副教授,硕士生导师,主要研究方向为遗传算法理论及其应用。2另外,由于非支配解的数量巨大,而外部种群存储容量有限,很多修剪策略,如PAES中的自适应网格,NSGAII中的Crowding-Distance,SPEA中的聚类和SPEA2中的最近距离方法等,都在各自算法中发挥了很好的作用。然而,正如[12]所述,这些修剪策略很可能造成Pareto前沿的退化,进而影响到最终种群的收敛。Laummans[13]根据-支配关系,提出一种基于网格向量的种群修剪策略,可以很好地防止进化过程中种群的退化。这种策略在计算网格向量时,除了参数,还需要获得各个目标上的最小值,并且相同网格中的个体比较需要计算各自的欧式距离,相对来说计算量比较大。本文提出了一种新的基于-支配关系的多目标进化算法,即-支配多目标进化算法(-dominanceMOEA,EDMOEA)。该算法采用一种新的基于-支配关系的修剪策略,不仅可以防止退化现象,还可以有效的保存极端值个体以保证Pareto前沿面的广度。该算法基于稳态替换策略,利用2的选择方法,可以更加快速有效地到达Pareto前沿面。同时,在新算法中采用了新的自适应调整策略,实验结果验证了这种新策略的优越性。本文的结构如下:第2节介绍了Pareto优化和-Pareto优化的概念;第3节简要引入了协同UMMEA模型,并对其进行了修正;第4节详细讨论了新的EDMOEA算法和自适应调整策略;第5节针对在一系列测试函数上的计算实验,将包含自适应调整策略的自适应多目标进化算法(AEDMOEA)同固定策略的EDMOEA及NSGAII,SPEA2,-MOEA等其它算法进行对比,分析了新算法的性能优势。第6节总结本文研究结论。2.基本概念2.1Pareto支配关系在多目标优化问题中,Pareto优化解是最常用的优化概念。它最早由FrancisYsidroEdgeworth在1881年提出而后经VilfredoPareto推广[14](为方便讨论起见,本文的优化问题皆为最小化问题),其定义如下:定义1(Pareto支配):设:mkRRf,12,mRxx。称解1x支配解2x当且仅当1()fx部分地优于2()fx,即{1,,},ik12()()iiffxx{1,,}ik,12()()iiffxx,记做12xx。定义2(Pareto最优解):解*x称之为解集合的Pareto优化解当且仅当集合*{|}xxx,x。定义3(Pareto最优解集):对于给定的多目标优化问题,设其定义域为,则其Pareto最优集*X,定义为:*{|()}Xxx,fxfx。将Pareto最优解集在函数空间上对应的集合称之为Pareto前沿,记为*PF。2.2-支配关系-支配关系是传统的Pareto支配关系的弱化[15],其具有多种概念形式。这里我们采用加的形式,且对于给定的kR,0i,ik。其定义如下:定义4(-支配):设:mkRRf,12,mRxx,对,0kiR,称1x-支配2x当且仅当1,,ik,12()()iiiffxx,且i,12()()iiiffxx。记为:12xx。定义5(-Pareto最优解集近似)[13]:集合aX称为X的-Pareto最优解集近似,当且仅当对3任意Xx都存在aXx',使得x'x。定义6(-Pareto解集)[13]:集合X称为集合X的-Pareto解集,当且仅当X为集合X的-Pareto最优解集近似,且*XX。根据以上定义,可以得到如下两个定理。定理112,Xxx,12xx12xx。证明:因为12xx,故对i有12iiffxx,且i,使得12iiffxx。又由0i,则对i,12iiiffxx。因此可知12xx。定理得证。定理2设123,,Xxxx,则有1223,xxxx13xx。证明:由题设可知12xx,则有i,12iiffxx,且i,使得12iiffxx。又由0i,故可知i,12iiiiffxx。另一方面,由23xx,据定义可知i,3iiiff2xx,i,23iiiffxx。显然可知,对i,有13iiiffxx,即13xx。定理得证。值得注意的是,X和aX分别作为集合X的-Pareto解集和-Pareto最优解集近似,都不是唯一的。一些个体靠近Pareto前沿,但不是Pareto最优解,若满足-支配关系,都有可能包含在aX中。定义6可以保证X中的个体皆为Pareto最优解。3.多目标进化算法的进化模型Laumanns[3]给出了采用精英策略的多目标进化算法的一般模型结构UMMEA,协同进化个体种群和精英种群。精英策略是指优良的个体不会因为劣个体的影响而被排除出种群的基因池。其算法流程如下:首先,采用初始化算子生成进化种群和精英种群,并选择参数精英强度ep。然后,由当前的进化种群和精英种群生成子代种群。其中,精英强度ep控制精英个体的参与程度,即从精英种群中选择个体作为交配个体的概率。取样过程由取样算子(sample)控制,变化算子(vary)则通过交叉和变异操作而产生子代个体。虽然PAES,SPEA,SPEA2皆可抽象为这样的构架,然而对于NSGAII和-MOEA来说,却需要做一些必要的修正,如算法1所示。算法1修正的具有精英策略的多目标进化算法。tA表示精英种群,tB表示进化种群,tep表示精英强度,tS表示子代种群。1.:0t2.0000(,,,):()eABSpinitialize3.whileterminate(,,)ttABtfalsedo4.:1tt5.:tSvary111(((,,)))tttesampleevaluateABp6.11:((,))tttAtruncateupdateAS7.111:(,,)tttteepadaptABp8.12:(,)tttBupdateBS9.endwhile算法1在进化过程中强调了子代种群同父代种群之间的竞争作用。这种竞争不仅在评估过程中而且也分别在两个种群的更新算子(1update和2update)中。显然,-MOEA可以看作算法1的一个实例,NSGAII4即是精英种群设置为零的特殊情形。当直接把子代种群看作下一代进化种群时,算法1同Laumanns所提的UMMEA是等价的[3]。由于进化种群的更新过程同精英种群是相对独立的,在进化过程中或许有部分的精英个体进入进化种群。因此,精英强度重新定义为从两个协同种群中选择的交配个体都为精英的概率。4.EDMOEA算法在本节中,我们提出了一类新的基于-支配关系的多目标进化算法。同-MOEA一样,它也可以分解为算法1的实例。这两个算法的主要区别即在于精英种群的更新策略上。新算法的更新策略结构简单,且具有较少的参数设置。4.1精英种群的更新策略首先,我们给出对于给定的集合X逼近其Pareto最优解集的迭代搜索算法的基本框架[13],如算法2所示。算法2迭代的搜索算法1::0t2:0:X3:whileterminate,tXtfalsedo4::1tt5::txgenerate()6::tXupdate1,ttXx7:endwhile8:Output:tX其中,t表示迭代次数,tx表示在第t次循环时所产生的新的个体,而集合tX表示t时的精英种群。算子generate()是指在第t次迭代时产生新的子代个体;update()表示结合新的子代个体对原有的精英种群1tX做更新操作,其流程如算法3所示。算法3生成Pareto最优解集的更新算法1:Input:X,x2:ifxXsuchthatxxthen3::XX4:else5::|DxXxx6:\XXxD7:endif8:Output:X.显然,如果我们采用算法3的更新策略,通过算法2所得到的最终种群将是Pareto最优解集的子集合。然而若仅仅将算法3第2行的Pareto支配关系改为-Pareto支配关系,最后所输出的解集仅仅是-Pa

1 / 14
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功