基于MATLAB的遗传算法.doc
文本预览下载声明
文章题目
创
新
点
自
述 近年来,遗传算法作为一种非经典的数学方法应用到越来越广泛的领域中,成为了人工智能理论中一个很活跃的分支学科.本文介绍了遗传算法的基本流程,阐述了MATLAB遗传算法工具箱的使用方法.并通过具体实例验证了MATLAB遗传算法工具箱的有效性和实用性.Doi:1006-7043 (2006) xx-xxxx-x
Genetic algorithm based on MATLAB
ZHANG Mingyao
(Harbin Engineering University, Harbin, Heilongjiange, 150001,China)
Abstract:In recent years, the genetic algorithm is a mathematical method of non classical applied to more and more fields, has become a very active branches of artificial intelligence theory. This paper introduces the basic procedures of genetic algorithm, the method of using MATLAB genetic algorithm toolbox. And the validity and practicability of MATLAB genetic algorithm toolbox is proved by examples.
Keywords:Genetic algorithm; Artificial intelligence;MATLAB; Toolbox
遗传算法[1](Genetic Algorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法!它是由美国的 J.Holland 教授 1975 年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自动适应地调整搜索方向,不需要确定的规则!遗传算法的这些性质,已被人们广泛地应用于组合优化,机器学习,信号处理,自适应控制和人工生命等领域,是现代有关智能计算中的关键技术.
MATLAB[2] 语言是一种面向科学与工程的高效率高级语言,它的语法规则简单,更贴近人的思维方式,通俗易懂.MATLAB 语言有着丰富的各种工具箱,MATLAB 的优化工具箱提供对各种优化问题的一个完整的解决方案,遗传算法优化工具箱[3]就是其中之一!采用 MATLAB 遗传算法优化工具箱,不仅具有简单,易用,易于修改的特点,且为解决许多传统的优化方法难以解决的参数优化,非线性,多峰值之类的复杂问题提供有效的途径,为遗传算法的研究和应用提供很好的应用前景.
1 遗传算法的基本流程
遗传算法模拟从低级到高级的演化过程,即从初始群体出发,采用优胜劣汰适者生存的自然法则选择个体,通过交叉编译来产生下一代群体,逐代演化,知道产生满足条件的个体为止,其流程图如图 1:①确定待优化的参数范围,并对搜索空间进行编码;②随机产生包含各个个体的初始种群;③将种群中各个个体解码成对应的参数值,用解码后的参数求解适应度函数,运用适应度函数评估各个个体的适应度;④对收敛条件进行判断,如果已经找到最佳个体,则停止,否则继续进行遗传操作;⑤按适应度进行选择操作,让适应度大的个体在种群中占有较大的比例,一些适应度较小的个体将会被淘汰;⑥随机交叉,两个个体按一定的交叉概率进行交叉操作,并产生两个新的子个体;⑦按照一定的变异概率变异,使个体的某个或某些位的性质发生改变;⑧重复步骤③至⑦,直至满足终止条件.
图1 遗传算法流程图
Fig.1 Flow chart of genetic algorithm
.1 三种常见的工具箱
1.gatbx工具箱:英国设菲尔德Sheffield大学开发的gatbs工具箱,不是Matlab软件自带的,雷英杰编著《Matlab遗传算法工具箱及应用》涉及到了这个工具箱,并对它的使用进行了说明.
gaot工具箱:这是网上流传的免费的工具箱,网上对它介绍的资料也挺多,也不是Matlab软件自带的,但可以自己配置使用.飞思科技产品研发中心编著《Matlab 6.X辅助优化计算与设计》第五章对gaot遗传算法工具箱的使用进行了介绍.
gads工具箱:matlab 7.0包含了这个工具箱,matlab7.0以前的版本没有这个工具箱,雷英杰编著《Matlab遗传算法工具箱及应用》对这个工具箱的使用进行了介绍.2.
显示全部