9 遗传算法.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
9 遗传算法

概述 遗传算法是一种大致基于模拟进化的学习方法 假设通常被描述为二进制位串,也可以是符号表达式或计算机程序 搜索合适的假设从若干初始假设的群体或集合开始 当前群体的成员通过模拟生物进化的方式来产生下一代群体,比如随机变异和交叉 每一步,根据给定的适应度评估当前群体中的假设,而后使用概率方法选出适应度最高的假设作为产生下一代的种子 遗传算法已被成功用于多种学习任务和最优化问题中,比如学习机器人控制的规则集和优化人工神经网络的拓扑结构和学习参数 表9-1 遗传算法原型 GA(Fitness, Fitness_threshold, p, r, m) Fitness:适应度评分函数 Fitness_threshold:指定终止判据的阈值 p:群体中包含的假设数量 r:每一步中通过交叉取代群体成员的比例 m:变异率 初始化群体:P?随机产生的p个假设 评估:对于P中每个假设h,计算Fitness(h) 当 Fitness_threshold,产生新一代PS,做: 选择:用概率方法选择P的(1-r)p个成员加入PS ,概率公式是 交叉:按概率从P中选择rp/2对假设,对于每对假设h1,h2,应用交叉算子产生两个后代,把所有的后代加入PS 变异:使用均匀的概率从PS中选择m%的成员,应用变异算子 更新:P? PS 评估:对于P中每个h计算Fitness(h) 从P中返回适应度最高的假设 表示假设 遗传算法中的假设常常被表示成二进制位串,这便于用变异和交叉遗传算子来操作 把if-then规则编码成位串 首先使用位串描述单个属性的值约束 比如考虑属性Outlook,它的值可以取以下3个中的任一个:Sunny、Overcast、Rain,因此一个明显的方法是使用一个长度为3的位串,每位对应一个可能值,若某位为1,表示这个属性可以取对应的值 多个属性约束的合取可以很容易地表示为对应位串的连接 整个规则表示可以通过把描述规则前件和后件的位串连接起来 遗传算子 遗传算法使用一系列算子来决定后代,算子对当前群体中选定的成员进行重组 表9-1列出了用来操作位串的典型遗传算法算子,它们是生物进化中的遗传过程的理想化形式 最常见的算子是交叉和变异 交叉: 从两个双亲串中通过复制选定位产生两个新的后代,每个后代的第i位是从它的某个双亲的第i位复制来的 双亲中的哪一个在第i位起作用,由另一个称为交叉掩码的位串决定: 单点交叉:前n位来自第一个双亲,余下的位来自第二个双亲 两点交叉:用一个双亲的中间片断替换第二个双亲的中间片断 均匀交叉:合并了从两个双亲以均匀概率抽取的位 遗传算子(2) 变异: 从单一双亲产生后代,对位串产生随机的小变化,方法是选取一个位,然后取反 变异经常是在应用交叉之后 适应度函数和假设选择 适应度函数定义了候选假设的排序准则 如果学习任务是分类的规则,那么适应度函数中会有一项用来评价每个规则对训练样例集合的分类精度,也可包含其他的准则,比如规则的复杂度和一般性 选择假设的概率计算方法 适应度比例选择(或称轮盘赌选择),选择某假设的概率是通过这个假设的适应度与当前群体中其他成员的适应度的比值得到的 锦标赛选择,先从当前群体中随机选取两个假设,再按照事先定义的概率p选择适应度较高的假设,按照概率1-p选择适应度较低的假设 排序选择,当前群体中的假设按适应度排序,某假设的概率与它在排序列表中的位置成比例,而不是与适应度成比例 Gabil系统 Gabil系统的扩展 增加两个新算子 AddAlternative,它泛化对某个特定属性的约束,方法是把这个属性对应的子串中的一个0改为1,使用概率为0.01 DropCondition,把一个特定属性的所有位都替换为1,使用概率为0.60 两种使用新算子的方法 对每一代群体中的每个假设以同样的概率应用 对假设的位串进行扩展,使其包含另外两位以决定是否可以对该假设应用这两个新算子 假设空间搜索 遗传算法采用一种随机化的柱状搜索来寻找最大适应度的假设,与前面章节的搜索算法有很大不同 梯度下降搜索从一个假设平滑移动到另一个非常相似的假设 遗传算法的移动可能非常突然,使用和双亲根本不同的后代替换双亲假设 遗传算法的搜索不太可能像梯度下降方法那样陷入局部最小值的问题 遗传算法应用中的一个难题:拥挤问题 拥挤:群体中某个体适应度大大高于其他个体,因此它迅速繁殖,以至于此个体和与它相似的个体占据了群体的绝大部分 拥挤降低了群体的多样性,从而减慢了进化的进程 小结 遗传算法用一种随机化的并行爬山搜索来发现使预先定义的适应度函数最优的假设 遗传算法基于对生物进化的模拟,维护一个由竞争假设组成的多样化群体,在每一次迭代中,选出群体中适应度最高的成员来产生后代,替代群体中适应度最差的成

文档评论(0)

awang118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档