工程应用软计算课件第3章遗传算法.ppt
《工程应用软计算课件第3章遗传算法.ppt》由会员分享,可在线阅读,更多相关《工程应用软计算课件第3章遗传算法.ppt(86页珍藏版)》请在三一办公上搜索。
1、遗传算法,理学院应用数学系,立体化教学资源系列工程应用软计算,工程应用软计算遗传算法,序言,3.1 遗传算法的生物学背景,3.2 遗传算法,3.3 遗传算法Matlab应用举例,3.4 遗传算法应用实例,工程应用软计算遗传算法,序言,遗传算法起源于对生物系统所进行的计算机模拟研究。它是借鉴生物学的自然选择和遗传机制,以种群搜索和种群中个体(染色体)之间的信息交换为策略的随机搜索优化算法。,一、遗传算法的发展,60年代后,美国密执安大学的Holland教授及其学生们受到这种启发,创造出基于生物遗传和进化机制的适合于复杂系统优化计算的自适应概率优化技术-遗传算法。下面列出关键人物及主要贡献。,20
2、世纪40年代,就有学者开始研究如何利用计算机进行生物模拟的技术。,工程应用软计算遗传算法,(1)60年代,Holland提出在研究和设计人工自适应系统时,可以借鉴生物遗传的机制,以群体的方法进行自适应搜索,并且充分认识到了交叉、变异等运算策略在自适应系统中的重要性。,70年代初,Holland提出了遗传算法的基本定理-模式定理,从而奠定了遗传算法的理论基础。,1975年,Holland出版了第一本系统论述遗传算法和人工自适应系统的专著自然系统和人工系统的自适应性(Adaptation in Natural and Artificial Systems),80年代,Holland 实现了第一个基
3、于遗传算法的机器学习系统-分类器系统(CS)。,工程应用软计算遗传算法,(2)1967年,Holland的学生Baglay在其博士论文中首次提出了“遗传算法”一词,并发表了第一篇应用论文。他发展了复制、交叉、变异、显性、倒位等遗传算子,使用了双倍体个体编码方法。这些都与目前的算子与方法相类似。创立了自适应遗传算法的概念。,(3)Jong 1975年De Jong在其博士论文中结合模式定理进行了大量的纯数值函数优化计算实验,树立了遗传算法的工作框架,得到了一些重要且具有指导意义的结论。,(4)。1989年,Goldberg出版了专著搜索、优化和机器学习中的遗传算法(Genetic Algorit
4、hms in Search,Optimization and Machine Learning)。奠定了现代遗传算法的科学基础。,工程应用软计算遗传算法,(5)L.Davis 1991年,Davis出版了遗传算法手册(Handbook of Genetic Algorithms),包含了在科学计算、工程技术和社会经济中的大量应用实例。本书为推广和普及遗传算法的应用起到了重要的指导作用。,(6)1992年,Koza将遗传算法应用于计算机程序的优化设计及自动生成,提出了遗传编程的概念GP(Genetic Programming)。成功地应用于人工智能、机器学习、符号处理等方面。,综观整个遗传算法的
5、发展历程,20世纪70年代是开始阶段,20世纪80年代是发展阶段,20世纪90年代是高潮阶段。,工程应用软计算遗传算法,二、遗传算法的应用,遗传算法提供了一种求解复杂系统优化问题的通用框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,所以广泛应用于很多学科。应用领域:,(1)函数优化。这是遗传算法的经典应用领域,也是对遗传算法进行性能评价的常用算例。利用几何特性各具特色的各类函数评价算法性能,更能反映算法的本质效果。而对于其它优化方法难于求解的非线性、多模型、多目标的函数优化问题,遗传算法可方便地得到较好的结果。,(2)组合优化。成功地用于求解旅行商问题、背包问题、装箱问题、图形划分
6、问题等组合优化NP完全问题。,工程应用软计算遗传算法,(3)生产调度问题。解决复杂调度问题:单件生产车间调度、流水线生产车间调度、生产规划、任务分配等方面。(4)自动控制。航空控制系统优化、参数辨识等。(5)图像处理。模式识别、图像恢复、图像边缘特征提取等方面。(6)机器人学。成功地用于移动机器人路径规划、关节机器人运动轨迹规划、细胞机器人的结构优化和行为协调等方面。(7)人工生命。用于进化模型、学习模型、行为模型、自组织模型等方面。(8)遗传编程。成功地用于人工智能、机器学习等。(9)机器学习。基于遗传算法的机器学习,特别是分类器系统,在很多领域中都得到了应用。,工程应用软计算遗传算法,3.
7、1 遗传算法的生物学背景,一、生物遗传与进化,从生物进化论和遗传学角度看,主宰地球生物演化的因素主要有两方面:,(1)生命物质自身具有的遗传与变异功能。,(2)自然界为生命存在方式提供的条件资源有限。,遗传能力使得物种得以延续,自然界的环境与资源限制会使生存能力弱的生物遭到淘汰;变异会使生物的生存能力产生差异,使生物进化或产生新的物种。,地球上的生物的发展与进化,是生命物质自身具有的功能与自然界相互作用的结果。,工程应用软计算遗传算法,二、DNA复制与生物的遗传,细胞是组成生命的最小单元,细胞通常由细胞膜、细胞质和细胞核三个部分组成。,其中,细胞核内的染色体中的DNA分子是生物体携带遗传信息的
8、基本物质。,DNA分子结构图:,工程应用软计算遗传算法,工程应用软计算遗传算法,DNA分子的主要功能:,(1)控制和指导各种蛋白质(包括各种酶)的合成。,(2)DNA本身的复制增生。,DNA的自我复制也为遗传密码复制,按照碱基互补配对原则,当生物体的一个母细胞有丝分裂成两个子细胞时,其中每个DNA分子也自体复制为两个一模一样的子分子分存于两个子细胞中。,基因:一个有特定遗传功能的DNA节段。,基因是控制生物遗传的物质单元,含成百上千的核苷酸,在染色体上的排列次序代表遗传密码信息。,工程应用软计算遗传算法,三、DNA重组与生物的进化,地球上的生物都是经过了长期的进化而形成的。,复制形成的遗传不可
9、能实现生物的进化。,较高等生物的体细胞中,染色体都是成对存在的,即染色体个数是双数,称为二倍体。,有性生殖生物的生殖细胞只含半数染色体-单倍体。,减数分裂:使得次级细胞由精细胞或卵原细胞分裂成生殖细胞(精子或卵)的过程。,(1)产生的细胞只得到半数染色体,即只获得每对基因中的一个;,(2)减数分裂中,每对染色体中的一个染色单体与它并排的同源染色体的一个染色单体发生交叉-差异;,工程应用软计算遗传算法,工程应用软计算遗传算法,(3)在减数分裂过程中出现染色体对间的随机组合,引起生殖细胞的多样性。,有性生殖物种内部大量的变异现象对于物种进化起了极其重要的作用。,减数分裂中,染色单体的交换和随机组合
10、是使生物生殖细胞发生变异的主要原因。,综上,生物在遗传过程中发生的变异(主要是基因重组、基因突变和染色体变异)与自然界生存条件的结合,导致了世界生物的进化。,基因的突变也是使生物得以变异进化的重要因素。,工程应用软计算遗传算法,工程应用软计算遗传算法,四、生物遗传与进化对组合优化问题的启发,组合优化问题可以用二元集(S,f)描述。其中S是解空间:由一切可能的解组成的有限集,f目标函数。,凸情况:目标函数在S上只有一个最小(或最大)值。非凸情况:目标函数在S上存在多个极值点。,即在S中找一个解,使目标函数值达最小(或最大)。,遗传算法的基本思想:模仿生物遗传进化的机制,将组合优化问题的一组可行解
11、视为染色体,该解对应的目标函数值视为生物种群的优劣。,复制可以使优异解得以保留,交换可行解中部分变元,或采用突变手段使部分变元置换,可以产生新的可行解。这种复制、交换、突变等操作,不断执行下去,逐渐会逼近全局最优解。,3.2 遗传算法,一、遗传算法的基本步骤,例:用遗传算法求二次函数最大值。,工程应用软计算遗传算法,工程应用软计算遗传算法,解:(1)编码,对于变量x,不妨限定其仅取031间的整数。,随机地产生几个初始值,假设得到4个点 00101,01100,10011,11101,组成初始群体,其数值分别为5,12,19,29。,工程应用软计算遗传算法,工程应用软计算遗传算法,(2)计算个体
12、适应度,【注】3号个体相对适应度最高,4号个体适应度最低。,按照生物进化的“自然选择,适者生存”原则,复制3号个体,删除4号个体。得新的群体 00101,01100,10011,10011,重新编为1,2,3,4号个体。,(3)遗传算子(复制、交换、突变)变换,a 复制:,选择1号和3号个体进行交换,2号和4号个体进行交换,每个个体对第3位以后的字符片段与其配对个体的相应字符进行交换。,工程应用软计算遗传算法,工程应用软计算遗传算法,b 交换:,交换前的旧个体 交换后的新个体,交换后个体适应度,工程应用软计算遗传算法,工程应用软计算遗传算法,c、突变,将1号个体字符串的最后1位进行突变,,(4
13、)运算终止准则判断,10000已为最优解。故原问题的最大值为 x=16。,1号:10001 10000,工程应用软计算遗传算法,工程应用软计算遗传算法,遗传算法的基本步骤:,步骤1 对研究的变量或对象进行编码(形成字符 串),并随机地建立一个初始群体。步骤2 计算群体中诸个体的适应度。步骤3 执行产生新群体的操作,包括:a 复制:将适应度高的个体进行复制后添入 到新群体中,删除适应度低的个体;b 交换:随机选出个体对,进行片段交叉换 位,产生新个体对;c 突变:随机改变某个体的某个字符,而得 到新个体。步骤4 根据某种条件判断计算过程是否可以结 束,如果不满足结束条件,则返回到步骤 2,直到满
14、足结束条件为止。,工程应用软计算遗传算法,工程应用软计算遗传算法,遗传算法是模仿生物遗传与进化过程而得到的一种随机优化方法,对非线性、多极值的寻优是一种有效方法。,遗传算法对问题的可行解编码,表示成“染色体”,随机产生的一群“染色体”组成初始种群。,由适应度构成优胜劣汰、适者生存的“自然环境”。,种群通过遗传、交换、突变等不断演化,产生出新的更加优良的种群。,经过若干代的进化,最终求得适合问题的最优解。,工程应用软计算遗传算法,工程应用软计算遗传算法,二、遗传算法的编码,编码是应用遗传算法中首先要解决的问题。是指将优化问题的可行解设计成字符串(视为染色体)的过程。,1、编码的主要方法,1)遗传
15、因子用0/1码表示。,2)实数编码(即字符串的每个位置都取实数)。,3)符号编码(一般用整数序号1,2,k表示的字符进行编码),利用二进制的0/1双字符编码具有一定优点,所以,除非受到某些问题限制,一般采用二进制编码。,工程应用软计算遗传算法,(1)数值型单变元,2、不同变元形式的二进制编码方法,如果变元的取值是整数,则用二进制数表示。例,整数1-31表示为00001-11111。串的长度即位数。,如果变元并非取整数,而且最小值不是零时,假设变元的取值为区间xmin,xmax,需离散化。,选取的2N个点分别为:,用N位二进制数表示:,工程应用软计算遗传算法,(2)开关型多变元,开关型变元:变元
16、的状态只取两种情况。例:性别。,例:选择服装。,【注】在开关型变元的编码中,字符串的长度即为优化问题中变元的个数。,有的优化问题中,变元尽管本质上并不是开关的,但为了研究的方便,也可将其简化为开关型变元。,取面料、价格和样式三个变元,均取0和1开关型。,面料状态用好、坏描述,价格状态用高、低描述,样式状态用流行、陈旧描述。,每个可行策略可用一个三位二进制数表示。,例如111,101,000,。,工程应用软计算遗传算法,(3)符号型变元,变元的状态只是一些事物名称,如职业变元的状态由公务员、教师、医生、律师、工人、农民等组成。,符号型单变元优化问题,与整数单变元问题具有相同性,即将变元的所有状态
17、(事物名称)与正整数建立起对应关系。然后将正整数用二进制表示,构成了对变元状态的0/1编码。,性别(2类)职业(7种)年龄(32岁以下),0 111 10000,1 101 11111,若有多个符号型变元,采用顺序分段的编码方式。,工程应用软计算遗传算法,在多元编码中,一个变元编码在字符串中所占据的位数对遗传操作中该变元的遗传性质有一定的影响。,起重要作用的变元占字符串中的位数要短些。,因为个体间的交叉换位及字符的突变都具有随机性,当某个变元在字符串中所占位数较少时,换位和突变对该变元已取得的状态破坏的可能性就较小。,一旦该变元已处于较佳状态时,该状态也就容易被遗传下来。反之,若变元状态所占位
18、数太大,也极容易在换位或突变中被破坏,好的性质也不易被遗传。,另外,为防止起重要作用的变元在遗传操作中遭到破坏,可以采用交叉编码方法。,工程应用软计算遗传算法,3、初始群体的产生,初始群体产生方式随机,也可人为给出。,如果计算个体的适应度时需花费代价较高,则数目不宜太大;若代价极小,则尽量取数目较大些。,初始群体个体数目由实际问题的性质决定,原则:,如果字符串长,则数目大些;反之,数目可小些。,所研究问题的因素(变元)多时,数目则大些,以保证每个变元都能在初始群体中出现不同的状态。,一般,群体中个体越多,越容易搜索到全局最优解。,遗传算法向全局最优解的逼近程度和逼近速度与初始群体中个体数目有关
19、,且与在S中的分布状态有关。,当无法使群体规模选得太大时,为提高初始种源的质量,应该使初始群体在S中尽量均匀的分布开。,适应度是描述群体中个体优劣的尺度,在优化问题中,适应度是可行解的目标函数值。,工程应用软计算遗传算法,1、无约束条件极值问题的适应度函数,设g(x)是无约束极值问题的目标函数,xX,X是所有可行解的集合,x是X上的n维向量。,三、个体的适应度,极值问题有最大值和最小值问题,同时目标函数g(x)既可以取正值,也可以取负值。规定:,个体y(字符串)对应的可行解x(实值向量或符号组)的适应度f(x)只能取正值;,f(x)值越大,表明相应个体y的性能越优。,工程应用软计算遗传算法,对
20、于可能产生负值的最大值问题,取适应度函数:f(x)=|m|+g(x),其中m=ming(x)|xX0,对于最小值问题,取适应度函数:f(x)=k-g(x)其中kmaxg(x)|xX。,2、有约束条件极值问题的适应度函数,有约束条件的极值问题:,取适应度函数为,其中为惩罚函数,为惩罚系数,取,工程应用软计算遗传算法,1、复制算子,遗传算子是遗传算法中对群体中个体所进行的操作,目的是通过这些操作得到新的个体。,遗传算法的基本算子,体现“适者生存”的自然选择原则,同时新一代群体与原来群体个体数相同。,四、遗传算子,最主要的三个算子是复制、交换和突变。,遗传算法采用随机抽样的方法来选择复制对象。,“适
21、者生存”:保证适应度高的个体被抽到的机会大于适应度低的个体。,轮盘选择法:采用一种轮盘方式来选择复制对象。满足适者生存原则的随机抽样方案-J.Holland,工程应用软计算遗传算法,轮盘选择法,设x1,x2,xn为给定的n个个体组成的一个群体,其中xi 是具有相同长度的0/1字符串。xi 的适应度值 f(xi)0。定义,称Pi 为个体xi 的生存概率。,若f(xi)f(xj),则PiPj。,取周长为1个单位长度的圆盘,按X的概率分布律将圆周分成n个区间。当转动轮盘停止后,箭头所指位置代表的个体被选中。,工程应用软计算遗传算法,实际操作中,通常采用与上述操作等价的方法:,设:,可以看出:,为选择
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程 应用 计算 课件 遗传 算法
链接地址:https://www.31ppt.com/p-5971209.html