协同进化数值优化算法及其应用分析

协同进化数值优化算法及其应用分析
协同进化数值优化算法及其应用分析

Vol.32No.9

Sep.2016

赤峰学院学报(自然科学版)JournalofChifengUniversity(NaturalScienceEdition)第32卷第9期(上)

2016年9月协同进化数值优化算法及其应用分析

梁树杰

(广东石油化工学院高州师范学院,广东

高州525200)

要:探讨协同进化数值优化算法在无约束优化、约束优化、多目标优化问题及其在不同领域的应用情况,旨在充分发

挥协同进化数值优化算法的作用,进而为各领域的发展奠定基础.

关键词:协同进化算法;数值优化;应用中图分类号:O224;TP273.1

文献标识码:A

文章编号:1673-260X(2016)09-0006-02

协同进化作为一种自然现象,具有普遍性,超过两个种群间经相互影响,便会出现此现象,可用于解释种群间的适应性,将其用于生物学研究,促进了生物进化.在进化计算研究方面,协同进化算法作为一种快速发展的最优化算法,他是传统进化算法的一种扩展.这种算法的模型包含了两个和多个种群.不同的种群在生态系统中协同进化,并且相互作用,最终使得生态系统不断进化[1].协同进化算法在许多领域得到了广泛的应用[2].在许多非常困难的问题上,协同进化算法都证明了其作为优化算法的有效性.文章综述了国内外学者的研究内容,介绍了进化算法、协同进化算法等,重点阐述了其在各类问题中的应用,旨在为协同进化数值优化算法的推广提供可靠的理论保障.1协同进化数值优化算法的概况1.1进化算法

在人类生存与发展过程中涉及众多的优化问题,与分析问题相比,优化问题属于逆问题,在求解方面具有较大的难度,造成此情况的原因主要为优化问题的可行解为无穷多个,但要在可行解集合中获取最优化解,通常情况下,利用数学规划法可实现对相关问题的处理,但实际计算过于繁琐,进而难以保证计算的准确性与有效性.为了满足实际需求,进化算法随之出现,它作为算法工具具有创新性与高效性,适应了数值优化问题的求解奠定了坚实的基础.

进化计算技术属于人工智能技术,它主要是通过对自然界生物进化过程及机制的模拟,以此实现了对相关问题的求解,其具有自组织、自适应与自学习的特点.进化算法是由生物学知识逐渐发展而来的,即:生物种群的优胜劣汰、遗传变异等,在此过程中生命个体对环境的适应力不断在

增强.通过国内外学者的不断探索与研究,进化算法及其相关的计算智能方法日渐丰富,其中进化数值优化算法吸引了众多学者的目光[3].

与传统优化算法相比,

进化算法具有一定的特殊性,其优势显著,主要表现在以下几方面:处理对象为编码,通过编码操作,使参数集成为个体,进而利于实现对结构对象的直接操作;便于获得全局最优解,借助进化算法,可对群体中的多个个体进行同时处理,从而提高了计算准确性,降低了计算风险性;不需要连续可微要求,同时可利用随机操作与启发式搜索,从而保证了搜索的明确性与高效性,在此基础上,它在各个领域的应用均取得了显著的成效,如:函数优化、自动控制、图像处理等.但进化算法也存在不足,主要表现为其选择机制仍为人工选择,在实际问题处理过程中,难以发挥指导作用;同时,局部搜索能力相对较差,难以保证解的质量[4].

为了弥补进化算法的不足,相关学者通过研究提出了新型计算智能方法,具体包括免疫进化算法,它主要是利用自然免疫系统功能获得的,此方法在数据处理、故障诊断等方面均扮演着重要的角色;Memetic算法属于混合启发式搜索算法,其利用了不同的搜索策略,从而保证了其应用效果;群智能算法主要分为两种,一种为蚁群算法,另一种为粒子群算法,前者可用于多离散优化问题方面;后者主要利用迭代从而获取了最优解,由于其具有简便性与实用性,因此其应用较为广泛;协同进化算法作为新型进化算法,其分析了种群与环境二者间的关系,并对二者进化过程中的协调给予了高度关注[5].1.2协同进化算法

收稿日期:2016-05-23

基金项目:广东省教育研究院课题项目(GDJY-2015_F-b057);茂名市青年名师培养项目成果

传统优化算法

协同进化算法

简化问题无法简化复杂的问题.简化问题,利用分解分解问题等方式,对复杂问题的简化,从而实现求解.兼容性相对简单,算法相对独立.兼具了不同优点,发挥了不同搜索算法的作用,保证了种群间的有效协同进化.

应用领域

应用领域相对独立.

适应了各领域的需求,在各个领域均涉及协同思想.

表一

协同进化算法与传统优化算法的对比

在数值优化领域中应用协同进化算法,相关的研究成果主要体现在无约束优化、约束优化与多目标优化等方面.

在第一类问题方面.对于进化算法而言,其经典的应用领域

便是无约束数值优化,经过不断实际,此技术的应用日渐成

6--

DOI:10.13398/https://www.360docs.net/doc/ed7402563.html,ki.issn1673-260x.2016.17.003

熟,但在问题规模不断增大基础上,其应用难度日渐增加,因此,学者纷纷关注高维无约束数值优化问题,经研究提出了相应的算法,如:合作型协同进化遗传算法,组织优化算法;在第二类问题方面,随着进化算法应用的日渐广泛,相关的约束优化进化算法也具有了丰富性与多样性,如:罚函数法、分离约束与目标算法、各种混合算法等;在第三类问题方面,在进化计算领域中进化多目标优化逐渐成为了研究了焦点,通过不断努力,国外学者提出了捕食者-猎物模型、竞争协同进化模型、合作协同进化模型等[6].

目前,关于协同进化算法的概念缺少统一性与严谨性,为了对其进行准确的界定,应对其展开深入的研究与探讨,并将其用于实际问题,以此验证其有效性与可行性.

2协同进化数值优化算法的应用

2.1求解无约束优化问题

对于高位无约束数值优化问题而言,在实际解决过程中应充分发挥协同进化与精英策略的作用,不仅要利用M-精英协同算法,还要构建M-精英协同进化模型.MECA算法具有较高的适应度,满足了不同个体群的需求,其在整个种群进化中扮演着重要的角色,此算法对整个种群进行了划分,如:精英种群与普通种群,并由核心精英对成员进行选取,此后组建相应的团队,如果选择的成员为精英,则可利用所定义的协作操作来交换该成员和核心精英间的信息,如果选择的成员来自于普通种群,此时核心精英则要对其展开引导操作,其中涉及的写作操作与引导操作定义是通过不同类型的交叉或变异算子的组合而实现的.通过理论分析可知,全局最优解为算法中的概率为1,经过测试显示,此算法对全体测试函数而言,均可获取最优解[7];同时,将其与传统进化算法、其他协同进化算法进行比较,在适应度函数评价次数相同前提下,此算法具有较高的精度、较短的寻优时间、较低的参数敏感性,因此,它可广泛应用于实践[8].2.2求解约束优化问题

在约束优化问题中利用协同进化算法,其基础为M-精英协同进化模型,此后需要借助正交交叉算子、静态罚函数法等,以此保证了M-精英协同进化算法作用的充分发挥.在实际应用中,采用13各约束优化测试函数,经仿真实验与参数分析,其结果显示改进M-精英协同进化算法优点众多,如:较高的精度、较短的寻优时间及较好的稳定性等,它与经典约束优化进化算法及协同进化算法相比,性能显著,同时也实现了对各类约束优化问题有效解决.

2.3求解多目标优化问题

在M-精英协同进化的影响下,利用非支配邻近选择机制,针对多目标优化问题,提出了费支配紧邻协同进化多目标优化算法,即:NNCA,此算法结合费支配种群的拥挤距离,对其进行了划分,分别为精英种群与普通种群,前者拥挤距离相对较大,主要是由非支配个体构成的,在其区域内个体分布稀疏程度与组建团队的机会呈负相关,前者越稀疏,后者机会越大,其成员也越多,进而利于提高对区域搜索的全面性,但如果非支配个体过少,则会造成搜索停滞,为了避免此问题的出现,NNCA借助了精神规模保障机制.在不同机制共同作用下,进一步增强了算法的搜索能力与收敛性.此后,对多目标优化问题进行测试,其结果表明,与其他算法相比,NNCA优势显著,主要表现在最优解的宽广性与逼近性方面[9].2.4在不同领域的应用

在通信系统中,对实时性有着较高的要求,为了适应系统发展的需求,应积极解决系统中最大似然检测算法过于复杂的问题,经过不断的探索与研究,对相关算法进行了优化,以此降低了算法的复杂度、提高了其性能.在通信系统信号检测中主要利用M-精英进化算法,为了保证该算法的有效性,采用了经典背包问题仿真试验,其结果为与传统检测算法相比,M-精英进化算法促进了系统性能的提高.在仿真实验过程中,选择了60个物品的背包问题,利用上述算法,实现了组合优化问题的有效解决,因此,在实践中可将其进行推广与应用,如:将其用于CDMA系统中,以此解决多用户检测问题.

在卫星模块布局设计中,制约设计水平提高的核心为求解带平衡约束的圆形Packing问题,为了有效解决此问题,应充分发挥M-精英协同进化算法的作用.在实际处理过程中,利用静态罚函数方法,对问题进行转变,使其由约束问题转变为无约束问题,同时为了验证此算法解决实际问题的能力,可利用不同的工程设计优化问题,如:SpringDesign、SpeedReducerDesign等,此后对其进行测试,其结果显示该算法实现了复杂问题的有效处理,并且保证了布局设计的质量,同时其花费的时间相对较少[10].

3总结

综上所述,协同进化机制具有积极的意义,为了充分发挥其作用,文章介绍了协同进化数值优化算法的应用,在明确进化算法、协同进化算法相关内容的基础上,探讨了不同算法在无约束优化、约束优化、多目标优化及相关领域的应用,相信在各类复杂问题有效解决基础上,各领域将获得更加稳定与有序的发展.

——

——

——

——

——

——

——

——

——

参考文献:

〔1〕张运凯,王方伟,张玉清.协同进化遗传算法与应用[J].计算机工程,2004(15).

〔2〕H.Chen,K.P.Wong,D.H.M.Nguyen,and C.Y.

Chung,“Analyzing oligopoly electricity market using coevolutionary computation,”IEEE Trans.Power Syst., vol.21,no.1,pp.143–152,Feb.2006.

〔3〕李碧,林土胜.协同进化在遗传算法中的应用述评[J].计算机科学,2009(04).

〔4〕陈鹏.基于极值动力学的MEMETIC算法及其在非线性预测控制中的应用研究[D].上海交通大学,2011.

〔5〕刘伟,赵丹,孙宏伟.基于新型Memetic算法的多目标优化[J].吉林大学学报,2012(03).

〔6〕邓武.基于协同进化的混合智能优化算法及其应用研究

[D].大连海事大学,2012.

〔7〕刘朝华.混合免疫智能优化算法研究及其在复杂系统中的应用[D].湖南大学,2012.

〔8〕吕琳.结合学习策略的粒子群优化算法及应用研究[D].西安电子科技大学,2013.

〔9〕丁建立,陈增强,袁著祉.智能仿生算法及其网络优化中的应用研究进展[J].计算机工程与应用,2003(04).

〔10〕程军.基于生物行为机制的粒子群算法改进及应用[D].

华南理工大学,2014.

--

多目标进化算法总结

MOGA i x 是第t 代种群中个体,其rank 值定义为: () (,)1t i i rank x t p =+ ()t i p 为第t 代种群中所有支配i x 的个体数目 适应值(fitness value )分配算法: 1、 将所有个体依照rank 值大小排序分类; 2、 利用插值函数给所有个体分配适应值(从rank1到 rank * n N ≤),一般采用线性函数 3、 适应值共享:rank 值相同的个体拥有相同的适应值, 保证后期选择时同一rank 值的个体概率相同 最后采用共享适应值随机选取的方法选择个体进入下一代 一种改进的排序机制(ranking scheme ): 向量,1,(,,)a a a q y y y =???和,1,(,,)b b b q y y y =???比较 goal vector :() 1,,q g g g =??? 分为以下三种情况:

1、 ()() ,,1,,1; 1,,; 1,,; a i i a j j k q i k j k q y g y g ?=???-?=????=+???>∧≤ 2、() ,1,,; a i i i q y g ?=???> 当a y 支配b y 时,选择a y 3、() ,1,,; a j j j q y g ?=???≤ 当b y 支配a y 时,选择b y 优点:算法思想容易,效率优良 缺点:算法容易受到小生境的大小影响 理论上给出了参数share σ的计算方法

NPGA 基本思想: 1、初始化种群Pop 2、锦标赛选择机制:随机选取两个个体1x 和2x 和一个Pop 的 子集CS(Comparison Set)做参照系。若1x 被CS 中不少于一 个个体支配,而2x 没有被CS 中任一个体支配,则选择2x 。 3、其他情况一律称为死结(Tie ),采用适应度共享机制选择。 个体适应度:i f 小生境计数(Niche Count ):(),i j Pop m Sh d i j ∈= ????∑ 共享函数:1-,()0,share share share d d Sh d d σσσ? ≤?=??>? 共享适应度(the shared fitness ): i i f m 选择共享适应度较大的个体进入下一代 优点:能够快速找到一些好的非支配最优解域 能够维持一个较长的种群更新期 缺点:需要设置共享参数

多目标进化算法总结

MOGA i x 是第t 代种群中个体,其rank 值定义为: () (,)1t i i rank x t p =+ ()t i p 为第t 代种群中所有支配i x 的个体数目 适应值(fitness value )分配算法: 1、 将所有个体依照rank 值大小排序分类; 2、 利用插值函数给所有个体分配适应值(从rank1到 rank * n N ≤),一般采用线性函数 3、 适应值共享:rank 值相同的个体拥有相同的适应值, 保证后期选择时同一rank 值的个体概率相同 最后采用共享适应值随机选取的方法选择个体进入下一代 一种改进的排序机制(ranking scheme ): 向量,1,(,,)a a a q y y y =???和,1,(,,)b b b q y y y =???比较 goal vector :() 1,,q g g g =??? 分为以下三种情况: 1、 ()() ,,1,,1; 1,,; 1,,; a i i a j j k q i k j k q y g y g ?=???-?=????=+???>∧≤ 2、() ,1,,; a i i i q y g ?=???>

当a y 支配b y 时,选择a y 3、() ,1,,; a j j j q y g ?=???≤ 当b y 支配a y 时,选择b y 优点:算法思想容易,效率优良 缺点:算法容易受到小生境的大小影响 理论上给出了参数share σ的计算方法

NPGA 基本思想: 1、初始化种群Pop 2、锦标赛选择机制:随机选取两个个体1x 和2x 和一个Pop 的 子集CS(Comparison Set)做参照系。若1x 被CS 中不少于一 个个体支配,而2x 没有被CS 中任一个体支配,则选择2x 。 3、其他情况一律称为死结(Tie ),采用适应度共享机制选择。 个体适应度:i f 小生境计数(Niche Count ):(),i j Pop m Sh d i j ∈= ????∑ 共享函数:1-,()0,share share share d d Sh d d σσσ? ≤?=??>? 共享适应度(the shared fitness ): i i f m 选择共享适应度较大的个体进入下一代 优点:能够快速找到一些好的非支配最优解域 能够维持一个较长的种群更新期 缺点:需要设置共享参数

基本差分进化算法

基本差分进化算法 基本模拟退火算法概述 DE 算法是一种基于群体进化的算法,其本质是一种基于实数编码的具有保优思想的贪婪遗传算法。由于DE 算法操作简单,寻优能力强,自提出以来引起了国内外学者的高度关注,目前已在电力系统优化调度、配网重构等领域得到了应用。 1、算法原理 DE 算法首先在N 维可行解空间随机生成初始种群P 0001[,,]N =X x x L ,其中000T 1[,,]i i iN x x =x L ,p N 为DE 种群规模。DE 算法的核心思想在于采取变异和交叉操 作生成试验种群,然后对试验种群进行适应度评估,再通过贪婪思想的选择机制,将原种群和试验种群进行一对一比较,择优进入下一代。 基本DE 算法主要包括变异、交叉和选择三个操作。首先,在种群中随机选取三个个体,进行变异操作: 1123()t t t t i r r r F +=+-v x x x 其中1t i +v 表示变异后得到的种群,t 表示种群代数,F 为缩放因子,一般取(0,2],它的大小可以决定种群分布情况,使种群在全局范围内进行搜索;1t r x 、2t r x 、3t r x 为从种群中随机抽取的三个不同的个体。 然后,将变异种群和原种群进行交叉操作: 1,R 1 ,,R () or () () and ()t i j t i j t i j v rand j C j randn i u x rand j C j randn i ++?≤=?=?>≠?? 其中t 1,i j u +表示交叉后得到的种群,()rand j 为[0,1]之间的随机数,j 表示个体的第j 个分量,R C 为交叉概率,()randn i 为[1,,]N L 之间的随机量,用于保证新个体至少有一维分量由变异个体贡献。 最后,DE 算法通过贪婪选择模式,从原种群和试验种群中选择适应度更高的个体进入下一代: 11t 11 ()() ()()t t t i i i i t t t i i i f f f f ++++?<=?≥?u u x x x u x 1()t i f +u 、()t i f x 分别为1t i +u 和t i x 的适应度。当试验个体1t i +u 的适应度优于t i x 时,

基于博弈论的协同进化算法

基于博弈论的协同进化算法:一种新的计算方法 摘要:博弈论是数学分析的方法,用于开发研究决策过程的。1928年,冯·诺依曼在数学上证明,每两个人,在zero sum那个游戏里,许多每个玩家纯的有限的策略是确定性。在50年代早期,纳什提出了另一个概念,作为推广冯·诺依曼理论的基础。博弈论另外一个主要成就就是引入演化博弈论,即媒介可以在缺乏合理性的情况下,采用最优战略。根据达尔文选择过程,媒介的人口数可以进化到由梅纳德·史密斯在1982年提出的进化稳定策略。为了跟上游戏理论研究的步伐,希利斯试用了第一台计算机的模拟进化。此外,考夫曼提出了NK模型,分析不同物种之间的协同进化动力学。他展示了协同进化的现象如何达到静止状态,这些状态是在博弈论中不是纳什的论均衡亦是ESS。 由于涉及共同进化现象的研究已发起,因此,已经很有很多其他研究人员在进行协同进化算法的研究。在这篇文章中,我们提出了一个新的协同进化算法,它是基于协同进化算法(GCEA)的,那就是博弈论。我们认为,通过搜索EES, 这种算法可以解决进化问题。我们解决了几个测试多目标优化问题(MOPS)用以评估此新的方法。从这些评估的结果,我们可以证实,进化博弈可由共同进化算法来实施。而且,通过比较我们的算法与其他进化算法的性能,分析出我们的性能较优化。 第一部分简介 博弈论被分成两大类,合作与不合作。非合作博弈论的目的,是充分说明合作以及不合作。因此在本文中,我们将非合作博弈理论作为关注的焦点,在1928年,冯·诺依曼已经奠定了非合作博弈论。同时,在1951年,纳什提出了另一个概念,作为概括冯·诺依曼理论的基础。在他的文章中,双人游戏的解决方案对于战略的最低要求就是候选人,作为一个对战略的最低要求是对两个人的游戏解决方案的候选人,他建议每个策略都要给对方最好的答复。这样一对策略,这是纳什均衡,成为现代化的基础非合作博弈论。 由于纳什均衡提出的非合作博弈的解决方案,因此寻求博弈均衡的研究已经开始了。在这些研究中,演化博弈论被看作是当特殊表型取决于人口频率变化是,研究表型水平变化的一种方式。列万廷第一次明确地应用博弈论在进化生物学。他的做法是寻求尽量减少物种灭绝可能性的策略,但是,是一个图片物种游戏,违反了自然规律。Slobodkin和拉波波特也进行了类似的研究。同时,汉密尔顿寻求一个无与伦比的战略,这个战略与梅纳德·史密斯和普赖斯定义的进化稳定策略(ESS)基本相同。 紧跟这些研究中,我们将协同进化算法试用于研究不同物种之间的进化。希尔利斯演示了如何将模拟进化应用于实际优化问题中,而且特别是寄生虫进化如何能提高协同进化的过程。模拟进化是对生物系统某些方面的理想化。还有,汉密尔顿同时使用计算机模拟和数学论证提出怎么进化能够产生遗传多样性。这改善了进化过程增加在优化效率。 几个研究共同进化的研究人员研究了演化博弈论这种现象。考夫曼基于NK类统计模型介绍了协同进化。他表示,协同进化的生态系统如何实现纳什均衡,以及如何稳定扰动这种均衡。在他的论文中,他描述了一种新型的调查协同进化问题的模型。这个模型与梅纳德·史密斯和普赖斯提出的ESS息息相关。与此同时,罗辛和贝尔柳提出,进化是假设通过博弈理论模型的基础上的,例如梅纳德·史密斯的ESS和囚徒困境逻辑。他们声称,它也出现在的人工智能游戏战略的演变上,其中潜在对手的范围使得难以建立一个单一,固定的,外源的适应度函数为通常用在遗传算法。 第二部分

最新高维多目标进化算法总结

高维多目标进化算法 二、文献选读内容分析及思考 (一)Borg算法 Borg算法是基于ε-MOEA算法(Deb,2003)的一种全新改进算法[32],下面将从创新点、原理、算法流程和启发思考四方面进行阐述。 1.创新点 1)在ε支配关系的基础上提出ε盒支配的概念,具有能同时保证算法收敛性与多样性的特点。 2)提出了ε归档进程,能提高算法计算效率和防止早熟。 3)种群大小的自适应调整。 4)交叉算子的自适应选择。由于处理实际问题时,是不知道目标函数具有什么特性,前沿面如何,在具有多个交叉算子的池子里,根据进程反馈,选择不同的交叉算子,使产生的后代具有更好的特性针对要研究的问题。 2. Borg算法原理 1)ε盒支配:通过对目标空间向量的每一维除以一个较小的ε,然后取整后进行pareto支配比较。这样的支配关系达到的效果是把目标空间划分成以ε为边长的网格(2目标时),当点处于不同的网格时,按pareto支配关系比较;当处于同一网格时,比较哪个点距离中心点(网格最左下角)最近。这样一来,网格内都只有一个点。 2)ε归档进程 如图1所示,黑点表示已经归档的,想要添加到档案集的新解用×表示,阴影表示归档解支配的区域。当新解的性能提升量超过阈值ε才属于ε归档进程。比如解1、解2加入归档集属于ε归档进程,解3加入归档集就不属于ε归档进程。 图1 ε支配网格 在这个过程中设置了一个参数c,表示每一代中加入归档集解得个数,每隔一定迭代次数检测c有没有增加,如果没有增加表明算法停滞,重启机制启动。 3)重启 自适应种群大小:重启后的种群大小是根据归档集的大小设置。γ表示种群大小与归档集大小的比值,这个值也用于第二步中,如果γ值没超过1.25,重启机制也启动。启动后,γ人为设定为固定值,种群被清空,填充归档集的所有个体,不足的个体是随机选取归档集中个体变异所得。与之相匹配的锦标赛比较集大小是归档集大小乘以固定比值τ。 4)交叉算子的自适应选择 摒弃以往采用单一的交叉算子,采用包含各类交叉算子的池子,比如有K

差分进化算法-入门

基本差分进化算法 1基本差分进化算法的基本思想 DE 算法是一种基于实数编码的用于优化函数最小值的进化算法,是在求解有关切比雪夫多项式的问题时提出来的,是基于群体差异的进化计算方法。它的整体结构类似于遗传算法,一样都存在变异、交叉和选择操作,但是它又不同于遗传算法。与基本遗传算法的主要区别在于变异操作上,如: 1、传统的遗传算法采用二进制编码,而差分进化算法采用实数编码。 2、在遗传算法过两个父代个体的交叉产生两个子个体,而在差分进化算法过第两个或几个个体的差分矢量做扰动来产生新个体。 3、在传统的遗传算法中,子代个体以一定概率取代其父代个体,而在差分进化中新产生的个体只有当它比种群中的个体优良时才替换种群中的个体。 变异是DE 算法的主要操作,它是基于群体的差异向量来修正各个体的值,其基本原理是通过把种群中两个个体的向量差加权后,按一定的规划与第三个个体求和来产生新个体,然后将新个体与当代种群中某个预先决定的个体相比较,如果新个体的目标值优于与之相比较的个体的目标值,则在下一代中就用新个体取代,否则,旧个体仍保存下来。 差分进化算法其基本思想是:首先由父代个体间的变异操作构成变异个体;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一试验个体;然后在父代个体与试验个体之间根据适应度的大小进行贪婪选择操作,保留较优者,实现种群的进化。 2 差分进化算法的基本操作 设当前进化代数为t ,群体规模为NP ,空间维数为D ,当前种群为 {}12(),, ,t t t NP X t x x x =,()12,, ,T t t t t i i i iD x x x x =为种群中的第i 个个体。在进化过程 中,对于每个个体t i x 依次进行下面三种操作。 2.1 变异操作 对于每个个体t i x 按下式产生变异个体12(,, ,)t t t t T i i i iD v v v v =,则 123() 1,2, ,D t t t t ij r j r j r j v x F x x j =+-= (1) 其中111112(,,,)t t t t T r r r r D x x x x =,222212(,,,)t t t t T r r r r D x x x x =和333312(,, ,)t t t t T r r r r D x x x x =是群 体中随机选择的三个个体,并且123r r r i ≠≠≠;1t r j x ,2t r j x 和3t r j x 分别为个体1r ,2r 和3r 的第j 维分量;F 为变异因子,一般取值于[0,2]。这样就得到了变异个体t i v 。

差分进化算法综述概况

差分进化算法(DE)[1]是Storn 和Price 在1995 年提出的一种基于种群差异的进化算法,DE是一种随机的并行搜索算法。差分进化计算和其他进化计算算法一样,都是基于群体智能理论的优化算法,利用群体内个体之间的合作与竞争产生的群体智能模式来指导优化搜索的进行。与其他进化计算不同的是,差分进化计算保留了基于种群的全局搜索策略,采用实数编码、基于差分的简单变异操作和一对一的竞争生存策略,降低了进化操作的复杂性。差分进化计算特有的进化操作使得其具有较强的全局收敛能力和鲁棒性,非常适合求解一些复杂环境中的优化问题。 最初试图使用向量差进行向量种群的混洗,以此来解决切比雪夫多项式适应性问题。DE 通过种群内个体间的合作与竞争来实现对优化问题的求解,其本质上是一种基于实数编码的具有保优思想的进化算法。该算法实现技术简单,在对各种测试问题的实验中表现优异,已经成为近年来进化算法研究中的热点之一。 差分进化算法基本原理 基本的差分进化算法是基于候选方案种群的算法,在整个搜索空间内进行方案的搜索,通过使用简单的数学公式对种群中的现有方案进行组合实现的。如果新的方案有所改进,则被接受,否则被丢弃,重复这一过程直到找到满意的方案。 设 f 是最小化适应度函数,适应度函数以实数向量的形式取一个候选方案作为参数,给出一个实数数值作为候选方案的输出适应值。其目的是在搜索空间的所有方案p 中找到m 使得f(m) ≤f(p)。最大化是找到一个m 使得f(m) ≥f(p)。 设X=(x1, x2,…, xn)∈?n是种群中一个个体,基本的差分进化算法如下所述: ?在搜索空间中随机地初始化所有的个体。 ?重复如下操作直到满足终止条件(最大迭代数或者找到满足适应值的个体) o 对于种群中的每个个体: ●随机地从种群中选择三个彼此不同的个体a,b 和c。 ●选择一个随机索引R ∈{1, ..., n},n 是被优化问题的维数。 ●通过对每个i ∈{1, ..., n}进行如下的迭代计算可能的新个体Y = [y1, ..., yn] 生成一 个随机数ri~U(0,1); ●如果(i=R)或者(ri3。差分进化算法作为一种新出现的优化算法在实际应用中表现出了优异的性能,被广泛应用到不同的领域,已经成为近年来优化算法的研究的热点之一。研究差分进化算法,探索提高差分进化算法性能的新方法,并将其应用到具体工程问题的解决中,具有重要的学术意义和应用价值。 差分进化计算的群体智能搜索策略分析 1 个体行为及个体之间信息交互方法分析 差分进化的个体表示方式与其他进化计算相同,是模拟生物进化中的关键因素,即生物的染色体和基因,构造每个解的形式,构成了算法的基础。一切的寻优操作都是在个体的基础上进行的,最优个体是搜寻到的最优的解。 差分进化的个体行为主要体现在差分变异算子和交叉算子上。

差分进化算法(DE)进行最优化处理

%% Differential Evolution Algorithm(DE) 差分演化算法 %% min f(x,y)=3*(1-x).^2.*exp(-x.^2-(y+1).^2)-10*(x/5-x.^3-y.^5).*exp(-x.^2-y.^2)-exp(-(x+1).^2-y.^2)/3; %% Clear screen clear all; close all; clc; %% 初始化(Initialization) tic; %程序运行计时 error=1e-3; %允许误差 popsize=30; %种群数量 maxgen=50; %最大迭代次数(最大进化代数) nvars=2; %决策变量个数 F=0.5; %变异缩放因子 CRmin=0.2;CRmax=0.8; %交叉概率因子最值(初始全局搜索能力强,进化后期局部搜索能力强) k=1; %初始化迭代次数 x=-3+(3+3)*rand(popsize,nvars); %初始化x变量 best_trace=[]; %存储寻优路径 %% 目标函数(Objective function)

%用虚拟函数定义适应度函数以便将子函数文件与主程序文件放在一起 %目标函数为:z=3*(1-x).^2.*exp(-x.^2-(y+1).^2)-10*(x/5-x.^3-y.^5).*exp(-x.^2-y.^2)-exp(-(x+1).^2-y.^2)/3 %虚拟函数命令定义适应度函数如下 fitness=@(x)3*(1-x(1))^2*exp(-x(1)^2-(x(2)+1)^2)-10*(x(1)/5-x(1)^3-x(2)^5).*exp(-x(1)^2-x(2)^2)-exp(-(x(1)+1)^2-x(2)^2)/3; %% 主程序(Main procedure) %% Step1 对初始种群进行评价(适应度函数值) f=zeros(1,popsize); for i=1:popsize f(i)=fitness(x(i,:)); end [d1,d2]=min(f); best_fx=x(d2,:); best_fval=d1; best_trace=[best_trace best_fval]; if abs(best_fval)<=error return; end

多目标进化算法总结

x 是第 t 代种群中个体,其 rank 值定义为: rank (x ,t ) =1+p (t ) p (t )为第t 代种群中所有支配x 的个体数目 适应值 (fitness value )分配算法: 1、 将所有个体依照 rank 值大小排序分类; 2、 利用插值函数给所有个体分配适应值(从 rank1 到 rank n * N ),一般采用线性函数 3、 适应值共享:rank 值相同的个体拥有相同的适应值, 保证后期选择时同一 rank 值的个体概率相同 最后采用共享适应值随机选取的方法选择个体进入下一代 一种改进的排序机制(ranking scheme ): 向量y a =(y a ,1,,y a ,q )和y b =(y b ,1,,y b ,q )比较 分为以下三种情况: k =1,,q -1; i =1,,k ; j =k +1,,q ; (y a ,i g i )(y a ,j g j ) i =1, ,q ; (y a ,i g i ) 当 y a 支配 y b 时,选择 y a 3、j =1, ,q ; (y a ,j g j ) 当 y b 支配 y a 时,选择 y b 优点:算法思想容易,效率优良 缺点:算法容易受到小生境的 大小影响 理论上给出了参数share 的计算方法 goal vector : g = (g 1, ,g q ) 1、 2、

基本思想: 1、初始化种群 Pop 2、锦标赛选择机制:随机选取两个个体 x 和 x 和一个 Pop 的 子集 CS(Comparison Set)做参照系。若 x 被 CS 中不少于一 个个体支配,而 x 没有被 CS 中任一个体支配,则选择 x 。 3、其他情况一律称为死结(Tie ),采用适应度共享机制选择。 个体适应度: f i 小生境计数(Niche Count ): m =j Pop Sh d (i , j ) 共享适应度(the shared fitness ): 选择共享适应度较大的个体进入下一代 优点:能够快速找到一 些好的非支配最优解域 能够维持一个较长的种群更新期 缺 点:需要设置共享参数 需要选择一个适当的锦标赛机制 限制 了该算法的实际应用效果 1- 共享函数: Sh (d ) = d share 0, d share d share

协同进化数值优化算法及其应用分析

Vol.32No.9 Sep.2016 赤峰学院学报(自然科学版)JournalofChifengUniversity(NaturalScienceEdition)第32卷第9期(上) 2016年9月协同进化数值优化算法及其应用分析 梁树杰 (广东石油化工学院高州师范学院,广东 高州525200) 摘 要:探讨协同进化数值优化算法在无约束优化、约束优化、多目标优化问题及其在不同领域的应用情况,旨在充分发 挥协同进化数值优化算法的作用,进而为各领域的发展奠定基础. 关键词:协同进化算法;数值优化;应用中图分类号:O224;TP273.1 文献标识码:A 文章编号:1673-260X(2016)09-0006-02 协同进化作为一种自然现象,具有普遍性,超过两个种群间经相互影响,便会出现此现象,可用于解释种群间的适应性,将其用于生物学研究,促进了生物进化.在进化计算研究方面,协同进化算法作为一种快速发展的最优化算法,他是传统进化算法的一种扩展.这种算法的模型包含了两个和多个种群.不同的种群在生态系统中协同进化,并且相互作用,最终使得生态系统不断进化[1].协同进化算法在许多领域得到了广泛的应用[2].在许多非常困难的问题上,协同进化算法都证明了其作为优化算法的有效性.文章综述了国内外学者的研究内容,介绍了进化算法、协同进化算法等,重点阐述了其在各类问题中的应用,旨在为协同进化数值优化算法的推广提供可靠的理论保障.1协同进化数值优化算法的概况1.1进化算法 在人类生存与发展过程中涉及众多的优化问题,与分析问题相比,优化问题属于逆问题,在求解方面具有较大的难度,造成此情况的原因主要为优化问题的可行解为无穷多个,但要在可行解集合中获取最优化解,通常情况下,利用数学规划法可实现对相关问题的处理,但实际计算过于繁琐,进而难以保证计算的准确性与有效性.为了满足实际需求,进化算法随之出现,它作为算法工具具有创新性与高效性,适应了数值优化问题的求解奠定了坚实的基础. 进化计算技术属于人工智能技术,它主要是通过对自然界生物进化过程及机制的模拟,以此实现了对相关问题的求解,其具有自组织、自适应与自学习的特点.进化算法是由生物学知识逐渐发展而来的,即:生物种群的优胜劣汰、遗传变异等,在此过程中生命个体对环境的适应力不断在 增强.通过国内外学者的不断探索与研究,进化算法及其相关的计算智能方法日渐丰富,其中进化数值优化算法吸引了众多学者的目光[3]. 与传统优化算法相比, 进化算法具有一定的特殊性,其优势显著,主要表现在以下几方面:处理对象为编码,通过编码操作,使参数集成为个体,进而利于实现对结构对象的直接操作;便于获得全局最优解,借助进化算法,可对群体中的多个个体进行同时处理,从而提高了计算准确性,降低了计算风险性;不需要连续可微要求,同时可利用随机操作与启发式搜索,从而保证了搜索的明确性与高效性,在此基础上,它在各个领域的应用均取得了显著的成效,如:函数优化、自动控制、图像处理等.但进化算法也存在不足,主要表现为其选择机制仍为人工选择,在实际问题处理过程中,难以发挥指导作用;同时,局部搜索能力相对较差,难以保证解的质量[4]. 为了弥补进化算法的不足,相关学者通过研究提出了新型计算智能方法,具体包括免疫进化算法,它主要是利用自然免疫系统功能获得的,此方法在数据处理、故障诊断等方面均扮演着重要的角色;Memetic算法属于混合启发式搜索算法,其利用了不同的搜索策略,从而保证了其应用效果;群智能算法主要分为两种,一种为蚁群算法,另一种为粒子群算法,前者可用于多离散优化问题方面;后者主要利用迭代从而获取了最优解,由于其具有简便性与实用性,因此其应用较为广泛;协同进化算法作为新型进化算法,其分析了种群与环境二者间的关系,并对二者进化过程中的协调给予了高度关注[5].1.2协同进化算法 收稿日期:2016-05-23 基金项目:广东省教育研究院课题项目(GDJY-2015_F-b057);茂名市青年名师培养项目成果 传统优化算法 协同进化算法 简化问题无法简化复杂的问题.简化问题,利用分解分解问题等方式,对复杂问题的简化,从而实现求解.兼容性相对简单,算法相对独立.兼具了不同优点,发挥了不同搜索算法的作用,保证了种群间的有效协同进化. 应用领域 应用领域相对独立. 适应了各领域的需求,在各个领域均涉及协同思想. 表一 协同进化算法与传统优化算法的对比 在数值优化领域中应用协同进化算法,相关的研究成果主要体现在无约束优化、约束优化与多目标优化等方面. 在第一类问题方面.对于进化算法而言,其经典的应用领域 便是无约束数值优化,经过不断实际,此技术的应用日渐成 6-- DOI:10.13398/https://www.360docs.net/doc/ed7402563.html,ki.issn1673-260x.2016.17.003

MOEAD(基于分解的多目标进化算法)

基于分解的多目标进化算法
摘要:在传统的多目标优化问题上常常使用分解策略。但是,这项策略还没有被广泛的 应用到多目标进化优化中。本文提出了一种基于分解的多目标进化算法。该算法将一个多目 标优化问题分解为一组???单目标优化问题并对它们同时优化。通过利用与每一个子问题 相邻的子问题的优化信息来优化它本身,这是的该算法比 MOGLS 和非支配排序遗传算法 NSGA-Ⅱ相比有更低的计算复杂度。实验结果证明:在 0-1 背包问题和连续的多目标优化问 题上,利用一些简单的分解方法本算法就可以比 MOGLS 和 NSGA-Ⅱ表现的更加出色或者 表现相近。实验也表明目标正态化的 MOEA/D 算法可以解决规模围相异的多目标问题,同 时使用一个先进分解方法的 MOEA/D 可以产生一组分别非常均匀的解对于有 3 个目标问题 的测试样例。最后,MOEA/D 在较小种群数量是的性能,还有可扩展性和敏感性都在本篇 论文过实验经行了相应的研究。
I. 介绍
多目标优化问题可以用下面式子表示:
其中 Ω 是决策空间, 以得到的目标集合成为
,包含了 m 个实值目标方法, 被称为目标区间。对于可 。
如果
,并且所有的目标函数都是连续的,那么 Ω 则可以用
其中 hj 是连续的函数,我们可以称(1)为一个连续的多目标优化问题。 如果目标函数互斥,那么同时对所有目标函数求最优解往往是无意义的。有意义的是获
得一个能维持他们之间平衡的解。这些在目标之间获得最佳平衡的以租借被定义 Pareto 最 优。
令 u, v∈Rm,如果
对于任意的 i,并且至少存在一个
,那
么 u 支配 v。如果在决策空间中,没有一个点 F(y)能够支配 F(x)点,那么 x 就是 Pareto 最优, F(x)则被称为 Pareto 最优向量。换句话说,对于 Pareto 最优点在某一个目标函数上的提高, 都会造成至少一个其余目标函数的退化。所有 Pareto 最优解的集合称为 Pareto 集合,所有 最优向量的集合被称为 Pareto 前沿。
在许多多目标优化的实际应用中,通过选择器选择一个接近 Pareto 最优前沿的解作为 最后的解。大多数多目标优化问题都有许多甚至是无穷个 Pareto 最优向量,如果想要获得 一个完整的最优前沿,将是一件非常耗时的事情。另一方面,选择器可能不会专注于获得一 个过于庞大的最优解向量集合来解决问题,因为信息的溢出。因此,许多多目标优化算法往 往是获得一个均匀分布在 Pareto 最优前沿周围的最优解向量,这样就具有更好的代表性。 许多研究人员也致力于使用数学模型来获得一个近似的最优前沿。
一般来说,在温和控制下多目标优化问题的 Pareto 最优解,可以看做是一个标量优化 问题的最优解(其中目标函数是 fi 的集合)。因此,Pareto 最优前沿的近似求解可以被分解为

MOEAD(基于分解的多目标进化算法)

摘要:在传统的多目标优化问题上常常使用分解策略。但是,这项策略还没有被广泛的应用到多目标进化优化中。本文提出了一种基于分解的多目标进化算法。该算法将一个多目标优化问题分解为一组单目标优化问题并对它们同时优化。通过利用与每一个子问题相邻的子问题的优化信息来优化它本身,这是的该算法比MOGLS和非支配排序遗传算法NSGA-Ⅱ相比有更低的计算复杂度。实验结果证明:在0-1背包问题和连续的多目标优化问题上,利用一些简单的分解方法本算法就可以比MOGLS和NSGA-Ⅱ表现的更加出色或者表现相近。实验也表明目标正态化的MOEA/D算法可以解决规模范围相异的多目标问题,同时使用一个先进分解方法的MOEA/D可以产生一组分别非常均匀的解对于有3个目标问题的测试样例。最后,MOEA/D在较小种群数量是的性能,还有可扩展性和敏感性都在本篇论文中通过实验经行了相应的研究。 I.介绍 多目标优化问题可以用下面式子表示: Maximize F(x)=((f1(f)…...f f(f))f subject to x∈Ω 其中Ω是决策空间,F:Ω→f f,包含了m个实值目标方法,f f被称为目标区间。对于 可以得到的目标集合成为{F(x)|x∈Ω}。 如果x∈R m,并且所有的目标函数都是连续的,那么Ω则可以用 Ω={x∈f f|h f(x)≤0,j=1……m} 其中hj是连续的函数,我们可以称(1)为一个连续的多目标优化问题。 如果目标函数互斥,那么同时对所有目标函数求最优解往往是无意义的。有意义的是获得一个能维持他们之间平衡的解。这些在目标之间获得最佳平衡的以租借被定义Pareto最优。 令u, v∈Rm,如果f f≥f f对于任意的i,并且至少存在一个f f≥f f(i,j∈{1…..m}),那么u支配v。如果在决策空间中,没有一个点F(y)能够支配F(x)点,那么x就是Pareto最优,F(x)则被称为Pareto最优向量。换句话说,对于Pareto最优点在某一个目标函数上的提高,都会造成至少一个其余目标函数的退化。所有Pareto最优解的集合称为Pareto集合,所有最优向量的集合被称为Pareto前沿。 在许多多目标优化的实际应用中,通过选择器选择一个接近Pareto最优前沿的解作为最后的解。大多数多目标优化问题都有许多甚至是无穷个Pareto最优向量,如果想要获得一个完整的最优前沿,将是一件非常耗时的事情。另一方面,选择器可能不会专注于获得一个过于庞大的最优解向量集合来解决问题,因为信息的溢出。因此,许多多目标优化算法往往是获得一个均匀分布在Pareto最优前沿周围的最优解向量,这样就具有更好的代表性。许多研究人员也致力于使用数学模型来获得一个近似的最优前沿。 一般来说,在温和控制下多目标优化问题的Pareto最优解,可以看做是一个标量优化问题的最优解(其中目标函数是fi的集合)。因此,Pareto最优前沿的近似求解可以被分解为一组标量目标优化子问题。这个想法是建立在许多传统的对最优前沿求近似解的数学编程方法上的。现在有许多的聚合方法,最流行的是切比雪夫法和加权法。最近,边界交叉方法也引起了许多的关注。 如今多目标进化算法并没有将分解这一概念引入当前的主要发展领域。这些算法将多目标优化问题看成一个整体。他们并没有通过任何特别的标量优化将每一个解相互联系在一起。在一个标量目标优化问题中,所有的解都可以通过他们的目标函数值进行对比,而挑战

进化算法程序

进化算法作业

1全局优化问题 (1) min f1x 4x:2.1x: 1 x f x1x24x f 4x; st . 5 x i5,i 1,2 一.程序 (1)主函数:mai n.m clear all; clc; popsize=60; %种群规模 chromlength=34; %二进制编码,编码精度为0.0001,所以串长I为17 pc=0.7; %杂交概率 pm=0.1; %变异概率 t=0; %进化代数初始为0 pop=in itpop(popsize,chromle ngth); % 随机产生初始种群 while t<500 %迭代次数 t=t+1; [objvalue]=calobjvalue(pop); % 计算目标函数值 fitvalue=calfitvalue(objvalue); %计算群体中每个个体的适应度 [best in dividual,bestfit]=best(pop,fitvalue); %求出群体中适应度最大的个体及其适应度值 x1仁decodechrom(besti ndividual,1,14); % 将二进制数转换为十进制数 x22=decodechrom(besti ndividual,15,14); x1(t)=-5+10*x11/(pow2(14)-1); %将二值域中的数转换为变量域的数 x2(t)=-5+10*x22/(pow2(14)-1); y(t)=4*x1(t)A2-2.1*x1(t)A4+1/3*x1(t)A6+x1(t)*x2(t)-4*x2(t)A2+4*x2(t)A4; % 计算最佳个体的目标函数值 [n ewpop1]=select ion( pop,fitvalue); % 选择算子 [n ewpop2]=crossover( newpop1,pc); % 交叉算子 [n ewpop3]=mutati on(n ewpop2,pm); % 变异算子 objvalue1=calobjvalue (n ewpop3(1,:)); if objvalue1>y(t) newpop3(1,:)=best in dividual; % 保留最佳个体 end pop=newpop3; %产生新种群 end y; %每代的最佳目标函数值 x1; %每代的最佳目标函数值对应的自变量 x2; [gy,k]=min(y) %gy 为全局最优值,k 为最优值对应的进化代数 此问题的全局最优值f min 1.0316。

动态鲁棒进化优化方法研究

动态鲁棒进化优化方法研究 现实生活中的许多优化问题,往往受到生产工况、运行环境等动态因素的影响,形成动态优化问题。解决该类问题的常用方法是跟踪最优解方法。 它在探测到优化问题发生改变时,重新触发寻优过程,从而快速、准确地找到适应于新优化模型的最优解。跟踪最优解方法虽然可以相对有效的解决动态优化问题,但是,当动态优化问题具有复杂的目标函数或较大的搜索空间时,耗时的进化求解过程,往往使在有限时间内获得问题的最优解存在困难。 另外,某些实际动态优化问题中,当动态因素发生变化时,就去执行寻优获得的新最优解,往往需要调整众多相关人员或资源,导致较大的最优解切换成本。基于此,本论文给出了一种解决动态优化问题的动态鲁棒优化方法。 其核心思想是面向连续变化环境下的动态优化问题,找到用户可以接受的一组基于时间的鲁棒最优解序列。当环境发生变化时,根据用户可接受程度,直接采用相邻前一环境下的鲁棒解作为当前环境下的较优解,而不是重新寻找新环境下的最优解。 这可以有效降低新环境下优化问题的寻优代价,满足生产实际中有限资源调配的需求。面向动态单目标优化问题,已有动态鲁棒优化方法中给出生存时间和平均适应度两种鲁棒性指标。 在此基础上,构建了兼顾上述两种鲁棒性能指标的两阶段多目标进化优化模型,采用基于非支配排序的遗传算法,获得问题的鲁棒最优解序列。第一阶段多目标进化优化方法用于获得每个动态环境下,兼顾上述两方面性能的所有Pareto 解;第二阶段中的进化个体由第一阶段获得的Pareto解依环境变化时刻动态组合而成,考虑解序列的平均生存时间和平均适应度,采用多目标进化优化方法获

得实际可实施的动态鲁棒最优解集,并将其应用于解决改进的移动峰问题。 面向动态多目标优化问题,首次给出了时间尺度上的多目标鲁棒性概念,定 义了基于时间的鲁棒Pareto最优解,给出了时间鲁棒性和性能鲁棒性两个性能 度量指标。鲁棒Pareto最优解应兼顾这两方面性能,由此构建了动态鲁棒多目标优化模型。 进而,采用基于分解的多目标进化算法,求解其鲁棒Pareto最优解集。进一步,在求解动态鲁棒多目标优化问题时,兼顾个体的性能鲁棒性和时间鲁棒性,构建了动态鲁棒多目标约束优化模型。 考虑到个体的鲁棒性评价中,需要同时考量Pareto解在当前和未来相邻动 态环境下的适应值。为有效估计未来相邻环境下某一个体的适应值,建立了基于已评价历史信息的适应值时间序列,并采用移动平均预测、自回归预测和最近邻域预测,通过加权方式构成集成预测模型。 决策者从Pareto解集中找到最符合他们需求的解是多目标优化的最终目的。为提高进化效率,在每个动态环境下,没有必要获得全部Pareto最优解,仅需要 把寻优过程集中在决策者感兴趣的区域。 于是,将决策者的偏好信息融入到搜索过程中,引导种群趋向于决策者感兴 趣的区域;另外,在鲁棒性能评价中,将决策者的偏好信息转化为目标稳定性阈值,用于指导鲁棒个体选择。在上述偏好信息的共同作用下,采用基于分解的动态鲁棒多目标进化优化方法,获得满足决策者偏好的鲁棒最优解集。 采用传统的跟踪最优解法或动态鲁棒优化方法,在解决环境变化复杂的动态多目标优化问题时,都存在一定局限。为此,根据搜集的动态环境历史信息构建环境变化序列,用于预测未来环境变化程度。

改进的组合差分进化优化算法董明刚

基金项目:国家自然科学基金项目(61203109);广西教育厅科研项目 (201204LX155) 收稿日期:2012-09-06 第30卷第1期 计算机仿真 2013年1月 文章编号:1006-9348(2013)01-0389-04 改进的组合差分进化优化算法 董明刚 1,2 ,王宁2,程小辉 1 (1.桂林理工大学信息科学与工程学院,广西桂林541004;2.浙江大学工业控制技术国家重点实验室,浙江杭州310027)摘要:组合差分进化算法CoDE 是一新的具有竞争力的算法,但收敛速度和寻优性能仍有待改进。为解决上述问题,提出对组合差分进化算法CoDE 从生成策略和控制参数两个方面进行改进,提出了两种改进的CoDE 版本MCoDE 和MCoDE -P ,并利用6个典型的测试函数对改进性能进行检验。结果表明结合了最好个体信息的MCoDE 方法能够改善CoDE 的寻优性能,而采用控制参数扩展的MCoDE -P 方法却难以达到期望的效果。关键词:组合差分进化;改进;优化算法;生成策略;控制参数中图分类号:TP202.7 文献标识码:A Improved Composite Differential Evolution Algorithms DONG Ming -gang 1,2,WANG Ning 2,CHENG Xiao -hui 1 (1.College of Information Science and Engineering ,Guilin University of Technology ,Guilin Gangxi 541004,China ;2.National Laboratory of Industrial Control Technology ,Zhejiang University ,Hangzhou Zhejiang 310027,China )ABSTRACT :CoDE ,the composite differential evolution algorithm ,is a new competitive algorithm ,but the conver-gence speed and optimization performance still need to be improved.Two improved CoDE versions ,MCoDE and MCoDE -P ,were proposed.The MCoDE can modify the generation strategy of CoDE ,and the MCoDE -P can ex-pand the control parameters of CoDE.Six typical benchmark functions were used to test the performances of the im-proved approaches.The compared results show that the combination of the best individual information MCoDE method can improve the performance of CoDE ,while the proposed control parameter expansion method MCoDE -P is difficult to achieve the desired effect. KEYWORDS :Composite differential evolution ;Improvement ;Optimization algorithms ;Generation strategy ;Control parameters 1引言 Storn 和Price 为求解切比雪夫多项式拟合问题时发明了 差分进化算法(differential evolution ,简称DE )[1] 。类似于其 它进化计算方法,DE 也是一种基于群体的随机搜索算法,它主要采用变异、交叉、替换等操作迭代来指导群体进化;但与其它方法不同, DE 主要采用候选解间的差异作为干扰量来产生新的个体。同时与其它进化计算方法相比, DE 执行简单,在收敛速度和搜索性能方面都具有一定的优势。近年DE 在IEEE 进化计算大会举办的各种竞赛中屡创佳绩,因而倍受关注,成为进化计算领域研究的热点之一 [2,3,4] 。 DE 的向量产生策略和控制参数选择是影响DE 性能的两个关键因素。在DE 的向量产生策略和参数选择方面已进行了大量的研究,并取得一些较重要定性的结论 [3,4] 。不同 的向量产生策略和不同的参数设置在处理不同的类型各有优势,但遗憾的是这些重要信息并没有被充分利用,大部分DE 算法仅采用一种向量产生策略和一组参数设置值。因此,最近有研究人员提出将各种向量产生策略和参数设置策略相融合的思想,以便改进单一向量产生策略和参数设置的DE 算法的性能。典型的有,Mallipeddi 等人提出了具有学习能力的装配差分进化算法EPSDE [5] 。Wang 等人利用已有的 研究成果,建立向量产生策略知识库和参数设置知识库,并在此基础上提出了一种组合差分进化算法(Composite differ-ential evolution ,简称CoDE )[6]。研究结果验证了此方法对提高DE 性能是可行性和有效性的,与现有的几种自适应DE 相比,获得了极具竞争力的结果。但在CoDE 中,其参数设置库中仅选择三组特定的个体产生策略和三组特殊参数设置,还有其它一些常见的个体产生策略和参数设置并没有涉及。因此,本文考虑从个体产生策略和控制参数两个方面对CoDE 进行改进,并通过仿真研究,探讨提出改进方法可行性和有效性。 — 983—

相关文档
最新文档