最经典的遗传算法教程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

遗传算法传统的优化方法(局部优化)共轭梯度法、拟牛顿法、单纯形方法全局优化方法漫步法(RandomWalk)、模拟退火法、GA关于优化问题比较:传统的优化方法1)依赖于初始条件。2)与求解空间有紧密关系,促使较快地收敛到局部解,但同时对解域有约束,如可微或连续。利用这些约束,收敛快。3)有些方法,如Davison-Fletcher-Powell直接依赖于至少一阶导数;共轭梯度法隐含地依赖于梯度。全局优化方法1)不依赖于初始条件;2)不与求解空间有紧密关系,对解域,无可微或连续的要求。求解稳健,但收敛速度慢。能获得全局最优。适合于求解空间不知的情况⑴选择运算⑵交换操作⑶变异遗传算法的基本运算遗传算法基本原理模拟自然界优胜劣汰的进化现象,把搜索空间映射为遗传空间,把可能的解编码成一个向量——染色体,向量的每个元素称为基因。通过不断计算各染色体的适应值,选择最好的染色体,获得最优解。●选择运算——从旧的种群中选择适应度高的染色体,放入匹配集(缓冲区),为以后染色体交换、变异,产生新的染色体作准备。选择方法——适应度比例法(转轮法)按各染色体适应度大小比例来决定其被选择数目的多少。某染色体被选的概率:Pc)()(iicxfxfPxi为种群中第i个染色体,具体步骤1)计算各染色体适应度值2)累计所有染色体适应度值,记录中间累加值S-mid和最后累加值sum=∑f(xi)3)产生一个随机数N,0〈N〈sum4)选择对应中间累加值S-mid的第一个染色体进入交换集5)重复(3)和(4),直到获得足够的染色体。举例:⒈具有6个染色体的二进制编码、适应度值、Pc累计值。染色体的适应度和所占的比例用转轮方法进行选择染色体编号12345678910适应度8217721211737被选概率0.10.020.220.090.020.160.140.090.030.09适应度累计8102734364859666976随机数2349761312757所选染色体号码37103137染色体被选的概率被选的染色体个数⒉10个染色体种群按比例的选择过程●交换操作方法:随机选择二个染色体(双亲染色体),随机指定一点或多点,进行交换,可得二个新的染色体(子辈染色体).新的子辈染色体:A’11010001B’01011110模拟生物在自然界环境变化,引起基因的突变.在染色体二进制编码中,1变成0;或0变成1.突变产生染色体的多样性,避免进化中早期成熟,陷入局部极值点,突变的概率很低.●变异复制不能创新,交换解决染色体的创新GA的流程简单遗传算法(GA)的基本参数①种群规模P:参与进化的染色体总数.②代沟G:二代之间不相同的染色体数目,无重叠G=1;有重叠0G1③选择方法:转轮法,精英选择法,竞争法.④交换率:Pc一般为60~100%.⑤变异率:Pm一般为0.1~10%举例:变异概率取0.001初始种群和它的适应度值染色体的交换操纵举例:14步骤1)编码:确定二进制的位数;组成个体(染色体)位的二进制的值,的第是相应于。和分别为和的最大值和最小值。是和或是,精度二进制位数取决于运算nqbqqqqqyxqqbqqqqqnNnnnnn08,21212minmaxminmax10minminmaxminmax步骤2)选择种群数P和初始个体,计算适应度值,P=20;步骤3)确定选择方法;交换率PC;变异率Pm。选择方法用竞争法;PC=0.7,Pm=0.05计算结果:①8代后,f(x,y)=0.998757,②41代后,f(x,y)=1.00000,x=3.000290,y=2.999924.③160次适应度计算,达到最优值。遗传算法的基本数学问题一个重要的定理——图式定理什么叫图式?——描述种群中染色体相似性的字符串。(插入演示)演示12图式—染色体子集10**1**1*11001111110111110111010010010101001101110染色体长度—字符集元素数目—为图式数目1LkQkQL图式*******0111000**10***0****1*01110004321HHHHA(*为通配符)图式的描述:⑴定义长度(H)——H左右二端有定义位置之间的距离;⑵图式的阶次(或固定长度)O(H)——H中非*位(有定义位)的个数。图式定理的推导①图式在选择过程中的增加.,/)(),(//)(),(/)(),()()()()1,(1,,是种群平均适应度)()是种群中染色体的个数(ffHftHmnfHftHmnfnHftHmxfhfnhpntHmiiniiHPhiiHPhiisii经过选择,在t+1代,图式H的数量m(H,t+1)为:②图式在交换中的破坏③图式在变异中的破坏经过选择、交换、变异后在t+1中,图式H的数量:])(1)(1[)(),()1,(mcPHOLHPfHftHmtHm图式定理:在选择、交换、变异的作用下,阶次低、定义长度短、适应度高的图式(模块)将按指数增长的规律,一代一代地增长。遗传算法在应用中的一些基本问题1)知识的编码2)适应度函数。a)适应度函数值必须非负。根据情况做适当的处理二进制和十进制的比较:二进制有更多图式和更大的搜索范围;十进制更接近于实际操作。12minmaxlUUQ精度是二进制的长度小值。分别为变量的最大和最和minmaxlUU3)全局最优和收敛性。根据图式定理,对于具有“欺骗性”函数,GA有可能落入局部最优点。avgmavgavgfCfffbabaffmax的选择满足以下条件:和。,所希望的复制的数目是最好种群数目情况下mC0.2~2.1mCb)为保持种群的多样性,防止“超级”染色体“统治”种群。欺骗性函数图式划分:指引相互之间竞争的定义位为同一集合的一组图式。如#表示定义位,则H1=*1*0*,H2=*0*1*,H3=*1*1*,H4=*0*0*同属于划分*#*#*。总平均适应度(OAF):对一个给定图式,OAF即为其成员的平均适应度。欺骗性函数——包含全局最优的图式其OAF不如包含局部最优的OAF,这种划分称为欺骗划分,它会使GA陷入局部最优。如最高阶欺骗函数有k个定义位,则此函数称k阶欺骗。举例:3位欺骗函数●高级GA算法1)操作的改进2)算法的改进选择方法改进:精英法(竞赛法)、置换式和非置换式随机选择法,排序法。交换方法的改进:多点交换;重组运算微种群遗传算法(GA)双种群遗传算法(DPGA)重组运算:解决染色体分布过于集中问题。把适应度函数做进一步处理。njjiiisxxdsxfxf1)),((/)()(是共享度函数)(ds终止条件:1)达到预定指标;2)达到预定代数。GA算法双种群算法(DPGA)基本思想:利用人类社会分工合作的机理。分成:全局种群——粗搜索,寻找可能存在的最优区域;局部种群——精搜索在全局划定的区域内,寻找最优点。100,100]0.1))(50[sin()(100,100)](001.00.1[5.0sin5.0536.65,536.65)(10.0022.048,2.048)(1)(100211.0222125.02221421222212221321251j216212122211xxxxxxfxxxxxxfxxaxjfxxxxxfjijis测试函数:遗传算法的应用:1)神经网络结构参数的选择2)滑模控制中应用3)倒立摆控制中应用

1 / 29
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功