杨振宇,唐珂
(1.华东师范大学计算机科学技术系,上海 200241;2.中国科学技术大学计算机科学与技术学院,安徽合肥 230027)
差分进化算法参数控制与适应策略综述
杨振宇1,唐珂2
(1.华东师范大学计算机科学技术系,上海 200241;2.中国科学技术大学计算机科学与技术学院,安徽合肥 230027)
差分进化算法逐渐成为进化计算领域最流行的随机搜索算法之一,已被成功用于求解各类应用问题.差分进化算法参数设置与其性能密切相关,因此算法参数控制与适应策略设计是目前该领域的研究热点之一,目前已涌现出大量参数控制方案,但尚缺乏系统性的综述与分析.首先简要介绍差分进化算法的基本原理与操作,然后将目前参数控制与适应策略分成基于经验的参数控制、参数随机化适应策略、基于统计学习的参数随机化适应策略和参数自适应策略4类进行系统性综述,重点介绍其中的参数适应与自适应策略.此外,为分析各种参数控制与适应策略的功效,以实值函数优化为问题背景设计了相关实验,进一步分析各种策略的效率与实用性,实验结果表明,参数自适应控制策略是目前该领域最有效的方法之一.
进化计算;差分进化;参数控制;适应策略;自适应
差分进化(differential evolution,DE)算法[1-3]于1995年由Storn和Price提出,是一种新颖的通过引入独特的差分变异模式进行迭代搜索的进化算法.该方法因具有简单、易实现、高效、鲁棒性强等多种优点[4],已被广泛和成功地应用于全局优化、运筹管理、工程设计等领域[5-6].
进化算法参数控制与适应一直都是进化计算领域的核心研究问题,这主要是因为该类方法的具体流程与操作通常由算法参数控制,使得这些参数的设置与算法性能息息相关[7].与传统进化算法类似,DE算法同样也具有其自身的控制参数.经典DE算法具有3个主要的控制参数[1]:1)种群大小N;2)变异缩放因子F;3)交叉概率PCR.除了种群大小N这个任何基于群体搜索的算法都具有的一般性参数外,研究发现DE算法性能对另外2个参数的设置非常敏感,而且往往与具体问题相关,经验参数设置并不总能使该算法发挥出其最高性能,而手动参数调节费时费力,极大降低了算法的实用性.为了提高DE算法的性能和实用性,其参数的控制与适应策略设计已成为DE领域的热点研究方向,除基于经验的参数设置外,研究者们提出了大量更先进的参数控制与适应策略,如参数随机化适应策略[8]、基于统计学习的参数随机化适应策略[9]、参数自适应策略[10]等.
针对DE算法的参数控制与适应问题,目前研究者多以他们各自的视角提出了各种不同策略,尚缺乏对这些现存策略的综述与系统性对比分析.本文对目前研究中出现的主要的参数控制与适应策略进行综述,将它们分成如下4类进行分析:1)基于经验的参数控制;2)参数随机化适应策略;3)基于统计学习的参数随机化适应策略;4)参数自适应策略.除此之外,还以实值函数优化问题为背景,用具体实验结果对比来讨论各种参数控制与适应策略的实际效果.
DE的主要思想是引入一种全新的可利用当前群体中个体差异来构造变异个体的差分变异模式.相对于传统进化算法,差分变异模式是DE算法中最为独特的进化操作.以经典DE算法为例,在每代算法迭代过程中,对于当前群体中的每个目标个体,算法首先随机选择2个其他个体并使它们相减构成差分向量,然后将该差分向量乘以一个缩放因子F后加到第3个随机个体上构成变异个体,最后该变异个体再经过与对应目标个体的交叉和选择操作生成一个新个体进入下一代.基于上述过程并结合文献[1]中的描述,以下将以实值优化问题(即决策变量为实数)为背景,具体介绍DE算法的群体表示与各种进化操作.
对于实值优化问题,DE算法中的群体一般表示成N个D维向量:
式中:实值向量 Xi=(Xi(1),Xi(2),…,Xi(D))代表群体中的一个个体,D是目标问题的决策变量个数,也可以称为该问题的维数,N是群体大小.DE算法的初始化方法与其他进化算法类似,一般是在指定搜索空间内均匀随机生成N个D维实值向量构成其初始群体.
给定当前群体{Xi|i=1,2,…,N},对其中的任意个体Xi,DE算法的变异操作按照式(1)生成一个对应的变异个体.
式中:Xr1、Xr2和Xr3是从当前群体中随机选择的3个互不相同的个体,而且它们也不应与目标个体Xi相同;缩放因子F是一个大于0的实常数,实验表明它一般应满足条件F∈(0,2],而F=0.5通常是比较合适的设置[1].在具体算法实现中,由于式(1)中的Xr2和Xr3是随机选择的2个个体,F取负值仅代表两者交换位置,并不违背DE算法的设计原理,因此DE研究中也会出现将F限定在区间[-2,0)∪(0,2]的情况.
随着DE算法的发展,根据差分向量构造方式的不同,研究者还提出其他多种算法变种,常用的有如下几种[2]:
根据具体应用问题的不同,这些变异模式各有优缺点,但式(1)所表示的经典方式仍然是最常用、最有效的变异模式之一.
在完成变异操作后,DE算法将在目标个体Xi和变异个体Vi之间执行一种离散交叉操作,从而生成一个测试个体Ui,该离散交叉可描述如下:
式中:Rj(0,1)是一个在(0,1)的均匀随机数发生器;jrand是[1,D]的一个随机整数,以确保不会出现测试个体Ui完全复制Xi的情况;PCR∈[0,1]是交叉概率,用来控制在哪些决策变量上采用变异值,一般可设置为 0.9[1].
对于每一个测试个体Ui,DE算法采用如下一对一的贪心选择方式:
式中:f(·)是目标函数(最小化问题);X'i是代替Xi而进入下一代的子个体.
完成上述选择操作后,DE算法得到一个新的群体{X'i|i=1,2,…,N}进入下一代,从而可以迭代地继续执行进化搜索过程.
在DE算法发展的早期,其参数主要是根据人为经验设定为一些常数,如文献[1]首先指出F=0.5是一个很好的初始选择,如果群体出现早熟收敛现象,则应该相应地增大F值,但是小于0.4或大于1的F值往往只在极少数情况下才有用;对于交叉概率PCR,该文献则指出0.1是一个合适的初始选择,但考虑到大的PCR值有助于提高算法收敛速度,PCR=0.8通常也是不错的选择.
文献[11]以实值函数优化问题为背景对DE算法的参数展开了详细的数值分析,指出了该算法性能对参数敏感的问题,这些参数的设定不仅与具体问题相关,而且它们之间也相互影响,不易合理设置.对缩放因子F,该文献推荐0.6为初始选择,如果发现算法只能收敛到局部最优,则应适当增大F值,但当F>1时往往导致群体难以收敛;对于交叉概率参数,大的PCR值有利于增加算法收敛速度,但如果过大将有可能导致算法早熟,介于0.3~0.9的值往往是比较好的设置.
在与其他算法的性能比较中,文献[12]发现参数设置为F=0.5,PCR=0.9的DE算法要显著优于粒子群优化(particle swarm optimization,PSO)算法[13]及其改进版本 arPSO[14],也优于简单进化算法(simple evolutionary algorithm,SEA)[15].
也有研究者认为F应该设为稍大值以避免算法早熟,如文献[16]中就建议将参数F和PCR都设置为常数0.9.对于DE算法的经验参数设置,目前研究中一般都认为F=0.5,PCR=0.9是比较有效的经典设置[17].
虽然基于经验的参数控制可在一定程度上缓解DE算法的参数控制问题,但是由于这种“经验”通常与具体目标问题密切相关,不同的解空间分布往往具有不同的需求,甚至同一问题的不同进化阶段也可能具有不同需求,不存在能适用于所有目标问题的统一固定参数设置,所以经验参数控制逐渐不能满足DE算法在越来越广泛的应用问题上的求解性能要求.特别是对于特征未知的应用问题,仍然需要通过费时费力的手动参数调节才能找到比较合适的经验参数,这大大降低了DE算法的实用价值.为解决此问题,研究者们逐渐开始考虑引入随机化适应策略进行参数控制.与将参数设置为固定常数的经验参数控制不同,这种方法在每代对每个个体根据一个预先制定的概率分布模型生成伪随机数作为参数值,其基本思想与进化算法思想类似,主要是希望通过生成-测试的模式让算法自己选取比较合适的参数值.常用的概率分布模型有均匀分布(uniform distribution)、高斯分布(Gaussian distribution,又称正态分布)、柯西分布(Cauchy distribution)等.
文献[8]将每次变异的缩放因子F设置为[0.5,1]之间的均匀随机数,提出一种改进的算法DERSF;文献[18]修改DE算法的变异模式提出2种改进算法DERL和DELB,它们也都使用了均匀随机数生成缩放因子F,均匀随机数的范围限定为[-1,-0.4]∪[0.4,1].文献[19]提出一种 NSDE算法,将DE算法的交叉概率PCR设置为[0,1]之间的均匀随机数.实验分析发现这些改进算法都优于参数设置为F=0.5,PCR=0.9的经典DE算法.
文献[20]针对多目标优化问题提出一种改进的DE算法PDE,该算法中缩放因子F被设置为均值为0、标准差为1的高斯分布,即Fi=Ni(0,1),其中i表示对每次变异都重新生成一个F值.文献[21-22]通过引入多种变异策略提出一种自适应DE算法SADE,该算法中缩放因子F被设定为均值为0.5、标准差为0.3的高斯分布,即Fi=Ni(0.5,0.3),其中参数0.5是参考了DE算法的经验参数设置,目的是在比较好的经验值附近进行参数随机化,给生成合适的参数值提供更大可能.
由DE变异公式(1)可以看出,缩放因子F与算法搜索步长密切相关,在不同的搜索阶段算法可能偏好不同的搜索步长,比如当群体离全局最优点较远时,较大的搜索步长将有助于算法快速收敛到好的子空间,而当群体离全局最优点较近时,小的搜索步长则有助于算法准确找到更优解[23].缩放因子F的经验设置只能提供一种步长选择,而随机化参数设置则可以提供多种选择,这也是随机化参数设置通用性更强的原因.但是无论均匀分布还是高斯分布,其搜索步长的广度都是有限的,当算法靠近多极值问题的局部最优点时,可能无法提供足够大的步长进行跳跃式搜索,因而仍然存在陷入局部最优的风险.
针对均匀分布和高斯分布的局限性,研究者们开始考虑引入范围更广的柯西分布进行参数随机化控制.文献[19]结合进化规划(evolutionary programming,EP)的特点,提出一种邻域控制差分进化算法NSDE,该算法的缩放因子根据式(2)生成.
式中:p设为0.5;Ni(0.5,0.5)表示均值、标准差均为0.5的高斯随机数;Ci(0,1)表示位置参数为0、规模参数为1的柯西随机数;Ri(0,1)表示(0,1)的均匀随机数.NSDE算法希望通过式(2)同时兼顾大小搜索步长,从而能有效搜索各种适应度分布特征未知的解空间.
文献[24]对NSDE算法进行了进一步改进,提出一种SaNSDE算法,其缩放因子F的控制方法与式(2)类似,只是根据经验将高斯随机数的参数修正为均值0.5,标准差0.3,并采用适应策略调整式(2)中的参数p.SaNSDE算法中参数适应策略的有效性在很多测试函数上都得到了验证,并成功用于辅助求解问题规模高达1 000维的大规模实值优化问题[25].
参数随机化适应策略通过将DE算法的参数,即缩放因子F和交叉概率PCR,设置成随机数,增加了这些参数取值的多样性,从而使算法在面临无任何先验知识的问题时,仍然能够自动产生适合当前搜索需要的参数值,这在一定程度上提高了算法的性能.然而,这些用于控制DE算法参数的随机数发生器同样存在其自身的参数,比如高斯分布的均值和方差,这些参数同样需要合理设置.这些参数没有原算法的参数敏感,在上述参数随机化适应策略中一般都是根据经验设置,寻求这些参数的最优设置意味着存在进一步改进DE算法性能的空间,研究者们开始利用统计学习技术分析搜索过程中的历史信息,尝试从中找出规律以控制随机数发生器的参数.
文献[21-22]通过对交叉概率PCR的分析指出,该参数在某个小范围内变动时对DE算法性能影响不大,但该范围不易确定.为解决此问题,该文献提出一种SADE算法,它假设交叉概率PCR满足一个均值为PCRM、标准差较小的高斯分布,算法开始时对每个个体根据式(3)生成一个PCR值.
式中:PCRM在算法开始时被设置为0.5,在其周围生成的PCRi值将被使用若干代(如SADE算法中设置的5代),然后重新按照式(3)生成新的PCRi.这样在每一代演化过程中,能使后代进入下一代的个体,对应的PCRi将会被记录在一个数组ACR中,经过一定代数的累积后(如SADE算法中使用的25代),均值将按式(4)更新.
在每次PCRM更新后,数组ACR将会被清空进入下一次统计过程.
文献[24]分析认为当PCR比较小时后代更易于进入下一代,但是该后代对应的适应度改进程度通常比较小;而大的PCR值生成的后代虽然相对而言较难进入下一代,但当成功进入下一代时其引起的适应度改进程度往往要大很多,因此式(4)对应的适应策略存在将PCR取较小值的导向.为缓解此问题,该文献提出一种加权的交叉概率适应策略,其基本原理与式(4)类似,区别在于每当在数组ACR中记录成功PCR值的时候,同时在另一数组A△f={△f}中额外记录对应个体的适应度改进值,即△f=f(k)-fnew(k),然后PCRM的更新公式修正为:
实验证明这种改进的参数适应机制使DE算法在一些复杂测试函数上的性能有了较显著的改进.
无论SADE还是SaNSDE都是采用一种离散的方式,通过历史信息更新用于参数控制的概率分布,这意味着只有当历史信息累积一定代数后才能被使用,当最大进化代数比较有限时,概率分布的参数被更新的频度将会很有限,这将影响参数适应性调整的及时性.文献[9]提出一种改进的DE算法JADE,该方法采用了联系更新的方式适应性调整概率分布的参数.对于交叉概率PCR,JADE仍然假设它服从均值为PCRM、标准差为0.1的高斯分布,即满足式(3).
在每代进化过程中,算法将用SCR记录能使对应后代进入下一代的PCRi值,并用式(7)更新PCRM.
式中:参数c是介于(0,1)的实数,JADE中被设置为c=0.1.对于缩放因子F,该文献假设它服从位置参数为Fm,规模参数为0.1的柯西分布:
式中:Fm被初始化为0.5,如果Fi不在0~1之间,将会被重新生成.在每代进化过程中,能使后代进入下一代的个体对应的Fi值将会被记录在数组SF中,然后根据式(9)更新.
式中:meanL(·)表示莱默均值(Lehmer mean),这里使用莱默均值而非一般均值是为了避免出现F过小而导致算法低效的情况.
文献[26]通过引入基于历史信息的可信度和影响适应度值变化程度的加权机制,将上述2种适应策略扩展为控制任意与个体相关联的算法参数的一般性方法,其基本思想是首先假设该参数的分布满足某个概率模型,然后通过统计学习的方法逐渐调整概率模型的参数.该文献使用这种一般性的参数随机化适应方法提出一种改进的DE算法GaDE,并将其成功用于求解大规模实值优化问题.
大量的实验结果表明,基于统计学习的参数随机化适应策略不仅优于经验参数设置,而且由于这类方法可以从历史信息中学习出一些参数变化趋势,比简单的参数随机化适应策略更有方向性,当这种方向性比较准确时,这类方法将更有效.
根据文献[27]的定义,参数适应与自适应策略的本质区别在于后者须将算法参数放入个体编码中与决策变量一同进化.依据这个条件,无论是参数随机化策略还是基于统计学习的参数随机化策略都只能称之为适应策略,而自适应策略一般被认为是进化算法参数控制的最高级手段,在DE算法领域同样存在相关工作.
既然DE是一种非常有效的参数优化算法,那么一种非常直观的自适应策略就是仍然采用DE这种模式来进化其自身的参数F和PCR.文献[28]提出一种SPDE算法,该算法首先对每个个体都增加Fi和这2个参数作为决策变量放入个体表示,在算法开始时Fi和被初始化为[0,1]的均匀随机数,然后在每代进化运算时,首先根据式(11)、(12)生成.
式中:Ni(0,1)代表均值为0、标准差为1的高斯随机数;r1、r2和r3表示3个互不相同且也不与i相同的个体下标.在这些参数进化完成后,它们将参与到DE算法中的包含决策变量的个体的变异和交叉,由于这些参数值存在于编码中,如果每组参数对应生成的后代能成功进入下一代,那么参数本身自然也进入了下一代,从而达到一种控制参数层次的进化与自适应.由于一般要求F和PCR在控制在区间[0,1]中,因此如果式(11)、(12)生成的参数值超出了此范围,将会应用修复规则使它们重新回到此范围.文献[28]在一组多目标问题上测试了SPDE算法的性能,与其他13种算法的比较表明了这种自适应策略比较有效.类似地,文献[29]建议用如下这种方式自适应控制参数F:
而交叉概率PCR被设置为根据均值为0.5、标准差为0.15的高斯随机数N(0.5,0.15)生成.文献[30]指出,根据这种自适应策略设计的SDE算法要优于文献[28]中的SPDE算法.
文献[10]提出一种改进的DE算法jDE,它采用了另一种参数自适应策略.算法jDE同样将Fi和PCRi与每个个体关联起来放入个体编码,算法开始时Fi和PCRi被分别初始化0.5和0.9,然后每代在决策变量进化前按式(14)、(15)更新.式中:Rj(j∈{1,2,3,4})是[0,1]的均匀随机数;τ1和τ2分别表示更新参数F和PCR的概率,在jDE中被设置为 τ1=τ2=0.1;为了使新的Fi在[0.1,1.0]之间,Fl和Fu分别被设置为0.1和1.0.文献[10]中设计了大量的数值实验分析了这种自适应策略的效果,实验结果表明这种自适应策略在求解实值函数优化问题时非常有效,使jDE成为目前最为高效的DE改进算法之一.
表1简要列出了本节介绍的各种DE算法变种及其采用的参数控制与适应策略.
表1 DE算法变种及其对应的参数控制与适应策略Table 1 DE variants and the corresponding parameter control and adaptation strategies
本文前面系统介绍了目前DE算法研究领域常用的参数控制与适应策略,为了对这些策略的实际效果有更直观的认识,笔者以实值函数优化为问题背景设计了一组实验进行验证.为保证实验结果比较的公平性,所有算法都采用经典DE变异公式(即式(1)),用表2来标记要测试的算法及其对应的参数控制策略.
表2 测试的DE算法变种及其参数控制与适应策略Table 2 The tested DE variants and their parameter control and adaptation strategies
由表2可以看出,第1种方法是采用经验参数设置的经典DE算法;接下来是3种采用参数随机化适应策略的算法,分别对应均匀分布、高斯分布和柯西分布;第5、6种算法采用基于统计学习的参数随机化适应策略,分别按文献[21]中的SADE和文献[9]中的JADE所采用的策略进行参数控制,由于这2种算法还采用了其他策略进一步改进算法性能,与这里只采用经典变异公式的方法稍有区别,分别用SADE*和JADE*来标记它们以示区别;最后一种采用参数自适应策略,与文献[10]中的jDE完全一致.
在测试集方面,采用了13个被广泛使用的经典实值函数优化函数[23],表3给出了这些函数的定义与搜索空间.其中函数f1~f4、f6和f7是单峰函数(即只有1个极值点),函数f5、f8~f13是多峰函数,而且极值点的个数非常多[23],所有测试函数都被设定为30维,其最优值皆为0.
在参数设置方面,所有算法的群体大小都设为100,其参数F与PCR的设置则按照表2及相关文献中的描述,对于比较复杂的函数f3、f4、f5、f8和f9进化代数N设定为5 000,而对于相对简单的其他函数,进化代数N设定为1 500.对于每个测试函数,每个算法都独立运行30次统计实验结果,并计算均值与方差.表4和表5分别列出了算法在单峰和多峰函数上的均值与方差.
从表4的结果可以看出,基于经验参数设置的经典DE算法在函数f1、f3和f6上具有不错的结果,但在其他函数上结果稍差.采用参数随机化适应策略的算法DEU、DEG和DEC一般比经典DE算法结果更好,而在函数f4上结果却变得更差,说明参数随机化并不总是有效,这3个算法中使用高斯随机数的DEG效果最好.对于基于统计学习的参数随机化适应策略SADE*和JADE*,它们在这些单峰函数上结果并不突出,仅在比较复杂的f4上取得了更好结果.采用参数自适应的算法jDE几乎在所有函数上都取得了更好的结果,说明这种参数自适应策略对求解单峰函数比较有效.
从表5中算法在多峰函数上的结果看,经典DE算法在比较复杂的函数f8和f9上结果很差,在其他函数上结果一般.使用均匀随机数的DEU算法在大部分问题上都得到了更好结果,但在函数f5上的结果变得很差;使用高斯随机数的DEG算法只在函数f8~f10上得到了更好结果;使用柯西随机数的DEC算法在函数f5和f11上结果不理想.采用基于统计学习参数随机化适应策略的算法SADE*在除f5外的函数上都取得了更好结果,而另一种JADE*则在函数f8和f9上性能有显著提高.对于自适应参数控制算法jDE,它在除f5外的函数上都取得了明显更好的结果.
表3 经典实值优化测试函数集Table 3 Classical benchmark functions for real-valued optimization
表4 采用各种不同参数控制与适应策略的DE算法在单峰函数上的结果Table 4 Results of DE with different parameter control and adaptation strategies for unimodal functions
表5 采用各种不同参数控制与适应策略的DE算法在多峰函数上的结果Table 5 Results of DE with different parameter control and adaptation strategies for multimodal functions
从以上实验结果可以看出,采用经验参数控制的DE算法虽然能有效求解一部分问题,但由于其最优参数组合往往与问题相关而不易设置,导致这种方法一般不具有通用性;参数随机化适应策略和基于统计学习的参数随机化策略能弥补经验参数控制的不足,但并不是对任何问题都有效,精确度有待进一步提高;而参数自适应策略对绝大部分问题都适用,但也不排除对极少数问题存在更优的经验设置的可能(如函数f5).
差分进化(DE)是进化计算领域一个非常重要的随机搜索算法新兴分支,在很多基准测试和实际应用问题上都表现出了卓越的性能,其新颖的进化操作起到了决定性的作用,而与这些操作相关的算法参数的控制与适应方法一直都是该领域的研究热点,目前已涌现出大量行之有效的策略.本文首先简要介绍了DE算法的基本原理与操作,然后着重综述了目前比较有代表性的参数适应策略,并加以分类总结,最后通过设计具体实验,对这些适应策略进行了对比分析,以验证它们的实际功效,相关实验结果表明,参数自适应控制策略是目前最有效的方法之一.此外,目前也存在很多通过设计更精巧的变异模式来改进DE算法性能的研究工作,将这些工作与参数自适应控制结合将是设计更高效DE算法的有效研究手段之一.
[1]STORN R,PRICE K.Differential evolution:a simple and efficient heuristic for global optimization over continuous spaces[J].Journal of Global Optimization,1997,11(4):341-359.
[2]PRICE K,STORN R,LAMPINEN J.Differential evolution:a practical approach to global optimization[M].Berlin,Germany:Springer-Verlag,2005.
[3]CHAKRABORTY U K.Advances in differential evolution[M].Berlin,Germany:Springer-Verlag,2008.
[4]STORN R,PRICE K.Differential evolution:a simple and efficient adaptive scheme for global optimization over continuous spaces[EB/OL]. [2010-10-25].http://www.icsi.berkeley.edu/~ storn/TR-95-012.pdf.
[5]STORN R.System design by constraint adaptation and differential evolution[J].IEEE Transactions on Evolutionary Computation,1999,3(1):22-34.
[6]THOMSEN R.Flexible ligand docking using differential evolution[C]//Proceedings of the 2003 IEEE Congress on E-volution Computation.Canberra,Australia,2003:2354-2361.
[7]BACK T,SCHWEFEL H P.An overview of evolutionary algorithms for parameter optimization[J].Evolutionary Computation,1993,1(1):1-23.
[8]DAS S,KONAR A,CHAKRABORTY U K.Two improved differential evolution schemes for faster global search[C]//Proceedings of the 2005 Genetic and Evolutionary Computation Conference.Washington,DC,USA,2005:991-998.
[9]ZHANG J,SANDERSON A C.JADE:adaptive differential evolution with optimal external archive[J].IEEE Transactions on Evolutionary Computation,2009,13(5):945-958.
[10]BREST J,GREINER S,BOSKOVC B,et al.Self-adapting control parameters in differential evolution:a comparative study on numerical benchmark problems[J].IEEE Transactions on Evolutionary Computation,2006,10(6):646-657.
[11]GAMPERLE R,MULLER S,KOUMOUTSAKOS P.A parameter study for differential evolution[C]//WSEAS International Conference on Advances in Intelligent Systems,Fuzzy Systems, Evolutionary Computation. Interlaken,Switzerland,2002:293-298.
[12]VESTERSTROM J,THOMSEN R.A comparative study of differential evolution,particle swarm optimization and evolutionary algorithms on numerical benchmark problems[C]//Proceedings of the 2004 IEEE Congress on Evolution Computation.Portland,USA,2004:1980-1987.
[13]KENNEDY J,EBERHART R C.Particle swarm optimization[C]//IEEE International Conference on Neural Networks.Perth,Australia,1995:1942-1948.
[14]RIGET J,VESTERSTROM J.A diversity-guided particle swarm optimizer—the arPSO,Technical Report 2002-02[R].Aarhus,Denmark:Department of Computer Science,University of Aarhus,2002.
[15]THOMSEN R.Flexible ligand docking using evolutionary algorithms:investigating the effects of variation operators and local search hybrids[J].BioSystems,2003,72(1/2):57-73.
[16]ROMKKONEN J,KUKKONEN S,PRICE K V.Real-parameter optimization with differential evolution[C]//Proceedings of the 2005 IEEE Congress on Evolution Computation.Edinburgh,UK,2005:506-513.
[17]RAHNAMAYAN S,TIZHOOSH H R,SALAMA M A.Opposition-based differential evolution[J].IEEE Transactions on Evolutionary Computation,2008,12(1):64-79.
[18]KAELO P,ALI M M.A numerical study of some modified differential evolution algorithms[J].European Journal of Operational Research,2006,169(3):1176-1184.
[19]YANG Zhenyu,YAO Xin,HE Jingsong.Making a difference to differential evolution[M]//MICHALEWICZ Z,SIARRY P.Advances in Metaheuristics for Hard Optimization.Berlin,Germany:Springer,2008:397-414.
[20]ABBASS H A,SARKER R,NEWTON C.PDE:a Paretofrontier differential evolution approach for multi-objective optimization problems[C]//Proceedings of the 2003 IEEE Congress on Evolution Computation.Canberra,Australia,2003:971-978.
[21]QIN A K,SUGANTHAN P N.Self-adaptive differential evolution algorithm for numerical optimization[C]//Proceedings of the 2005 IEEE Congress on Evolution Computation.Edinburgh,UK,2005:1785-1791.
[22]QIN A K,HUANG V L,SUGANTHAN P N.Differential evolution algorithm with strategy adaptation for global numerical optimization[J].IEEE Transactions on Evolutionary Computation,2009,13(2):398-417.
[23]YAO Xin,LIU Yong,LIN Guangming.Evolutionary programming made faster[J].IEEE Transactions on Evolutionary Computation,1999,3(2):82-102.
[24]YANG Zhenyu,TANG Ke,YAO Xin.Self-adaptive differential evolution with neighborhood search[C]//Proceedings of the 2008 IEEE Congress on Evolution Computation.Hong Kong,China,2008:1110-1116.
[25]YANG Zhenyu,TANG Ke,YAO Xin.Large scale evolutionary optimization using cooperative coevolution[J].Information Sciences,2008,178(15):2985-2999.
[26]YANG Zhenyu,TANG Ke,YAO Xin.Scalability of generalized adaptive differential evolution for large-scale continuous optimization[J]. Soft Computing,2011(in press).
[27]HINTERDING R,MICHALEWICZ Z,EIBEN A E.Adaptation in evolutionary computation:a survey[C]//Proceedings of the 1997 IEEE International Conference on Evolutionary Computation.Indianapolis,USA,1997:65-69.
[28]ABBASS H A.The self-adaptive Pareto differential evolution algorithm[C]//Proceedings of the 2002 IEEE Congress on Evolution Computation.Honolulu,USA,2002:831-836.
[29]OMRAN M,SALMAN A,ENGELBRECHT A.Self-adaptive differential evolution[C]//Proceedings of the International Conference on Computational Intelligence and Security.Xi’an,China,2005:192-199.
[30]SALMAN A,ENGELBRECHT A,OMRAN M.Empirical analysis of self-adaptive differential evolution[J].European Journal of Operational Research,2007,183(2):785-804.
杨振宇,男,1982年生,讲师,博士,主要研究方向为进化计算与应用,发表学术论文多篇,其中被SCI、EI检索10余篇.
唐珂,男,1981年生,教授,博士,IEEE Computational Intelligence Magazine副编辑,IEEE计算智能协会Emergent Technologies Technical Committee委员.主要研究方向为计算智能、机器学习、模式识别等,发表学术论文50余篇.
An overview of parameter control and adaptation strategies in differential evolution algorithm
YANG Zhenyu1,TANG Ke2
(1.Department of Computer Science and Technology,East China Normal University,Shanghai 200241,China;2.School of Computer Science and Technology,University of Science and Technology of China,Hefei 230027,China)
Differential evolution algorithms have gradually become one of the most popular types of stochastic search algorithms in the area of evolutionary computation.They have been successfully applied to solve various problems in real-world applications.Since their performance often depends heavily on the parameter settings,the design of parameter control and adaptation strategies is one of the current hot topics of research in differential evolution.Although numerous parameter control schemes have been proposed,systematic overviews and analysis are still lacking.In this paper,first the basic principles and operations of the differential evolution algorithm were briefly introduced,and then a detailed overview was provided on different parameter control and adaptation strategies by dividing them into the following four classes:empirical parameter settings,randomized parameter adaptation strategies,randomized parameter adaptation strategies with statistical learning,and parameter self-adaptation strategies.The overview emphasized the latter two classes.To study the efficacy of these parameter control and adaptation strategies,experiments with the background of real-valued function optimization were conducted to compare their efficiency and practicability further.The results showed that the parameter self-adaptation is one of the most effective strategies so far.
evolutionary computation;differential evolution;parameter control;adaptation strategies;self-adaptation
TP18;O224
A
1673-4785(2011)05-0415-09
10.3969/j.issn.1673-4785.2011.05.005
2010-11-02.
海外及港澳学者合作研究基金资助项目(61028009).
唐珂.E-mail:ketang@ustc.edu.cn.