- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章遗传算法的理论基础
遗传算法的理论基础
遗传算法有效性的理论依据为模式定理和积木块假设。模式定理保证了较优的模式(遗传算法的较优解)的样本呈指数级增长,从而满足了寻找最优解的必要条件,即遗传算法存在着寻找到全局最优解的可能性。而积木块假设指出,遗传算法具备寻找到全局最优解的能力,即具有低阶、短距、高平均适应度的模式(积木块)在遗传算子作用下,相互结合,能生成高阶、长距、高平均适应度的模式,最终生成全局最优解。Holland,= (3.2)
现在,假定模式的平均适值高于群体平均适值,且设高出部分为为常数,则有
= (3.3)
假设从开始,保持为常值,则有
(3.4)
2.交叉算子
然而仅有选择操作,并不能产生新的个体,即不能对搜索空间中新的区域进行搜索,因此引入了交叉操作。下面讨论模式在交叉算子作用下所发生的变化,这里我们只考虑单点交叉的情况。
模式只有当交叉点落在定义距之外才能生存。在简单交叉(单点交叉) 下的生存概率。例如一个长度为5的串以及隐含其中的两个模式为
A = 010110
H1 = *1* * *0
H2 =* * *11*
我们注意到模式H1的定义距为4,那么交叉点在6-1=5个位置随机产生时,H1遭破坏的概率,即生存概率为。
而交叉本身也是以一定的概率发生的,所以模式的生存概率为
(3.5)
现在我们考虑交叉发生在定义距内,模式不被破坏的可能性。在前面的例子中,若与交叉的串在位置2、6上有一位与相同,则H1将被保留。考虑到这一点,式(3.5) 给出的生存概率只是一个下界,即有
(3.6)
可见,模式在交叉算子作用下长度短的模式将增多。
3.变异算子
假定串的某一位置发生改变的概率为,则该位置不变的概率为1-,而模式在变异算子作用下若要不受破坏,则其中所有的确定位置(‘0’或‘1’的位) 必须保持不变。因此模式保持不变的概率为,其中为模式H的阶数。当时,模式H在变异算子作用下的生存概率为
(3.7)
综上所述,模式在遗传算子选择、交叉和变异的共同作用下,其子代的样本数为
(3.8)
式(3.8) 忽略了极小项。通过式(3.8) ,我们就可以给出模式定理。
定理3.1(模式定理) 在遗传算子选择、交叉和变异的作用下,具有阶数低、、与积木块一样,一些好的模式在遗传算法操作下相互拼搭、结合,产生适应度更高的串,从而找到更优的可行解,这正是积木块假设所揭示的内容。下面用图来说明遗传算法中积木块生成最优解的过程。
假设每代种群规模为8,Si表示每代群体中第i个个体,问题的最优解由积木块AA、BB、CC组成。图3.1为初始种群,个体S1、S7含有AA,个体S4、S8含有BB,个体S3含有CC。S1 AA S2 S3 CC S4 BB S5 S6 S7 AA S8 BB 图3.1 初始种群
当种群进化一代后,图3.2为第二代种群,个体S1、S3、S7含有AA,个体S2、S7含有BB,个体S3、S6含有CC。个体S3含有AA、CC,个体S7含有AA、BB。当种群进化到第二代后,图3.3为第三代种群,在群体中,出现了含有积木块AA、BB、CC的个体S3,个体S3就是问题的最优解。S1 AA S2 BB S3 AA CC S4 S5 S6 CC S7 AA BB S8 图3.2 第二代种群
S1 AA S2 BB S3 AA BB CC S4 S5 S6 BB S7 AA CC S8 图3.3 第三代种群
在遗传算法中,将所有妨碍高的个体生成从而影响遗传算法正常工作的问题统称为欺骗问题(Deceptive roblem)。遗传算法运行过程、定义3.5(竞争模式) 若模式和中,* 的位置完全一致,但任一确定位的编码均不同,则称和互为竞争模式。
定义3.6(欺骗性) 假设的最大值对应的集合为,为一包含的阶模式。的竞争模式为,而且,则为阶欺骗。
定义3.7(最小欺骗性) 在欺骗问题中,为了造成骗局所需设置的最小的问题规模(即阶数) 。其主要思想是在最大程度上违背块假设,是优于平均的短块生成局部最优点。最小是指问题规模采用两位。下面是
文档评论(0)