当前位置:
文档之家› 遗传算法及其在路径规划中的应用
遗传算法及其在路径规划中的应用
17
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
交叉前
交叉后
individual 1 template individual 2
0101100110 1001010101 0110010001
0100110011
0111000100
图4 均匀交叉 ④算数交叉(Arithmetic Crossover) 算数交叉的操作对象一般是由浮点数编码所表示的个体, 它通过两个父代个体的线性组合而产生出两个新的个体。 t 假设在两个父代个体 X A , B 之间进行算数交叉,则交叉运 Xt 算后所产生出的两个新个体是
13
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
③对于最大化问题(如需要),一般采用如下转换形式:
J ( x) cmin f ( x) 0
当J ( x) cmin 0 其它
其中,cmin既可以是当前代中目标函数 J(x) 的最小值,也可以根 据经验人为设定。 ④采用如下的指数函数形式:
12
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
适应度转换首先要保证适应度值是非负的,其次要求目标 函数的优化方向应与适应度值增大的方向一致。设实际优化问 题的目标函数为J(x),遗传算法的适应度函数为f(x),则有: ①可以将适应度函数表示为实际优化问题目标函数的线性 形式,即有 f ( x) a J ( x) b
f ( x) c J ( x )
在最大化问题时,c一般取1.618或2;而在最小化问题时, c可取为0.618。这样,既保证了适应度值非负,又使适应度值 增大方向和目标函数优化方向一致。
14
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
(4)复制(选择)(Reproduction or Selection) 复制是基于适者生存理论而提出的,是指种群中每一个体 按照适应度函数进入到匹配池中的过程。适应度值高于种群平 均适应度的个体在下一代中将有更多的机会繁殖一个或多个后 代,而低于平均适应度的个体则有可能被淘汰掉。复制的目的 在于保证那些适应度高的优良个体在进化中生存下去,复制不 会产生新的个体。常用的复制方法有: ①赌轮法 ②两两竞争法 从种群中随机地选择两个个体,将其中适应度较大的个体 作为被复制的个体;若两个体适应度相同,则任意选择一个。 ③排序法 首先根据目标函数值的大小将个体排序,根据具体问题应 用各个体的排序序号分配各自进入匹配池的概率。适应度可以 按序号线性变化,也可以按某种非线性关系变化。
(2)种群(群体):所有个体的集合(population)。 (3)种群规模:种群中个体的数量称为种群规模(population size)。 (4)基因:个体中的每一位称为一个基因(gene)。 (5)适应度函数:能够评价个体对环境适应能力的函数 (fitness function)。
4
2013年10月31日6时47分
10
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
1.2.2 遗传算法的具体实现 (1)编码方式的选取 利用遗传算法求解实际问题时,问题的解是用字符串来表 示的,遗传算子也是直接对字符串进行操作的。因此,如何用 适当的字符串编码来表示问题的解成为了遗传算法应用过程中 的首要问题。 目前所使用的字符串编码方式主要有:二进制、实数(浮 点数)和符号等。
(1)采用二进制形式编码,个体的位数多,描述得比较 细致,从而加大了搜索范围;但交叉运算的计算量较大,并且 由于大量的具体问题本身都是十进制的,所以还需对实际参数 进行编码和译码,从而增加了额外的计算时间。 (2)采用实数(浮点数)编码,交叉运算的计算量较小, 但变异过程难于进行。 (3)符号编码方式通常在一些专门的应用场合使用。
x值 8
25 29 18
f (x)=x2 64 625 841 324 1854 463.5 841
2 3 4
11000 11000 10011
4 1 2 总 计
平均值 最大值
11001 11101 10010
8
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
(6)变异 采用单点随机变异方式进行变异操作。
交叉前 交叉后
individual 1 individual 2
11 01011 000 10 10110 101
11 10110 000 10 01011 101
图3 两点交叉
③均匀交叉(Uniform Crossover) 其操作过程是:先选出两个父代个体,之后依据交叉概率 pc 产生一个与父代个体同样长度的二进制串,这里称其为模板 (template)。若模板中的某位为0,则两个父代个体对应位不 进行交换;反之,模板中的某位为1时,则交换两个父代个体 对应位的基因。
5
初始种群 01101 11000 01000 10011
x值 13 24 8 19
北京科技大学自动化学院控制科学与工程系
2013年10月31日6时47分
(3)适应度函数值的计算 取适应度函数为f (x)=x2,则4个样本的适应度值分别如下 表所示。 表2 适应度函数计算
标号 1
2 3 4
初始种群 01101
表5 变异操作过程
标号 1 交叉后 的种群 01000 变异点位置 3 / / /
新种群
01100
x值 12
25 29 18
f (x)=x2 144 625 841 324 1934 483.5 841
2 3 4
11001 11101 10010
11001 11101 10010 总 计
平均值 最大值
3
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
1.1 遗传算法的基本概念 1.1.1 进化的基本理论 (1)Darwin生物进化论 (2)Mendel自然遗传学说 1.1.2 遗传算法术语简介
(1)个体(染色体):遗传算法求解实际问题时,首先对待 优化问题的参数进行编码(一般采用二进制码串表示),从而 得到一个字符串,该字符串被称为一个个体(individual )或 一个染色体(chromosome)。
576 64 361 1170
292.5 576
1.00
1.97
0.492
7
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
(5)交叉
采用随机交叉配对,一点交叉方式进行交叉。 表4 交叉操作过程
交叉点 配对对象 复制后匹配 新种群 标号 池中的个体 (随机选取) (随机选取) 1 01101 3 3 5 3 5 01000
其中,a,b是系数,可根据具体问题的特征及所期望适应度的 分散程度来确定。 ②对于最小化问题,一般采用如下转换形式:
cmax J ( x) f ( x) 0
当 J ( x) cmax 其它
其中,cmax既可以是到目前为止所有进化代中目标函数 J(x) 的 最大值(此时cmax将随着进化而有所变化),也可以根据经验 人为设定。
11000 01000 10011
适应度值
x值
13 24 8 19
f (x)=x2
169
576 64 361
总 计
平均值 最大值
6
1170
292.5 576
北京科技大学自动化学院控制科学与工程系
2013年10月31日6时47分
(4)复制 采用赌轮法计算各个个体被复制的次数。
表3 复制操作过程
标号 初始种群 x值 1 01101 13
北京科技大学自动化学院控制科学与工程系
1.1.3 遗传算法应用引例 2 例:求 f ( x) x , x [0, 31] 的最大值。 解:(1)编码方式的确定 采用五位二进制代码表示变量x。 (2)初始种群的产生 设种群规模N=4,随机产生初始种群如表1所示。 表1 产生的初始种群
标号 1 2 3 4
遗传算法及其在路径规划 中的应用
北京科技大学自动化学院控制科学与工程系
1
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
参考书目:
(1)周德俭,吴斌. 智能控制. 重庆:重庆大学出 版社,2005 (2)李少远,王景成. 智能控制. 北京:机械工业 出版社,2005 (3)李人厚. 智能控制理论和方法. 西安:西安电 子科技大学出版社,1999 (4)王顺晃,舒迪前. 智能控制系统及其应用(第 二版). 北京:机械工业出版社,2005
适应度
f (x)=x2 169
复制概率
fi
f
期望的复制 数
i
fi fi
实际得到 的复制数 1 2 0 1 4 1 2
0.144 0.492 0.055 0.309 1.000 0.25
0.58
1.97 0.22 1.23 4.00
2 3 4
11000 01000 10011 总 计
平均值 最大值
24 8 19
2
2013年10月31日6时47分
北京科技大学自动化学院控制科学与工程系
1 遗传算法产生的背景
20世纪60年代,美、德等国家的一些科学家开始模仿生物 和人类进化的方法来求解复杂优化问题,从而形成了模拟进化 优化方法(Optimization Method by Simulated Evolution), 其代表性方法有遗传算法(GA:Genetic Algorithms)、进化 规划(EP:Evolutionary Programming)、进化策略(ES: Evolutionary Strategies)。本讲将主要对GA进行详细介绍。 常规的数学优化技术基于梯度寻优技术,计算速度快,但 要求优化问题具有可微性,且通常只能求得局部最优解;而模 拟进化方法无可微性要求,适用于任意的优化问题,尤其适用 于求解组合优化问题以及目标函数不可微或约束条件复杂的非 线性优化问题。由于它们采用随机优化技术,所以会以较大的 概率求得全局最优解。其计算费用较高的问题也因计算机软硬 件技术的飞速发展而不再成为制约因素。