遗传算法原理及其应用.pptx
《遗传算法原理及其应用.pptx》由会员分享,可在线阅读,更多相关《遗传算法原理及其应用.pptx(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、11.遗传算法概述2.基本遗传算法(SGA)目 录l1.1 遗传算法的产生与发展l1.2 遗传算法的生理学基础 l1.3 遗传算法的原理与特点l1.4 遗传算法的基本操作l1.5 遗传算法的应用 l 2.1 基本遗传算法描述l 2.2 基本遗传算法实现l 2.3 基本遗传算法流程l 2.4 简单函数优化的实例第1页/共71页23.遗传算法的改进4.遗传算法的应用目 录l 3.1 自适应遗传算法l 3.2 CHC算法 l 3.3 基于小生境技术的遗传算法l 3.4 退火进化算法l 4.1 解决带约束的函数优化问题l 4.2 解决多目标优化问题l 4.3 解决组合优化问题l 4.4 遗传算法在过程
2、建模中的应用l 4.5 遗传算法在模式识别中的应用第2页/共71页31.1 遗传算法的产生与发展产生产生早在50年代,一些生物学家开始研究运用数字计算机模拟生物的自然遗传与自然进化过程;1963年,德国柏林技术大学的I.Rechenberg和H.P.Schwefel,做风洞实验时,产生了进化策略的初步思想;60年代,L.J.Fogel在设计有限态自动机时提出进化规划的思想。1966年Fogel等出版了基于模拟进化的人工智能,系统阐述了进化规划的思想。60年代中期,美国Michigan大学的J.H.Holland教授提出借鉴生物自然遗传的基本原理用于自然 和人工系统的自适应行为研究和串编码技术;
3、1967年,他的学生J.D.Bagley 在博士论文中首次提出“遗传算法(Genetic Algorithms)”一词;1975年,Holland出版了著名的“Adaptation in Natural and Artificial Systems”,标志遗传算法的诞生。第3页/共71页41.1 遗传算法的产生与发展发展发展70年代初,Holland提出了“模式定理”(Schema Theorem),一般认为是“遗传算法的基本定理”,从而奠定了遗传算法研究的理论基础;1985年,在美国召开了第一届遗传算法国际会议,并且成立了国际遗传算法学会(ISGA,International Society
4、 of Genetic Algorithms);1989年,Holland的学生D.J.Goldherg出版了“Genetic Algorithms in Search,Optimization,and Machine Learning”,对遗传算法及其应用作了全面而系统的论述;1991年,L.Davis编辑出版了遗传算法手册,其中包括了遗传算法在工程技术和社会生活中大量的应用实例。遗传算法进化计算计算智能人工智能第4页/共71页51.2 遗传学基本概念与术语染色体(chromosome):遗传物质的载体;脱氧核糖核酸(DNA):大分子有机聚合物,双螺旋结构;RNA遗传因子(gene):DNA
5、或RNA长链结构中占有一定位置的基本遗传单位;基因型(genotype):遗传因子组合的模型;表现型(phenotype):由染色体决定性状的外部表现;个体(individual):指染色体带有特征的实体;种群(population):个体的集合,该集合内个体数称为种群的大小;1 1 1 1 1 1 1 1 1 1 0 1 1 1 第5页/共71页6进化(evolution):生物在其延续生存的过程中,逐渐适应其生存环境,使得其品质不断得到改良,这种生命现象称为进化;适应度(fitness):度量某个物种对于生存环境的适应程度。对生存环境适应程度较高的物种将获得更多的繁殖机会,而对生存环境适应
6、程度较低的物种,其繁殖机会就会相对较少,甚至逐渐灭绝;选择(selection):指决定以一定的概率从种群中选择若干个体的操作(实现优胜劣汰);复制(reproduction):细胞在分裂时,遗传物质DNA通过复制而转移到新产生的细胞中,新的细胞就继承了旧细胞的基因;第6页/共71页7交叉(crossover):在两个染色体的某一相同位置处DNA被切断,其前后两串分别交叉组合形成两个新的染色体。又称基因重组,俗称“杂交”;变异(mutation):在细胞进行复制时可能以很小的概率产生某些复制差错,从而使DNA发生某种变异,产生出新的染色体,这些新的染色体表现出新的性状;编码(coding):表
7、现型到基因型的映射;解码(decoding):从基因型到表现型的映射。大象灰颜色皮肤为例1 1 1 1 1 1 1 编码解码第7页/共71页81.3 遗传算法的原理与特点 原理遗传算法(GA)是模拟生物在自然环境下的遗传和进化过程而形成的一种自适应全局优化概率搜索方法。其采纳了自然进化模型,从代表问题可能潜在解集的一个种群开始,种群由经过基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体;初始种群产生后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来越好的解:在每一代,概据问题域中个体的适应度大小挑选个体;并借助遗传算子进行组合交叉和主客观变异,产生出代表新的解集的种群。这一
8、过程循环执行,直到满足优化准则为止。最后,末代个体经解码,生成近似最优解。基于种群进化机制的遗传算法如同自然界进化一样,后生代种群比前生代更加适应于环境,通过逐代进化,逼近最优解。第8页/共71页91.3 遗传算法的原理与特点遗传算法的基本流程遗传算法的基本流程逼近最优解的过程Fig.1 遗传算法的基本流程算法结束?第9页/共71页101.3 遗传算法的原理与特点特点遗传算法的本质并行性。首先,遗传算法并行的方式从问题解的串集开始嫂索,而不是从单个解开始。这是遗传算法与传统优化算法的极大区别。传统优化算法从单个初始值迭代求最优解的;容易误入局部最优解。遗传算法从串集开始搜索,覆盖面大,利于全局
9、择优。其次,算法内含并行性,遗传算法采用种群方式组织搜索,因而可同时搜索妥空间的多个区域(n-n3),并相互交流信息,能以较小的计算获得较大的收益。遗传算法基本上不用搜索空间的知识或其它辅助信息,而仅用适应度函数值来评估个体,在此基础上进行遗传操作。适应度函数不仅不受连续可微的约束,而且其定义域可以任意设定。这一特点使得遗传算法的应用范围大大扩展。遗传算法不是采用确定性规则,而是采用概率的变迁规则来指导他的搜索方向。具有自组织、自适应和自学习性。遗传算法利用进化过程获得的信息自行组织搜索时,硬度大的个体具有较高的生存概率,并获得更适应环境的基因结构。遗传算法可更直接的应用,对给定的问题,可以产
10、生许多潜在解,最终选择可以由使用者指定,通用性高,应用范围广。第10页/共71页111.4 遗传算法的基本操作遗传基因型(编码编码)编码方式二进制编码二进制编码、浮点数编码浮点数编码、格雷码编码、符号编码、复数编码、DNA编码等。以大象灰色皮肤为例:二进制编码:1111111,浮点编码:编码原则编码原则完备性(完备性(completeness):问题空间的所有解都能表示为所设计的):问题空间的所有解都能表示为所设计的基因型;基因型;健全性(健全性(soundness):任何一个基因型都对应于一个可能解;):任何一个基因型都对应于一个可能解;非冗余性(非冗余性(non-redundancy):问
11、题空间和表达空间一一对应。):问题空间和表达空间一一对应。二进制编码与浮点数编码的比较二进制编码与浮点数编码的比较在交叉操作时,二进制编码比浮点数编码产生新个体的可能性多,而且在交叉操作时,二进制编码比浮点数编码产生新个体的可能性多,而且产生的新个体不受父个体所构成的超体的限制;产生的新个体不受父个体所构成的超体的限制;在变异操作时,二进制编码的种群稳定性比浮点数编码差。在变异操作时,二进制编码的种群稳定性比浮点数编码差。第11页/共71页121.4 遗传算法的基本操作选择适应度计算适应度计算:按比例的适应度函数(按比例的适应度函数(proportional fitness assignmen
12、t)基于排序的适应度计算(基于排序的适应度计算(Rank-based fitness assignment)选择算法选择算法:轮盘赌选择(轮盘赌选择(roulette wheel selection)随机遍历抽样(随机遍历抽样(stochastic universal selection)局部选择(局部选择(local selection)截断选择(截断选择(truncation selection)锦标赛选择(锦标赛选择(tournament selection)第12页/共71页13交叉或基因重组交叉或基因重组二进制交叉(二进制交叉(binary valued crossover):单点交
13、叉(单点交叉(single-point crossover)多点交叉(多点交叉(multiple-point crossover)均匀交叉(均匀交叉(uniform crossover)洗牌交叉(洗牌交叉(shuffle crossover)缩小代理交叉(缩小代理交叉(crossover with reduced surrogate)实值重组(实值重组(real valued recombination):离散重组(离散重组(discrete recombination)中间重组(中间重组(intermediate recombination)线性重组(线性重组(linear recombin
14、ation)(均匀、非均匀)(均匀、非均匀)扩展线性重组(扩展线性重组(extended linear recombination第13页/共71页14 交叉方式半种群交叉(N/2)对群体中的要交叉的个体进行两两随机配对。若群体大小为M,则最多共有 M/2 对相互配对的个体组参与交叉。(若种群数为奇数,则其中任一个个体多选一次配对)2)全种群交叉(N)对群体中要交叉的个体,从种群中随机挑选一个个体与其完成交叉操作,最多共有M对相互配对的个体参与变异。第14页/共71页15变异方法变异方法 二进制变异二进制变异单点变异单点变异 逆序变异逆序变异均匀变异均匀变异实值变异实值变异随机变异随机变异边界
15、变异边界变异非一致变异非一致变异自适应变异自适应变异高斯变异高斯变异第15页/共71页16变异方式基于个体的变异即对任意一个个体,判断其是否进行变异操作,如果是,则随机生成一变异基因发生变异操作。基于基因座的变异即对种群中的个体,判断每一个个体的每一位基因是否进行变异操作,如果是,则发生变异操作。第16页/共71页171.5 遗传算法的应用函数优化函数优化 是遗传算法的经典应用领域是遗传算法的经典应用领域;组合优化组合优化 实践证明,遗传算法对于组合优化中的实践证明,遗传算法对于组合优化中的NP完全问题非常有效完全问题非常有效;自动控制自动控制 如基于遗传算法的模糊控制器优化设计、基于遗传算法
16、的参数辨识、利用遗传算法进行人工神如基于遗传算法的模糊控制器优化设计、基于遗传算法的参数辨识、利用遗传算法进行人工神经网络的结构优化设计和权值学习等经网络的结构优化设计和权值学习等;机器人智能控制机器人智能控制 遗传算法已经在移动机器人路径规划、关节机器人运动轨迹规划、机器人逆运动学求解、细胞遗传算法已经在移动机器人路径规划、关节机器人运动轨迹规划、机器人逆运动学求解、细胞机器人的结构优化和行动协调等机器人的结构优化和行动协调等;组合图像处理和模式识别组合图像处理和模式识别 目前已在图像恢复、图像边缘持征提取、几何形状识别等方面得到了应用目前已在图像恢复、图像边缘持征提取、几何形状识别等方面得
17、到了应用;第17页/共71页18人工生命人工生命 基于遗传算法的进化模型是研究人工生命现象的重要理论基础,遗传算法已在其进化模型、学基于遗传算法的进化模型是研究人工生命现象的重要理论基础,遗传算法已在其进化模型、学习模型、行为模型等方面显示了初步的应用能力;习模型、行为模型等方面显示了初步的应用能力;遗传程序设计遗传程序设计 Koza发展了遗传程序设计的慨念,他使用了以发展了遗传程序设计的慨念,他使用了以LISP语言所表示的编码方法,基于对一种树型结语言所表示的编码方法,基于对一种树型结构所进行的遗传操作自动生成计算机程序构所进行的遗传操作自动生成计算机程序;v机器学习机器学习机器学习学习能力
18、是高级自适应系统所应具备的能力之一。基于遗传算法的机器学习,特别是分机器学习学习能力是高级自适应系统所应具备的能力之一。基于遗传算法的机器学习,特别是分类器系统,在很多领域中都得到了应用。例如,遗传算法被用于学习模糊控制规则,利用遗传算类器系统,在很多领域中都得到了应用。例如,遗传算法被用于学习模糊控制规则,利用遗传算法来学习隶属度函数,从而更好地改进了模糊系统法来学习隶属度函数,从而更好地改进了模糊系统 的性能;基于遗传算法的机器学习可用来调的性能;基于遗传算法的机器学习可用来调整人工神经网络的连接权,也可用于人工神经网络的网络结构优化设计;分类器系统也在学习式整人工神经网络的连接权,也可用
19、于人工神经网络的网络结构优化设计;分类器系统也在学习式多机器人路径规多机器人路径规 划系统中得到了成功的应用。划系统中得到了成功的应用。第18页/共71页192 基本遗传算法遗传算法在自然与社会现象的模拟、工程计算等方面得到了广泛的应用。在各个不同的应用领域,为了取得更好的结果,人们对GA进行了大量的改进。为不至于混淆,把Holland提出的算法称为基本遗传算法,简称为SGA(Simple Genetic Algorithm),也有称其为(GA、CGA)。以SGA为例,阐述遗传算法的设计与实现方法。第19页/共71页202.1 基本遗传算法描述2.1.1 SGA的构成要素(1)(1)染色体编码
20、方法染色体编码方法 基本遗传算法使用固定长度的二进制符号串固定长度的二进制符号串来表示群体中的个体,其等位基因由二值符号集0,1组成。初始群体中各个个体的基因值用均匀分布的随机数来生成。如:x:就可表示一个个体,该个体的染色体长度是 l18。(2)个体适应度评价 基本遗传算法按与个体适应度成正比的概率来决定当前群体中每个个体遗传到下一代群体中的机会多少。为正确计算这个概率,这里要求所有个体的适应度必须为正数或零。这样,根据不同种类的问题,必须预先确定好由目标函数 值到个体适应度之间的转换规则,特别是要预先确定好当目标函数值为负数时的处理方法。第20页/共71页21(3)(3)遗传算子遗传算子
21、基本遗传算法使用下述三种遗传算子:选择运算:使用比例选择算子比例选择算子;交叉运算:使用单点交叉算子单点交叉算子;变异运算:使用基本位变异算子基本位变异算子。(4)(4)基本遗传算法的运行参数基本遗传算法的运行参数 基本遗传算法有下述4个运行参数需要提前设定:MM:群体大小,即群体中所含个体的数量,一般取为20 100。T T:遗传运算的终止进化代数,一般取为100 500 p pc c:交叉概率,一般取为 p pmm:变异概率,一般取为*这4个运行参数对遗传算法的求解结果和求解效率都有一定的影响,但目前 尚无合理选择它们的理论依据。在遗传算法的实际应用中,往往需要经过多次试 算后才能确定出这
22、些参数合理的取值大小或取值范围。第21页/共71页222.1.2 2.1.2 基本遗传算法的描述基本遗传算法的描述 基本遗传算法可定义为一个7元组:GAGA (M,F,s,c,m,p(M,F,s,c,m,pc c,p,pmm)M群体大小;F个体适应度评价函数;s选择操作算于;c交叉操作算子:m变异操作算于;pc交叉概率;pm变异概率;第22页/共71页232.2 基本遗传算法的实现2.2.1 2.2.1 编码与解码编码与解码 (1)(1)编码编码 假设某一参数的取值范围是umin,umax,我们用长度为l的二进制编码符号串来表示该参数,则它总共能够产生 2l种不同的编码,参数编码时的对应关系如
23、下:00000000000000000 umin 00000000000000011 umin+1111111111111111=2l1 umax 其中,为二进制编码的编码精度,其公式为:=Umax umin2l 1 第23页/共71页24 x=umin+(bi 2i-1)1i=lUmax umin2l 1 (2)(2)解码解码 假设某一个体的编码是:x:bl bl-1 bl-2b2b1 则对应的解码公式为:第24页/共71页25例 设 -3.0 x 12.1 ,精度要求 =1/10000,由公式:Umax umin2l=+11/1000012.1+3.0+1=151001 即:217 151
24、001 00 if f(X)-Cmin 0F(X)=Cmax-f(X)if f(X)Cmax0 if f(X)Cmax 第27页/共71页282.2.3 2.2.3 比例选择算子比例选择算子指个体被选中并遗传到下一代群体中的概率与该个体的适应度大小成正比。pi=fi/fi (i=1,2,M)式中 pi个体i被选中的概率;fi个体i的适应度;fi群体的累加适应度。显然,个体适应度愈高,被选中的概率愈大。但是,适应度小的个体也有可 能被选中,以便增加下一代群体的多样性。执行比例选择的手段是轮盘选择。执行比例选择的手段是轮盘选择。个体被选中的概率取决于个体的相对适应度:从统计意义讲,适应度大的个体,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 遗传 算法 原理 及其 应用
限制150内