智能控制与机器学习报告_第1页
智能控制与机器学习报告_第2页
智能控制与机器学习报告_第3页
智能控制与机器学习报告_第4页
智能控制与机器学习报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、研究生课程论文封面课程名称智能控制与机器学习教师姓名研究生姓名研究生学号研究生专业所在院系类另比硕士日期:人工神经网络之遗传算法摘要:遗传算法(GeneticAlgorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法!它是由美国的J.Holland教授1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自动适应地调整搜索方向,不需要确定的规则!遗传算法的这些性质,已被人们广泛地应用于组合优化,机器学习,信号处理,自适应控制和人

2、工生命等领域,是现代有关智能计算中的关键技术。关键词:遗传算法;机器学习;智能计算1遗传算法的原理1.1遗传算法的基本思想遗传算法(geneticalgorithms,GA)是一种基于自然选择和基因遗传学原理,借鉴了生物进化优胜劣汰的自然选择机理和生物界繁衍进化的基因重组、突变的遗传机制的全局自适应概率搜索算法。遗传算法是从一组随机产生的初始解(种群)开始,这个种群由经过基因编码的一定数量的个体组成,每个个体实际上是染色体带有特征的实体。染色体作为遗传物质的主要载体,其内部表现(即基因型)是某种基因组合,它决定了个体的外部表现。因此,从一开始就需要实现从表现型到基因型的映射,即编码工作。初始种

3、群产生后,按照优胜劣汰的原理,逐代演化产生出越来越好的近似解。在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学的遗传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样,后代种群比前代更加适应环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。计算开始时,将实际问题的变量进行编码形成染色体,随机产生一定数目的个体,即种群,并计算每个个体的适应度值,然后通过终止条件判断该初始解是否是最优解,若是则停止计算输出结果,若不是则通过遗传算子操作产生新的一代种群,回到计算群体中每个个体的适应度值的部分,然后转到终止条件判断。这一过程循环执行,直到满

4、足优化准则,最终产生问题的最优解。图1-1给出了遗传算法的基本过程。1.2遗传算法的特点1.2.1遗传算法的优点遗传算法具有十分强的鲁棒性,比起传统优化方法,遗传算法有如下优点:1遗传算法以控制变量的编码作为运算对象。传统的优化算法往往直接利用控制变量的实际值的本身来进行优化运算,但遗传算法不是直接以控制变量的值,而是以控制变量的特定形式的编码为运算对象。这种对控制变量的编码处理方式,可以模仿自然界中生物的遗传和进化等机理,也使得我们可以方便地处理各种变量和应用遗传操作算子。遗传算法具有内在的本质并行性。它的并行性表现在两个方面算法的外在并行性,最简单的方式是让多台计算机各自进行独立种群的演化

5、计算,最后选择最优个体。可以说,遗传算法适合在目前所有的并行机或分布式系统上进行并行计算处理。二是遗传算法的内在并行性,由于遗传算法采用种群的方式组织搜索,因而可同时搜索解空间内的多个区域,并相互交流信息。这样就使得搜索效率更高,也避免了使搜索过程陷于局部最优解。图1-1简单遗传算法的基本过程遗传算法直接以目标函数值作为搜索信息。在简单遗传算法中,基本上不用搜索空间的知识和其它辅助信息,而仅用目标函数即适应度函数来评估个体解的优劣,且适应度函数不受连续可微的约束,对该函数和控制变量的约束极少。对适应度函数唯一的要求就是对于输入能够计算出可比较的输出。遗传算法是采用概率的变迁规则来指导它的搜索方

6、向,其搜索过程朝着搜索空间的更优化的解区域移动,它的方向性使得它的效率远远高于一般的随机算法。遗传算法在解空间内进行充分的搜索,但不是盲目的穷举或试探,因为选择操作以适应度为依据,因此它的搜索性能往往优于其它优化算法。原理简单,操作方便,占用内存少,适用于计算机进行大规模计算,尤其适合处理传统搜索方法难以解决的大规模、非线性组合复杂优化问题。由于遗传基因串码的不连续性,所以遗传算法处理非连续混合整数规划时有其独特的优越性,而且使得遗传算法对某些病态结构问题具有很好的处理能力。遗传算法同其他算法有较好的兼容性。如可以用其他的算法求初始解;在每一代种群,可以用其他的方法求解下一代新种群。2遗传算法

7、的实现2.1初始参数种群规模n:种群数目影响遗传算法的有效性。种群数目太小,不能提供足够的采样点;种群规模太大,会增加计算量,使收敛时间增长。一般种群数目在20至到160之间比较合适。交叉概率Pc:Pc控制着交换操作的频率,Pc太大,会使高适应值的结构很快被破坏掉,pc太小会使搜索停滞不前,一般pc取0.51.0。变异概率Pm:Pm是增大种群多样性的第二个因素,Pm太小,不会产生新的基因块,Pm太大,会使遗传算法变成随机搜索,一般Pm取0.0010.1。进化代数t:表示遗传算法运行结束的一个条件。一般的取值范围1001000。当个体编码较长时,进化代数要取小一些,否则会影响算法的运行效率。进化

8、代数的选取,还可以采用某种判定准则,准则成立时,即停止。2.2染色体编码利用遗传算法进行问题求解时,必须在目标问题实际表示与染色体位串结构之间建立一个联系。对于给定的优化问题,由种群个体的表现型集合所组成的空间称为问题空间,由种群基因型个体所组成的空间称为编码空间。由问题空间向编码空间的映射称作编码,而由编码空间向问题空间的映射成为解码。按照遗传算法的模式定理,DeJong进一步提出了较为客观明确的编码评估准则,称之为编码原理。具体可以概括为两条规则:(1)有意义积木块编码规则:编码应当易于生成与所求问题相关的且具有低阶、短定义长度模式的编码方案。(2)最小字符集编码规则:编码应使用能使问题得

9、到自然表示或描述的具有最小编码字符集的编码方案。常用的编码方式有两种:二进制编码和浮点数(实数)编码。二进制编码方法是遗传算法中最常用的一种编码方法,它将问题空间的参数用字符集1,0构成染色体位串,符合最小字符集原则,便于用模式定理分析,但存在映射误差。米用二进制编码,将决策变量编码为二进制,编码串长代取决于需要的精度。例如,X的值域为S,巾,而需要的精度是小数点后5位,这要求将X得值域至少分为5巴I06份。设X所需要的字串长为代,则有:(2.1)2m.-1(ba)x1062m.ii2匕那么二进制编码的编码精度为2m.1,将X.由二进制转为十进制可按下式计算:(2.2)x=a+decimal(

10、substring)x5iii其中,decimal(substringi)表示变量”的子串substring匚的十进制值。染色体编码m=乙m的总串长i=11。若没有规定计算精度,那么可采用定长二进制编码,即作可以自己确定。二进制编码方式的编码、解码简单易行,使得遗传算法的交叉、变异等操作实现方便。但是,当连续函数离散化时,它存在映射误差。再者,当优化问题所求的精度越高,如果必须保证解的精度,则使得个体的二进制编码串很长,从而导致搜索空间急剧扩大,计算量也会增加,计算时间也相应的延长。浮点数(实数)编码方法能够解决二进制编码的这些缺点。该方法中个体的每个基因都要用参数所给定区间范围内的某一浮点数

11、来表示,而个体的编码长度则等于其决策变量的总数。遗传算法中交叉、变异等操作所产生的新个体的基因值也必须保证在参数指定区间范围内。当个体的基因值是由多个基因组成时,交叉操作必须在两个基因之间的分界字节处进行,而不是在某一基因内的中间字节分隔处进行。2.3适应度函数适应度函数是用来衡量个体优劣,度量个体适应度的函数。适应度函数值越大的个体越好,反之,适应值越小的个体越差。在遗传算法中根据适应值对个体进行选择,以保证适应性能好的个体有更多的机会繁殖后代,使优良特性得以遗传。一般而言,适应度函数是由目标函数变换而成的。由于在遗传算法中根据适应度排序的情况来计算选择概率,这就要求适应度函数计算出的函数值

12、(适应度)不能小于零。因此,在某些情况下,将目标函数转换成最大化问题形式而且函数值非负的适应度函数是必要的,并且在任何情况下总是希望越大越好,但是许多实际问题中,目标函数有正有负,所以经常用到从目标函数到适应度函数的变换。考虑如下一般的数学规划问题:minf(兀)s.t.g(x)=0hh(x)hminmax变换方法一:对于最小化问题,F(x)十x了(x)建立适应度函数F(x)和目标函数/(x)的映射关系:f(x)c(23)max乙cminf(x)1.5)=2;T_bp_sim(T_bp_sim1.5)=2;T_ga_sim(T_ga_sim1.5)=l;result_ga=T_ga_simT_

13、test;number_b_sim=length(find(T_ga_sim=l&T_test=l);number_m_sim=length(find(T_ga_sim=2&T_test二=2);disp(2)优化BP网络的测试结果为:);disp(良性乳腺肿瘤确诊:num2str(number_b_sim).误诊:num2str(number_B-number_b_sim).确诊率pl二num2str(number_b_sim/number_B*100)%);disp(恶性乳腺肿瘤确诊:num2str(number_m_sim).误诊:num2str(number_M-number_m_sim).确诊率p2二num2str(number_m_sim/number_M*100)%);disp(建模时间为:num2str(e)s);实验结果为:实验条件为:病例总数:569良性:357恶性:212训练集病例总数:500良性:307恶性:193测试集病例总数:69良性:50恶性:196结论遗传算法是一种借鉴生物界自然选择和遗传机制的高度并行,随机,自适应的全局优化搜索算法,国内外都非常重视其理论和应用研究,并取得了令人瞩目的进展,遗传算法的应用成果

温馨提示

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

评论

0/150

提交评论