一种基于动态小生境半径差分进化的多模态优化方法

文档序号:6631380阅读:1033来源:国知局
一种基于动态小生境半径差分进化的多模态优化方法
【专利摘要】一种基于动态小生境半径差分进化的多模态优化方法,首先,将小生境半径设置为一个较大的值,以期在可行域空间中探测到尽可能多的模态;然后,随着算法的进行,根据退火路径将小生境半径逐渐减小至某一阈值,使得算法从全局探测转为局部增强过程;其次,引入对种子个体的邻近个体扰动,并自适应调整交叉概率和增益常数,以产生一系列高质量的新个体,有效提升了种群的多样性;最后,根据再根据动态小生境半径来指导种群更新。
【专利说明】一种基于动态小生境半径差分进化的多模态优化方法

【技术领域】
[0001] 本发明涉及一种智能优化、计算机应用领域,尤其涉及的是,一种基于动态小生境 半径差分进化的多模态优化方法。

【背景技术】
[0002] 在实际应用中存在着许多多模态优化问题,这些问题不仅需要求得一个全局最优 解,还需要得到其它全局最优解和一些质量较高的局部极值解。基本进化算法虽然在某些 情况下能够求解得到某一个全局最优解,但是由于选择压力的存在,使其无法得到其它全 局最优解和一些质量较高的局部最优解。小生境的概念借鉴了自然界中种群的思想,在自 然生态系统中,不同的生境往往生活着不同的物种,他们的生活习性和生物特征也有较大 的区别,将小生境这一概念应用于进化算法,就产生了小生境策略。其中,比较有代表性的 有排挤策略、适应度共享策略、退火策略、限制的联赛选择策略、聚类分析策略、清洗策略及 物种策略。
[0003] 差分进化算法(DE)作为一种随机性算法,已经被证明是进化算法中简单而最高 效的算法,在很多领域得到了广泛应用。DE算法通过群体内个体间的合作与竞争产生的群 体智能指导优化搜索,具有算法通用,不依赖于问题信息,原理简单,易于实现,记忆个体最 优解和种群内信息共享以及较强的全局收敛能力等特点。然而,对于多模态优化问题,DE 算法却显得力不从心。针对此问题,国内外学者相继提出一些基于小生境策略的改进差分 进化算法,使其用于多模态优化问题。参照文献I :R. Thomsen, Multimodal optimization using crowding-based differential evolution, IEEE Congress on Evolutionary Computation, 2004, 1382-1389,即R. Thomsen,基于排挤策略的多模态差分进化算法,IEEE 进化计算会议,2004,1382-1389,Thomsen提出一种适应度共享差分进化算法(Sharing DE),SharingDE算法虽然已被证明是一种有效的多模态优化算法,但是共享半径的大小往 往很难石角定。参照文献 2 :X. Li, Efficient differential evolution using speciation for multimodal function optimization, Genetic and evolutionary computation Conference, 2005, 873-880,即X. Li,用于多模态函数优化的高效物种形成差分进化算法, 遗传和进化计算会议,2005,873-880, Li提出一种基于物种形成的差分进化算法(SDE),通 过将整个种群划分成很多亚种群(或者物种),然后在各亚种群中执行DE算法,然而,物种 半径的选择也是一个极其困难的工作。
[0004] 因此,现有的小生境多模态优化方法在参数选择方面存在着缺陷,需要改进。


【发明内容】

[0005] 为了克服现有的小生境多模态优化方法的参数选择难、解的质量较低、优化结果 较差的不足,本发明提出一种通过设计两阶段退货策略来动态调整小生境半径、优化结果 良好的基于动态小生境半径差分进化的多模态优化方法。
[0006] 本发明解决其技术问题所采用的技术方案是:
[0007] -种基于动态小生境半径差分进化的多模态优化方法,所述方法包括以下步骤:
[0008] 1)初始化:设置种群规模NP,小生境半径阀值deut,函数评价次数阀值e eut,种子个 体附近个体的数目m,扰动生成新个体的数目n,学习次数Ln,均值Csm;
[0009] 2)随机生成初始种群广=
[0010] 3)计算出各个体的目标函数值,按目标函数值从小到大排序;
[0011] 4)将当前种群中目标函数值最小的个体设置为种子个体X^d,且将其它个体设置 为自由个体,即未标记为种子的个体;
[0012] 5)扰动生成η个新个体:
[0013] 5. 1)计算出种群中各个体与种子个体的距离,并选取离种子最近的m个个体;
[0014] 5. 2)从这m个个体中任意选取3个个体{xa, xb, Xc I a, b, c e {1,2, · · ·,Np},a辛b辛 c辛s},其中s为种子个体的下标;
[0015] 5. 3)根据公式(1)进行变异:
[0016] Vj=Xa^F-(Xbj-Xcj) (1)
[0017] 其中,F表示增益常数,F = N(0. 5,0. 3),N(0. 5,0. 3)表示产生均值为0. 5,标准偏 差为0. 3的正态分布随机数;
[0018] 5. 4)根据公式(2)进行交叉生成新个体trial1

【权利要求】
1. 一种基于动态小生境半径差分进化的多模态优化方法,其特征在于:所述优化方法 包括以下步骤: 1)初始化:设置种群规模Np,小生境半径阀值Clrat,函数评价次数阀值^ut,种子个体附 近个体的数目m,每次扰动生成新个体的数目n,学习次数Ln,均值Csm; 2) 随机生成初始种群P= ; 3) 计算出各个体的目标函数值,按目标函数值从小到大排序; 4) 将当前种群中目标函数值最小的个体设置为种子个体xSMd,且将其它个体设置为自 由个体,即未标记为种子的个体; 5) 扰动生成η个新个体: 5. 1)计算出种群中各个体与种子个体的距离,并选取离种子最近的m个个体; 5. 2)从这m个个体中任意选取3个个体{xa,xb,xeIa,b,ce{1,2, . . .,Np},a辛b辛c 辛s},其中s为种子个体的下标; 5. 3)根据公式(1)进行变异: Vj = X-.+F-(Xbj-X]) (1) 其中,F为增益常数,F=N(0. 5,0. 3),N(0. 5,0. 3)表示产生均值为0.5,标准偏差为 0. 3的正态分布随机数; 5. 4)根据公式(2)进行交叉生成新个体trial1
其中,randb(0, 1)表示为产生0到1之间的随机小数,N为问题维数,rnbr(j)表示随 机产生1到N之间的整数,表示种子个体第j维的值,Ck表示交叉概率,Cκ可根据公式 (3)和(4)求得;
其中,0. 1)表示生成均值为CKm,标准偏差为0. 1的正态分布随机数,队表示生成 的新个体成功进入下一代的数目,Ln为学习次数,C^表示第i个新个体成功进入下一代的 交叉概率值; 6) 对每个新个体进行种群更新: 6. 1)根据公式(5)计算初始半径值dinitial;
6. 2)根据公式(6)计算退火策略值as;
6. 3)根据公式(7)计算半径值rd,其中FEs为函数评价次数; rd=dinitial ·asFEs (7) 6. 4)根据公式(8)确定当前小生境半径值r;
6.5)根据公式(9)计算出当前种群中各个体与新个体trial的距离,并找出与其最近 的个体 Xnearest?
6. 6)如果trial与Xnearast的距离dnemest小于当前小生境半径r,且trial的目标函数 值小于Xnemest的目标函数值,则trial替换dnemest,且记录交叉概率CK; 6. 7)如果trial与Xnemest的距离dnemest大于当前小生境半径r,则找出当前种群中目 标函数值最大的个体xWOTSt,且trial的目标函数值小于xWOTSt的目标函数值,则trial替换 x?:rSt,且记录交叉概率Ck; 7) 选取新种子: 7. 1)计算出当前种群中各自由个体与当前种子xSMd的距离之和,然后取平均值d_,如 公式(10)所示,其中,乂表示自由个体的数目;
7. 2)如果杲目由个体与当前柙于的跑离d大于dave,则将其标记为新种子; 8) 判断是否满足终止条件,如果满足,则保存结果并退出; 9) 如果当前种群中的所有个体都为种子个体,则为一代结束,并返回步骤3)。
2.如权利要求1所述的一种基于动态小生境半径差分进化的多模态优化方法,其特征 在于:所述步骤8)中,终止条件为函数评价次数。
【文档编号】G06N3/12GK104462749SQ201410571782
【公开日】2015年3月25日 申请日期:2014年10月23日 优先权日:2014年10月23日
【发明者】张贵军, 周晓根, 郝小虎, 梅珊, 陈凯, 俞旭锋, 李章维 申请人:浙江工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1