进化算法-遗传算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3/50
步骤
www.themegallery.com
(1)
(2) (3) (4) (5) (6)
• 群体的初始化;
• 评价群体中每一个体的性能;
• 选择下一代个体; • 执行简单的操作算子(如交叉、变异); • 评价下一代群体的性能; • 判断终止条件满足否?若不,则转(3)继续;若满足,则 结束
Holland提出的模板理论(Schema theory) Goldberg提出的建筑块假设(Building block hypothesis)。
它们通过计算有用相似性,检查包含在群体 中的各种模板的增长速率来表明遗传学习的 能力。 这里主要介绍模板定理
19/50
8.2 遗传学习原理与算法
www.themegallery.com
8.2.1 遗传学习的基本思想 8.2.2 遗传学习算法的理论基础
8.2.3 遗传学习算法的改良
8.2.4 遗传学习算法的应用
20/50
8.2.2 理论基础
www.themegallery.com
有多种理论分析遗传算法的收敛性,例如
10/50
(5) 变异算子
www.themegallery.com
模拟基因突变现象 所谓变异指的是随机地选取染色体中的某个 基因(也即字符串中的某一位)进行取反运 算,即将原有的“1”变为“0” 和反之。 变异率pm取比较小的数值,一般pm为0.001~ 0.2。
11/50
3. 遗传学习算法的设计举例
15/50
选择举例
www.themegallery.com
群体 P2 (经选择后) 染色体 1000011111 适应度值 0.6
0110101011 1111111011
1111111011
0.6 0.9
0.9
16/50
(3) 交叉
www.themegallery.com
本例中随机选取1和4号个体、2和3号个体分 别形成两对进行交叉运算。当取交叉率 pc=0.5时,只有个体1和4这一对双亲进行真 正的交叉运算,而另一对个体2和3不进行交 叉运算。
8/50
(3) 选择机制
www.themegallery.com
基本思想取自于自然界进化论的“适者生 存”。 适应度值越高的个体,生存的数量也越高。 满足“优胜劣汰”自然法则。 也可称为复制机制 比例选择法(Proportionate selection scheme) 转轮选择法(Roulette Wheel Selection Scheme) :随机方法
www.themegallery.com
①
② ③ ④ ⑤
• 群体初始化;
• 繁殖;
• 交叉;
• 变异;
• 终止准则判断,若不满足,重 复②~④;否则,搜索结束。
12/50
(1) 群体初始化
www.themegallery.com
群体规模N 一般情况下取N=10~200之间为宜。
初始群体的ห้องสมุดไป่ตู้成 随机选择
9/50
(4) 交叉算子
www.themegallery.com
模拟有性繁殖现象 随机地从父辈集合中选取两个个体作为双亲。 设L表示一个体的字符串(染色体)长度, 随机地产生(0~L)之间的一个数d,并把此点 位置称为交叉点。交叉运算就是将双亲的基 因链在交叉点断裂,且将在交叉点之后的基 因根据交叉率的条件决定是否进行相互交换 形成下一代。 所谓交叉率pc是根据优化问题预先确定的一 个0~1之间的值。通常取0.6~0.9。
6/50
(1) 编码机制
www.themegallery.com
二进制编码
每一个位( 0或1 )-基因 字符串-染色体
多值编码方法 实数编码
7/50
(2) 适应度函数
www.themegallery.com
优化问题的目标函数 “适应度值”的计算直接通过将目标函数经 一定的线性变换映射到的[0,1]区间内的 一个值。
群体P4 (变异运算后)
染色体 1000011011
0110111011 1111111011 0111111111
适应度值 0.5
0.7 0.9 0.9
18/50
(5) 终止准则判断
www.themegallery.com
方法有两类:
一是系统的性能指标已经满足要求; 二是学习次数已经达到最大允许次数。
第8章
进化算法-遗传算法
智能控制基础
8.2 遗传学习原理与算法
www.themegallery.com
8.2.1 遗传学习的基本思想 8.2.2 遗传学习算法的理论基础
8.2.3 遗传学习算法的改良
8.2.4 遗传学习算法的应用
2/50
1. 问题的提出
www.themegallery.com
美国的J. Holland教授于1975年提出 在遗传学的基础上利用计算机来模拟生物的 进化过程,从而实现复杂问题的优化求解。 模拟生物染色体的运作(复制、交叉、变 异),是一种随机化搜索算法
群体 P3 (交叉运算后) 染色体 10000|11011 0110101011 适应度值 0.5 0.6
1111111011 11111|11111
0.9 1.0
17/50
(4) 变异
www.themegallery.com
取pm=0.05 P4给出了第2个个体和第4个个体中分别有一 个基因发生变异后的情况。
4/50
需要解决的问题
www.themegallery.com
编码机制; 选择机制; 控制参数选择; 二进制字符串的群体构成; 适应度函数的计算 遗传算子(交叉、变异)的定义。
5/50
2. 遗传学习算法的操作算子
www.themegallery.com
编码机制 (Encoding mechanism) 适应度函数(Fitness function) 选择机制(Selection mechanism) 交叉算子(Crossover) 变异算子(Mutation)
13/50
举例
www.themegallery.com
群体 P1 (随机初始化) 染色体 适应度值
0000011100 1000011111
0110101011 1111111011
0.2 0.6
0.6 0.9
14/50
(2) 选择
www.themegallery.com
以 fi / f 的比例分配转轮