第二章--遗传算法的基本原理课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第二章--遗传算法的基本原理课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 _ 遗传 算法 基本原理 课件
- 资源描述:
-
1、第二章第二章 遗传算法的基本原理遗传算法的基本原理 2.1 遗传算法的基本描述遗传算法的基本描述 2.2 遗传算法的模式理论遗传算法的模式理论2.3 遗传算法与其他搜索算法的比较遗传算法与其他搜索算法的比较2.1 遗传算法的基本描述遗传算法的基本描述2.1.1 全局优化问题全局优化问题 全局优化问题的定义:全局优化问题的定义:给定非空集合给定非空集合S作为搜索空间,作为搜索空间,f:SR为目为目标函数,全局优化问题作为任务标函数,全局优化问题作为任务 给出,即在搜索空间中给出,即在搜索空间中找到至少一个使目标函数最大化的点。找到至少一个使目标函数最大化的点。全局最大值(点)的定义:全局最大值(
2、点)的定义:函数值函数值 称为一个全局称为一个全局最大值,当且仅当最大值,当且仅当 成立时,成立时,被称被称为一个全局最大值点(全局最大解)。为一个全局最大值点(全局最大解)。局部极大值与局部极大值点(解)的定义:局部极大值与局部极大值点(解)的定义:假设在假设在S上给定了某个距上给定了某个距离度量离度量 ,如果对,如果对 ,使得对,使得对 ,则称则称x为一个局部极大值点,为一个局部极大值点,f(x)为一个局部极大值。当目标函数有多个局部极大点时,被为一个局部极大值。当目标函数有多个局部极大点时,被称为多峰或多模态函数(称为多峰或多模态函数(multi-modality function)。)
3、。)(maxxfSx)(*xff)()(*xfxfSxSx*Sx 0Sx)()(),(xfxfxx 2.1.1 标准遗传算法流程:标准遗传算法流程:1编码编码 2初始群体的生成初始群体的生成 3适应度评估检测适应度评估检测 4WHILE DO 1.选择选择 2.交叉交叉 3.变异变异 4.适应度评估检测适应度评估检测 5END DO 2.1 遗传算法的基本描述遗传算法的基本描述选择选择交叉交叉当前代当前代中间代中间代下一代下一代2.1 遗传算法的基本描述遗传算法的基本描述2.1.3 遗传编码遗传编码定义定义:由问题空间向由问题空间向GA编码空间的映射称为编码空间的映射称为编码编码,而由,而由编
4、码空间向问题空间的映射成为编码空间向问题空间的映射成为译码译码。问题编码一般应满足以下三个原则:问题编码一般应满足以下三个原则:1)完备性完备性(completeness):问题空间中的所有点都能):问题空间中的所有点都能能成为能成为GA编码空间中的点的表现型编码空间中的点的表现型2)健全性健全性(soundness):):GA编码空间中的染色体位串编码空间中的染色体位串必须对应问题空间中的某一潜在解。必须对应问题空间中的某一潜在解。3)非冗余性非冗余性(non-redundancy):染色体和潜在解必须):染色体和潜在解必须一一对应。一一对应。2.1 遗传算法的基本描述遗传算法的基本描述2.
5、1.3 遗传编码遗传编码根据模式定理,根据模式定理,De Jong进一步提出了较为客观明确的进一步提出了较为客观明确的编码评估准则,称之为编码评估准则,称之为编码原理编码原理。具体可以概括为两。具体可以概括为两条规则:条规则:1)有意义积木块编码规则:有意义积木块编码规则:编码应易于生成与所求问题编码应易于生成与所求问题相关的短距和低阶的积木块。相关的短距和低阶的积木块。2)最小字符集编码规则:最小字符集编码规则:编码应采用最小字符集,以使编码应采用最小字符集,以使问题得到自然、简单的表示和描述。问题得到自然、简单的表示和描述。2.1 遗传算法的基本描述遗传算法的基本描述1二进制编码二进制编码
6、1)连续实函数的二进制编码)连续实函数的二进制编码设一维连续实函数设一维连续实函数 采用长度维采用长度维L的二进制字符串进的二进制字符串进行定长编码,建立位串空间:行定长编码,建立位串空间:k=1,2,K;l=1,2,L;K=2L表示精度为表示精度为 。将个体又从位串空间转换到问题空间的译码函数将个体又从位串空间转换到问题空间的译码函数的公式定义为:的公式定义为:,),(vuxxfKLxxxS,21),(21kLkkkaaax 1,0kla)12/()(Luvx,1,0:vuL)2(12),(121LjjLkjLkLkkkauvuaaax2.1 遗传算法的基本描述遗传算法的基本描述对于对于n维
7、连续函数维连续函数 ,各维变量的二进制编码位串的长度为各维变量的二进制编码位串的长度为li,那么那么x的编码从左到右依次构的编码从左到右依次构成总长度为成总长度为 的二进制编码位串。相应的的二进制编码位串。相应的GA编码空间为:编码空间为:,K=2L该空间上的个体位串结构为该空间上的个体位串结构为对于给定的二进制编码位串对于给定的二进制编码位串sk,位段译码函数的形式为位段译码函数的形式为,i=1,2,n),2,1(,),(),(21nivuxxxxxxfiiinniilL1,21KLxxxS1,0),(2121222211121121iklnklnknkiklikikklkkklkkkaaa
8、aaaaaaaaaaxninklnknkiklikikklkkklkkkniaaaaaaaaaaaax2121222211121121)2(12),(121iiiiljjlikjliiiiklikikiiauvuaaax2.1 遗传算法的基本描述遗传算法的基本描述2其他编码其他编码1)大字符集编码(相对于二进制编码)大字符集编码(相对于二进制编码)2)序列编码(序列编码(TSP)3)实数编码实数编码4)树编码树编码5)自适应编码自适应编码6)乱序编码乱序编码 2.1 遗传算法的基本描述遗传算法的基本描述2.1.4 群体设定群体设定 1。初始群体的设定。初始群体的设定一般来讲,初始群体的设定可以
9、采用如下的策略:一般来讲,初始群体的设定可以采用如下的策略:1)根据问题固有知识,设法把握最优解所占空间在整个根据问题固有知识,设法把握最优解所占空间在整个问题空间中的分布范围,然后,在此分布范围内设定问题空间中的分布范围,然后,在此分布范围内设定初始群体。初始群体。2)先随机生成一定数目的个体,然后从中挑出最好的个先随机生成一定数目的个体,然后从中挑出最好的个体加入到初始群体中。这一过程不断重复,直到初始体加入到初始群体中。这一过程不断重复,直到初始群体中个体数达到了预定的规模。群体中个体数达到了预定的规模。2.1 遗传算法的基本描述遗传算法的基本描述2.1.4 群体设定群体设定 2。群体规
10、模的设定。群体规模的设定 根据模式定理,若群体规模为根据模式定理,若群体规模为M,则遗传操作可则遗传操作可从这从这M个个体中生成和检测个个体中生成和检测O(M3)个模式,并在此个模式,并在此基础上不断形成和优化积木块,直到找到最优解。基础上不断形成和优化积木块,直到找到最优解。群体规模群体规模N N,模式阶模式阶i i,被采样的模式数量的期望被采样的模式数量的期望M Mi i(i=1,2,)(i=1,2,)之间满足如下关系:之间满足如下关系:群体规模一般不随迭代而变化,但也不绝对。群体规模一般不随迭代而变化,但也不绝对。iiNM22.1 遗传算法的基本描述遗传算法的基本描述2.1.5 适应度函
11、数(评价函数)适应度函数(评价函数)1。目标函数映射成适应度函数。目标函数映射成适应度函数 2。适应度函数定标。适应度函数定标 1)线性定标线性定标(linear scaling)f=af+b2)截断截断(sigma truncation)3)乘幂标乘幂标f=fK4)指数定标指数定标f=exp(-bf)(cfff2.1 遗传算法的基本描述遗传算法的基本描述2.1.6 遗传算子遗传算子 包括三个基本遗传算子(包括三个基本遗传算子(genetic operator):):选择选择,交叉交叉和和变异变异。这三个遗传算子具有一些特点:这三个遗传算子具有一些特点:(1)这三个算子的操作都是随机化操作,因
12、此,群体中个体向最优)这三个算子的操作都是随机化操作,因此,群体中个体向最优解迁移的规则是随机的。需要强调的是,这种随机化操作和传解迁移的规则是随机的。需要强调的是,这种随机化操作和传统的随机搜索方法是有区别的。遗传操作进行的是高效有向的统的随机搜索方法是有区别的。遗传操作进行的是高效有向的搜索,而不是如一般随机搜索方法所进行的无向搜索。搜索,而不是如一般随机搜索方法所进行的无向搜索。(2)遗传操作的效果和所取的操作概率、编码方法、群体大小,以)遗传操作的效果和所取的操作概率、编码方法、群体大小,以及适应度函数的设定密切相关。及适应度函数的设定密切相关。(3)三个基本算子的操作方法和操作策略随
13、具体求解问题的不同而三个基本算子的操作方法和操作策略随具体求解问题的不同而异。或者说,是和个体的编码方式直接相关。异。或者说,是和个体的编码方式直接相关。2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 从群体中选择优胜个体,淘汰劣质个体的操作叫从群体中选择优胜个体,淘汰劣质个体的操作叫选择选择。选择算子有时又称为选择算子有时又称为再生算子再生算子(reproduction operator)。选择即从当前群体中选择适应度值高的个)。选择即从当前群体中选择适应度值高的个体以生成体以生成配对池配对池(mating pool)的过程。)的过程。2.1.6 遗传算子遗传算子
14、一、选择一、选择(selection)算子算子 1、适应度比例选择、适应度比例选择首先计算每个个体的适应度值,然后计算出此适应度值在群体适首先计算每个个体的适应度值,然后计算出此适应度值在群体适应度值总和中所占的比例,表示该个体在选择过程中被选中的概应度值总和中所占的比例,表示该个体在选择过程中被选中的概率。选择过程体现了生物进化过程中率。选择过程体现了生物进化过程中“适者生存,优胜劣汰适者生存,优胜劣汰”的的思想。思想。对于给定的规模为对于给定的规模为n的群体的群体 ,个体,个体 的适应的适应度值为度值为 ,其选择概率为:,其选择概率为:问题:易出现未成熟收敛问题:易出现未成熟收敛,21na
15、aaPPaj)(jafnjafafapniijjs,2,1,)()()(12.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 2、Boltzmann选择选择在群体进化过程中,不同阶段需要不同地选择压力。在群体进化过程中,不同阶段需要不同地选择压力。早期阶段选早期阶段选择压力较小择压力较小,我们希望较差地个体也又一定地生存机会,使得群,我们希望较差地个体也又一定地生存机会,使得群体保持较高地多样性;体保持较高地多样性;后期阶段,选择压力较大后期阶段,选择压力较大,我们希望,我们希望GA缩缩小搜索邻域,加快当前最优解的改善速度。为了动态调整群体进小搜索邻域,加快当前最优解的
16、改善速度。为了动态调整群体进化过程中的选择压力,化过程中的选择压力,Goldberg设计了设计了Boltzmann选择方法。个体选择方法。个体选择概率为:选择概率为:njeeapniTafTafjsij,2,1,)(1/)(/)(2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 3、排序选择、排序选择 排序选择方法是将群体中个体按其适应度值由大到小的顺序排成排序选择方法是将群体中个体按其适应度值由大到小的顺序排成一个序列,然后将事先设计好的序列概率分配给每个个体。一个序列,然后将事先设计好的序列概率分配给每个个体。排序选择不利用个体适应度值绝对值的信息,可以避免群体进
17、化排序选择不利用个体适应度值绝对值的信息,可以避免群体进化过程中的适应度标度变换。过程中的适应度标度变换。2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 3、排序选择、排序选择 对于给定的规模为对于给定的规模为n n的群体的群体 ,并且满足个体适应,并且满足个体适应度值降序排列度值降序排列 。假设当前群体最佳个体。假设当前群体最佳个体a a1 1在选择操作后的期望数量为在选择操作后的期望数量为 ,即,即;最差个体;最差个体a an n在选择在选择操作后的期望数量为操作后的期望数量为 。其它个体的期望数量按等差序。其它个体的期望数量按等差序列计算列计算,则,则 ,故现
18、在排序选择概率为故现在排序选择概率为 ,21naaaP)()()(21nafafaf1pnnpn11njj)1(1)()1(jnjjnjjnnapjs,2,1),1(1)(1)(2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 4、联赛选择、联赛选择(tournament selection)基本思想:基本思想:从当前群体中随机选择一定数量的个体(放回或者不从当前群体中随机选择一定数量的个体(放回或者不放回),将其中适应值最大的个体放入配对池中。反复执行这一放回),将其中适应值最大的个体放入配对池中。反复执行这一过程,直到配对池中的个体数量达到设定的值。过程,直到配对
19、池中的个体数量达到设定的值。联赛规模用联赛规模用q q表示,也称表示,也称q q-联赛选择。联赛选择。联赛选择与个体的适应度值由间接关系,注重适应度值大小的比联赛选择与个体的适应度值由间接关系,注重适应度值大小的比较。较。联赛规模一般取联赛规模一般取q q=2=2。2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 5、精英选择、精英选择 如果下一代群体的最佳个体适应度值小于当前群体最佳个体的适如果下一代群体的最佳个体适应度值小于当前群体最佳个体的适应度值,则将当前群体最佳个体或者适应度值大于下一代最佳个应度值,则将当前群体最佳个体或者适应度值大于下一代最佳个体适应度值
20、的多个个体直接复制到下一代,随机替代和替代最差体适应度值的多个个体直接复制到下一代,随机替代和替代最差的下一代群体中的相应数量的个体。的下一代群体中的相应数量的个体。精英选择是群体收敛到全局最优解的一种基本保障。精英选择是群体收敛到全局最优解的一种基本保障。2.1.6 遗传算子遗传算子一、选择一、选择(selection)算子算子 6、稳态选择、稳态选择 稳态选择操作中,稳态选择操作中,仅有少量个体仅有少量个体按适应度值比例选择方法被选择,按适应度值比例选择方法被选择,通过遗传操作生成新的个体。新个体放回到群体中时,随机替代通过遗传操作生成新的个体。新个体放回到群体中时,随机替代等量的旧个体,
21、或者替代等量的最差的旧个体。等量的旧个体,或者替代等量的最差的旧个体。Holland将稳态选择方法应用于分类器规则学习中,最大程度继承将稳态选择方法应用于分类器规则学习中,最大程度继承已获得的规则,实现增量学习。已获得的规则,实现增量学习。De Jong将下一代群体中生成的与上一代不同的新个体所占的比例将下一代群体中生成的与上一代不同的新个体所占的比例称为称为“代沟代沟”(generation gap)。)。代沟越大,说明新个体的生成代沟越大,说明新个体的生成比例越高,群体搜索新的编码空间的能力(探索)越强。比例越高,群体搜索新的编码空间的能力(探索)越强。2.1.6 遗传算子遗传算子二、交叉
22、二、交叉(CrossoverCrossover)算子算子 交叉算子是模仿自然界有性繁殖的基因重组过程,其作用在于将交叉算子是模仿自然界有性繁殖的基因重组过程,其作用在于将已有的优良基因遗传给下一代个体,并生成包含更复杂基因结构已有的优良基因遗传给下一代个体,并生成包含更复杂基因结构的新个体。的新个体。交叉操作一般分为以下几个步骤:交叉操作一般分为以下几个步骤:1)从配对池中随机取出要交配的一对个体;)从配对池中随机取出要交配的一对个体;2)根据位串长度)根据位串长度L,对要交叉的一对个体,随机选取对要交叉的一对个体,随机选取1,L-1中一中一个或多个整数个或多个整数k作为交叉位置;作为交叉位置
23、;3)根据交叉概率实施交叉操作,配对个体在交叉位置处,相互交)根据交叉概率实施交叉操作,配对个体在交叉位置处,相互交换各自的部分内容,从而形成新的一对个体。换各自的部分内容,从而形成新的一对个体。2.1.6 遗传算子遗传算子二、交叉二、交叉(CrossoverCrossover)算子算子 1、一点交叉、一点交叉(one-point crossover)位串位串A:1 1 0 1|1 0 1 0位串位串B:1 0 1 1|0 1 0 1位串位串A:1 1 0 1|0 1 0 1位串位串B:1 0 1 1|1 0 1 0 2.1.6 遗传算子遗传算子二、交叉二、交叉(CrossoverCrosso
24、ver)算子算子 1、两点交叉、两点交叉(twotwo-point crossover)位串位串A:1 1|0 1 1|0 1 0位串位串B:1 0|1 1 0|1 0 1位串位串A:1 1|1 1 0|0 1 0位串位串B:1 0|0 1 1|1 0 1 2.1.6 遗传算子遗传算子二、交叉二、交叉(CrossoverCrossover)算子算子 1、多点交叉、多点交叉(multimulti-point crossover)位串位串A:1 1|0 1|1 0|1 0位串位串B:1 0|1 1|0 1|0 1位串位串A:1 1|1 1|1 0|0 1位串位串B:1 0|0 1|0 1|1 02
25、.1.6 遗传算子遗传算子二、交叉二、交叉(CrossoverCrossover)算子算子 1、一致交叉、一致交叉一致交叉即染色体位串上的每一位按相同概率进行随机均匀交叉。一致交叉即染色体位串上的每一位按相同概率进行随机均匀交叉。一致交叉算子生成的新个体位:一致交叉算子生成的新个体位:操作描述如下:操作描述如下:,x是取值为是取值为0,1上符合均匀分布的随机变量。上符合均匀分布的随机变量。Laaas112111Laaas222212),(xpOc2/1,2/1,211xaxaaiii2/1,2/1,122xaxaaiii2.1.6 遗传算子遗传算子三、变异三、变异(MutationMutati
展开阅读全文