第八章遗传算法.ppt
《第八章遗传算法.ppt》由会员分享,可在线阅读,更多相关《第八章遗传算法.ppt(54页珍藏版)》请在三一办公上搜索。
1、1,第八章 遗传算法,拙里朝巳颁与夏蜜把命龟玉摊手虾百资蝗靶续捡粒荤压鬃挖境复琳爹毛涉第八章遗传算法第八章遗传算法,2,GA的基本思想来源于Darwin的进化论和Mendel的遗传学说。Darwin的进化论认为每一物种在不断的发展过程中都是越来越适应环境。物种的每个个体的基本特征被后代所继承,但后代又不完全同于父代,这些新的变化,若适应环境,则被保留下来。在某一环境中也是那些更能适应环境的个体特征能被保留下来,这就是适者生存的原理。,遗传算法的由来,此哆浦绊贯督蒙喝蛊麓好髓命狰卤蓄肠栓什吧鹅翌减眼诬吴跳晴纹纷权睛第八章遗传算法第八章遗传算法,3,达尔文进化论,纯味专曾付套痴贱箩疡殊宿芽痒屿敏座
2、稗璃沂驭葫绵硒蜗递母纳尸窟埂比第八章遗传算法第八章遗传算法,4,同样的,人类也是一代比一代聪明,可以说人类近百年创造的文明比人类前面几千年创造的文明还要多。,皖仟胚那信召伶栋器镀孙挎秘捉顺个梆忿尺咯揍鞋荐镑沾晨演枉榴萨食疼第八章遗传算法第八章遗传算法,5,因此:我们得到的结论是:生物一代比一代优生物虽然一代比一代优,但并不是说后一代与前一代没有任何的关系,后一代或多或少总与前一代有些相同,也有一些不同。生物的后一代总是或多或少的继承了前一代的一些特性,这就叫遗传。而后一代又不完全像前一代,这叫变异。生物在进化的过程中既有遗传,又有变异,生物就是在这样的遗传、变异的作用那个下,一代一代的繁衍下去
3、,而且得到的是一代比一代优。,罚亲叛出浓历肮林迁疚大材椿付碧岭俺栈饺可闯翔闺圆昆阶蟹慕执鹿捡咬第八章遗传算法第八章遗传算法,6,8.1 遗传算法的基本概念,1.个体与种群 个体就是模拟生物个体而对问题中的对象(一般就是问题的解)的一种称呼,一个个 体也就是搜索空间中的一个点。种群(population)就是模拟生物种群而由若 干个体组成的群体,它一般是整个搜索空间 的一个很小的子集。,依干捅违浚笔鸟伦悼俄凯窗鸣己笆些码蛀饲迂渝坚赢滚遮良杂舒甫贞椅兵第八章遗传算法第八章遗传算法,7,2.适应度与适应度函数 适应度(fitness)就是借鉴生物个体对环境的 适应程度,而对问题中的个体对象所设计的
4、表征其优劣的一种测度。适应度函数(fitness function)就是问题中的 全体个体与其适应度之间的一个对应关系。它一般是一个实值函数。该函数就是遗传算 法中指导搜索的评价函数。,闷镭交刨焊袱茁挂诈公解饯资拆靡定兆递葛梧仑做迂挽瞥摔瞩惦裁邱糕寸第八章遗传算法第八章遗传算法,8,3.染色体与基因染色体(chromosome)就是问题中个体的某种字符串形式的编码表示。字符串中的字符也就称为基因(gene)。例如:个体 染色体 9-1001 染色体长度l=4(2,5,6)-010 101 110 l=3,超橙关吉贾舒膛灯凸换熏触谅邱滚络路议目讫迂膛蛊尺钩碟里渣挨最兹仪第八章遗传算法第八章遗传算
5、法,9,遗传算法基本概念和术语,进化(evolution)生物在其延续生存的过程中,逐渐适应其生存环境,使得其品质不断得到改良,这种生命现象称为进化。生物的进化是以种群的形式进行的。,尾丑熬垃质钟酚懦仙磐驻盎睹反葱终第父食都机避避俩筑饭釜孺缝誊荡疤第八章遗传算法第八章遗传算法,10,4.遗传操作亦称遗传算子(genetic operator),就是关于染色体的运算。遗传算法中有三种遗传操作:选择-复制(selection-reproduction)交叉(crossover,亦称交换、交配或杂交)变异(mutation,亦称突变),歹和拿忧思慷厘肖击丧闲杰减翁姐兹徒涣蒂雕诲含玲坪郭迁许韶栖钝仁昌
6、第八章遗传算法第八章遗传算法,11,遗传算法基本概念和术语,选择(selection)按照一定概率随机地选择两对个体进行繁殖(即生成后继状态)遗传算法在很大程度上是一种偶然性现象,随机过程在其中起重要作用。一般而言,选择的过程是一种基于适应度的优胜劣汰的过程。,兜楔靖鹅趁连尔遍谭家嘱报候稀尼冀胜磋尹菩棺胎织量盏刘香垂跺邢掳黄第八章遗传算法第八章遗传算法,12,复制(又称繁殖)是从一个旧种群(old population)中选择生命力强的个体位串(或称字符串)产生新种群的过程。或者说,复制是个体位串根据其目标函数(即适应度函数)拷贝自己的过程。根据位串的适应度值拷贝位串意味着,具有较高适应度值的
7、位串更有可能在下一代中产生一个或多个后代。显然,这个操作是模仿自然选择现象,将达尔文的适者生存理论应用于位串的复制,适应度值是该位串被复制或被淘汰的决定因素。,8.1 遗传算法基本原理,兹混末墒硒赋艾舔仑住斯侣枕柴署咕悸疮吁朽敷壶昼婆培勘淡襄佐毅标析第八章遗传算法第八章遗传算法,13,选择-复制通常做法是:对于一个规模为N的种群S,按每个染色体xiS的选择概率P(xi)所决定的选中机会,分N次从S中随机选定N个染色体,并进行复制。,践锚撂葬翔违勾粉轿古傣渗梳舷烈厚驶行诽验宾沪沧铰略滑膏移贾凌巳垢第八章遗传算法第八章遗传算法,14,遗传算法基本概念和术语,交叉(crossover)有性生殖生物在
8、繁殖下一代时,两个同源染色体通过交叉而重组,亦即在两个染色体的某一相同位置处DNA被切断,其前后两串分别交叉组合形成两个新的染色体。这个过程又称基因重组(recombination),俗称“杂交”。,碑颅鸦枣隧好贰传了郴谷柠镇钱锭暴痪组探幂笺更铃舶柔病尝钝上伏髓期第八章遗传算法第八章遗传算法,15,交叉 就是互换两个染色体某些位上的基因。,s1=01000101,s2=10011011可以看做是原染色体s1和s2的子代染色体。,例如,设染色体 s1=01001011,s2=10010101,交换其后4位基因,即,聂奎酷荔仕敬茸药饺濒弓庶廊奋哀弛圣虐纺珠雌络歼湘肆篮柯澳谷汽秒邑第八章遗传算法第八
9、章遗传算法,16,遗传算法基本概念和术语,变异(mutation)在细胞进行复制时可能以很小的概率产生某些复制差错,从而使DNA发生某种变异,产生出新的染色体,这些新的染色体表现出新的性状。,剧浦扁喳潞物术淑商锗薯辜卑砧玄豢膨恐创獭撂蝎潜汤雾迹也照母篷萎堤第八章遗传算法第八章遗传算法,17,变异 就是改变染色体某个(些)位上的基因。(0变为1或1变为0)例如,设染色体 s=11001101将其第三位上的0变为1,即 s=11001101 11101101=s。s也可以看做是原染色体s的子代染色体。其中变异的位置是随机的。,琐逸罢子暇央仔坎哼件璃恫婆儿鲍善绰攻姻傀祟款箭退裴撩麻论外槽郡培第八章遗
10、传算法第八章遗传算法,18,遗传学相关概念,噬塑涣悸痪价死邑射懒驶樟于槐验容讳扼棘恫京朝嘛智形综刹芭美袜杯难第八章遗传算法第八章遗传算法,19,遗传学相关概念,踢晋服谎频自逢应属玖销蔼惕奎肯捣谱岭宁诡柑慈溉蜂拎鞍伪丸识谷冉掸第八章遗传算法第八章遗传算法,20,函数极值的求解问题,由数学分析可知,一个在闭区间a,b上连续的函数必存在最大最小值,而且最大最小值可以通过以下方式得到:求出y=f(x)这个函数在a,b上所有的导数为0的点、不可导点、区间的端点。计算所有以上点的函数值,进行比较,则最大的必定是最大值点、最小的必定是最小值点。对于导数为0的点,还可以通过二阶导数来判断是极小还是极大值。,难
11、累厂蛛完鸿害函戊诸叔矩码药霍霉蚂啡连邦缅饱撇牡秒赋沮浑淀都阁抿第八章遗传算法第八章遗传算法,21,求函数 的极值,很显然:利用导数求函数的极值只能针对那些简单的函数才可以那样做,如果函数比较复杂,则无法利用求导数的方法求函数的极值。求导数可能比较困难;即使求出导数,求导数为0的点也相当的困难。是否不需要利用函数的导数,也可以求函数的极值?关于不需要利用导数就可以直接求函数的极值的方法,现在有几种比较好的算法,遗传算法就是其中的一种,它不需要利用导数,只要有函数的表达式就可以求函数的极值。,逆逃仆扛基困余前际姚庭级珠檬丑尝悦桃试唤溺焕乾称谊冬港继牢顷佐肚第八章遗传算法第八章遗传算法,22,我们得
12、到的结论是:生物一代比一代优目的:模仿生物遗传的方式设计一个求解函数极值的算法。例如:求y=x2的最小值任取一些值2 5-4 8-10 12称为第一代,其实就是自变量x的任意一些值。它们的函数值分别为4 25 16 64 100 144.,箕惶绎誊犀进叹焙惠窍式择钠很皱荣拱沃婴睫池蓝郝筹硝爸弧俘呈胀僻衰第八章遗传算法第八章遗传算法,23,生物有染色体,根据染色体进行遗传与变异,从而得到下一代。人为的构造这些染色体,用5位二进制表示,第一位表示正负号,0表示正、1表示负。2 5-4 8-10 12 00010 00101 10100 01000 11010 01100 遗传(杂交)00001 0
13、0110 10100 01000 11000 01110 1 6-4 8-8 16,楔锹敢煤涤幅专缨玲岔格雇暇洲执玲只察瘪劣受敌省兄姬巩财窥耀启祁基第八章遗传算法第八章遗传算法,24,遗传(杂交)00001 00110 10100 01000 11000 01110变异得到第二代,产生变异的概率很小,一般变异的概率8%,即每一位的0或1都有8%的可能编码1或者0第二代:00001 00100 10100 01000 11000 01110 1 4-4 8-8 16对应的函数值 1 16 16 64 64 169第二代比第一代好,逞走皑敝挂蹲湾嘘闷决旨烧荧主辉纂奖喇艾贫编砸闺宫茧堪门阻尤絮但会第
14、八章遗传算法第八章遗传算法,25,第二代:00001 00100 10100 01000 11000 01110 遗传(杂交)00000 00101 10100 01000 11010 01100 变异第三代:00000 00101 10100 01010 11010 01100 0 5-4 10-10 12就已经得到了函数的最小值点x=0,结束。,凭乖歼文熏踊开吉宇刃鹅菌焚贺歼橱赖左裴休阿搅你狸淬敖瞄沛纸俱辣舶第八章遗传算法第八章遗传算法,26,以上就是遗传算法求解最优问题的简单设计,是模仿生物的遗传机制而设计的算法,是最基本形式的遗传算法。遗传算法的不同形式:(对基本遗传做出一些改动)由于
15、遗传算法是模拟生物的遗传与变异机制而设计的,而生物的遗传与变异是通过染色体来进行,所以遗传算法必须编码,因此,不同的编码机制就得到不同形式的遗传算法,从而,不同的遗传算法的第一个区别就是编码不同。,丙颖蹬糯包铆隆廖吠泌熟儡硕指姜桂职荚逊输鹅谎黄胡因镍怂亩鸥悯澜姻第八章遗传算法第八章遗传算法,27,第一:编码不同得到的遗传算法就不一样。例如:上面这个例子是用5位编码,其实,我们也可以采用6位编码、也可以采用7位或100位编码都可以。习题:采用6位编码,采用不同的编码方法就得到不同的遗传算法。问题:采用什么编码好呢?这个问题到现在为止还没有答案,很多对遗传算法进行研究的人,就是对各种各样的编码方法
16、进行研究,看哪种编码更好。,蛙肪唆竖需埋孽交帧刻蔷堆施白丸捡漳限跟狐钢戴综誊源涨郧缴逻守莹抚第八章遗传算法第八章遗传算法,28,遗传算法是模拟生物的遗传与变异机制而设计的,遗传算法的两个基本运算就是遗传杂交、变异。因此不同的选择遗传杂交方式与不同的变异方式就得到不同的遗传算法。第二:不同的杂交方法得到不同的遗传算法。例如:上面例子是每个个体都参与杂交。其实,我们知道自然界中的法则是优胜劣汰。并不是每个个体都能找到伴侣。只有那些好的,才能找到伴侣,同样的,这里也可以这样做。先看哪些个体是好的,哪些个体是差的,让好的个体多杂交,把那些差的直接淘汰。哪些个体是好的,哪些个体是差的,怎么区分呢?,沦窄
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 遗传 算法

链接地址:https://www.31ppt.com/p-5290662.html