133 第八章 使用MATLAB 遗传算法工具 最新发布的MATLAB 7.0 Release 14已经包含了一个专门设计的遗传算法与直接搜索工具箱(Genetic Algorithm and Direct Search Toolbox ,GADS)。使用遗传算法与直接搜索工具箱,可以扩展MATLAB 及其优化工具箱在处理优化问题方面的能力,可以处理传统的优化技术难以解决的问题,包括那些难以定义或不便于数学建模的问题,可以解决目标函数较复杂的问题,比如目标函数不连续、或具有高度非线性、随机性以及目标函数没有导数的情况。 本章8.1 节首先介绍这个遗传算法与直接搜索工具箱,其余各节分别介绍该工具箱中的遗传算法工具及其使用方法。 8.1 遗传算法与直接搜索工具箱概述 本节介绍 MATLAB 的GADS(遗传算法与直接搜索)工具箱的特点、图形用户界面及运行要求,解释如何编写待优化函数的M 文件,且通过举例加以阐明。 8.1.1 工具箱的特点 GADS 工具箱是一系列函数的集合,它们扩展了优化工具箱和 MATLAB 数值计算环境的性能。遗传算法与直接搜索工具箱包含了要使用遗传算法和直接搜索算法来求解优化问题的一些例程。这些算法使我们能够求解那些标准优化工具箱范围之外的各种优化问题。所有工具箱函数都是 MATLAB 的M 文件,这些文件由实现特定优化算法的MATLAB 语句所写成。 使用语句 ty pe fu nction_name 就可以看到这些函数的MATLAB 代码。我们也可以通过编写自己的M 文件来实现来扩展遗传算法和直接搜索工具箱的性能,也可以将该工具箱与MATLAB 的其他工具箱或Simu link 结合使用,来求解优化问题。 工具箱函数可以通过图形界面或MATLAB 命令行来访问,它们是用MATLAB 语言编写的,对用户开放,因此可以查看算法、修改源代码或生成用户函数。 遗传算法与直接搜索工具箱可以帮助我们求解那些不易用传统方法解决的问题,譬如表查找问题等。 遗传算法与直接搜索工具箱有一个精心设计的图形用户界面,可以帮助我们直观、方便、快速地求解最优化问题。 8.1.1.1 功能特点 遗传算法与直接搜索工具箱的功能特点如下: (1) 图形用户界面和命令行函数可用来快速地描述问题、设置算法选项以及监控进程。 (2) 具有多个选项的遗传算法工具可用于问题创建、适应度计算、选择、交叉和变异。 (3) 直接搜索工具实现了一种模式搜索方法,其选项可用于定义网格尺寸、表决方法和搜索方法。 (4) 遗传算法与直接搜索工具箱函数可与MATLAB 的优化工具箱或其他的...