一种基于杂草克隆的多目标粒子群算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种基于杂草克隆的多目标粒子群算法
鲁鹏;章卫国;李广文;刘小雄;李想
【摘要】When the existing MOPSO algorithm is applied to optimizing the functions with the discontinuous Pareto front, its convergence and the diversity of its population are poor. To solve the problem, we propose our new IWMOPSO (Invasive Weed MOPSO) algorithm, which we believe is more efficient than existing ones. Sections 1 Ihrough 2 of the full paper explain our new IWMOPSO algorithm. Section 1 presents the defects of the MOPSO algorithm. Section 2 explains how to reduce such defects to a minimum. Section 3 uses five benchmark test functions to compare the performance of our new IWMOPSO algorithm with those of the existing MOPSO and NSGA- II algorithms. The test results, given in Tahles 1 and 2 and Fig. 7, and their analysis show preliminarily that both the convergence of our IWMOPSO algorithm and its diversity are enhanced by the improved file maintenance strategy and the unfeasible solutions, with the Pareto front obtained with our new algorithm very close to the real Pareto front, thus being more efficient than both the MOPSO and NSGA- II algorithms.%多目标粒子群算法( MOPSO)在优化函数时,尤其对于Pareto前沿是分段不连续的优化函数,存在收敛速度慢,种群多样性差的缺陷.针对此问题,将杂草克隆机制引入MOPSO,提出了一种新的多目标粒子群算法,称之为IWMOPSO.该算法利用改进的档案维护策略和不可行解增强多样性和均匀性,通过标准测试函数验证,能够使所求得的Pareto最优解逼近整个Pareto真实前沿,收敛性和多样性明显优于MOPSO和NSGA-Ⅱ,具有较强的应用性.
【期刊名称】《西北工业大学学报》
【年(卷),期】2012(030)002
【总页数】5页(P286-290)
【关键词】多目标算法;粒子群算法;Pareto前沿;杂草克隆;MOPSO;NSGA-Ⅱ【作者】鲁鹏;章卫国;李广文;刘小雄;李想
【作者单位】西北工业大学自动化学院,陕西西安710072;西北工业大学自动化学院,陕西西安710072;西北工业大学自动化学院,陕西西安710072;西北工业大学自动化学院,陕西西安710072;西北工业大学自动化学院,陕西西安710072
【正文语种】中文
【中图分类】TP301.6
MOPSO[1]能解决一些多目标优化问题[2],但是处理一些复杂的尤其是Pareto前沿是分段不连续的优化函数,如KUR测试函数,该方法求得的Pareto 最优解多样性不好,分布也不均匀,得到的非劣解的分布范围也有限。

本文针对MOPSO在这方面的缺陷,提出一种基于杂草克隆的多目标粒子群算法。

该算法引入杂草克隆机制[3],有效地解决了处理前沿不连续函数收敛性差、多样性差的问题,另外,还改善了自适应网格法对档案粒子的裁断操作,使每个网格能够自适应地删除粒子,提高了计算效率。

1 MOPSO的缺陷
1.1 档案维护的缺陷
MOPSO采用外部档案保存找到的最优解,当所找到的解超出外部档案的容量范
围时,传统的甚至不少多目标粒子群算法都是通过找出粒子数较多的网格,然后从这些网格中随机地删除多余的粒子。

图1 网格粒子
图2 删除后的网格粒子
图3 改进删除后的网格
如图1所示,假设档案规模为10,而将最优解保存到档案中时,规模已经达到14,于是选出粒子数较多的网格,共5个,从其中随机删除4个粒子,这时候就可能
出现如图2所示的情况,即粒子数为4的网格可能没有被删除粒子,而其它几个
粒子数多于1的网格均被清除1个粒子,从图可以明显看出,这样删除后的网格
粒子多样性很差,经历多次类似这样的操作后,会造成个别网格密度很大,这对于获得具有好的多样性的Pareto前沿很不利。

1.2 对复杂函数尤其对Pareto前沿是分段不连续的函数优化的缺陷
MOPSO在优化具有分段不连续Pareto前沿的函数时,往往会遇到两个问题:1)经过很多代的进化往往得到的档案中Pareto非劣解的个数并不多;2)得到的Pareto
非劣解收敛性差、多样性差,在真实前沿周围波动。

如测试KUR函数时,用MOPSO算法经1 000代优化得到的Pareto解如图4所示。

该函数真实前沿是由一个点(-20,0)和3段分段曲线组成,由图4看出,用MOPSO求得的前沿没有
逼近真实前沿,第1个点离真实前沿较远,第1段曲线粒子数很少,多样性差,
分布很不均匀,大部分非劣解在真实前沿周围波动。

图4 用自适应网格法求解的前沿
2 对MOPSO缺陷的解决方案
2.1 档案维护的改进
针对大部分MOPSO在档案维护上的缺陷,本文提出自适应维护网格的方法
式中,n是该网格要删除的粒子数,N是当前档案中的粒子数,M是指定的档案
规模,(N-M)是总共要删除的粒子数,η是该网格中粒子数占所有粒子数的比例,α是尺度收缩因子,α>1。

该方法进行档案维护的思想是:多者去多,少者去少。

即若该网格多余粒子数相对较多(少),则删除较多(少)的粒子。

用该方法进行档案
维护的结果如图4所示,可见,采用该方法既可以很好地保持多样性和均匀性,
又能减小计算量。

2.2 针对优化Pareto前沿不连续函数缺陷的分析与解决方案
优化不连续前沿出现收敛性差、多样性差、非劣解集分布不均匀的主要原因是没有好的搜索机制,光靠档案中的粒子引导群体中的粒子飞行,因此很难找到非支配解。

下面通过图示加以解释。

图5 前沿连续
图6 前沿分段不连续
如图5所示,对于Pareto前沿连续的函数,档案中粒子指导种群中的粒子A飞行,A可能先受粒子1引导,再经粒子2引导,经过几次飞行后可能会达到C点,即
位于Pareto前沿上,而对于Pareto前沿不连续的函数,如图6所示,粒子A先受第1段前沿上的粒子指导飞行到B,然后再受第2段前沿上的粒子指导飞行到C 点,而C点并不在前沿上,如此反复,粒子绝大多数都是在真实前沿周围摆动,
因此产生的非支配解少,Pareto前沿就会表现出收敛性差、多样性差、分布不均
匀的特点,这种情况在相邻两段前沿上某段前沿上粒子数很少时表现得更剧烈。

前文提到出现这种情况的根本原因是没有一个好的搜索机制,针对这种情况,具体算法请见文献[3],本文引入杂草克隆搜索机制,能够有效解决问题。

原因是: 1)该机制按适应度的大小确定杂草个数的多少。

针对本文问题,对所求得的前沿中,收敛性差的个体周围分布的粒子少,将其适应度列为最大,产生的子代多;反之,
产生的子代少。

针对KUR问题,靠近第1段前沿(一个点)附近的第2段前沿收敛
性差、多样性较差、粒子少,产生子代多,有助于搜索周围较好的解,而对第3
段和第4段前沿,其粒子数相对较多,产生子代少,避免不必要的大范围搜索,
而是进行有效的局部搜索。

2)该机制在父代周围产生一定数量的子代,提高了局部搜索,因此能够在其周围找到逼近真实前沿的个体的概率更大,从而使所求的解逼近整个真实前沿,解决了收敛性差、多样性差的问题。

优化KUR时,往往得到离第1个点很近的最优解,而通过此方法就能有效地逼近真实解(-20,0)。

3)该搜索机制在进化中自适应地调整个体分布的标准差,进化前期充分增强种群的多样性,如优化KUR时,MOPSO运行1 000代,IWMOPSO运行200代,MOPSO运行50代和500代的多样性指标Δ分别为1.212 5和0.642 9,而用IWMOPSO运行10代和100代的Δ为0.579 9和0.439 3。

进化后期,加强局
部搜索,增强了算法的收敛性和多样性。

综上所述,给出IWMOPSO的算法步骤:
Step1 初始化粒子群。

Step2 将种群的非劣解保存到外部档案中。

Step3 对外部档案的粒子自适应地划分网格。

Step4 对种群中的每个粒子,从外部档案中找出支配该粒子的个体,从这些个体
中选取一个密度大的个体作为该粒子的全局最优解。

Step5 根据粒子群迭代公式更新粒子群。

Step6 将新产生的非劣解保存到外部档案中。

Step7 对档案中的粒子进行杂草克隆操作
Step7.1 对档案中的粒子进行聚集距离排序,对聚集距离最大的分配最大的适应度,对距离最小的分配最小的适应度。

按适应度分配该粒子应产生的子代数目。

Step7.2 按正态分布产生子代。

Step7.3 将新产生的个体与父代个体进行比较,若受支配则排除,若支配父代个体,则进入档案,同时将父代个体从档案中删除,若不受支配同时也不支配父代个体,则放入档案。

Step8 若外部档案的粒子规模超过指定规模,则用本文的维护档案的方法对档案
进行裁断操作。

Step9 判断是否符合终止条件,若符合则停止搜索,否则转向Step3。

3 性能分析与比较
本文选取的测试函数有 KUR、ZDT1、ZDT2、ZDT3和ZDT6,评价性能指标有收敛性指标GD和多样性指标Δ,具体请参见文献[4]。

将本文的算法与NSGA-Ⅱ以及MOPSO比较,NSGA-Ⅱ的种群规模是100,迭
代次数为1 000次,MOPSO和本文算法的粒子群规模为100个,档案规模为100个,MOPSO迭代次数为1 000代,本文算法迭代次数为200代,每个算法
各自运行10次,得到的指标均值和指标方差列表如下。

表1 收敛性GD指标KUR ZDT1 ZDT2 ZDT3 ZDT6 NSGA-Ⅱ 均值算法0.005 04 0.000 75 0.002 47 0.001 75 0.140 00 MOPSO 均值0.056 08 0.075 55 0.152 12 0.645 84 3.073 92方差0.000 82 0.000 43 0.019 1 0.001 33 0.190 IWMOPSO均值0.041 89 0.081 12 0.242 97 0.157 36 1.029 72方差0.001 5 0.000 1 0.000 1 0.000 4 0.000 1方差0.000 40 0.000 019 0.000 010 0.000
019 0.000 012
从表1可以看出,在收敛性方面,本文提出的算法较其它算法的优越性很明显,
尤其对于KUR,ZDT3,ZDT6,优势更明显(如ZDT6的均值的数量级从100提
高到10-4,方差的数量级从10-1提高到10-5),对于这三个函数,NSGA-Ⅱ和MOPSO都很难逼近整个真实前沿,而本文算法产生的非劣解不仅分布在整个真
实前沿上,还具有很好的收敛性。

尤其对于ZDT6和KUR,NSGA-Ⅱ和MOPSO
的非劣解分布范围也很有限,对KUR运行1 000代的结果如图4所示,用本文算法运行200代的结果如图7所示,可以看出本文算法得到的非劣解全部在真实前
沿上,且多样性好、分布均匀。

关于ZDT1和ZDT2函数,用NSGA-Ⅱ和MOPSO基本能够逼近真实前沿,但本文算法的收敛性要明显好于这两个算法。

本文算它的指标方差相比其它算法均很小,说明改进后的算法稳定性较高。

表2 多样性Δ指标KUR ZDT1 ZDT2 ZDT3 ZDT6 NSGA-Ⅱ 均值算法0.724 28 0.537 48 0.881 87 0.796 25 0.954 90方差0.003 23 0.001 33 0.023 1 0.001
61 0.005 30 IWMOPSO均值0.006 37 0.013 5 0.029 6 0.001 9 0.000 3 MOPSO 均值0.649 15 0.591 47 0.928 70 0.607 45 0.927 65方差0.435 6
0.513 7 0.504 4 0.558 7 0.656方差0.003 87 0.000 50 0.003 83 0.003 58
0.006 40
从表2可以看出,在多样性方面,本文提出的算法相对其它两个算法也具有很大
的优势,尤其体现在KUR、ZDT3、ZDT6,其均值甚至不到其它算法的2/3。


于ZDT1、ZDT2来讲,本文算法的优越性没有对其他函数明显,尤其对于ZDT1,本文算法均值与NSGA-Ⅱ相差不大,这是因为本文在运用杂草克隆搜索机制时,
首先运用了NSGA-Ⅱ中的聚集距离对其个体进行适应度排序,另一方面原因是该
函数是相对简单的测试函数,但是本文算法的方差却比NSGA-Ⅱ小很多,说明本
文算法的稳定性提高不少。

图7 IWMOPSO算法得出的非劣解集与真实前沿比较
从图7可以看出,本文提出的IWMOPSO算法得出的非劣解能够完全逼近且分布在整个Pareto真实前沿上,收敛性好、多样性好且分布均匀,尤其对前沿分段不连续的KUR和ZDT3函数,IWMOPSO得出的非劣解也能基本与真实前沿重合,再次说明了本文算法的有效性。

4 结论
本文针对多目标粒子群算法在优化过程中的缺陷,特别是对于Pareto前沿不连续函数的优化,提出的基于杂草克隆搜索机制的IWMOPSO算法确实能很有效提高多目标粒子群算法的收敛性能,且其多样性性能也很好,解决了MOPSO在这些方面的缺陷。

新算法适用于各种类型Pareto前沿的多目标函数优化问题,且效率高,有更大的优越性,贴近于工程实际,具有广泛的应用前景。

参考文献:
[1]Coello C A,et al.Handling Multiple Objectives with Particle Swarm Optimization.IEEE Trans on Evolutionary Computation,2004,8(3):256-279
[2]Chamaani S,Mirtaheri S A.Improvement of Time and Frequency of Antipodal Vivaldi Antenna Using Multi-Objective Particle Swarm Optimization.IEEE Trans on Antennas and Propagation,2011(59):1738-1742
[3]Mehrabian A R,Lucas C.A Novel Numerical Optimization Algorithm Inspired from Weed Colonization.Ecological Informatics,2006,1(4):355-366
[4]雷德明,严新平.多目标智能优化算法及应用.北京:科学出版社,2009 Lei Deming,Yan Xinping.Multi-Objective Evolutionary Optimization and Application.Beijing Science Press,2009(in Chinese)。

相关文档
最新文档