- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 81
第五章 遗传算法工具箱函数
本章介绍英国设菲尔德大学开发的遗传算法工具箱函数。
由于MATLAB高级语言的通用性,对问题用M文件编码,与此配对的是MATLAB先进的数据分析、可视化工具、特殊目的的应用领域工具箱和展现给使用者具有研究遗传算法可能性的一致环境。MATLAB遗传算法工具箱为遗传算法从业者和第一次实验遗传算法的人提供了广泛多样的有用函数。
遗传算法工具箱使用MATLAB矩阵函数为实现广泛领域的遗传算法建立一套通用工具,这个遗传算法工具是用M文件写成的,是命令行形式的函数,能完成遗传算法大部分重要功能的程序的集合。用户可通过这些命令行函数,根据实际分析的需要,编写出功能强大的MATLAB程序。
5.1 工具箱结构
本节给出GA工具箱的主要程序。表5.1为遗传算法工具箱中的各种函数分类表。
表5.1 遗传算法工具箱中函数分类表
创建种群
crtbase
crtbp
crtrp
创建基向量
创建任意离散随机种群
创建实值初始种群
适应度计算
ranking
scaling
常用的基于秩的适应度计算
比率适应度计算
选择函数
reins
rws
select
sus
一致随机和基于适应度的重插入
轮盘选择
高级选择例程
随机遍历采样
变异算子
mut
mutate
mutbga
离散变异
高级变异函数
实值变异
交叉算子
recdis
recint
reclin
recmut
recombin
xovdp
xovdprs
xovmp
xovsh
xovshrs
xovsp
xovsprs
离散重组
中间重组
线性重组
具有变异特征的线性重组
高级重组算子
两点交叉算子
减少代理的两点交叉
通常多点交叉
洗牌交叉
减少代理的洗牌交叉
单点交叉
减少代理的单点交叉
子种群的支持
migrate
在子种群间交换个体
实用函数
bs2rv
rep
二进制串到实值的转换
矩阵的复制
5.1.1 种群表示和初始化
种群表示和初始化函数有:crtbase,crtbp,crtrp。
GA工具箱支持二进制、整数和浮点数的基因表示。二进制和整数种群可以使用工具箱中的crtbp建立二进制种群。crtbase是附加的功能,它提供向量描述整数表示。种群的实值可用crtrp进行初始化。在二进制代码和实值之间的变换可使用函数bs2rv,它支持格雷码和对数编码。
5.1.2 适应度计算
适应度函数有:ranking,scaling。
适应度函数用于转换目标函数值,给每一个个体一个非负的价值数。这个工具箱支持 Goldberg的偏移法(offsetting)和比率法以及贝克的线性评估算法。另外,ranking函数支持非线性评估。
5.1.3 选择函数
选择函数有:reins,rws,select,sus。
这些函数根据个体的适应度大小在已知种群中选择一定数量的个体,对它的索引返回一个列向量。现在最合适的是轮盘赌选择(即rws函数)和随机遍历抽样(即sus函数)。高级入口函数select为选择程序,特别为多种群的使用提供了一个方便的接口界面。在这种情况下,代沟是必须的,这就是整个种群在每一代中没有被完全复制,reins能使用均匀的随机数或基于适应度的重新插入。
5.1.4 交叉算子
交叉算子函数有:recdis,recint,reclin,recmut,recombin,xovdp,xovdprs,xovmp,xovsh,xovshrs,xovsp,xovsprs。
交叉是通过给定的概率重组一对个体产生后代。单点交叉、两点交叉和洗牌交叉是由xovsp、xovdp、xovsh函数分别完成的。缩小代理交叉函数分别是:xovdprs、xovshrs和xovsprs。通用的多点交叉函数是xovmp,它提供均匀交换的支持。为支持染色体实值表示,离散的、中间的和线性重组分别由函数recdis、recint、reclin完成。函数recmut提供具有突变特征的线性重组。函数recombin是一高级入口函数,对所有交叉操作提供多子群支持入口。
5.1.5 变异算子
变异算子函数有:mut,mutate,mutbga。
二进制和整数变异操作由mut完成。实值的变异使用育种机函数mutbga是有效的。Mutate对变异操作提供一个高级接口。
5.1.6 多子群支持
多子群支持函数:migrate。
遗传算法工具箱通过高层遗传操作函数migrate对多子群提供支持,它的一个功能是在子群中交换个体。一个单一种群通过使用工具箱中函数修改数据结构,使其分为许多子种群,这些子种群被保存在连续的数据单元块中。高层函数如select和reins可独立地操作子种群,包含在一个数据结构中的每一子种群允许独自向前衍
您可能关注的文档
- 第10章-商业银行资产负债管理.ppt
- 厂领导在安全月启动仪式上的讲话.doc
- EC渠道招商文案.pdf
- 级数敛散性判别方法综述.doc
- 场地平整、土方回填施工方案.doc
- 第八讲期权二叉树定价模型.ppt
- 第二次建模作业.doc
- 急危重症护理B卷.doc
- 复旦大学投毒案分析与反思.ppt
- epc联合体协议书范本.doc
- 2024年中国钽材市场调查研究报告.docx
- 2024年中国不锈钢清洗车市场调查研究报告.docx
- 2024年中国分类垃圾箱市场调查研究报告.docx
- 2024年中国水气电磁阀市场调查研究报告.docx
- 2024年中国绿藻片市场调查研究报告.docx
- 2010-2023历年初中毕业升学考试(青海西宁卷)数学(带解析).docx
- 2010-2023历年福建厦门高一下学期质量检测地理卷.docx
- 2010-2023历年初中数学单元提优测试卷公式法(带解析).docx
- 2010-2023历年初中毕业升学考试(山东德州卷)化学(带解析).docx
- 2010-2023历年初中毕业升学考试(四川省泸州卷)化学(带解析).docx
文档评论(0)