(第二讲)基本遗传算法.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文档。上传文档
查看更多
陕师大 计算机科学学院 雷秀娟 * 变异是针对个体的某一个或某一些基因座上的基因值执行的,因此变异概率pm也是针对基因而言,即: 式中 B——每代中变异的基因数目; M——每代中群体拥有的个体数目 l——个体中基因串长度。 Pm = B M · l (2) 变异概率 (1) 基本位变异因子的具体执行过程是: Ⅰ. 对个体的每一个基因座,依变异概率Pm指定其为变异点。 Ⅱ. 对每一个指定的变异点,对其基因值做取反运算或用其它等位基因值来代替,从而产生出一个新的个体。 陕师大 计算机科学学院 雷秀娟 * 变异字符的位置是随机确定的,如下表所示。某群体有3个个体,每个体含4 个基因。针对每个个体的每个基因产生一个[0, 1] 区间具有3位有效数字的均 匀随机数。假设变异概率 pm = 0.01,则随机数小于0.01的对应基因值产生变 异。表中3号个体的第4位的随机数为0.001,小于0.01,该基因产生变异, 使3号个体由 0010 变为 0011 。其余基因的随机数均大于0.01,不产生变异。 (3) 变异操作示例 陕师大 计算机科学学院 雷秀娟 * 开始 Gen=0 编码 随机产生M个初始个体 满足终止条件? 计算群体中各个体适应度 从左至右依次执行遗传算子 j = 0 j = 0 j = 0 根据适应度选择复制个体 选择两个交叉个体 选择个体变异点 执行变异 执行交叉 执行复制 将复制的个体添入新群体中 将交叉后的两个新个体添入新群体中 将变异后的个体添入新群体中 j = j+1 j = j+2 j = j+1 j = M? j = pc·M? j = pm·L·M? Gen=Gen+1 输出结果 终止 Y N Y Y Y N N N pc pm 算法流程图 陕师大 计算机科学学院 雷秀娟 * [例] Rosenbrock函数的全局最大值计算。 max f(x1,x2) = 100 (x2-x12)2 + (1-x1)2 s.t. -2.048 ≤ xi ≤ 2.048 (xi=1,2) 如图所示: 该函数有两个局部极大点, 分别是: f(2.048, -2048)=3897.7342 和 f(-2.048,-2.0048)=3905.9262 其中后者为全局最大点。 基本遗传算法在函数优化中的应用 陕师大 计算机科学学院 雷秀娟 * 下面介绍求解该问题的遗传算法的构造过程: 第一步:确定决策变量及其约束条件。 s.t. -2.048 ≤ xi ≤ 2.048 (xi=1,2) 第二步:建立优化模型。 max f(x1,x2) = 100 (x2-x12)2 + (1-x1)2 第三步;确定编码方法。 用长度为l0位的二进制编码串来分别表示二个决策变量x1,x2。 lO位二进制编码串可以表示从0到1023之间的1024个不同的数,故将x1,x2的定义域离散化为1023个均等的区域,包括两个端点在内共有1024个不同的离散点。从离散点-2.048到离散点2.048,依次让它们分别对应于从0000000000(0)到1111111111(1023)之间的二进制编码。再将分别表示x1和x2的二个10位长的二进制编码串连接在一起,组成一个20位长的二进制编码串,它就构成了这个函数优化问题的染色体编码方法。例如 X:0000110111 11011 10001 就表示一个个体的基因型。 陕师大 计算机科学学院 雷秀娟 * 第四步:确定解码方法。 解码时先将20位长的二进制编码串切断为二个10位长的二进制编码串,然后分别将它们转换为对应的十进制整数代码,分别记为y1和y2。 依据前述个体编码方法相对定义域的离散化方法可知,将代码yi转换为变量xi的解码公式为: 例如,对前述个体 X: 0000110111 11011 10001 它由这样的两个代码所组成: y1= 55

文档评论(0)

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

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

1亿VIP精品文档

相关文档