遗传算法PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 4 章 遗传算法
(Genetic Algorithm,GA)
了解遗传算法的研究背景,熟练掌握遗 传算法的思想来源和设计流程,掌握遗 传算法的参数设计和影响作用,并能理 解遗传算法的改进和实际应用。
1
"自然选择"和"优胜劣汰"的进化规律。
2
遗传信息的重组
3
遗传算法简介
遗传算法是模仿生物遗传学 和自然选择机理,通过人 工方式构造的一类优化搜索算法,是对生物进化过程进行
4
遗传算法简介
5
遗传算法研究内容
6
遗传算法研究内容
7
遗传Βιβλιοθήκη Baidu法原理
▪ 遗传算法通过模拟自然界中生物的遗传进化过程,对 优化问题的最优解进行搜索。
▪ 算法维护一个代表问题潜在解的群体, 通过对群体的 进化,搜索问题的最优解,算法中引入了类似自然进 化过程中的选择、交叉、变异等算子。
▪ 遗传算法搜索全局最优解的过程是一个不断迭代的过 程(每一次迭代相当于生物进化中的一次循环) ,直到 满足算法的终止条件为止。
14
遗传算法原理
▪ Holland 的模式定理提出,遗传算法的实质是通过选择、 交叉、变异的遗传算子对模式进行搜索。
▪ 低阶、定义长度较小且平均适应值高于群体平均适应值 的模式在群体中的比例将呈指数级增长。
▪ 随着进化的不断进行,较优染色体的个数将快速增加。 ▪ 模式定理证明了遗传算法寻求全局最优解的可能性,但
▪ 染色体的编码; ▪ 群体的初始化;
▪ 适应值评价; ▪ 种群选择; ▪ 种群交叉; ▪ 种群变异; ▪ 算法流程
17
遗传算法的流程
1. 染色体的编码
许多应用问题的结构很复杂,我们希望找到一种既
简单又不影响算法性能的编码方式。将问题结构变换为 位串形式编码表示的过程叫做编码;相反的,将位串形
式编码表示变换为原问题结构的过程叫做解码或译码。
▪ 评估函数( evaluation function) 用来计算并确定染色 体对应的适应值。
9
遗传算法原理
▪ 选择算子(selection) 按照一定的规则对群体的染色体进 行选择,得到父代种群。一般情况下,越优秀的染色体被 选中的次数越多。
▪ 交叉算子(crossover) 作用于每两个成功交配的父代染色 体,染色体交换各自的部分基因,产生两个子代染色体。 子代染色体取代父代染色体进入新种群,而没有交配的染 色体则直接进入新种群。
13
遗传算法原理
▪ 模式的阶(schema order) : 模式中具有确定取值的 基因个数。
如模式 01***0 的阶为 3
▪ 模式的定义长度(schemad defining length) 是指 模式中第一个具有确定取值的基因到最后一个具有 确定取值的基因的距离,
例如模式 01***0的定义长度为5 而模式*1****的定义长度为 0
▪ 变异算子(mutation) 使新种群进行小概率的变异。染色体 发生变异的基因改变数值,得到新的染色体。经过变异的 新种群替代原有群体进入下一次进化。
10
遗传算法原理
11
遗传算法原理
遗传算法类似于自然进化,通过作用于染色体上的 基因寻找好的染色体来求解问题 。遗传算法对求解问题
的本身一无所知,它所需要的仅仅是对算法所产生的每 个染色体进行评价,并基于适应值来选择染色体,使适 应性好的染色体有更多的繁殖机会。
▪ Holland 给出了著名的模式定理 (Schema Theory) , 为遗传算法提供了理论支持。
▪ 模式(schema) 是指群体中编码的某些位置具有相似 结构的染色体集合。
假设染色体的编码是由 0 或 1 组成的二进制符号序列, 模式 01***0 则表示以 01 开头且以 0 结尾的编码串对应的染 色体的集合,即 {010000, 010010, 010100, 010110, 011000 , 011010 ,0 11100 , 011110} 。
在遗传算法中,通过随机方式产生若干个所求解问 题的数字编码,即染色体,形成初始种群;通过适应度 函数给每个个体一个数值评价,淘汰低适应度的个体, 选择高适应度的个体参加遗传操作,经过遗传操作后的 个体集合形成下一代新的种群。再对这个新种群进行下 一轮进化。这就是遗传算法的基本原理。
12
遗传算法原理
不能保证算法一定能找到全局最优解。
15
遗传算法原理
▪ 积木块假设 (Building Block Hypothesi s) ,对模 式定理做了补充,说明遗传算法具有能够找到全局 最优解的能力。
▪ 积木块(building block) 是指低阶、定义长度较小且 平均适应值高于群体平均适应值的模式。
关于确定遗传算法染色体编码方式的两条指导原则: 有意义积木块编码原则和最小字符集编码原则,倡导算 法使用的编码方案应易于产生低阶且定义长度较短的模 式,在能够自然描述所求问题的前提下使用最小编码字 符集
18
遗传算法的流程
8
遗传算法原理
▪ 在遗传算法中,问题的每个有效解被称为一个“染色体 (chromosome)” ,也称为“串”,对应于群体中的每 个生物个体( individual) 。
▪ 染色体的具体形式是一个使用特定编码方式生成的编码 串,编码串中的每一个编码单元称为"基因(gene)"
▪ 遗传算法通过比较适应值(fitness value) 区分染色体的 优劣,适应值越大的染色体越优秀。
▪ 积木块假设认为在遗传算法运行过程中,积木块在 遗传算子的影响下能够相互结合,产生新的更加优 秀的积木块,最终接近全局最优解。
16
遗传算法的流程
GA的算法在解空间中取一群点,作为遗传开始的第一 代。每个点用一个编码数字串表示,其优劣程度用一个 目标函数—适应度函数(fitness function)来衡量。
的一种数学仿真,是进化计算的一种重要的形式。遗传算 法与传统数学模型截然不同,它为那些难以找到传统数学 模型的难题找出了一个解决方法。同时,遗传算法借鉴了 生物科学中的某些知识,从而体现了人工智能这一交叉学
科的特点。霍兰德(Holland) 于1975年在他的著作
“Adaptation in Natural and Artificial Systems"中首 次提出遗传算法。
(Genetic Algorithm,GA)
了解遗传算法的研究背景,熟练掌握遗 传算法的思想来源和设计流程,掌握遗 传算法的参数设计和影响作用,并能理 解遗传算法的改进和实际应用。
1
"自然选择"和"优胜劣汰"的进化规律。
2
遗传信息的重组
3
遗传算法简介
遗传算法是模仿生物遗传学 和自然选择机理,通过人 工方式构造的一类优化搜索算法,是对生物进化过程进行
4
遗传算法简介
5
遗传算法研究内容
6
遗传算法研究内容
7
遗传Βιβλιοθήκη Baidu法原理
▪ 遗传算法通过模拟自然界中生物的遗传进化过程,对 优化问题的最优解进行搜索。
▪ 算法维护一个代表问题潜在解的群体, 通过对群体的 进化,搜索问题的最优解,算法中引入了类似自然进 化过程中的选择、交叉、变异等算子。
▪ 遗传算法搜索全局最优解的过程是一个不断迭代的过 程(每一次迭代相当于生物进化中的一次循环) ,直到 满足算法的终止条件为止。
14
遗传算法原理
▪ Holland 的模式定理提出,遗传算法的实质是通过选择、 交叉、变异的遗传算子对模式进行搜索。
▪ 低阶、定义长度较小且平均适应值高于群体平均适应值 的模式在群体中的比例将呈指数级增长。
▪ 随着进化的不断进行,较优染色体的个数将快速增加。 ▪ 模式定理证明了遗传算法寻求全局最优解的可能性,但
▪ 染色体的编码; ▪ 群体的初始化;
▪ 适应值评价; ▪ 种群选择; ▪ 种群交叉; ▪ 种群变异; ▪ 算法流程
17
遗传算法的流程
1. 染色体的编码
许多应用问题的结构很复杂,我们希望找到一种既
简单又不影响算法性能的编码方式。将问题结构变换为 位串形式编码表示的过程叫做编码;相反的,将位串形
式编码表示变换为原问题结构的过程叫做解码或译码。
▪ 评估函数( evaluation function) 用来计算并确定染色 体对应的适应值。
9
遗传算法原理
▪ 选择算子(selection) 按照一定的规则对群体的染色体进 行选择,得到父代种群。一般情况下,越优秀的染色体被 选中的次数越多。
▪ 交叉算子(crossover) 作用于每两个成功交配的父代染色 体,染色体交换各自的部分基因,产生两个子代染色体。 子代染色体取代父代染色体进入新种群,而没有交配的染 色体则直接进入新种群。
13
遗传算法原理
▪ 模式的阶(schema order) : 模式中具有确定取值的 基因个数。
如模式 01***0 的阶为 3
▪ 模式的定义长度(schemad defining length) 是指 模式中第一个具有确定取值的基因到最后一个具有 确定取值的基因的距离,
例如模式 01***0的定义长度为5 而模式*1****的定义长度为 0
▪ 变异算子(mutation) 使新种群进行小概率的变异。染色体 发生变异的基因改变数值,得到新的染色体。经过变异的 新种群替代原有群体进入下一次进化。
10
遗传算法原理
11
遗传算法原理
遗传算法类似于自然进化,通过作用于染色体上的 基因寻找好的染色体来求解问题 。遗传算法对求解问题
的本身一无所知,它所需要的仅仅是对算法所产生的每 个染色体进行评价,并基于适应值来选择染色体,使适 应性好的染色体有更多的繁殖机会。
▪ Holland 给出了著名的模式定理 (Schema Theory) , 为遗传算法提供了理论支持。
▪ 模式(schema) 是指群体中编码的某些位置具有相似 结构的染色体集合。
假设染色体的编码是由 0 或 1 组成的二进制符号序列, 模式 01***0 则表示以 01 开头且以 0 结尾的编码串对应的染 色体的集合,即 {010000, 010010, 010100, 010110, 011000 , 011010 ,0 11100 , 011110} 。
在遗传算法中,通过随机方式产生若干个所求解问 题的数字编码,即染色体,形成初始种群;通过适应度 函数给每个个体一个数值评价,淘汰低适应度的个体, 选择高适应度的个体参加遗传操作,经过遗传操作后的 个体集合形成下一代新的种群。再对这个新种群进行下 一轮进化。这就是遗传算法的基本原理。
12
遗传算法原理
不能保证算法一定能找到全局最优解。
15
遗传算法原理
▪ 积木块假设 (Building Block Hypothesi s) ,对模 式定理做了补充,说明遗传算法具有能够找到全局 最优解的能力。
▪ 积木块(building block) 是指低阶、定义长度较小且 平均适应值高于群体平均适应值的模式。
关于确定遗传算法染色体编码方式的两条指导原则: 有意义积木块编码原则和最小字符集编码原则,倡导算 法使用的编码方案应易于产生低阶且定义长度较短的模 式,在能够自然描述所求问题的前提下使用最小编码字 符集
18
遗传算法的流程
8
遗传算法原理
▪ 在遗传算法中,问题的每个有效解被称为一个“染色体 (chromosome)” ,也称为“串”,对应于群体中的每 个生物个体( individual) 。
▪ 染色体的具体形式是一个使用特定编码方式生成的编码 串,编码串中的每一个编码单元称为"基因(gene)"
▪ 遗传算法通过比较适应值(fitness value) 区分染色体的 优劣,适应值越大的染色体越优秀。
▪ 积木块假设认为在遗传算法运行过程中,积木块在 遗传算子的影响下能够相互结合,产生新的更加优 秀的积木块,最终接近全局最优解。
16
遗传算法的流程
GA的算法在解空间中取一群点,作为遗传开始的第一 代。每个点用一个编码数字串表示,其优劣程度用一个 目标函数—适应度函数(fitness function)来衡量。
的一种数学仿真,是进化计算的一种重要的形式。遗传算 法与传统数学模型截然不同,它为那些难以找到传统数学 模型的难题找出了一个解决方法。同时,遗传算法借鉴了 生物科学中的某些知识,从而体现了人工智能这一交叉学
科的特点。霍兰德(Holland) 于1975年在他的著作
“Adaptation in Natural and Artificial Systems"中首 次提出遗传算法。