- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                                     遗传算法及其应用
目录
1遗传算法介绍	1
1.1遗传算法的产生和发展	2
1.2 遗传算法的基本求解步骤	2
1.2.1 编码	2
1.2.2初始化:	2
1.2.3估计适应度:	3
1.2.4再生(选择):	3
1.2.5 交叉:	3
1.2.6 变异:	3
1.2.7 重复:	3
2 遗传算法的应用例子	4
2.1 编码	4
2.2 初始化	4
2.3 计算适应度	5
2.4 再生(选择)	5
2.5 交叉	5
2.6 变异	6
3 遗传算法解决TSP的例子	7
3.1  TSP 问题描述	7
3.2 遗传算法用于TSP 问题	8
3.2.1 编码表示	8
3.2.2 初始化群体和适应度函数及其终止条件的设定	8
3.2.3 选择算子	9
3.2.4 交叉算子	9
3.2.5 变异算子	10
3.2.6  TSP问题的总结	10
1遗传算法介绍
遗传算法(genetic algorithms,GA)是一种模拟自然选择和遗传机制的寻优方法, 它是建立在达尔文的生物进化论和孟德尔的遗传学说基础上的算法。基因杂交和基因突变可能产生对环境适应性强的后代,通过优胜劣汰的自然选择,适应值高的基因结构就保存下来。遗传算法就是模仿了生物的遗传、进化原理,并引用了随机统计原理而形成的。
1.1遗传算法的产生和发展
50 年代末60 年代初, 生物学家Fraser 试图通过计算的方法来模拟生物界遗传与选择的进化过程,这便是GA 的雏形。受此启发,Holland 教授认识到自然遗传可以转化为人工遗传算法。1967 年Bagley 在其博士论文中首次提出了遗传算法这一术语。1975 年,Holland 出版了《自然与人工系统中的适应性行为》。该书系统地阐述了遗传算法的基本理论和方法,提出了遗传算法的基本定理-模式定理, 从而奠定了遗传算法的理论基础。20 世纪80 年代初,Holland 教授实现了第一个基于遗传算法的机器学习系统--分类器系统(Classifier System 简称CS),开创了基于遗传算法的机器学习的新概念。l992 年,John R.Koza 出版了专著《遗传编程》,提出了遗传编程的概念,并成功地把遗传编程的方法应用于人工智能、机器学习、符号处理等方面。随着遗传算法的不断发展, 关于遗传算法的国际学术活动越来越多, 遗传算法已成为一个多学科、多领域的重要研究方向。
国外遗传算法的发展现状
1991年DWhitey在他的论文中提出了基于领域交叉的交叉算子,这个算子是特别针对用序号表示基因的个体的交叉,并将其应用问题中,通过实验对其进行了验证。D.H.Ackley等提出了随即迭代遗传爬山法采用了一种复杂的概率选举机制,此机制中由m个“投票者”来共同决定新个体的值(m表示群体的大小)。实验结果表明,SIGH与单点交叉、均匀交叉的神经遗传算法相比,所测试的六个函数中有四个表现出更好的性能,而且总体来讲,SIGH比现存的许多算法在求解速度方面更有竞争力。H.Bersini和G.Seront将遗传算法与单一方法结合起来,形成了一种叫单一操作的多亲交叉算子,该算子在根据两个母体以及一个额外的个体产生新个体,事实上他的交叉结果与对三个个体用选举交叉产生的结果一致。同时,文献还将三者交叉算子与点交叉、均匀交叉做了比较,结果表明,三者交叉算子比其余两个有更好的性能。2002年,戴晓明等应用多种群遗传并行进化的思想,对不同种群基于不同的遗传策略,如变异概率,不同的变异算子等来搜索变量空间,并利用种群间迁移算子来进行遗传信息交流,以解决经典遗传算法的收敛到局部最优值问题2004年,赵宏立等针对简单遗传算法在较大规模组合优化问题上搜索效率不高的现象,提出了一种用基因块编码的并行遗传算法。该方法以粗粒度并行遗传算法为基本框架,在染色体群体中识别出可能的基因块,然后用基因块作为新的基因单位对染色体重新编码,产生长度较短的染色体,在用重新编码的染色体群体作为下一轮以相同方式演化的初始群体。2005年,江雷等针对并行遗传算法求解TSP问题,探讨了使用弹性策略来维持群体的多样性,使得算法跨过局部收敛的障碍,向全局最优解方向进化。, 它进一步增强了GA的能力.
1.2.7 重复:
若发现最优解, 则算法停止, 否则转3 ,对产生的新一代群体进行重新评价、选择、交叉、变异操作, 如此循环往复, 使群体中最优个体的适应度和平均适应度不断提高。其流程图如下:
2 遗传算法的应用例子
用遗传算法求解f(x)= (0=x=31),x为整数时f(x)的最大值
2.1 编码
在区间[0,31]上的整数可以用一个5位的二进制位串进行编码,x的值直接对应二进制位串的数值,如:9对应01001,31对应11111。
2.2 初始化
在[
                
原创力文档
                        

文档评论(0)