- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四节 遗传算法.doc
第四节 遗传算法
遗传算法是仿真生物遗传学和自然选择机理,通过人工方式所构造的一类搜索算法,从某种程度上说遗传算法是对生物进化过程进行的数学方式仿真。 霍兰德( Holland )于1975年在 他的著作 《Adaptation in Natural and Artificial Systems》首次提出遗传算法,并主要由他和他的学生发展起来的。
生物种群的生存过程普遍遵循达尔文进化准则,群体中的个体根据对环境的适应能力而被大自然所选择或淘汰。进化过程的结果反映在个体的结构上,其染色体包含若干基因,相应的表现型和基因型的联系体现了个体的外部特性与内部机理间逻辑关系。通过个体之间的交叉、变异来适应大自然环境。生物染色体用数学方式或计算机方式来体现就是一串数码,仍叫染色体,有时也叫个体;适应能力是对应着一个染色体的一个数值来衡量;染色体的选择或淘汰则按所面对的问题是求最大还是最小来进行。
遗传算法自从1975年提出以来,在国际上已经形成了一个比较活跃的研究领域,已召开了多次比较重要的国际会议和创炝撕芏嘞喙氐墓士铩?/p
遗传算法已用于求解带有应用前景的一些问题,例如遗传程序设计、函数优化、排序问题、人工神经网络、分类系统、计算机图像处理和机器人运动规划等。
一、遗传算法的结构
霍兰德( Holland )的遗传算法通常 被称为“简单遗传算法”简称SGA ),我们以此作为讨论主要对象,加上适应的改进,分析遗传算法的结构和机理。
我们 首先介绍主要的概念。我们在讲解 中会结合如下的货郎担问题(Travelling Salesman Problem,简记为TSP):设有n个城市,城市i和城市j之间的距离为d(i,j)i,j=1,…,n。TSP问题是要找遍访每个域市恰好一次的一条回路,且其路径总长度为最短。
1.编码与译码
许多应用问题结构很复杂,但可以化为简单的位串形式编码表示,我们将问题结构变换为位串形式编码表示的过程叫编码;而相反将位串形式编码表示变换为原问题结构的过程叫译码或解码。我们把位串形式编码表示叫染色体,有时也叫个体。
对TSP可以按一条回路城市的次序进行编码,比如码串134567829表示从城市1开始,依次是城市3,4,5,6,7,8,2,9,最后回到城市1。一般情况是从城市w1开始,依次经过城市w2,……,wn,最后回到城市w1,我们就有如下编码表示:
w1 w2 …… wn
由于是回路,记 wn+1=w1。它其实是1,……,n的一个循环排列。要注意w1,w2,……,wn是互不相同的。
2.适应度函数
为了体现染色体的适应能力,引入了对问题中的每一个染色体都能进行度量的函数,叫适应度函数。通过适应度函数来决定染色体的优、劣程度,它体现了自然进化中的优利劣汰原则。对优化问题,适应度函数就是目标函数。TSP 的目标是路径总长度为最短,路径总长度的倒数就可以为TSP的适应度函数:
请注意其中wn+1=w1。
适应度函数要有效反映每一个染色体与问题的最优解染色体之间的差距,一个染色体与问题的最优解染色体之间的差距小,则对应的适应度函数值之差就小,否则就大。适应度函数的取值大小与求解问题对象的意义有很大的关系。
3.遗传操作
简单遗传算法的遗传操作主要 有三种:选择( selection )、交叉(crossover)、变异(mutation)。改进的遗传算法 大量扩充了遗传操作,以达到更高的效率。
选择操作 也叫复制操作,根据个体的适应度函数值所度量的优、劣程度决定它在下一代是被淘汰还是被遗传。一般地说,选择将使适应度较大(优良)个体有较大的存在机会,而适应度较小(低劣)的个体继续存在的机会也较小。简单遗传算法采用赌轮选择机制 ,令表示群体的适应度值之 总和,表示种群中第i个染色体的适应度值,它产生后代的能力正好为其适应度值所占份额。
交叉操作的简单方式是将被选择出的两个个体P1和P2作为父母个体,将两者的部分码值进行交换。假设有如下八位长的二个体:
产生一个在1到7之间的随机数c,假如现在产生的是3,将P1和P2的低三位交换:P1的高五位与P2的低三位组成数这就是P1和P2的一个后代Q1个体;P2的高五位与P1的低三位组成数这就是P1和P2的一个后代Q2个体。其交换过程如下图所示:
图5-4-1 交叉示意图
让我们来讨论TSP的交叉操作作为较复杂的例子,举例如下:
以下标作为交叉位置的编号,设已选择了如下两个染色体:
w1 w2 …… wn z1 z2 …… zn随机产生一个1和n-1之间的数k,将此二染色体中前k个城市作交换,得到:
z1
您可能关注的文档
- 第八章 假设检验习题.doc
- 第八章 几种特殊的图.doc
- 第八章 强化和反馈技能 返回.doc
- 第八章 电解质溶液自我测试.doc
- 第八讲 大学生网络心理及其调试.doc
- 第八讲 细胞生物学.doc
- 第六单元 小小旅行家.doc
- 第六单元 运算律.doc
- 第六单元第 1 课时教学设计.doc
- 第六周学校领导干部教学领导力工作完成情况公布.doc
- 2025河南郑州管城区紫东路社区卫生服务中心招聘2人模拟试卷参考答案详解.docx
- 2025河北昌黎第一中学最新教师招聘考前自测高频考点模拟试题及参考答案详解.docx
- 2024年贵州医科大学第三附属医院招聘笔试真题.docx
- 2024年衢州市龙游县招聘卫生专业技术人员真题.docx
- 2025广东广州工程技术职业学院第一批招聘一般岗位7人模拟试卷参考答案详解.docx
- 2024年襄阳市第六人民医院招聘真题.docx
- 初级消防设施操作员练习题库(含答案).pdf
- 2025广东省连州市赴高校设点面向社会招聘编制教师37人考前自测高频考点模拟试题含答案详解.docx
- 2025春季上海建工集团校园招聘正式启动考前自测高频考点模拟试题含答案详解.docx
- 2025广东东莞市谢岗镇政府第一食堂招聘厨师长、副厨2人考前自测高频考点模拟试题及参考答案详解一套.docx
文档评论(0)