遗传算法动态寻优_第1页
遗传算法动态寻优_第2页
遗传算法动态寻优_第3页
遗传算法动态寻优_第4页
遗传算法动态寻优_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要遗传算法作为一种近代最优化方法,广泛地用于计算科学、模式识别和智能故障诊断等方面,它适用于解决复杂的非线性和多维空间寻优问题,近年来也得到了较为广阔的应用。本文介绍了遗传算法基本原理并且对测试函数进行了遗传算法的matlab仿真。关键词:遗传算法最优化引言遗传算法(GeneticAlgorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的J.Holland教授1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。遗传算法过程遗传算法的基本流程:•初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生成M个个体作为初始群体P(0)。•个体评价:计算群体P(t)中各个个体的适应度。•选择运算:将选择算子作用于群体。选择的目的是把优化的个体直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的。•交叉运算:将交叉算子作用于群体。遗传算法中起核心作用的就是交叉算子。•变异运算:将变异算子作用于群体。即是对群体中的个体串的某些基因座上的基因值作变动。•群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t+1)。•终止条件判断:若t=T,则以进化过程中所得到的具有最大适应度个体作为最优解输出,终止计算。遗传算法流程图遗传算法的关键在于迭代过程中的选择,交叉,变异。♦选择选择是用来确定交叉个体,以及被选个体将产生多少个子代个体。其主要思想是个体的复制概率正比于其适应值,但按比例选择不一定能达到好的效果。选择操作从早期的轮盘赌选择发展到现在有最佳个体保存法、排序选择法、联赛选择法、随机遍历抽样法、局部选择法、柔性分段复制、稳态复制、最优串复制、最优串保留等。♦交叉交叉是指把两个父代个体的部分结构加以替换重组而生成新个体的操作,其作用是组合出新的个体,在空间进行有效搜索,同时降低对有效模式的破坏概率。各种交叉算子均包含两个基本内容:确定交叉点的位置和进行部分基因的交换。常用的交叉操作方法有单点交叉、双点交叉、一致交叉、均匀交叉、算术交叉、二维交叉、树结构交叉、部分匹配交叉、顺序交叉和周期交叉等等。变异变异是指将个体中的某些基因值用其它基因值来替换,形成一个新的个体。遗传算法中的变异运算是产生新个体的辅助方法,其目的是使遗传算法具有局部的随机搜索能力和保持群体的多样性。变异算法包括确定变异点的位置和进行基因值替换。常见的变异算子有基本位变异、均匀变异、高斯变异、二元变异、逆转变异、自适应变异等。测试对f1函数进行最优化处理:/I_10%in(2pr*(习_&))+10),&_。,。一项2030.5,1其中n=6,k依次取0,0.1,0.2,0.3,0.5,1,每次的最后种群作为下一次的初始种群流程如下:第一步:初始化参数:设定进化代数为200代,种群规模为100,交叉概率为0.85,变异概率为0.001;第二步:产生初始化群体:产生随机初始种群数,将k=0的最后种群作为k=0.1的初始化种群,将k=0.1的最后种群作为k=0.3的初始化种群,将k=0.3的最后种群作为k=0.5的初始化种群,将k=0.5的最后种群作为k=1的初始化种群。选择初始种群后计算每个个体的适应度,平均适应度,最有适应度,这里的适应度即为函数值,最优为最小的;第三步:进化开始:选择个体进行后面的交叉和变异,选择方法为转种群规模次轮盘,随机选择种群规模个个体序号,选择的序号可能重复即后面可能发生同一个体与不同个体交叉;第四步:交叉:每个被选序号进行交叉判定,先判定其交叉概率,发生交叉事件后,采用比例交叉法,即随机生成一个pick范围(0〜1),选择x1个体的x1(pos)项与x2个体的x2(pos)项进行等比例交叉,x1(pos)=pick*x1(pos)+(1-pick)*x2(pos),其中pos为随机序号,x2的交叉同理;第五步:变异:变异概率取为0.001,每个个体进行变异判定,变异事件发生后,随机选择变异的项进行编译算法;第六步:计算种群中每个个体的适应度值,选出最优个体,并与之前的最优个体进行比较并判断是否替换,并把最优个体替换最差个体进行下一次迭代;第七步:重复第一步直到迭代次数达到要求次数。当n=2,时k=[00.10.20.30.51]时的三维图k=0DDD0DSD6D4D2DOWD0DSD6D4D2DOWN=6时收敛图每故通曲线虹CM惠止代鼓■200•一宥住(BI□2D■»ED90IDOI2UMDIEDIED司口函城m曲姬k=q旅止代裁=明。进化惜迸化代哉X1X2X3X4X5X6函数值收敛代数K=00.3166-0.78542.11940.397571.2733-0.917021.2473119K=0.10.3166-0.78542.13100.39751.2733-0.782523.7433189K=0.22.4380-1.47212.13100.47262.4446-0.370338.1960104K=0.32.5925-1.47212.13100.55032.4453-0.337640.4759186K=0.52.614-2.01521.78220.81632.4760-0.313942.9121167K=12.6145-1.99002.15220.91612.4737-0.733569.2992160总结本文分析了遗传算法的基本流程,并且在matlab上进行了仿真测试,对测试函数使用遗传算法进行了求极小值运算。传统的函数优化方法都是以梯度为基础的,其中有部分最优化方法还需要进行求导运算,对于简单的函数传统的优化方法可以达到最优。然而对于很多复杂的最优化问题,特别是理论研究

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论