您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页引入进化梯度的改进小生境遗传算法

引入进化梯度的改进小生境遗传算法

来源:意榕旅游网
维普资讯 http://www.cqvip.com

第26卷第1 1期 2006年1 1月 文章编号:1001—9081(2006)11—2651—03 计算机应用 Computer Applications Vo1.26 No.1 1 NOV.2o06 引入进化梯度的改进小生境遗传算法 康钦建,李荣,周激流 (四川大学电子信息学院,四川成都610064) (kaqiji@163.CO1TI) 摘 要:针对基本遗传算法易于早熟及局部寻优能力较差等不足,提出了一种引入进化梯度的改 进小生境混合遗传算法(GNGA)。利用进化梯度信息调整个体向更优解进化,并根据进化代数自适 应调整实数编码个体的交叉量和变异量,增强了局部寻优能力和解的精度。基于排挤的小生境算法 的引入,保持了种群的个体多样性以克服早熟。在Shubert函数上的仿真结果表明,与小生境遗传算 法相比该算法能有效提高解的精度及收敛速度,找到更多最优解。 关键词:遗传算法;进化梯度;交叉量;变异量;小生境 中图分类号:TP18 文献标识码:A An adaptive niche genetic algorithm by evolution grads KANG Qing—jian,LI Rong,ZHOU ji—liu (School of Electronics and Information Science,Sichuan University,Chengdu Sichuan 610064,China) Abstract:To solve the problems of premature convergence and local minima in simple genetic algorithm(SGA),an evolutionary grad-included niche genetic algoirthm(GNGA)Was proposed.In the GNGA,evolutionary grad was used to improve the ability of finding the local best;the crossover value and mutation value were adapted dynamically with the generation so that the precision was improved;the population diversity was guaranteed by the use of the niche algorithm based on crowding mechanism.Simulation results show that this method has its superiority in precision and convergence rate compared with SGA. Key words:genetic algoritm;evolutihon grad;crossover value;mutation value;niche 遗传算法(Genetic Algorithm,GA)是1975年由Hollnd提 a出的基于Darwin自然进化论和群体进化学说的一种启发式 全局随机搜索算法 。自提出以来,GA作为一种通用性好、 鲁棒性强的随机搜索优化算法,广泛应用于自动控制、图像处 理、组合优化、人工智能等领域。但在实际应用中,遗传算法 也暴露了一些自身固有的缺点:1)容易过早收敛到局部最 度量, 。和 是n维向量。 显然d4越小,X 与 ,相似程度越大;反之亦然。若d < L(L为设定的一较小的正数),即它们属于同-d,生境,则对 适应度较小者施加较强的惩罚函数F =Penalty。将小生境 算子溶人遗传算法中能克服在基本遗传算法后期,适应度高 的个体大量繁殖而充满整个群体,造成早熟的不足,保证了种 群的多样性及对整个解空间的搜索。 1.2编码及进化梯度 优;2)局部寻优能力差,求解精度不高。近年来,许多文献针 对遗传算法的缺陷提出了各种改进方法,如引入爬山法、模拟 退火法 J、自适应遗传算法、小生境遗传算法 J、实数编码遗 传算法 J,并获得了性能上的一定改善。 因为实数编码具有复杂度低,执行效率高等优点,本文采 与其他优化的遗传算法不同,本文提出的引入进化梯度 的小生境改进遗传算法能同时提高局部搜索能力和克服早 熟。利用小生境算法很强的把握整个搜索空间的能力与遗传 算法的优势互补来克服早熟。进化梯度为每个个体标记进化 方向,按标记的进化方向继续局部寻优,会进一步提高解的精 度,加快收敛速度。 用实数编码。个体编码串中包含决策变量和进化梯度向量,个 体的编码方案为: G r—— ——.、广—— ——.、 l, 2,…, ^・gl,g2,…, 其中 [Mk, ]为目标函数的第 个决策变量;G= [g。,g ,…,g ]是进化梯度向量。在遗传操作中g。是不参与 交叉和变异的。 传统的基于微分的寻优方法依赖于目标函数的梯度信 1 GNGA算法策略 1.1小生境算子 息,通过按梯度所指方向移动寻找最优解。该方法中目标函数 ,( )的n维梯度向量由下式给出: 本文使用的基于排挤的小生境算法_6 的基本思想是:依 据个体之间的相似性将种群分为若干个小生境,并排挤掉同 d'生境中的较差个体,这样各小生境中的最优个体便可以 -vAx)=(、  lOx,  Ox,…,,  Ox), 就能得到 )的极小值。即: X =X一8・vf( ) (1) (2) 认为是局部最优解邻域内的一点。个体之间的相似性用编码 ,_ ————————一 该向量始终指向最快增长方向。因此,朝相反方向移动 串之间的海明距离d =l lX。一 ll=√∑( 一 ) 来 收稿日期:2006—05—27;修订日期:2006—07—17 作者简介:康钦建(1976一),男,四川安岳人,硕士研究生,主要研究方向:人工智能、图像处理;李荣(176一),9男,四川广元人,硕士研究生,主要 研究方向:^工智能、信号处理;周激流(1963一),男。四川威远人,教授,博士生导师,主要研究方向:图像图形处理、模式识别、^工智能. 维普资讯 http://www.cqvip.com

2652 6是一足够小的正实数。 计算机应用 pl擀“ 2006皇 受传统梯度概念的启发,在遗传算法中引入进化梯度的 概念。它指目标函数最快增长时个体进化的方向。因此,若知 一 道个体的进化梯度向量G,则有目标函数 X一6・G)< — +一 + .巡 一 一艿 P =F(X )/∑F( ) =(8) 0 本文提出的算法流程如图1所示。 l开始.选择算法运行参数l t 艿厂( ),对于求最小值的优化问题,有适应度函数: l随机产生^价初始个体,t=0 I (3) ● F(X一6・G)>F(X) 但是在实际应用中,目标函数的梯度信息往往不能用解 一一 一 析式表达。因此,为了数值计算简便,目标函数的一阶偏微分 一 l计算、评价各个体并记录前Ⅳ个个体l l t 可由下式近似计算: ~ +0( ) (4) P 是第i个值为1,其余值为0的n维向量。所以得到第i 个基因的梯度值以及梯度向量: : ,G:vAx) (5) OXi 对群体中每个小生境的最优个体进行基于进化梯度的局 部寻优,就能使这一局部最优邻域的点向局部最优进化。其 具体过程如下: while F(X )>F(X) X=X ; X =X一6‘G= 1—6。g1,…, 一6・g 2 改进的遗传算子 2.1 交叉算子 交叉操作的作用是组合出新的个体,在变量空间进行有 效的搜索。启发式交叉算子 能保证交叉后,一点落于进行 交叉的两父代之间,另一点落于靠近较好父代的一侧,使解向 较好的方向发展。而自适应交叉系数 使交叉量随进化代数 的增大而减小。把二者结合起来提出了改进的自适应非均匀 算术交叉算子。在该算子中,首先比较个体 与置的适应度 值,在此不妨设F( )>F( ,),交叉后的结果为: (6) =x + 其中, :fL~ ・( ‘(Ⅳ^一  ),一  i), fx≤ a> ,△ :,。。  . ( 一 ), =exp(一 ∥ ),%为一预定系数,t为当前进 化代数, 为最大进化代数。当F(Xi)<F( )时,有类似的 交叉结果。可见绝对交叉量I I和I I随进化代数t的增 加而减小。 2.2 变异算子 本文采用固定变异概率P ,自适应变异量的非一致变异 算子 。决策变量 的变异结果由下式决定: , ={: L  △(‘,Ⅳ^一 ), “d。m(0, )=0(7)l,)  一△(t, 一Mk),if random(0,1)=1 式中,△(t,Y)=Y・f 1一r 1,r为[0,1]上均匀分 布的随机数。可见遗传算法在初始阶段进行近似均匀随机搜 索,在后期,随进化代数t的增加变异量△(t,Y)减小,算法将 重点搜索原个体附近的微小区域。 2.3 选择算子 由于在小生境算子里对个体的适应度进行了调整,利用 轮盘赌的选择算子能达到择优且较优个体又不会充斥群体的 目的。每个个体的选择概率为: < 》 圃 N● l t++,执行GA的选择、交叉、变异操作l ● J将种群 和记录的Ⅳ个个体合并为 +|^,个个体 ● l小生境运算,并得到各小生境最优个体的进化梯度 ● l各个体按梯度局部寻优I ● I计算、评价 +Ⅳ个个体,按适应度降I I序排列,并分别记录前M和前Ⅳ个个体l 图1 GHGA算法流程 3实验及结果 本文利用Vc++语言在Pc上仿真,将GNGA算法应用 于著名的Shube ̄函数,并将它与小生境遗传算法(Niche Genetic Algorithm,NGA)的结果作比较,验证了GNGA算法在 保持个体多样性、克服早熟和局部寻优上有较优的能力。 Shubea函数数学表述为: fI min z:)={∑i.c0s[(i+1) +f]}× 1【 {∑i.c0s[(i+1) :+ ]} s.I._10 ≤1 f-1,2) 该函数有760个局部最优点,其中18个是全局最优点。全 局最优点处函数值是L( , :)=一186.73090883。其三维 图如图2所示。 3oo 2oo loo 0 一loo -2oo 10 10 图2 Shube ̄函数的三维图 本实验中所使用的运行参数如下:种群规模M=120,记录 优秀个体数N=45,最大进化代数T=500,交叉概率P =Q 8,变 异概率P =Q 1,海明距离下限£=0.4,罚函数Penalty=10 , 自适应交叉参数 =40.0,进化梯度占=10 。 先使用上述参数进行NGA运算,运行到70代左右可以 收敛到18个最优点附近,此时18个最优点的平均值在 一186.7;E右,到90代时,其平均值在一186.7309左右,可以 认为已经收敛。NGA算法找到所有18个全局最优解。 保持上述参数不变,使用本文的GNGA算法来进行仿 真,收敛得比NGA更快。运行到第3o代左右就可以收敛到 18个最优点附近。到40代时,其平均值在一186.7309左右, 可以认为已经收敛。图3、图4绘出了两种算法在最优个体 和全局收敛性能随进化代数t变化的直观比较图。从图3可 维普资讯 http://www.cqvip.com

第11期 康钦建等:引入进化梯度的改进小生境遗传算法 2653 以看出,GNGA只要10代左右就能找到至少一个全局最优 皿 用本文的GNGA算法找到的18个全局最优如表1所示。 点,而NGA则需要60代左右。从图4可以看出,GNGA种群 收敛速度比GNA更快。 表1 18个全局最优解 遥 斗 ●●O OO O●OO O O●O O O OO O O OO O O OO O●OO O O●进化代数t 图4种群平均值收敛曲线 4 结语 遗传算法具有搜索空间整体把握能力强的优点;小生境 能保持群体的多样性,寻找到更多的最优解;进化梯度能在决 策变量的一定领域内使个体更优,具有很强的局部搜索能力。 本文提出的标记进化梯度的改进小生境遗传算法融合了三种 O O●O O O OOO O O●策略,充分利用它们的优点,克服了遗传算法种群早熟和局部 搜索能力差的缺点。通过典型多峰值函数的仿真实验,证明 了该算法有效地维持了种群的多样性,局部搜索能力及解的 精度得到提高,且参数的选择不必过分严格,是一种有效可靠 的多峰值优化算法。 参考文献: 【1】HOLLAND JH.Adaptation in Natural and Artiifcial Systems【M】. Ann Arbor:The University of Michigan Press,1975. O O O OO O O OO O O OO O 1 1O O O O【2】 冯毅,李利,高艳明,等.一种基于小生境的混合遗传退火算 法【J】.机械科学与技术,2004,23(12):1494—1498. 【3】 黄聪明,陈湘秀.小生境遗传算法的改进【J】.北京理工大学学 报,2004,24(8):675-678. 进化代数t 【4】 田小梅,龚静.实数编码遗传算法的评述【J】.湖南环境生物职 业技术学院学报,2005,11(1):25—31. 【5】 董颖,刘欢杰.一种基于实数编码的改进遗传算法【J】.东北大 学学报,2005,26(4):119-221. 【6】 周丽,孙树栋.遗传算法原理及应用【M】.北京:国防工业出版 社,2001. O O O OO O O OO O 1 1O O O O图3种群最优个体收敛曲线 O O O O(上接第2644页) 0 0-1 01 0-1 0 0 l 0 0 1 0 0 A= LA: 0 1 I 0 0 1 0 0 1  l0 l 0 1 0 0 0 l 0 1 0 0 l LA: l I 1 0 1 J l 0 1 0 0 LA: l 1 0 1 00 1J 完工时间Makespan=39.75<42。 ing Unrelated Machines by 【2】 SCHULZ AS,SKUTELLA M.Schedul5 结语 通过以上实例说明,采用极大利用机器加工能力和均衡 Randomized Rounding[J】.Society for Industrial and Applied Mathe— matics,2002,15(4):450—469. 【3】 唐国春,张峰,罗守成,等.现代排序论【M】.上海:上海科学普及 机器负荷的混合策略对机器进行调度,具有一定的有效性和 优化效果。但对于很多复杂情况,尚不能给出完善的结果。 参考文献: 【1】ADAMS J'BALAS E,ZAWACK D. Shifting Bottleneck Pr∞ech for Job-Sh ̄S ̄tuligIJ].h1n日m8eIIler吐Sdences,N68,34(3):391—4o1. 出版社,2003. 【4】 刘志雄,王少梅基于混合进化策略算法的并行多机调度问题研究 【J】_武汉理工大学学报(交通科学与工程版),2O05,29(4):571—574. 【5】 王磊,黄文奇.求解工件车间调度问题的一种新的邻域搜索算法 【J】.计算机学报,2005,28(5):809—816. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务