人工智能homework4------遗传算法解决TSP

         遗传算法是根据自然界的“物竞天择、适者生存”现象而提出的一种随机搜索算法,70年代由美国的密执根大学的Holland教授首先提出。该算法将优化问题看作是自然界中生物的进化过程,通过模拟大自然中生物进化过程中的遗传规律,来达到寻优的目的。近年来,遗传算法作为一种有效的工具,已广泛地应用于最优化问题求解之中。


                                                                                   生物进化与遗传算法

根据达尔文的进化论,在生物进化的过程中,只有那些最能适应环境的种群才得以生存下来。生物的进化过程可以用如图7.7所示的进化圈表示。


该进化圈以群体为一个循环的起点。按照优胜劣汰的原则,经过自然选择后,一部分群体由于无法适应环境而遭淘汰退出进化圈。在自然界中,自然选择包括恶劣的天气和气候,食物的短缺,天敌的侵害等。另一部分群体,由于适应环境的能力强而生存下来。它们或者是因为身体强壮而逃脱天敌的侵害,或者因为耐寒冷、耐饥饿能力强而存活下来。总之,这些群体之所以能够生存,是因为它们具有某种适应周围环境的能力。从适应环境的能力方面来说,这些群体从总体上考察是优良的,被淘汰的是那些体弱病残、不能适应环境生存的个体。即便因偶然因素一些弱者侥幸生存了下来,但在婚配的竞争中它们也往往处于劣势。因此可以说只有那些适应环境能力强的优良品种才能够成为种群。经过种群的交配,繁衍出下一代子群。一般来说子群中的个体遗传了父代双亲的优势,加快了后代的进化,使之更能够适应环境。比如,一个身体强壮的个体和一个耐寒冷能力强的个体交配后,繁殖的后代可能会同时具有身体强壮和耐寒冷的能力。在进化的过程中,个别的个体可能会发生一些变异,从而产生新的个体,使得群体的组成更加多样化。综合以上过程,经过一个循环的进化,新的群体生长起来,取代旧群体,又进入新的一轮进化之中。经过多次的竞争、淘汰、进化过程,最终的群体中生存下来的是那些最能适用环境生存的优秀个体。

虽然生物进化的一些细节我们还不是很清楚,但一些进化理论的特性已经普遍被研究者所接受。刘勇等在其著作中对生物进化特性总结如下:

(1)进化过程发生在染色体上,而不是发生在它们所编码的生物体上;

(2)自然选择把染色体以及由它们所译成的结构的表现联系在一起,那些适应性好的个体的染色体经常比差的染色体有更多的繁殖的机会。

(3)繁殖过程是进化发生的那一刻。变异可以使生物体子代的染色体不同于它们父代的染色体。通过结合两个父代染色体中的物质,重组过程可以在子代中产生有很大差异的染色体;

(4)生物进化没有记忆。有关产生个体的信息包含在个体所携带的染色体的集合以及染色体编码的结构之中,这些个体会很好地适应它们的环境。

总之,生物在进化过程中,经过优胜劣汰的自然选择,会使得种群逐步优化,经过长期的演化,优良的物种得以保留。不同的环境,不同物种的基因结构,导致最终的物种群不同,但它们都有一个共同的特征:最能适应自己所处的生存环境。

受达尔文进化论“物竞天择、适者生存”思想的启发,美国密执根大学的Holland教授把优化问题求解与生物进化过程对应起来,将生物进化的思想引入到复杂问题求解中,提出了求解优化问题的遗传算法。

在遗传算法中,首先对优化问题的解进行编码,编码后的一个解称为一个染色体,组成染色体的元素称为基因。一个群体由若干个染色体组成,染色体的个数称为群体的规模。与自然界中的生存环境相对应,在遗传算法中用适应函数表示环境,它是已编码的解的函数,是一个解适应环境程度的评价。适应函数的构造一般与优化问题的指标函数相关,简单的情况下,直接用指标函数或者指标函数经过简单的变换后作为适应函数使用。一般情况下,适应函数值大表示所对应的染色体适应环境的能力强。适应函数起着自然界中环境的作用,当适应函数确定后,自然选择规律将以适应函数值的大小来决定一个染色体是否继续生存下去的概率。生存下来的染色体成为种群,它们中的部分或者全部以一定的概率进行交配,繁衍得到下一代的群体。交配是一个生殖过程,发生在两个染色体之间,作为双亲的两个染色体,交换部分基因之后,生殖出两个新的染色体,即问题的新解。交配或者称作杂交,是遗传算法区别于其他优化算法的最主要的特征。在进化的过程中,染色体的某些基因可能会发生变异,即表示染色体的编码发生了某些变化。一个群体的进化需要染色体的多样性,而变异对保持群体的多样性具有一定的作用。


表7.9给出了遗传算法与生物进化之间的对应关系。

 

表7.9:生物进化与遗传算法之间的对应关系

生物进化中的概念

遗传算法中的作用

环境

适应函数

适应性

适应值函数

适者生存

适应函数值最大的解被保留的概率最大

个体

问题的一个解

染色体

解的编码

基因

编码的元素

群体

被选定的一组解(以编码形式表示)

种群

根据适应函数选择的一组解(以编码形式表示)

交配

以一定的方式由双亲产生后代的过程

变异

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值