MATLAB遗传算法工具箱及其应用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

生成新一代种群
Page 3
汕头大学工学院
二、遗传算法工具箱结构
本节介绍的是英国苏菲尔德大学开发的遗传 算法工具箱。 由于MATLAB高级语言的通用性,对问题用 M文件编码,与此配对的是MATLAB先进的数 据分析、可视化工具、特殊目的的应用领域工 具箱和展现给使用者具有研究遗传算法可能性 的一致环境。 GA工具箱本质是个函数包,用户只要安装 了这个工具箱或者软件自带了这个工具箱,就 可以调用这些函数命令,从而编写出强大的 MATLAB遗传算法程序。
汕头大学工学院
三、遗传算法工具箱通用函数
例3.11 使用函数crtbp创建初始种群的应用举例。 创建一个长度为9、有6个个体的随机种群(这里前四个基因位是基本字 符{0,1,2,3,4,5,6,7},后五个基因位是基本字符{0,1,2, 3}): BaseV=crtbase([4 5],[8 4]); [Chrom,Lind,BaseV]=crtbp(6,BaseV);
Page 16
汕头大学工学院
三、遗传算法工具箱通用函数
3、函数rws 功能:轮盘赌选择。
格式:NewChrIx=rws(FitnV,Nsel)
说明:rws在当前种群中按照它们的适应度FitnV选择Nsel 个个体繁殖。FitnV是一包含种群中每个个体性能尺寸的 列向量,它能通过使用函数ranking或scaling计算每个个体 的适应度水平来得到。
MATLAB工作界面
工作空间 浏览器窗口
当前目录 浏览器窗口
命令窗口
历史命令 窗口
Page 20
汕头大学工学院
四、遗传算法工具箱应用
MATLAB工作界面
Page 21
汕头大学工学院
四、遗传算法工具箱应用
用GA工具箱函数求解:
2 f ( x) x(其中 x [0,31])的最大值。
MATLAB 代码
Page 7
汕头大学工学院
二、遗传算法工具箱结构
4、交叉算子:recdis,recint,reclin,recmut, recombin,xovdp,xovdprs,xovmp,xovsh, xovshrs,xovsp,xovsprs。 交叉是通过给定的概率重组一对个体而产生后代 的。单点、两点和洗牌交叉是由xovsp、xovdp和 xovsh函数分别完成的。缩小代理交叉函数分别是: xovdprs、xovshrs和xovsprs。通用的多点交叉函数是 xovmp,它提供均匀交换的支持。函数recmut提供 具有突变特征的线性重组。而函数recombin是一高 级入口函数,对所有交叉操作提供多子群支持入口。
Page 5
汕头大学工学院
二、遗传算法工具箱结构
2、适应度计算:ranking,scaling。 适应度函数用于转换目标函数值,给每一个个体 一个非负的价值数。这个工具箱支持Goldberg的偏 移法和比率法以及贝克的线性评估算法。另外, ranking函数支持非线性评估。
Page 6
汕头大学工学院
Chrom, Lind, BaseV crtbpNind, BaseV Chrom, Lind, BaseV crtbpNind, Lind, Base
说明:遗传算法第一步是创建由任意染色体组成的 原始种群。crtbp创建一元素为随机数的矩阵Chrom。
Page 12
Page 8
汕头大学工学院
二、遗传算法工具箱结构
5、变异算子:mut,mutate,mutbga。 二进制和整数变异操作由mut完成。实值的变异 使用育种函数mutbga是有效的。mutate对变异操作 提供一个高级接口。
Page 9
汕头大学工学院
二、遗传算法工具箱结构
6、多子群支持:migrate。 遗传算法工具箱通过高层遗传操作函数migrate对 多子群提供支持,它的一个功能是在子群中交换个 体。一个单一种群通过使用工具箱中的函数修改数 据结构,使其分为许多子种群,这些子种群被保存 在连续的数据单元块中。高层函数(如select和reins) 可独立地操作子种群,包含在一个数据结构中的每 一个种群允许独自向前衍化。
0.7843 9.3961 Phen 1.0706 5.2980
FieldD=[8; 1; 10; 1; 1; 0; 0] Phen=bs2rv(Chrom,FieldD) %不包括边界 %转换二进制到实值,使用对数刻度
6.6223 5.0615 Phen 2.7277 1.5236
设置运行 参数 定义初始种群 转换实值
遗传算法 关键步骤
Page 22
汕头大学工学院
四、遗传算法工具箱应用
运行结果
找到 最优解
figure 1
figure 2
理论最优解是X=31,Y=961
汕头大学工学院
Page 23
四、遗传算法工具箱应用
改变参数运行
被选种群分布
Page 24
汕头大学工学院
Page 13
Lind=9; BaseV=[8 8 8 8 4 4 4 4 4 ]
汕头大学工学院
三、遗传算法工具箱通用函数
2、函数bs2rv 功能:二进制串到实值的转换。
格式:Phen=bs2rv(Chrom,FieldD)
说明:Phen=bs2rv(Chrom,FieldD)根据译码 矩阵FieldD将二进制串矩阵Chrom转换为实值向 量。返回矩阵Phen包含对应的种群表现型。
F ( xi )
f ( xi )
f (x )
j 1 j
N
f ( xi )是个体xi的适应度, F ( xi )是这个个体被选择的概 率。
Page 18
汕头大学工学院
四、遗传算法工具箱应用
了解MATLAB窗口界面 用遗传算法工具箱求一个简单函数的最值
Page 19
汕头大学工学院
四、遗传算法工具箱应用
姓名:黄樟 学号:11309011 导师:李昇平 指导老师:包能胜
Page 25
汕头大学工学院
二、遗传算法工具箱结构
3、选择函数:reins,rws,select,sus。 这些函数根据个体的适应度大小在已知种群中选 择一定数量的个体,对它的索引返回一个列向量。 现在最合适的是轮盘赌选择法(即rws函数)和随机 遍历抽样(即sus函数)。高级入口函数select为选 择程序,特别为多种群的使用提供了一个方便的接 口界面。在这种情况下,代沟是必需的,即整个种 群在每一代中没有被完全复制。reins能使用均匀的 随机数或基于适应度的重新插入。
或 [Chrom,Lind,BaseV]=crtbp([6,9],[8 8 8 8 4 4 4 4 4 ]);运行得
4 1 1 Chrom 1 4 4 3 1 1 2 2 2 0 3 4 7 5 2 1 1 1 0 3 0 1 0 0 0 0 2 5 5 7 2 2 2 3 1 5 7 7 0 3 3 0 3 2 4 0 3 1 1 1 0
MATLAB遗传算法工具箱函数及其应用
学号: 姓名:
学院 201年月日
内容提要 遗传算法流程回顾
遗传算法工具箱结构
遗传算法工具箱通用函数
遗传算法工具箱应用
Page 2
汕头大学工学院
一、遗传算法流程回顾
生成初始种群
个体 染色体
计算适应度 终止 ? 选择-复制 交叉
结束
基因
遗传算法基本流程框图
变异
0 1 Chrom 0 1
0 0 0 1
0 0 1 0
0 0 0 1
Page 15
0 1 1 1
1 0 0 0
1 0 0 1
1 1 0 1
汕头大学工学院
三、遗传算法工具箱通用函数
FieldD=[8; -1; 10; 1; 0; 1; 1] %包括边界 Phen=bs2rv(Chrom,FieldD) %转换二进制到实值,使用算术刻度
s4
轮盘赌选择法示意图
s3
s1
s2
汕头大学工学院
Pageຫໍສະໝຸດ Baidu17
三、遗传算法工具箱通用函数
例3.31 轮盘赌选择方法示例。
考虑8个个体的种群,假设已计算出适应度FitnV: FitnV=[1.50;1.35;1.21;1.07;0.92;0.78;0.64;0.5]
选择6个个体的索引:
NewChrIx=rws(FitnV,6) NewChrIx成为
2 5 1 NewChrIx 1 3 7
算法说明:通过计算适应度向量的累加和完成轮盘赌选择的表格,并产生随 机分布在[0,sum(FitnV)]区间内的Nsel个实数,被选择个体的索引通过比 较向量累加和产生的编号来决定。一个个体被选择的概率由下式给出:
汕头大学工学院
Page 4
二、遗传算法工具箱结构
1、种群表示和初始化函数:crtbase,crtbp,crtp。 GA工具箱支持二进制、整数和浮点数的基因表示。 二进制和整数种群可以使用工具箱中的crtbp建立二 进制种群。crtbase是附加的功能,它提供向量描述 整数表示。种群的实值可用crtrp进行初始化。在二 进制代码和实值之间的变换可使用函数bs2rv,它支 持格雷码和对数编码。
Page 14
汕头大学工学院
三、遗传算法工具箱通用函数
例3.21 函数bs2rv的应用举例。 下列二进制种群Chrom由函数crtbp创建,表示在[-1,10]之间的一组简 单变量,程序代码表示怎样使用函数bs2rv将算术表示格雷码或二进制 串表示转换为实值表现型。 Chrom=crtbp(4,8) %创建任意染色体,此处为二进制串
Page 10
汕头大学工学院
三、遗传算法工具箱通用函数 几个典型工具箱函数的介绍 创建初始种群函数crtbp 二进制串到实值转换函数bs2rv 轮盘赌选择函数rws
Page 11
汕头大学工学院
三、遗传算法工具箱通用函数
1、函数crtbp 功能:创建初始种群。
向量
个体数量 个体长度
格式: Chrom, Lind, BaseV crtbpNind, Lind
相关文档
最新文档