第八章 进化策略和进化规划ppt课件_第1页
第八章 进化策略和进化规划ppt课件_第2页
第八章 进化策略和进化规划ppt课件_第3页
第八章 进化策略和进化规划ppt课件_第4页
第八章 进化策略和进化规划ppt课件_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、进化战略和进化规划德国学者Schwefel和Rechenburg美国学者Fogel分别提出进化战略ES和进化规划EP。这三种方法具有共同的本质,分别强调了自然进化中的不同方面:遗传算法强调染色体的操作,进化战略强调了个体级的行为变化。而进化规划那么强调种群级上的行为变化。如今学术界把遗传算法GA、进化战略ES和进化规划EP通称为进化算法EC。8.1 进化算法的早期研讨进化算法来源于20世纪30年代的经过仿真生物进化过程进展机器学习的研讨。早在1932年,Cannon就把自然进化想象为一个学习过程。与自然进化过程的机制和结果略微不同是,Cannon不是经过维持一个特定的种群来进展搜索,而是对单个

2、个体反复进展随机实验。到了1950年,Turng认识到,在机器学习和进化之间存在着明显的关系。1959年,Friedman推测,利用变异和选择的仿真可以设计“思想机器,并且指出下棋的程序可以用这种方法设计。在1960年,Cambell猜测:在导致知识扩张的一切过程中,都要涉及“盲目变化选择幸存的过程。以后,一些学者逐渐将进化实际用于随机工程控制、机器学习和函数优化等领域。8.2 进化战略进化战略Evolutionary Strategies是在1965年由Rechenburg和Schwefel独立提出的。早期的进化战略的种群中只包含一个个体,并且只运用变异操作。在每一代中,变异后的个体与其父代

3、进展比较,并选择较好的一个,这种选择战略被称为1+1战略。进化战略中的个体用传统的十进制实型数表示,即:Xt第t代个体的数值,N(0,)服从正态分布的随机数,其均值为零,规范差为。8.2 进化战略进化战略的普通算法可以描画如下:问题为寻觅实值n维矢量x,使得函数F(x):RnR取极值。不失普通性,设此程序为极小化过程。从各维的可行范围内随机选取亲本xi,i1,p的初始值。初始实验的分布普通是均匀分布。经过对于x的每个分量添加零均值和预先选定的规范差的高斯随机变量,从每个亲本xi产生子代xi。经过将误差F(xi)和F(xi),i1,p进展排序,选择并决议哪些矢量保管。具有最小误差的p个矢量变成下

4、一代的新亲本。进展新实验,选择具有最小方差的新子代,不断到获得充分解,或者直到满足某个终止条件8.2 进化战略在这个模型中,把实验解的分量看做个体的行为特性,而不是沿染色体陈列的基因。可以和GA一样,假设这些表现型特征具有基因根源,但是它们之间的联络本质并没有被弄清楚,所以我们把着重点放在个体的行为特性上。假设不论发生什么遗传变换,所呵斥各个行为的变化均遵照零均值和某个规范差的高斯分布。由于基因多效性和多基因性,特定基因的改动可以影响许多表现型特征。所以在发明新子代时,较为适宜的是同时改动亲本一切分量。8.2 进化战略进化战略的最初实验采用上述算法,主要采用单亲本单子代的搜索,即“1+1进化战

5、略(1+1)-ES),其中单个子代是由单个亲本产生的,它们都被置于生存竞争中,较弱的一个要被挑选出来消去。当把这种算法用于函数优化时,发现它有两个缺陷:各维取定常的规范差使得程序收敛到最优解的速度很慢;点到点搜索的脆弱本质使得程序在部分极值附近容易受停滞的影响虽然此算法阐明可以渐近地收敛到全局最优点。8.2 进化战略( + 1)-ES:早期的(1十1)-ES,没有表达群体的作用,只是单个个体在进化,具有明显的局限性。随后,Rechenberg又提出(+1)-ES,在这种进化战略中,父代有个个体(1),并且引入重组(Recombination)算子,使父代个体组合出新的个体。在执行重组时,从个父

6、代个体中用随机的方法任选两个个体:8.2 进化战略然后从这两个个体中组合出如下新个体:式中qi1或2,它以一样的概率针对i1,2,n随机选取。对重组产生的新个体执行突变操作,突变方式及的调整与(1+1)-ES一样。将突变后的个体与父代个个体相比较,假设优于父代最差个体,那么替代后者成为下一代个个体新成员,否那么,重新执行重组和突变产生另一新个体,8.2 进化战略(+1)-ES和(1+1)-ES具有一样的战略:只产生一个新个体。(+1)-ES的特点在于: (1) 采用群体,其中包含个个体; (2) 增添重组算子,它相当于遗传算法中的交叉算子,从父代承继信息构成新个体。显然,(+1)-ES比(1+

7、1)-ES有了明显的改良,为进化战略这种新的进化算法奠定良好的根底。8.2 进化战略在1973年,Rechenburg把该算法的期望收敛速度定义为对最优点的平均间隔与要得到此改善所需求的实验次数之比。1981年,Schwefel在进化战略中运用多重亲本和子代,这是Rechenburg早期任务运用多重亲本,但是仅运用单个子代的开展,后来调查了两种方法,分别表示为(+)-ES相(,)-ES。在前者中,个亲本制造个子代,一切解均参与生存竞争,选出最好的个作为下一代的亲本。在后者中,只需 个子代参与生存竞争,在每代中个亲本被完全取代。这就是说,对于每一代,每个解张成的生命是有限的。添加种群大小,就在固

8、定数目的世代中添加了优化速率。8.2 进化战略Rechenburg引入了如下想法,在每个新样本的特征分布中附加了一个自顺应参数。在这个方法中,每个解矢量不仅包括了n维实验矢量x,而且还包括了扰动矢量,后者给出如何变异x以及它本身如何变异的指令。例如,设x为当前矢量, 为对应于x每个维的方差矢量,于是新的解矢量x, 可以这样产生:N(0,1)表示单个规范高所随机变量, Ni(0,1)表示第i个独立一样的规范高斯分布,和是影响总体和个体步长的算子集参数。以这种方式,进化战略可以在线地顺应误差曲面的宽度,并且更恰当地分配实验次数。进化战略的根本技术问题的表达:为了与突变操作相顺应,进化战略有两种表达

9、方式。(1) 二元表达方式。这种表达方式中个体由目的变量X和规范差两部分组成,每部分又可以有n个分量,即:X和的关系为:为全局系数,常取1。进化战略的根本技术(2) 三元表达方式。为了改善进化战略的收敛速度,Schwefel在二元表达的根底上引入第三个因子坐标旋转角度。个体的描画扩展为(X, , ),即:三者的关系为:i父代个体i分量与j分量间坐标的旋转角度;j子代新个体i分量与j分量间坐标的旋转角度;系数,常取0.0873;zi取决于及的正态分布随机数。进化战略的根本技术旋转角度i外表上是分量i与j间坐标的旋转角度,本质上它是分量i与分量j之间协方差的表达。重组进化战略中的重组(Recomb

10、ination)算子相当于遗传算法的交叉,它们都是以两个父代个体为根底进展信息交换。进化战略中,重组方式主要有三种:(1)离散重组。先随机选择两个父代个体进化战略的根本技术然后将其分量进展随机交换,构成子代新个体的各个分量,从而得出如下新个体:(2) 中值重组。这种重组方式也是先随机选择两个父代个体,然后将父代个体各分量的平均值作为子代新个体的分量,构成的新个体为:这时,新个体的各个分量兼容两个父代个体信息,而在离散重组中那么只含有某一个父代个体的因子。进化战略的根本技术(3)混杂(Panmictic)重组。这种重组方式的特点在于父代个体的选择上。混杂重组时先随机选择一个固定的父代个体,然后针

11、对子代个体每个分量再从父代群体中随机选择第二个父代个体。也就是说,第二个父代个体是经常变化的。至于父代两个个体的组合方式,既可以采用离散方式,也可以来用中值方式,甚至可以把中值重组中的1/2改为0,1之间的任一权值。研讨阐明,进化战略采用重组后,明显添加算法的收敛速度。Schwefel建议,对于目的变量X宜用离散重组,对于战略因子及宜用中值重组或混杂中值重组。进化战略的根本技术选择:进化战略的选择有两种:一为(+)选择,另一为(, )选择。(+)选择是从个父代个体及个子代新个体中确定性地择优选出个个体组成下一代新群体。(, )选择是从个子代新个体中确定性地择优桃选个个体(要求)组成下一代群体,

12、每个个体只存活一代,随即被新个体顶替。粗略地看,似乎(+)选择最好,它可以保证最优个体存活,使群体的进化过程呈单调上升趋势。但是,深化分析后发现(+)选择具有下述缺陷:进化战略的根本技术(1) (+)选择保管旧个体,它有时会是过时的可行解,妨碍算法向最优方向开展。(,)选择全部舍弃旧个体,使算法一直重新的根底上全方位进化。(2) (+)选择保管旧个体,有时是部分最优解,从而误导进化战略收敛于次优解而不是最优解。(,)选择舍弃旧的优良个体,容易进化至全局员优解。(3) (+)选择在保管旧个体的同时,也将进化参数保管下来,不利于进化战略中的自顺应调整机制。(,)选择那么恰恰相反,可促进这种自顺应调

13、整。 实际也证明,(, )-ES优于(+)-ES,前者已成为当前进化战略的主流。进化战略的根本技术在(+)-ES中,为了控制群体的多样性和选择的力度,比值/是一个重要参数,它对算法的收敛速度有很大影响。一方面, 不能太小,否那么群体太单调(例如1的极端情况);另一方面, 也不能太大,否那么计算任务量过大。通常, 取15或更多一些。 数值的大小,类似于的作用,也要适当。某些研讨阐明比值/宜取1/7左右。也就是说,假设=15,那么宜取100。8.3 进化规划进化规划(Evolutionary Programming)由Fogel在20世纪60年代所提出。Fogel将仿真进化方法用于由相互竞争的算法

14、所构成的种群,在一系列研讨中探求了进化规划的能够性,目的是开展人工智能。Fogel以为,智能行为需求有如下的复合才干: (1)预告它的环境; (2)把预告变成对于给定目的的适当呼应。8.3 进化规划规范进化规划进化规划用传统的十进制实数表达问题。在规范进化规划Standard EP中,个体的表达方式为:式中:xi旧个体目的变量X的第i个分量, xi新个体目的变量X的第i个分量, f(X)旧个体X的顺应度; N(0, 1)针对第i分量发生的随机数,它服从规范正态分布。8.3 进化规划上式阐明,新个体是在旧个体的根底上添加一个随机数,添加值的大小与个体的顺应度有关:顺应度大的个体添加值也大,反之亦

15、然。根据这种表达方式,进化规划首先产生个初始个体,这也就是突变。接着从个旧个体及个新个体(2 个个体)中根据顺应度挑选出个个体组成新群体。如此反复迭代,直至得到称心结果。应该指出,进化规划没有重组或交换这类算子,它的进化主要依赖突变。在规范进化规划中这种突变非常简单,它只需参照个体顺应度添加一个随机数。很明显,规范进化规划在进化过程中的自顺应调整功能主要依托顺应度f(X)来实现。8.3 进化规划Standard EP流程:生成初始群体;While Not-End Do突变;计算个体顺应度;选择;组成新群体End While8.3 进化规划元进化规划为了添加进化规划在进化过程中的自顺应调整功能,

16、人们在突变中添加方差的概念。类似于进化战略,在进化规划中个体的表达采用下述方式:式中:i旧个体第 i 分量的规范差; i新个体第 i 分量的规范差; N(0, 1)针对第i分量发生的随机数,它服从规范正态分布。8.3 进化规划从上式可以看出,新个体也是在旧个体的根底上添加一个随机数,该添加量取决于个体的方差,而方差在每次进化中又有自顺应调整。这种进化方式已成为进化规划的主要手段,因此在进化规划前冠以“元这个术语以表示它为根本方法。元进化规划(Meta EP)的突变虽然类似于进化战略,但是它们有下述差别:(1)执行顺序不同。进化规划中首先计算新个体的目的变量xi ,计算中沿用旧个体的规范差i ;

17、其次才计算新个体的规范差i ,新的规范差留待下次进化时才用。与之相反,进化战略是先调整规范差,然后再用新的规范差去更改个体的目的变量X。(2)计算式的不同。进化规划的计算式比进化战略的计算式简单。8.3 进化规划旋转进化规划旋转进化规划(Rmeta EP)进一步扩展进化规划,在表达个体时添加第三个因子协方差,用三元组表示个体,即(X, , ),详细计算如下:X旧个体的目的变量,其内含n个分量;X新个体的目的变量,其内含n个分量;N(0,C)服从正态分布的随机数,其数学期望为0、其规范差与协方差有关;j相关系数,进化规划的根本技术表达方法采用十进制的实型数表达问题。X=(x1, x2, , xi

18、, , xn)由X和组成的二元组(X, )是进化规划最常用的表达方式。有人建议将进化规划再添加一个控制因子 ,构成三元表达式(X, , ),其中 =(1, 2, , j, , n)j是相关系数的单下标表达, 它表示xi和xj 之间的协方差:进化规划的根本技术产生初始群体进化规划中产生初始群体的方法类似于进化战略中随机选择个个体作为进化计算的出发点。计算顺应度进化规划采用十进制实数表达问题,计算顺应度比较简单直观。突变突变是进化规划产生新群体的独一方法,它不采用重组或交换算子。进化规划的根本技术选择在进化规划中,新群体的个体数目等于旧群体的个体数目,选择便是在2 个个体中选择个个体组成新群体。进

19、化规划的选择采用随机型的q竞争选择法。在这种选择方法中,为了确定某一个体 i 的优劣,我们重新、旧群体的2 个个体中任选q个个体组成测试群体。然后将个体 i 的顺应度与q个个体的顺应度进展比较,记录个体 i 优于或等于q内各个体的次数,得到个体 i 的得分Wi,即进化规划的根本技术上述得分测试分别对2个个体进展,每次铡试时重新选择q个个体组成新的测试群体。最后,按个体的得分选择分值高的个个体组成下一代新群体。q竞争选择法是一种随机选择,总体上讲,优良个体入选的能够性较大。但是由于测试群体q每次都是随机选择的,当q个个体都不甚好时,有能够使较差的个体因得分高而入选。这正是随机选择的本意。q竞争选

20、择法中q的大小是一个重要参数。假设q很大,极端地设q2,那么选择变为确定性选择。反之,假设q很小,那么选择的随机性太大,不能保证优良个体入选。通常q在10以上,可取0.9。进化规划的根本技术终止进化规划的终止准那么与进化战略一样,即根据最大进化代次、最优个体与期望值的偏向、顺应度的变化趋势以及最优顺应度与最差顺应度之差等四个判据。进化规划的根本技术进化规划的算法算法流程:(1)确定问题的表达方式。(2)随机产生初始群体,并计算其顺应度。(3)用下述操作产生新群体:1) 突变。对旧个体添加随机量,产生新个体2) 计算新个体顺应度;3) 选择。挑选优良个体组成新群体。(4)反复执行(3),直至满足

21、终止条件,选择最正确个体作为进化规划的最优解。遗传规划遗传算法的局限性:(1)不能描画层次化的问题。(2)不能描画计算机程序。(3)缺乏动态可变性。1992年、美国John R. Koza正式提出遗传规划(Genetic Programming),用层次化的构造性言语表达问题。遗传规划的最大特点,是采用层次化的构造表达问题,它类似于计算机程序分行或分段地描画问题。这种广义的计算机程序可以根据环境形状自动改动程序的构造及大小。遗传规划的任务步骤可归纳如下:(1)确定个体的表达方式,包括函数集F及终止符集T。(2)随机产生初始群体。(3)计算各个体的顺应度。(4)根据遗传参数,用下述操作产生新个体

22、:1)复制。将已有的优良个体复制,参与新群体中,并相应删除劣质个体2)交换。将选出的两个个体进展交换,所产生的两个新个体插入新群体中。3)突变。随机改动个体某一部分,将新个体插入新群体中。(5)反复执行(3)及(4)直至获得称心结果。遗传规划的根本技术问题的表达遗传规划是用层次构造可变的方式表达问题,在表达中主要用函数和终止符两类组分。简单地说,终止符表示问题的值,函数表示对值的处置。综合在一同,遗传规划的个体表示对各种值(终止符)的处置过程(函数)。 在函数集Ff1, f2, , fn中,函数fi可以是运算符、函数、阐明等,详细有:(1) 算术运算符,如+, -, *, /等。其中除号为防止计算机溢出,规定不允许用零作分母,称维护性除法(Protected Division),用标志。一旦遇到分母为零时,最简单的处置方法是令其商为1、或是重新选择算术运算符。遗传规划的根本技术(2)超越函数,如sin, cos, tan, log, exp等。其中log要防止处置小于或等于零的数值,称维护性对数,记为Rlog其处置方法类似于。(3)布尔运算符,如AND、OR或NOT等。(4)条件表达式,如If-then-else, Switch-Case等。(5)循环表达式如Do-until, while-do, For-do等。(6

温馨提示

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

评论

0/150

提交评论