ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:238.21KB ,
资源ID:18620465      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18620465.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(遗传算法及其育种Word下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

遗传算法及其育种Word下载.docx

1、为所有自变量上限的最大值,为所有自变量下限的最小值。编码后,二进制串与自变量的十进制数值的映射关系3为式中,M为二进制串对应的十进制数值。最后,随机产生N组初始个体(长度为L的二进制字符串),即随机生成N组初始解,为使初始解尽可能分布在解空间的各个角落,N必须足够大,一般N20150。用(3)式算出各个初始解的十进制值,代入适应度函数(1)计算出个体的适应度。就可开始遗传操作,遗传操作分:选择复制、交叉、变异三个步骤。选择复制选择复制的目的是选择适应度大的优秀个体,淘汰部分个体,实现“优胜劣汰”。选择的方法常用轮盘赌法,即按个体适应度占总适应度的比例把整个轮盘划分给各个个体,然后再随机地转动轮

2、盘,随机地选取个体。如图1所示,由于适应度大的个体在轮盘中所占的区域大,故被选中的概率也大,保护了优秀个体。由于优秀个体被大量复制,搜索可以较快地收敛到稳定状态。同时,选择是随机进行的,因此适应度小的个体也有可能被选中,部分地保持了个体的多样性。图1 轮盘赌法选择交叉交叉是将选择出来的群体按一定的交叉概率随机地选择出一部分个体,随机地两两配对,并按选定的交叉方式,把成对的个体的基因部分地进行交换,形成新的个体。如图2所示,交叉点也是随机选取的。交叉操作使群体在继承父代的基因的同时又不完全等同于父代,有可能产生更优秀的个体,使搜索向最优解靠近。图2 交叉操作示例变异交叉操作是父代基因的重组,基因

3、全部来源于父代,经过多次交叉后,就很难产生新的个体了。变异是以较小的概率随机地改变一个串位的值。如对于二进制串,就是将随机选取的串位的值由1变成0或者由0变成1。变异操作不依赖于父代的基因,更容易产生新的个体,保持群体的多样性。为了使搜索能够收敛,搜索初期变异率不能太高。通过不断重复以上的遗传操作,优秀个体的适应度越来越高,直到一个或者多个个体达到最优解。若相同的个体越来越多,直到所有个体均相同,即使这时没有达到全局最优,搜索也很难进行下去,搜索到的就是局部最优。2.2 基础遗传算法的局限容易陷入局部最优遗传算法的选择复制操作会使优秀个体大量复制,这样种群中会出现许多相同的个体,而相同个体之间

4、即使进行交叉操作也不会产生新的个体。另外,变异出来的更优秀个体由于数量少,很容易在选择复制操作中被淘汰,因此,搜索容易陷入局部最优搜索效率低对于基础遗传算法,优秀个体的存活和发展要靠相同个体的规模来保证,而这种规模反过来又成了新的优秀个体发展起来的障碍,由于轮盘的大部分区域已被旧的优秀个体占据,因此新的优秀个体存活并发展起来的概率很小,过程也较漫长。这种由机制的缺陷所产生的竞争及内耗是不可避免的。这和生物界自然进化过程缓慢的道理是一样的。所以遗传算法的搜索效率不是最高的。具有三种操作,运算量大遗传算法具有选择、交叉、变异三种操作,特别是选择和交叉操作,需要多个操作步骤,实现程序较长,运行时间也

5、较长,因此不便于复杂问题的求解。7 育种算法的应用实例 育种算法不是针对某一特定函数提出的,因此算法具有普遍意义,适用于各种优化问题。用育种算法进行了许多函数的优化计算,效果均非常良好,下面是其中两例。例1 具有针状全局最优的函数如下图2 例1的函数图该函数的函数图形如图2所示,在(50,50)处取得全局最大值1.1512,其第二极大值为1.12837,它是一个多峰值函数,采用传统优化方法几乎不能找到全局最优点,一些改进3遗传算法同样也找不到全局最优。微粒群算法限定繁殖1500代,实验100次,有10次可以找到全局最优,平均最优值达到1.12903,至1.145平均需要40949.3代3。采用

6、单种子育种算法,取L=14,N=100,限定繁殖100代,实验100次有29次找到全局最优,平均最优值达到1.133,最大值1.1494。采用三种子育种算法取C=99,L=15,N=99, 不保留热点,限定繁殖800代,实验100次有80次找到全局最优,平均最优值达到1.144,最大值1.1503。性能得到了大幅提高。例2 优化问题如下:该例的极值如麦田的麦芒一样不计其数,要找出其中最矮的一株其难度是可想而知的。取调用函数次数140000次,连续十次实验的结果如下:差分进化算法搜索到的最小值为-10.78783,平均值为-10.51465。微粒群算法搜索到的最小值为-10.76252,平均值为

7、-10.39754。三种子育种算法(N=199,L=16,C=-99,调用函数次数50000次)搜索到的最小值为10.7977,平均值为10.2557。若调用函数次数增大到140000次,育种算法搜索到的最小值为10.86433,平均值为10.537。例3测试函数如下:用育种算法搜索在D=4,无约束和约束条件为时,函数的全局最优。 取自变量的分辩率为0.01,算出二进制串长度为10,群体规模为100。共实验100次,搜索到的极值点为X1X37.609,X2X411.222,最大值为7.62,平均迭代次数20,平均用时1秒。对于有约束的搜索,可以把约束条件作为一个判断条件,插入程序中,当约束条件

8、不满足时,令对应个体的适应度为一个很小的值,这样就把不满足约束条件的解排除了。该例有约束条件时搜索到的极值点为:X1X37,X2X43,最大值为:4.84,平均迭代次数:77,平均用时:4秒。例4 用De Jong测试平台中的一个典型函数3进行遗传算法和育种算法优化实验,共实验100次。 遗传算法采用轮盘赌法保留优秀个体法选择,变异率可变。实验结果如表1所示,育种算法搜索到的全部为全局最优(3905.926),且平均代数远低于遗传算法的平均代数,平均用时0.5秒。例5 分别用基础遗传算法、自适应遗传算法和育种算法对标准测试函数2进行优化实验,共实验100组。实验结果如表2所示,基础遗传算法无一

9、次搜索到全局最优,自适应遗传算法和育种算法全部搜索到全局最优,但是自适应遗传算法代数较多,平均为453代,育种算法平均只有29代,平均用时0.2秒。例6 分别用微粒群6算法和育种算法对测试函数进行优化实验,共实验100次。取搜索终止条件为函数值大于等于0.99。实验结果表明,微粒群算法平均代数为1589代。育种算法取个体长度L=12,群体规模N=100。则搜索到的函数值平均为0.993,平均代数仅74代,平均用时2秒。另外,分别取控制参数C=-10和C=0,搜索到的最小值为0.93928。方程的根有多组,其中一组为X1=17.993,X2=49.511。例 求:Min f(x)= 约束: ,计

10、算的十进制值:For i = 3 To 4 M = 0For k = 1 To 12 M = M + ZQ(i, j, k) * 2 (12 - k) ZQ(i, j, k)个体基因Next k 二进制转换成十进制 X(i) = -10 + M * (10 - (-10) / (2 12 - 1) 计算自变量的十进制值Next i因为,所以x1单独计算: M = M + ZQ(1, j, k) * 2 (12 - k) Next k X(1) = 0.0001 + M * 10 / (2 12 - 1)将放开,只受等式约束,不受区间约束。即令效果好一些X(2) = (1 - X(3) * X(

11、4) * X(4) / X(1)在程序中加入约束条件和函数 ,X(0)存放函数值 X(0) = X(1) 0.5 + X(2) * X(3) 2 + X(4) If X(1) + X(2) * X(4) 10 Then If X(4) + X(1) * X(3) 10 Then 不满足约束条件时跳出程序,则该组变量取值被排除。设种群规模,个体长度,调用函数次数的搜索结果:例:min f=(L-L2)/2)2+h2)0.5*A1+0.5*L2*A2;两个等式约束:(L-L2)/2)/(24*E*I)*(3*L2-4*(L-L2)/2)2)*(L-L2)/2)2+h2)(-0.5)-(x2+y2)

12、(-0.5)*y*E*A1=k(L-L2)/2)2+h2)(-0.5)-(x2+y2)(-0.5)*x*E*A1-2*(L-L2)/2)-x)/L2*E*A2)*(y+(L-L2)/2)+L2)2*(L-L2)/2)2/(3*L)+(L-L2)/2)2*(4*(L-L2)/2)3+10*(L-L2)/2)2*L2+6*(L-L2)/2)*L22+L23)/(6*L2)/(E*I)*(L-L2)/2)2+h2)(-0.5)-(x2+y2)(-0.5)*y*E*A1)=(x-(L-L2)/2)*(L-L2)/2)2+h2)(-0.5)-(x2+y2)(-0.5)*y*E*A1四个不等式约束:(L-

13、L2)/2)2+h2)(0.5)-(x2+y2)(0.5)(x2+y2)(0.5)-(L-L2)/2)2+h2)(0.5)-(L-L2)/2)2+h2)(0.5)*q/Ex-(L-L2)/2)(L-L2)/2)-x-L2*q/(2*E)1000 Then GoTo l1 限定-1000A1A2 0 Then GoTo l1 If (z 2 + P 2) (0.5) - (L - L2) / 2) 2 + h 2) (0.5) - (L - L2) / 2) 2 + h 2) (0.5) * q / E 0 Then GoTo l1 If z - (L - L2) / 2) If (L - L2

14、) / 2) - z - L2 * q / (2 * E) X(0) = (L - L2) / 2) 2 + h 2) 0.5 * A1 + 0.5 * L2 * A2结果: L2、h、x、y限定在10;A1、A2限定在10000。个体长度L=12;种群规模N=99,调用函数次数200000次min例:,次大a = Abs(X(1): b = Abs(X(2): r = Sqr(a * a + b * b)X(0) = 0.5 - (Sin(r) 2) - 0.5) / (1 + 0.001 * r) 2 = 120 种群大小(个体组数,一组2个个体)= 14 每一个体的长度,二进制串的位数X

15、min = -100 自变量的最小值Xmax = 100 自变量的最大值ccc = 0 指定值(函数中间值或无穷大)min y=2.8*(2*k(1)+4*k(2)+8*k(3)+3.5*(2*k(4)+4*k(5)+8*k(6)+4.6*(2*k(7)+4*k(8)+8*k(9)约束条件是:2*k(1)+4*k(2)+8*k(3)=02*k(4)+4*k(5)+8*k(6)2*k(7)+4*k(8)+8*k(9)2*k(1)+4*k(2)+8*k(3)+2*k(4)+4*k(5)+8*k(6)+2*k(7)+4*k(8)+8*k(9)=1从以上两个例可以看出,与遗传算法及其改进算法相比,单种

16、子育种算法其优化性能已经得到了很大提高,而多种子育种算法在处理复杂的多峰值函数上表现出比单种子育种算法更大的优越性。另外,只要繁殖代数足够,育种算法最后总能找到全局最优,这与遗传算法落入局部最优不易摆脱相比具有很大的优越性。例10 用育种算法求解售货商问题。设有9个城市,售货商从0号城市出发要把货物送到其他8个城市,且每个城市只能达到一次,最后回到0号城市,各城市之间的距离矩阵L如下。求售货商的送货次序,使总的路程最短。该例售货商有数万种送货方案可共选择,若采用单纯的随机搜索,十次均搜索到最优路径,平均需要计算总距离16812次。用育种算法以8个城市为候选库,随机抽取送货城市,可得到送货次序行向量,把行向量看做生物个体,用育种算法的方法,就可找到最短的路径。以路径最短为选种条件,取种群规模N=20,搜索到的全局最优如图5所示。优化十次共用时2秒钟,十次全部搜索到最优排列,总路程23,有四条最短路径,其中的一种为:0531786240。十次优化中,计算总距离次数最少的仅280次,最多的也不过4280次,平均1232次。因此育种算法使搜索效率提高了13倍多。图5 TSP问题的求解结果

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1