遗传算法及其在生物反应.ppt
《遗传算法及其在生物反应.ppt》由会员分享,可在线阅读,更多相关《遗传算法及其在生物反应.ppt(73页珍藏版)》请在三一办公上搜索。
1、8.遗传算法及其在生物反应过程研究中的应用,8.1 引言8.2 GA的运行过程与特点8.3 GA的基本理论8.4 GA的应用,8.1 引言,遗传算法(Genetic Algorithms,基因算法,简称GA)的产生和发展是生物学、遗传学、系统科学、计算机科学与技术等科技革命的结果。对GA的研究与应用已引起国际上诸多领域的专家和学者的普遍关注,并且在许多领域取得了良好的效果。GA是一种建立在Darwin生物进化论和Mendel群体遗传学基础上的一种算法。自然界中生物体的结构体现了生物对其环境的生存与繁殖能力。自然界总是延续适应性强的物种,淘汰不适应的物种。“适应性”驱使遗传操作,异性结合和变异创
2、造出新的和适应性更强的生物结构。,60年代,美国Michigan大学Holland教授等人认为:只要适当地结合计算机技术,就能产生一种类似自然界以进化方式解决各类问题的技术。把实际问题用二进制数字(0.1)代码串表示,然后把这种二进制代码串视为“染色体”并对其进行变换。用该方法无需知道所要解决问题的类型,所需的唯一信息是它们在搜索过程中所产生的针对每个染色体的评价值,根据这些评价值对染色体进行迭代处理,从中发现并保存好的染色体,从而得到问题的最优解。1975年Holland教授发表了标志GA诞生的代表作,但没有受到足够的重视。80年代后,随着计算机技术的进步和人工神经网络、人工生命及机器学习理
3、论的发展,GA在理论和应用方面都得到了较大的发展。,Bagley、Hollstien、De Jong等人对遗传算法中所涉及到的有关数学方面的问题以及遗传算法在纯数学方面的应用进行了研究。Goldberg成功地将遗传算法应用于管道系统的优化和机器学习问题,他所著的Genetic Algorithms in Search,Optimization and Machine Learning一书全面阐述了GA的发展历程、现状、各种算法和应用实例,有力地促进了GA在工程技术中的广泛应用。自从1985年召开了首届遗传算法国际会议(ICGA:International Conference on Genet
4、ic Algorithms)以来,ICGA以每两年一度的频率汇集了一大批对遗传算法理论与实践感兴趣的人。据统计1983年全世界发表的有关遗传算法的文献为19篇,到1993年已达600篇。,1991年由Davis编著国际上出版了第一本遗传算法手册。由De Jong主编,MIT出版社出版,1993年创刊的杂志Evolutionary Computation为遗传算法理论发表提供了论坛。在全球信息网上也专门开辟了GA的讨论组(GAListRequestAIC.NRL.NAVY.MLL有关网址有:ttp:www.aic.nrl.navy.mil/galist),每星期发布一次国际上有关GA的学术活动及
5、信息交流等方面的信息。GA的初期应用研究主要围绕组合优化问题求解,近些年来它已迅速地扩展到机器学习、设计规划、系统控制、模式识别、人工生命等众多科学技术领域。,8.2 GA的运行过程与特点,8.2.1 GA的运行过程以函数优化为例,假设其目标函数为:Ff(x,y,z)(x,y,z),FR(8.1)为了不失一般性,假设要求(xo,yo,zo)使得F有最大值,即:,其中:(x,y,z)为自变量,其定义域为;F为实数,是解的优劣程度或适应性的一种度量;f为解空间(x,y,z)到实数域FR的一种映射。GA把该问题中的自变量(x,y,z)当作生物体,将其转化为由基因组成的染色体,相应的函数值F定义为适应
6、度,未知函数为环境,生物体进化的目标是成为具有最佳适应性的基因型。,图8.1 遗传算法的一般运行过程,(1)基因编码:将求解问题中每一个变量看作一个基因,根据各个变量的类型和取值范围,选择合适位数的码分别对其进行编码,简称基因码,如xa1,a2,a3。编码策略有二进制编码和实数编码等,若采用二进制码表达实数,每个二进制位即为一个基因,如果一维参数xa,b,则(8.3)其中,l是串的长度,gi为第i个基因。,(2)建立个体:将各个变量的基因码按一定顺序排列和连接,组合成个体。特定取值的各个变量组成的一个编码串,称为个体的一个基因型。例如,求解问题中包含有两个变量,其基因码分别为:xa1,a2,a
7、3和yb1,b2,如果按x到y的顺序连接,则一个个体为:Ax,ya1,a2,a3,b1,b2。(3)建立种群:生物在自然界是以种群的形式生存的。在t时刻,随机产生n个个体组成一个群体:P(t)A1,A2,.,An,该群体代表优化问题的一些可能解的集合。作为进化起点的初始种群P(0)可以用随机方式或其它方式产生。,(4)评价:根据求解问题的函数关系和编码规则,将群体P(t)中的每一个体的基因码所对应的自变量取值(xi,yi,zi)代入式(8.2),算出其函数值Fi,i1,2.n。Fi 越大,表示该个体有较高的适应性,更适应于f的定义的生存环境。适应度Fi 为群体进化时的选择提供了依据。(5)繁殖
8、(或复制):按一定的繁殖概率Ps 从群体P(t)中选取M对个体,作为双亲用于繁殖后代,产生新的个体加入下一代群体P(t+1)中。Ps 的大小取决于每个个体的适应度函数Fi。适应度越高,则复制概率越大。也就是说,适应于生存环境的优良个体将有更多的繁殖后代的机会,从而使优良特性得以遗传。繁殖是遗传算法的关键,它体现了自然界中适者生存的思想。,(6)杂交(或交叉):对于选中的用于繁殖的每一对个体,按某一概率Pc从某一位置相互交叉,如个体A1 和A2交叉产生新一代的个体B1和B2,它们组合了父辈个体A1 和A2 的特征,即 A1=1010101001 B1=1011110010 A2=01111100
9、10 B2=0110101001 其作用是集父代之优,产生新的一代,以实现高效搜索。可见,杂交体现了自然界中信息交换的思想。,(7)突变(或变异):以一定概率Pm从群体P(t1)中随机选取若干个体,对于选中的个体,随机选取某些基因进行变异运算,如1变成0或0变成1,以保证群体中基因的多样性,避免过早收敛,陷入局部解。与自然界一样,每一个基因发生变异的概率是很小的。变异模拟了生物进化过程中的偶然基因突变现象。P(t1)种群的繁殖、杂交、突变完成后,即以P(t1)种群取代P(t)种群完成一代繁殖。GA的搜索能力主要是由繁殖和杂交赋予的,突变算子则保证了算法能搜索到问题解空间的每一点,从而使算法具有
10、全局最优,它进一步增强了GA的搜索能力。,(8)检测:对P(t1)种群进行评价,检测进化速度和收敛性,判断进化是否成熟,如果不成熟,则继续进行逐代繁殖和进化,使种群中个体的品质不断得到优化。如成熟,则结束求解过程,这时所获得的种群及其中的个体就是求解问题的优化解。以上所述是GA的最基本操作。Goldberg称之为简单遗传算法(Simple GA,简称SGA)。在运用SGA的过程中,各国学者在SGA的基础上提出了许多改进方法及应注意的一些问题:1)控制参数的选择及编码;2)遗传算子的改进及后代的产生;3)种群评价和最优个体的选择;4)中止条件的选择及收敛性。,1)控制参数的选择及编码控制参数:编
11、码串长、种群数、繁殖、杂交及突变概率等。GA对种群数的设定和维持十分敏感,从维持群体中个体的多样性及防止陷入局部解的角度考虑,种群数越多越好。但是,这除了会明显增加计算量外还可能影响个体间的竞争。遗传操作概率的选择和设定目前尚无统一的理论指导,多数视具体问题而定。Grefenstett利用原级GA来优化选取GA控制参数,但其存在的问题是须保证一定的种群规模和遗传代数,多次(一般至少在1000次以上)调用待优化的GA程序。丁承民等提出了利用正交试验法来优化GA控制参数的选取。,GA的作用对象是优化变量的染色体编码。编码一般遵循De Jong提出的两条编码规则:(1)有意义建筑块(building
12、 block)编码规则:要求所采用的编码方式应当易于生成建筑块,这里的建筑块指的是具有低阶、短定义长度及高适应度的模式;(2)最小字符集编码规则:所使用的编码应采用最少数量的符号来实现对问题的表述。,一般而言,符号越少的编码方法所提供的模式数越多,越有利于算法的寻优。例,一个L位的二进制码串可代表2L 个整数,而一个l位的K进制码串则代表Kl 个整数。由于两种编码所对应的解数目相同,所以2LKl。因为K2,所以Ll,又因为二进制和K进制编码的模式数分别为(21)L 和(K1)l,而(8.4)(8.5)2L Kl,(112)(11K),Ll(8.6)(8.7)可见,二进制编码能产生更多的模式数。
13、,采用编码方式(特别是二进制编码)有以下优点:(1)可很好地指导搜索,使得有某种结构的个体容易生存,以产生适应性更强的后代;(2)使算法具有隐含并行性,使在相对少量的种群上进行的操作实质上隐含着大范围搜索。为了克服普通二进制编码所带来的GA早熟问题,Schraudolph等提出了动态变量编码:当由某种方法得知种群已经收敛,则缩小变量定义域一个范围,从而使得在全局最优点附近可以进行更精确的搜索。对于单一实变量如XUmin,Umax进行编码,设二进制长度为L,则存在从0,2L-1到Umin,Umax 的映射。编码精度为Umin-Umax(2L-1)。对于多参数优化问题,一般先对每个参数进行二进制编
14、码得到子串,再把这些子串连成一个染色体。每一个子串可以有不同的长度、Umin和Umax。,2)遗传算子的改进及后代的产生 遗传算子的改进 多点杂交:SGA对于染色体只采用单点杂交,采用多点杂交有利于对一个承载多个变量问题的染色体提高遗传搜索效率。但应注意的问题是多点杂交可能导致过多破坏GA的基本遗传模式,使得收敛速度反而下降,常用的多点杂交有两点杂交和均匀杂交。两点杂交就是在染色体中随机选取两点,然后交换两点中的一段基因链。均匀杂交是从父母染色体中以一定概率(0.5)随机选取等位基因而构成两个子代染色体。目前可以肯定的是这两种杂交都优于单点杂交。但均匀杂交与两点杂交孰优孰劣尚无定论。,自适应选
15、择杂交和突变概率(Adaptive GA简称AGA):Srinvivas等人提出一种使杂交概率Pc和突变概率Pm随适应度自动改变的改进方法。当种群各个体适应度趋于一致或趋于局部最优时,使Pc和Pm增加,反之亦然。其中Pc、Pm的表达式如下:(8.8)(8.9)0k1,k2,k3,k4 1(8.10)max为当前种群最大适应度,f为待杂交父母个体中较大的适应度,为某个体适应度。经测试,该方法效果显著。,杂交位置的非等概率选取一般而言,对染色体各位置进行等概率杂交会导致优化变量在等优化空间中产生不等概率的变化量,因此为了使得杂交子代个体对应的优化变量在寻优空间中均匀分布,章柯和刘贵忠提出杂交位置非
16、等概率选取的交叉操作方法。在产生后代的过程中选用不同方法 稳态GA(Steady State GA,简称SSGA)SGA在换代时总是由子代个体全部代替父代个体,而子代个体适应度不可能总是超过父代,这样父代中有较高适应度的个体无法保留下来,从而进化时会产生振荡。SSGA 是通过父代和子代适应度排序,固定种群大小,保留适应度最高的部分个体组成新的子代,从而使整个种群表现出稳态进化的趋势。,最优保存SGA(Optimum Maintaining SGA简称OMSGA):与SSGA相类似的OMSGA,它是Grefenstette提出的最优个体保存策略(Elitist strategy)。它的基本思想是
17、把所发现的父代最优解保存下来。为了保持种群规模不变,父代最优个体将取代子代中的最差个体,这样以前的最优解不至于丧失。逼近因子模型(Crowding Factor Model):这是由De Jong提出的,他规定当一个新个体产生时,必须有一个老个体死亡。这个老个体是从整个随机产生的含有逼近因子(CF)个体的子集中产生。它是这个子集中与新个体逐位相比最相似的个体。这种相似性常用Hamming距离表示。一般取CF2或3,这种CF模型有利于种群避免早熟,对多极值函数优化和机器学习很有用。,3)种群评价和最优个体的选择 在运用SGA处理群体时,对于某些不利于优化的现象,有必要调整个体间的竞争水平,以期得
18、到最好的运算结果。在运行GA的初期,个体差异较大,在大部分适应度较差的个体中,可能遇到少数特别好的个体。当采用经典的比例选择规则时,即“适应度大的多复制,适应度小的被淘汰,适应度中等的保持不变”的原则,容易使个别好的个体的后代充斥整个种群,导致运算过早收敛(即早熟)。而在SGA运行的后期,虽然存在着个体的多样性,但群体的平均适应度接近最佳适应度,优秀的个体在产生后代时,优势不明显从而使整个种群进化停滞不前,因此适当地调整适应度是必要的。,模拟退火规则:Stoffa借鉴模拟退火思想提出了如下式所示的计算适应度的公式:(8.11)TTo(0.99g-1)(8.12)式中fi是第i个个体适应度,M为
19、种群个体总数,g为遗传代数序号,T为温度,To为初始温度。这样在高温时(即GA前期),适应度相近的个体产生后代的概率相近,而当温度不断下降后,适应度相近的个体适应度差异放大,从而使优秀的个体优势更明显。,线性变换规则设f为原适应度,f为变换后适应度,则线性变换的关系式为:(8.13)式中a、b为系数。式(8.13)必须满足以下两个条件:(8.14)(8.15)式(8.14)表示变换后的平均适应度须等于原平均适应度,以保证每一个具有平均适应度个体,在下一代中得以等量复制;式(8.15)表示变换后的最大适应度等于原平均适应度的c倍,c为群体中最佳个体预期得到的复制数。一般对于不太大的群体(5010
20、0),c1.22.0,它控制着原适应度最大的个体的复制数目。,根据式(8.1315)可写出:(8.16)(8.17)解得:(8.18)(8.19),图8.2 适应度缩小的线性转换,图8.3 适应度放大的线性转换,由图8.2和8.3可见,经线性转换后,在GA运行初期,优秀个体的适应度被缩小;而在GA运行的后期优秀个体的适应度被放大。但是当一些个体的适应度远小于fav和fmax,而fav和fmax又比较接近时,用线性转换法把fav和fmax拉开会导致原适应度低的转换后为负值。为了保证适应度非负,需由下式求解a和b,即由:(8.20)得:(8.21),4)中止条件的选择及收敛性目标函数:许多实际问题
21、中,所期望的是非负。因此,需要把目标函数转换成求最大值问题且函数值非负的适应度函数。对于GA,把目标函数乘以-1的做法不能保证适应度非负,一般采用下式进行转换:(8.22)式中Cmax可以是进化过程中所得到的最大值,也可以是当前密码串集中的最大值,或者是一个输入常数;g(X)为进化过程中某串的适应度。中止条件:1)固定遗传代数;2)前后几代个体平均适应度的差或方差小于某个极小阈值。,GA全局收敛性Rudolph用齐次有限马尔科夫链证明了SGA收敛不到全局最优解;Eiben等人用马尔科夫链证明了OMSGA(Optimum Maintaining SGA)的概率性全局收敛;Fogel通过马尔科夫链
22、证明无论如何初始化、选取何种遗传算子和目标函数,SGA都不可能收敛到解空间中的某一点,只要采用SSGA(Steady State GA)或OMSGA便可达到全局收敛;恽为民等人应用齐次有限马尔科夫链也证明了SGA不是全局收敛,指出OMSGA是全局收敛的。,传统的优化算法大致可分为以下几类:解析法、数值计算法、枚举法、随机搜索法。(1)解析法:根据目标函数与约束函数的变化规律,藉助于数学分析求出一组含有导数的方程或不等式最优解的必要条件,最后利用充分条件或其它方法从中确定最优解。要求有明确且连续可微的目标函数,这对于现实的优化领域中大量的不连续体系不适用。即使导数存在,当问题中诸函数为复杂的非线
23、性函数时,求解导数为零的方程组十分困难。对于多峰函数,根据梯度信息求取优化解的的解析法很可能陷入局部最优解。,8.2.2 遗传算法的特点,(2)数值计算法:从某个事先给定的初始估计值出发,按照某种规则,以适当的步长沿着目标函数所改进的方向前进,逐步向目标函数的最优化点逼近,直至满足所需精度为止。它不需要优化问题的解析表达式,只需要计算函数值,或者实验过程中逐步产生的函数值。但当变量数较大时,因解空间大,该法计算量大,以致难以收敛或无法胜任。(3)穷举法:在一个连续的离散搜索空间内,计算每一个点的目标函数,再加以比较。该方法简单易行,但效率太低,许多实际问题所对应的搜索空间都很大,难以逐一比较。
24、(4)随机搜索法:比数值计算法和穷举法有所改进,但盲目性大,效率仍然不高。只有在搜索空间形成紧密分布时,才可能具有高的搜索效率。,GA具有如下几个方面的优越性:1.全局最优性。GA是从一群初始解点开始搜索,所用的初始点是在解空间中随机选取。它不是从单一的初始点开始,然后进行点对点(由当前解点移到另一个解点)搜索,而是同时对搜索空间中多个点进行搜索。此外,GA采用的是概率转换规则,而不是确定性转换规则,这种不确定的随机转换规则使其朝着搜索空间更优化的区域移动,从而大大提高了搜索效率及找到全局最优解的可能性。2.并行性。GA的群体、随机搜索特征使得GA具有并行搜索的能力,非常适合于大规模并行分布处
25、理系统。,3.很强的鲁棒性。GA在搜索过程中只使用适应度函数值作为搜索的依据,不需要梯度信息及其它辅助信息。它摆脱了对数学模型的依赖,不受函数连续可微与否的约束,因而,它能够解决任何形式的非线性问题。4.可扩展性。GA易于和别的技术如神经网络、模糊推理、混沌行为和人工生命等相结合,形成性能更优的问题求解方法。5.GA使用简单,适应性强。易于被写成一个通用的算法去求解许多不同的优化问题。,8.3 GA的基本理论,8.3.1 模式(schema)理论J.H.Holland等人提出。模式:编码空间(即所使用染色体的全体)中具有相同构型(configuration)编码的子集。相同构型:该子集中各编码
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 遗传 算法 及其 生物 反应
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-6611845.html