第5章(计算智能7-遗传算法)要点.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章(计算智能7-遗传算法)要点

简单遗传算法的步骤: 初始化种群 计算种群中每一个个体的适应度函数值 根据与适应度相关联的规则确定进入下一轮的个体 按照某一个概率进行交叉操作 按照某一个概率进行变异操作 如果不满足终止条件,则转到(2),否则继续 将种群中适应度最优的个体作为问题的解 遗传算法的终止条件:需满足其中之一 1、完成预先给定的进化代数。 2、种群中最优个体或者平均适应度在连续若干代没有改进。 开始 初始化种群 计算适应度值 选择操作 交叉操作 变异操作 终止条件? 选取适应度最优个体作为解 结束 是 3 遗传算法例子 求最大值 求一阶导数,并令其为零 得 求二阶导数 f(x) f’(x) f’’(x) 主要步骤: 编码:22位二进制数码串 种群初始化 适应度函数:函数本身 遗传操作:选择、交叉、变异操作 算法的若干关键参数:种群大小、种群代数、选择交叉变异概率等 结果: 最佳个体: 1111 0011 0100 0100 0001 01 对于自变量值:1.850773 函数值: 2.850227 4 Matlab中的遗传算法函数 使用方式: 函数形式 ga 图形界面形式 optimtool(选择ga) 包含在Matlab2010版本的Global Optimization Toolbox 工具箱中,只能求最小值 数学问题: 线性的等式与不等式约束 非线性的等式与不等式约束 变量的上下界 变量 GA算法的函数形式: x = ga(fitnessfcn, nvars) x = ga(fitnessfcn, nvars, A, b) x = ga(fitnessfcn, nvars, A, b, Aeq, beq) x = ga(fitnessfcn, nvars, A, b, Aeq, beq, LB,UB) x = ga(fitnessfcn, nvars, A, b, Aeq, beq, LB, UB, nonlcon) x = ga(fitnessfcn, nvars, A, b, Aeq, beq, LB, UB, nonlcon, options) x = ga(problem) [x,fval] = ga(...) [x,fval,exitflag] = ga(...) [x, fval, exitflag] = ga(fitnessfcn, nvars, A, b, Aeq, beq, LB, UB, nonlcon, options) 输入: fitnessfcn: 求目标函数值的Matlab函数,用户自己编写,调用必须带@ num: 变量的个数 options:算法参数的设置 (可缺省) 函数fitnessfcn的编写: 例: Matlab函数 function y=simple_fitness(x) y=100*(x(1)^2-x(2))^2+(1-x(1))^2 用simple_fitness代替ga中的fitnessfcn PopulationType: doubleVector PopInitRange: [2x1 double] PopulationSize: 20 EliteCount: 2 CrossoverFraction: 0.8000 MigrationDirection: forward MigrationInterval: 20 MigrationFraction: 0.2000 Generations: 100 TimeLimit: Inf FitnessLimit: -Inf StallLimitG: 50 StallLimitS: 20 Options 的内容: InitialPopulation: [ ] InitialScores: [ ] PlotInterval: 1 CreationFcn: @gacreationuniform FitnessScalingFcn: @fitscalingrank SelectionFcn: @selectionstochunif CrossoverFcn: @crossoverscattered MutationFcn: @mutationgaussian HybridFcn: [ ] Display: final PlotFcns: [ ] OutputFcns: [ ] Vectorized: off’ 参数设置函数:gaoptimset 生成参数结构与设置参数值: options=gaoptimset(‘param1’,val1,’param2’,val2,…) 改变参数设置 options=gaoptimset(options, ’param1’,val2,….) 参数

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档