用matlab实现遗传算法程序

用matlab实现遗传算法程序

ID:16075281

大小:84.35 KB

页数:3页

时间:2018-08-07

用matlab实现遗传算法程序_第1页
用matlab实现遗传算法程序_第2页
用matlab实现遗传算法程序_第3页
资源描述:

《用matlab实现遗传算法程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、·80·计算机应用研究2001年3用MATLAB实现遗传算法程序刘国华,包 宏,李文超(北京科技大学,北京100083)摘 要:简要阐述了遗传算法的基本原理,探讨了在MATLAB环境中实现遗传算法各算子的编程方法,并以一个简单的实例说明所编程序在函数全局寻优中的应用。关键词:遗传算法(GA);MATLAB中图分类号:TP301.6文献标识码:A文章编号:100123695(2001)0820080203AGeneticAlgorithminMATLABLIUGuo2hua,BAOHong,LIWen2chao(Beiji

2、ngUniversityofScience&Technology,Beijing100083,China)Abstract:TheprincipleofgeneticalgorithmhasbeenpresentedanditsrealizationinMATLABhasbeendiscussed.Afunctionopti2mizationproblemhasbeengiventodemonstratetheglobaloptimizationfunctionalityoftheMATLABprogram.Keywor

3、ds:Geneticalgorithm(GA);MATLAB[3]1 遗传算法概述遗传算法的基本步骤如下:遗传算法(GeneticAlgorithm,GA)是借鉴生物界自1)在一定编码方案下,随机产生一个初始种群;然选择和群体进化机制形成的一种全局寻优算法。与2)用相应的解码方法,将编码后的个体转换成问[1]题空间的决策变量,并求得个体的适应值;传统的优化算法相比,遗传算法具有如下优点:1)不是从单个点,而是从多个点构成的群体开始搜索;2)在3)按照个体适应值的大小,从种群中选出适应值搜索最优解过程中,只需要由目标函数值

4、转换得来的较大的一些个体构成交配池;适应值信息,而不需要导数等其它辅助信息;3)搜索过4)由交叉和变异这两个遗传算子对交配池中的个程不易陷入局部最优点。目前,该算法已渗透到许多体进行操作,并形成新一代的种群;[2]5)反复执行步骤2~4,直至满足收敛判据为止。领域,并成为解决各领域复杂问题的有力工具。在遗传算法中,将问题空间中的决策变量通过一使用遗传算法需要决定的运行参数有:编码串长[4]定编码方法表示成遗传空间的一个个体,它是一个基度、种群大小、交叉和变异概率。编码串长度由优化因型串结构数据;同时,将目标函数值转换成适

5、应值,问题所要求的求解精度决定。种群大小表示种群中所它用来评价个体的优劣,并作为遗传操作的依据。遗含个体的数量,种群较小时,可提高遗传算法的运算速传操作包括三个算子:选择、交叉和变异。选择用来实度,但却降低了群体的多样性,可能找不出最优解;种群施适者生存的原则,即把当前群体中的个体按与适应较大时,又会增加计算量,使遗传算法的运行效率降低。值成比例的概率复制到新的群体中,构成交配池(当前一般取种群数目为20~100。交叉概率控制着交叉操作代与下一代之间的中间群体)。选择算子的作用效果的频率,由于交叉操作是遗传算法中产生新个

6、体的主要是提高了群体的平均适应值。由于选择算子没有产生方法,所以交叉概率通常应取较大值;但若过大的话,又新个体,所以群体中最好个体的适应值不会因选择操可能破坏群体的优良模式。一般取0.4~0.99。变异概作而有所改进。交叉算子可以产生新的个体,它首先率也是影响新个体产生的一个因素,变异概率小,产生使从交配池中的个体随机配对,然后将两两配对的个新个体少;变异概率太大,又会使遗传算法变成随机搜体按某种方式相互交换部分基因。变异是对个体的某索。一般取变异概率为0.0001~0.1。遗传算法常采用一个或某一些基因值按某一较小概率

7、进行改变。从产的收敛判据有:规定遗传代数;连续几次得到的最优个[5]生新个体的能力方面来说,交叉算子是产生新个体的体的适应值没有变化或变化很小等。主要方法,它决定了遗传算法的全局搜索能力;而变异2 用MATLAB实现遗传算法算子只是产生新个体的辅助方法,但也必不可少,因为MATLAB是Matwork公司的产品,是一个功能强大它决定了遗传算法的局部搜索能力。交叉和变异相配的数学软件,其优秀的数值计算能力使其在工业界和合,共同完成对搜索空间的全局和局部搜索。学术界的使用率都非常高。MATLAB还十分便于使用,它以直观、简洁并

8、符合人们思维习惯的代码给用户提[6]供了一个非常友好的开发环境。利用MATLAB处理收稿日期:2000212226矩阵运算的强大功能来编写遗传算法程序有着巨大的基金项目:国家自然科学基金资助项目(59874006;优势。59872002)©1995-2003TsinghuaTongfangOpticalDiscCo.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。