GA2遗传算法实例分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随机选择几个进行比较,高的被选,又叫锦标赛模型
by 谢广明 , 2005~2006学年度第一学期
18
策略调整
选择算子
– 期望值模型(expected value model) – 排挤模型(crowding model) – 浓度控制策略 – 共享机制 – 截断选择
. .
p1
.
p2
pi . . .
r
by 谢广明 , 2005~2006学年度第一学期
6
应用实例1:TSP
交叉操作算子
– Davis提出OX算子:通过从一个亲体中挑选一个子序列旅行 并保存另一个亲体的城市相对次序来构造后代
– 例如: p1=(1 2 3 | 4 5 6 7 | 8 9) p2=(4 5 2 | 1 8 7 6 | 9 3)
– 编码方案采用二进制编码
对子变量定义域根据计算精度进行离散化处理,
然后根据离散化后待定解的个数选择合适长度的
二进制字符串进行编码
例如;[0,1],计算精度0.001,
则0,0.001,0.002,…,0.998,0.999,1.000, 个数为1001
则用长度为10的二进制字符串一次表征所有离散点
(5 1 7 8 9 | 4 6 2 3)= (4 6 2 3 | 5 1 7 8 9) 二者是同一个解 (n -1)!/2
by 谢广明 , 2005~2006学年度第一学期
4
应用实例1:TSP
适应度函数
– 就取为目标函数的倒数,即路径总长度的倒数
初始种群
– 随机生成40个
终止条件
– 2000次迭代
by 谢广明 , 2005~2006学年度第一学期
9
应 用 实 例 1: T
S
P
by 谢广明 , 2005~2006学年度第一学期
10
应用实例1:TSP
中国城市TSP的一个参考解
by 谢广明 , 2005~2006学年度第一学期
11
应用实例2:函数优化
函数优化
min f (x), x [a,b]
遗传算法 (II)
Genetic Algorithm,GA
by 谢广明 , 2005~2006学年度第一学期
1
内容
应用实例1: TSP 应用实例2:函数优化 策略设计 算法改进
by 谢广明 , 2005~2006学年度第一学期
2
应用实例1:TSP
问题回顾
– 给定n个城市以及两两城市之间的距离,求解 一条从某个城市出发、不重复地遍历所有其它 城市并最终又回到起始城市的最短路径。
by 谢广明 , 2005~2006学年度第一学期
8
应用实例1:TSP
变异操作算子
– 采用倒置变异:在染色体上随机地选择两点,将两 点间的子串反转
– 例如 原个体:(1 2 3 4 5 6 7 8 9) 随机选择两点:(1 2 | 3 4 5 6 | 7 8 9) 倒置后的个体:(1 2 | 6 5 4 3 | 7 8 9)
最基本、最常用的方式,又叫适应度比例选择算子
– 最佳个体保存(elitist model)
把适应度最高的个体保留到下一代,又叫精英保留
– 排序模型(rank - based model)
按适应度函数大小排序,根据事先设定的概率表分配选择概率
– 联赛选择模型(tournament selection model)
0000000000,0000000001,…,1111110001.
by 谢广明 , 2005~2006学年度第一学期
12
应用实例2:函数优化
适应度函数
– 例如,f(x)=x2 - x5 ,取Cmax=2, 即可得到满足要 求的F(x)
by 谢广明 , 2005~2006学年度第一学期
13
应用实例2:函数优化
首先保持中间部分 o1=(X X X | 4 5 6 7 | X X ) o2=(X X X | 1 8 7 6 | X X )
by 谢广明 , 2005~2006学年度第一学期
7
应用实例1:TSP
交叉操作算子
然后移走p2中已在o1中的城市4、5、6和7后,得到 2—1—8—9—3 该序列顺次放在o1中: o1=(2 1 8 | 4 5 6 7 | 9 3) 类似地,可以得到另一个后代: o2=(2 3 4 | 1 8 7 6 | 5 9)
其它的就类似于TSP的求解了
by 谢广明 , 2005~2006学年度第一学期
14
策略调整
针对不同实际问题需要调整相应策略 同一个实际问题不同的人也有不同的做法 编码方案 适应度函数设计 选择算子 交叉算子 变异算子 初始种群
by 谢广明 , 2005~2006学年度第一学期
15
by 谢广明 , 2005~2006学年度第一学期
16
策略调整
适应度函数
– 是进行自然选择的定量标准 – 直接采用目标函数 – 引入适应值调节
线性变换 乘幂变换 指数变换 自适应变换
by 谢广明 , 2005~2006学年度第一学期
17
策略调整
选择算子
– 轮盘赌选择(roulette wheel selection)
参数设置
– 自定
by 谢广明 , 2005~2006学年度第一学期
5
应用实例1:TSP
选择操作算子: 轮盘式选择
首先计算每个个体 i 被选中
的概率
pi
f (i)
n
百度文库
f ( j)
j 1
然后根据概率的大小将将圆
盘分为 n个扇形,每个扇形 的大小为 2 pi 。选择时转 动轮盘,参考点r落到扇形i则 选择个体i 。
数学描述
– 给定图G=(V,E), V为顶点集, E为边集,确定 一条长度最短的Hamilton回路
by 谢广明 , 2005~2006学年度第一学期
3
应用实例1:TSP
编码方案
– 路径表达:对一个旅行最自然的表达 – 一个旅行 5—>1—>7—>8—>9—>4—>6—>2—>3
的编码就是(5 1 7 8 9 4 6 2 3) – 编码空间和解空间一一对应,总量为n! 个? – 其实一些解是相同的,因为
策略调整
编码方案
– 本质:如何表示解 – 二进制:
自变量高维、大范围连续、高精度的时候很难处理 冗余问题,离散化后解的个数介于2(n-1)和2n之间
– D进制, D=3,8,16,… – 实数编码:无需编码和解码 – 序列编码:例如TSP的路径表达 – 树编码:非定长 – 自适应编码-长度可调节
by 谢广明 , 2005~2006学年度第一学期
18
策略调整
选择算子
– 期望值模型(expected value model) – 排挤模型(crowding model) – 浓度控制策略 – 共享机制 – 截断选择
. .
p1
.
p2
pi . . .
r
by 谢广明 , 2005~2006学年度第一学期
6
应用实例1:TSP
交叉操作算子
– Davis提出OX算子:通过从一个亲体中挑选一个子序列旅行 并保存另一个亲体的城市相对次序来构造后代
– 例如: p1=(1 2 3 | 4 5 6 7 | 8 9) p2=(4 5 2 | 1 8 7 6 | 9 3)
– 编码方案采用二进制编码
对子变量定义域根据计算精度进行离散化处理,
然后根据离散化后待定解的个数选择合适长度的
二进制字符串进行编码
例如;[0,1],计算精度0.001,
则0,0.001,0.002,…,0.998,0.999,1.000, 个数为1001
则用长度为10的二进制字符串一次表征所有离散点
(5 1 7 8 9 | 4 6 2 3)= (4 6 2 3 | 5 1 7 8 9) 二者是同一个解 (n -1)!/2
by 谢广明 , 2005~2006学年度第一学期
4
应用实例1:TSP
适应度函数
– 就取为目标函数的倒数,即路径总长度的倒数
初始种群
– 随机生成40个
终止条件
– 2000次迭代
by 谢广明 , 2005~2006学年度第一学期
9
应 用 实 例 1: T
S
P
by 谢广明 , 2005~2006学年度第一学期
10
应用实例1:TSP
中国城市TSP的一个参考解
by 谢广明 , 2005~2006学年度第一学期
11
应用实例2:函数优化
函数优化
min f (x), x [a,b]
遗传算法 (II)
Genetic Algorithm,GA
by 谢广明 , 2005~2006学年度第一学期
1
内容
应用实例1: TSP 应用实例2:函数优化 策略设计 算法改进
by 谢广明 , 2005~2006学年度第一学期
2
应用实例1:TSP
问题回顾
– 给定n个城市以及两两城市之间的距离,求解 一条从某个城市出发、不重复地遍历所有其它 城市并最终又回到起始城市的最短路径。
by 谢广明 , 2005~2006学年度第一学期
8
应用实例1:TSP
变异操作算子
– 采用倒置变异:在染色体上随机地选择两点,将两 点间的子串反转
– 例如 原个体:(1 2 3 4 5 6 7 8 9) 随机选择两点:(1 2 | 3 4 5 6 | 7 8 9) 倒置后的个体:(1 2 | 6 5 4 3 | 7 8 9)
最基本、最常用的方式,又叫适应度比例选择算子
– 最佳个体保存(elitist model)
把适应度最高的个体保留到下一代,又叫精英保留
– 排序模型(rank - based model)
按适应度函数大小排序,根据事先设定的概率表分配选择概率
– 联赛选择模型(tournament selection model)
0000000000,0000000001,…,1111110001.
by 谢广明 , 2005~2006学年度第一学期
12
应用实例2:函数优化
适应度函数
– 例如,f(x)=x2 - x5 ,取Cmax=2, 即可得到满足要 求的F(x)
by 谢广明 , 2005~2006学年度第一学期
13
应用实例2:函数优化
首先保持中间部分 o1=(X X X | 4 5 6 7 | X X ) o2=(X X X | 1 8 7 6 | X X )
by 谢广明 , 2005~2006学年度第一学期
7
应用实例1:TSP
交叉操作算子
然后移走p2中已在o1中的城市4、5、6和7后,得到 2—1—8—9—3 该序列顺次放在o1中: o1=(2 1 8 | 4 5 6 7 | 9 3) 类似地,可以得到另一个后代: o2=(2 3 4 | 1 8 7 6 | 5 9)
其它的就类似于TSP的求解了
by 谢广明 , 2005~2006学年度第一学期
14
策略调整
针对不同实际问题需要调整相应策略 同一个实际问题不同的人也有不同的做法 编码方案 适应度函数设计 选择算子 交叉算子 变异算子 初始种群
by 谢广明 , 2005~2006学年度第一学期
15
by 谢广明 , 2005~2006学年度第一学期
16
策略调整
适应度函数
– 是进行自然选择的定量标准 – 直接采用目标函数 – 引入适应值调节
线性变换 乘幂变换 指数变换 自适应变换
by 谢广明 , 2005~2006学年度第一学期
17
策略调整
选择算子
– 轮盘赌选择(roulette wheel selection)
参数设置
– 自定
by 谢广明 , 2005~2006学年度第一学期
5
应用实例1:TSP
选择操作算子: 轮盘式选择
首先计算每个个体 i 被选中
的概率
pi
f (i)
n
百度文库
f ( j)
j 1
然后根据概率的大小将将圆
盘分为 n个扇形,每个扇形 的大小为 2 pi 。选择时转 动轮盘,参考点r落到扇形i则 选择个体i 。
数学描述
– 给定图G=(V,E), V为顶点集, E为边集,确定 一条长度最短的Hamilton回路
by 谢广明 , 2005~2006学年度第一学期
3
应用实例1:TSP
编码方案
– 路径表达:对一个旅行最自然的表达 – 一个旅行 5—>1—>7—>8—>9—>4—>6—>2—>3
的编码就是(5 1 7 8 9 4 6 2 3) – 编码空间和解空间一一对应,总量为n! 个? – 其实一些解是相同的,因为
策略调整
编码方案
– 本质:如何表示解 – 二进制:
自变量高维、大范围连续、高精度的时候很难处理 冗余问题,离散化后解的个数介于2(n-1)和2n之间
– D进制, D=3,8,16,… – 实数编码:无需编码和解码 – 序列编码:例如TSP的路径表达 – 树编码:非定长 – 自适应编码-长度可调节