56 第五章 遗传算法工具箱函数 本章介绍英国设菲尔德大学开发的遗传算法工具箱函数。 由于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 离散重组 中间重组 线性重组 具有变异特征的线性重组 高级重组算子 两点交叉算子 减少代理的两点交叉 通常多点交叉 洗牌交叉 57 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 函数支持非线...