第八章 遗传算法优秀课件.ppt
《第八章 遗传算法优秀课件.ppt》由会员分享,可在线阅读,更多相关《第八章 遗传算法优秀课件.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第1页,本讲稿共54页 GA的基本思想来源于Darwin的进化论和Mendel的遗传学说。Darwin的进化论认为每一物种在不断的发展过程中都是越来越适应环境。物种的每个个体的基本特征被后代所继承,但后代又不完全同于父代,这些新的变化,若适应环境,则被保留下来。在某一环境中也是那些更能适应环境的个体特征能被保留下来,这就是适者生存的原理。p遗传算法的由来2第2页,本讲稿共54页达尔文进化论3第3页,本讲稿共54页同样的,人类也是一代比一代聪明,可以说人类近百年创造的文明比人类前面几千年创造的文明还要多。4第4页,本讲稿共54页因此:我们得到的结论是:生物一代比一代优p生物虽然一代比一代优,但
2、并不是说后一代与前一代没有任何的关系,后一代或多或少总与前一代有些相同,也有一些不同。p生物的后一代总是或多或少的继承了前一代的一些特性,这就叫遗传。而后一代又不完全像前一代,这叫变异。p生物在进化的过程中既有遗传,又有变异,生物就是在这样的遗传、变异的作用那个下,一代一代的繁衍下去,而且得到的是一代比一代优。5第5页,本讲稿共54页8.1 遗传算法的基本概念遗传算法的基本概念 1.1.个体与种群个体与种群 个体就是模拟生物个体而对问题中的对象 (一般就是问题的解)的一种称呼,一个个 体也就是搜索空间中的一个点。种群(population)就是模拟生物种群而由若 干个体组成的群体,它一般是整个
3、搜索空间 的一个很小的子集。6第6页,本讲稿共54页 2.2.适应度与适应度函数适应度与适应度函数 适应度(fitness)就是借鉴生物个体对环境的 适应程度,而对问题中的个体对象所设计的 表征其优劣的一种测度。适应度函数(fitness function)就是问题中的 全体个体与其适应度之间的一个对应关系。它一般是一个实值函数。该函数就是遗传算 法中指导搜索的评价函数。7第7页,本讲稿共54页3.3.染色体与基因染色体与基因染色体(chromosome)就是问题中个体的某种字符串形式的编码表示。字符串中的字符也就称为基因(gene)。例如:个体 染色体 9 -1001 染色体长度l=4 (2
4、,5,6)-010 101 110 l=38第8页,本讲稿共54页遗传算法基本概念和术语遗传算法基本概念和术语l进化(evolution)生物在其延续生存的过程中,逐渐适应其生存环境,使得其品质不断得到改良,这种生命现象称为进化。生物的进化是以种群的形式进行的。9第9页,本讲稿共54页4.4.遗传操作遗传操作亦称遗传算子(genetic operator),就是关于染色体的运算。遗传算法中有三种遗传操作:选择-复制(selection-reproduction)交叉(crossover,亦称交换、交配或杂交)变异(mutation,亦称突变)10第10页,本讲稿共54页遗传算法基本概念和术语遗
5、传算法基本概念和术语l选择(选择(selectionselection)按照一定概率随机地选择两对个体进行繁殖(即生成后继状态)遗传算法在很大程度上是一种偶然性现象,随机过程在其中起重要作用。一般而言,选择的过程是一种基于适应度的优胜劣汰的过程。11第11页,本讲稿共54页l复制(又称繁殖)是从一个旧种群(old population)中选择生命力强的个体位串(或称字符串)产生新种群的过程。或者说,复制是个体位串根据其目标函数(即适应度函数)拷贝自己的过程。根据位串的适应度值拷贝位串意味着,具有较高适应度值的位串更有可能在下一代中产生一个或多个后代。显然,这个操作是模仿自然选择现象,将达尔文的
6、适者生存理论应用于位串的复制,适应度值是该位串被复制或被淘汰的决定因素。8.1 遗传算法基本原理遗传算法基本原理12第12页,本讲稿共54页选择-复制通常做法是:对于一个规模为N的种群S,按每个染色体xiS的选择概率P(xi)所决定的选中机会,分N次从S中随机选定N个染色体,并进行复制。这里的选择概率P(xi)的计算公式为13第13页,本讲稿共54页遗传算法基本概念和术语遗传算法基本概念和术语l交叉(交叉(crossovercrossover)有性生殖生物在繁殖下一代时,两个同源染色体通过交叉而重组,亦即在两个染色体的某一相同位置处DNA被切断,其前后两串分别交叉组合形成两个新的染色体。这个过
7、程又称基因重组(recombination),俗称“杂交”。14第14页,本讲稿共54页交叉 就是互换两个染色体某些位上的基因。s1=01000101,s2=10011011可以看做是原染色体s1和s2的子代染色体。例如,设染色体 s1=01001011,s2=10010101,交换其后4位基因,即15第15页,本讲稿共54页遗传算法基本概念和术语遗传算法基本概念和术语l变异(变异(mutation)在细胞进行复制时可能以很小的概率产生某些复制差错,从而使DNA发生某种变异,产生出新的染色体,这些新的染色体表现出新的性状。16第16页,本讲稿共54页l变异变异 就是改变染色体某个(些)位上的基
8、因。(0变为变为1或或1变为变为0)例如,设染色体 s=11001101将其第三位上的0变为1,即 s=11001101 11101101=s。s也可以看做是原染色体s的子代染色体。其中变异的位置是随机的。其中变异的位置是随机的。17第17页,本讲稿共54页遗传学相关概念遗传学相关概念 遗传学遗传算法数学1个体要处理的基本对象、结构也就是可行解2群体个体的集合被选定的一组可行解3染色体个体的表现形式可行解的编码4基因染色体中的元素编码中的元素5基因位某一基因在染色体中的位置元素在编码中的位置6适应值个体对于环境的适应程度,或在环境压力下的生存能力可行解所对应的适应函数值7种群被选定的一组染色体
9、或个体根据入选概率定出的一组可行解8选择从群体中选择优胜的个体,淘汰劣质个体的操作保留或复制适应值大的可行解,去掉小的可行解18第18页,本讲稿共54页遗传学相关概念遗传学相关概念 遗传学遗传算法数学9交叉一组染色体上对应基因段的交换根据交叉原则产生的一组新解10交叉概率染色体对应基因段交换的概率(可能性大小)闭区间0,1上的一个值,一般为0.650.9011变异染色体水平上基因变化编码的某些元素被改变12变异概率染色体上基因变化的概率(可能性大小)开区间(0,1)内的一个值,一般为0.0010.0113进化、适者生存个体进行优胜劣汰的进化,一代又一代地优化目标函数取到最大值,最优的可行解19
10、第19页,本讲稿共54页函数极值的求解问题由由数学分析数学分析可知,一个在闭区间可知,一个在闭区间a,b上连续的函数必上连续的函数必存在最大最小值,而且最大最小值可以通过以下方式得到:存在最大最小值,而且最大最小值可以通过以下方式得到:求出求出y=f(x)这个函数在)这个函数在a,b上所有的导数为上所有的导数为0的点、不可导点、的点、不可导点、区间的端点。区间的端点。计算所有以上点的函数值,进行比较,则最大的必定是最大值点、计算所有以上点的函数值,进行比较,则最大的必定是最大值点、最小的必定是最小值点。最小的必定是最小值点。对于导数为对于导数为0的点,还可以通过二阶导数来判断是极小还是的点,还
11、可以通过二阶导数来判断是极小还是极大值。极大值。20第20页,本讲稿共54页求函数 的极值很显然:利用导数求函数的极值只能针对那些简单的函数很显然:利用导数求函数的极值只能针对那些简单的函数才可以那样做,如果函数比较复杂,则无法利用求导数的才可以那样做,如果函数比较复杂,则无法利用求导数的方法求函数的极值。方法求函数的极值。求导数可能比较困难;求导数可能比较困难;即使求出导数,求导数为即使求出导数,求导数为0的点也相当的困难。的点也相当的困难。是否不需要利用函数的导数,也可以求函数的极值?是否不需要利用函数的导数,也可以求函数的极值?关于不需要利用导数就可以直接求函数的极值的方法,现关于不需要
12、利用导数就可以直接求函数的极值的方法,现在有几种比较好的算法,在有几种比较好的算法,遗传算法遗传算法就是其中的一种,它不就是其中的一种,它不需要利用导数,只要有函数的表达式就可以求函数的极值。需要利用导数,只要有函数的表达式就可以求函数的极值。21第21页,本讲稿共54页我们得到的结论是:生物一代比一代优目的:模仿生物遗传的方式设计一个求解函数极值的算法。例如:求y=x2的最小值1.任取一些值2 5 -4 8 -10 12称为第一代,其实就是自变量x的任意一些值。它们的函数值分别为4 25 16 64 100 144.22第22页,本讲稿共54页生物有染色体,根据染色体进行遗传与变异,从而得到
13、下生物有染色体,根据染色体进行遗传与变异,从而得到下一代。一代。2.人为的构造这些染色体,用人为的构造这些染色体,用5位二进制表示,第一位表示正负位二进制表示,第一位表示正负号,号,0表示正、表示正、1表示负。表示负。2 5 -4 8 -10 12 00010 00101 10100 01000 11010 01100 遗传(杂交)遗传(杂交)00001 00110 10100 01000 11000 01110 1 6 -4 8 -8 1623第23页,本讲稿共54页 遗传(杂交)遗传(杂交)00001 00110 10100 01000 11000 01110变异得到第二代,产生变异的概率
14、很小,一般变异的概率变异得到第二代,产生变异的概率很小,一般变异的概率8%,即每一位的,即每一位的0或或1都有都有8%的可能编码的可能编码1或者或者0第二代:第二代:00001 00100 10100 01000 11000 01110 1 4 -4 8 -8 16对应的函数值对应的函数值 1 16 16 64 64 169第二代比第一代好第二代比第一代好24第24页,本讲稿共54页第二代:第二代:00001 00100 10100 01000 11000 01110 遗传(杂交)遗传(杂交)00000 00101 10100 01000 11010 01100 变异变异第三代:第三代:000
15、00 00101 10100 01010 11010 01100 0 5 -4 10 -10 12就已经得到了函数的最小值点就已经得到了函数的最小值点x=0,结束。,结束。25第25页,本讲稿共54页以上就是遗传算法求解最优问题的简单设计,是模仿生物以上就是遗传算法求解最优问题的简单设计,是模仿生物的遗传机制而设计的算法,是最基本形式的遗传算法。的遗传机制而设计的算法,是最基本形式的遗传算法。遗传算法的不同形式:(对基本遗传做出一些改动)遗传算法的不同形式:(对基本遗传做出一些改动)由于遗传算法是模拟生物的遗传与变异机制而设计的,而生由于遗传算法是模拟生物的遗传与变异机制而设计的,而生物的遗传
16、与变异是通过染色体来进行,所以物的遗传与变异是通过染色体来进行,所以遗传算法必须编遗传算法必须编码码,因此,不同的编码机制就得到不同形式的遗传算法,从而,不,因此,不同的编码机制就得到不同形式的遗传算法,从而,不同的遗传算法的第一个区别就是编码不同。同的遗传算法的第一个区别就是编码不同。26第26页,本讲稿共54页第一:编码不同得到的遗传算法就不一样。例如:上面这个例子是用5位编码,其实,我们也可以采用6位编码、也可以采用7位或100位编码都可以。习题:采用6位编码采用不同的编码方法就得到不同的遗传算法。采用不同的编码方法就得到不同的遗传算法。问题:采用什么编码好呢?问题:采用什么编码好呢?这
17、个问题到现在为止还没有答案,很多对遗传算法进行这个问题到现在为止还没有答案,很多对遗传算法进行研究的人,就是对各种各样的编码方法进行研究,看哪研究的人,就是对各种各样的编码方法进行研究,看哪种编码更好。种编码更好。27第27页,本讲稿共54页 遗传算法是模拟生物的遗传算法是模拟生物的遗传与变异遗传与变异机制而设计的,遗传算法的两机制而设计的,遗传算法的两个基本运算就是遗传个基本运算就是遗传杂交、变异杂交、变异。因此不同的选择。因此不同的选择遗传杂交方遗传杂交方式式与不同的与不同的变异方式变异方式就得到不同的遗传算法。就得到不同的遗传算法。第二:不同的杂交方法得到不同的遗传算法。第二:不同的杂交
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八章 遗传算法优秀课件 第八 遗传 算法 优秀 课件
限制150内