工程应用软计算课件第3章遗传算法.ppt
《工程应用软计算课件第3章遗传算法.ppt》由会员分享,可在线阅读,更多相关《工程应用软计算课件第3章遗传算法.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章遗传算遗传算法法理学院应用数学系理学院应用数学系立体化教学资源系列立体化教学资源系列工程应用软计算工程应用软计算工程应用软计算工程应用软计算遗传算法遗传算法序言序言 3.1 遗传遗传算法的生物算法的生物学背景学背景 3.2 遗传遗传算法算法3.3 遗传遗传算法算法MatlabMatlab应应用用举举例例 3.4 遗传遗传算法算法应应用用实实例例 工程应用软计算工程应用软计算遗传算法遗传算法序言序言 遗传算法起源于对生物系统所进行的计算机模拟研遗传算法起源于对生物系统所进行的计算机模拟研究。它是借鉴生物学的自然选择和遗传机制,以种群究。它是借鉴生物学的自然选择和遗传机制,以种群搜索和
2、种群中个体(染色体)之间的信息交换为策略搜索和种群中个体(染色体)之间的信息交换为策略的随机搜索优化算法。的随机搜索优化算法。一、一、遗传遗传算法的发算法的发展展 6060年代后,美国密执安大学的年代后,美国密执安大学的HollandHolland教授及其学生教授及其学生们受到这种启发,创造出基于生物遗传和进化机制的们受到这种启发,创造出基于生物遗传和进化机制的适合于复杂系统优化计算的自适应概率优化技术适合于复杂系统优化计算的自适应概率优化技术-遗传遗传算法。下面列出关键人物及主要贡献。算法。下面列出关键人物及主要贡献。20 20世纪世纪4040年代,就有学者开始研究如何利用计算机年代,就有学
3、者开始研究如何利用计算机进行生物模拟的技术。进行生物模拟的技术。工程应用软计算工程应用软计算遗传算法遗传算法 (1 1)6060年代,年代,HollandHolland提出在研究和设计人工自适应系统提出在研究和设计人工自适应系统时,可以借鉴生物遗传的机制,以群体的方法进行自时,可以借鉴生物遗传的机制,以群体的方法进行自适应搜索,并且充分认识到了交叉、变异等运算策略适应搜索,并且充分认识到了交叉、变异等运算策略在自适应系统中的重要性。在自适应系统中的重要性。7070年代初,年代初,HollandHolland提出了遗传算法的基本定理提出了遗传算法的基本定理-模模式定理,从而奠定了遗传算法的理论基
4、础。式定理,从而奠定了遗传算法的理论基础。1975 1975年,年,HollandHolland出版了第一本系统论述遗传算法和出版了第一本系统论述遗传算法和人工自适应系统的专著人工自适应系统的专著自然系统和人工系统的自适自然系统和人工系统的自适应性应性(Adaptation in Natural and Artificial(Adaptation in Natural and Artificial Systems)Systems)80 80年代,年代,Holland Holland 实现了第一个基于遗传算法的机实现了第一个基于遗传算法的机器学习系统器学习系统-分类器系统(分类器系统(CSCS)
5、。)。工程应用软计算工程应用软计算遗传算法遗传算法 (2 2)1967 1967年,年,HollandHolland的学生的学生BaglayBaglay在其博士论文中首次在其博士论文中首次提出了提出了“遗传算法遗传算法”一词,并发表了第一篇应用论文。一词,并发表了第一篇应用论文。他发展了复制、交叉、变异、显性、倒位等遗传算子,他发展了复制、交叉、变异、显性、倒位等遗传算子,使用了双倍体个体编码方法。这些都与目前的算子与使用了双倍体个体编码方法。这些都与目前的算子与方法相类似。创立了自适应遗传算法的概念。方法相类似。创立了自适应遗传算法的概念。(3 3)Jong Jong 1975 1975年年
6、De JongDe Jong在其博士论文中结合模式定理进行了在其博士论文中结合模式定理进行了大量的纯数值函数优化计算实验,树立了遗传算法的大量的纯数值函数优化计算实验,树立了遗传算法的工作框架,得到了一些重要且具有指导意义的结论。工作框架,得到了一些重要且具有指导意义的结论。(4 4)。)。19891989年,年,GoldbergGoldberg出版了专著出版了专著搜索、优化搜索、优化和机器学习中的遗传算法(和机器学习中的遗传算法(Genetic Algorithms in Genetic Algorithms in Search,Optimization and Machine Learni
7、ngSearch,Optimization and Machine Learning)。奠定了现代遗传算法的科学基础。奠定了现代遗传算法的科学基础。工程应用软计算工程应用软计算遗传算法遗传算法 (5 5)L.DavisL.Davis 1991 1991年,年,DavisDavis出版了出版了遗传算法手册遗传算法手册(Handbook of(Handbook of Genetic Algorithms)Genetic Algorithms),包含了在科学计算、工程技,包含了在科学计算、工程技术和社会经济中的大量应用实例。本书为推广和普及术和社会经济中的大量应用实例。本书为推广和普及遗传算法的应用
8、起到了重要的指导作用。遗传算法的应用起到了重要的指导作用。(6 6)1992 1992年,年,KozaKoza将遗传算法应用于计算机程序的优化设将遗传算法应用于计算机程序的优化设计及自动生成,提出了遗传编程的概念计及自动生成,提出了遗传编程的概念GP(Genetic GP(Genetic Programming)Programming)。成功地应用于人工智能、机器学习、符。成功地应用于人工智能、机器学习、符号处理等方面。号处理等方面。综观整个遗传算法的发展历程,综观整个遗传算法的发展历程,2020世纪世纪7070年代是开年代是开始阶段,始阶段,2020世纪世纪8080年代是发展阶段,年代是发展
9、阶段,2020世纪世纪9090年代是年代是高潮阶段。高潮阶段。工程应用软计算工程应用软计算遗传算法遗传算法二、二、遗传遗传算法的应算法的应用用 遗传算法提供了一种求解复杂系统优化问题的通用遗传算法提供了一种求解复杂系统优化问题的通用框架,它不依赖于问题的具体领域,对问题的种类有框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,所以广泛应用于很多学科。应用领域:很强的鲁棒性,所以广泛应用于很多学科。应用领域:(1 1)函数优化。)函数优化。这是遗传算法的经典应用领域,也这是遗传算法的经典应用领域,也是对遗传算法进行性能评价的常用算例。利用几何特是对遗传算法进行性能评价的常用算例。利用几
10、何特性各具特色的各类函数评价算法性能,更能反映算法性各具特色的各类函数评价算法性能,更能反映算法的本质效果。而对于其它优化方法难于求解的非线性、的本质效果。而对于其它优化方法难于求解的非线性、多模型、多目标的函数优化问题,遗传算法可方便地多模型、多目标的函数优化问题,遗传算法可方便地得到较好的结果。得到较好的结果。(2 2)组合优化。)组合优化。成功地用于求解旅行商问题、背包成功地用于求解旅行商问题、背包问题、装箱问题、图形划分问题等组合优化问题、装箱问题、图形划分问题等组合优化NPNP完全问完全问题。题。工程应用软计算工程应用软计算遗传算法遗传算法 (3 3)生产调度问题。)生产调度问题。解
11、决复杂调度问题:单件生产解决复杂调度问题:单件生产车间调度、流水线生产车间调度、生产规划、任务分车间调度、流水线生产车间调度、生产规划、任务分配等方面。配等方面。(4 4)自动控制。)自动控制。航空控制系统优化、参数辨识等。航空控制系统优化、参数辨识等。(5 5)图像处理。)图像处理。模式识别、图像恢复、图像边缘特模式识别、图像恢复、图像边缘特征提取等方面。征提取等方面。(6 6)机器人学。)机器人学。成功地用于移动机器人路径规划、成功地用于移动机器人路径规划、关节机器人运动轨迹规划、细胞机器人的结构优化和关节机器人运动轨迹规划、细胞机器人的结构优化和行为协调等方面。行为协调等方面。(7 7)
12、人工生命。)人工生命。用于进化模型、学习模型、行为模用于进化模型、学习模型、行为模型、自组织模型等方面。型、自组织模型等方面。(8 8)遗传编程。)遗传编程。成功地用于人工智能、机器学习等。成功地用于人工智能、机器学习等。(9 9)机器学习。)机器学习。基于遗传算法的机器学习,特别是基于遗传算法的机器学习,特别是分类器系统,在很多领域中都得到了应用。分类器系统,在很多领域中都得到了应用。工程应用软计算工程应用软计算遗传算法遗传算法3.1 遗传遗传算法的生物算法的生物学背景学背景 一、一、生物遗传与生物遗传与进化进化 从生物进化论和遗传学角度看,主宰地球生物演化从生物进化论和遗传学角度看,主宰地
13、球生物演化的因素主要有两方面的因素主要有两方面:(1 1)生命物质自身具有的生命物质自身具有的遗传遗传与与变异变异功能。功能。(2 2)自然界为生命存在方式提供的条件)自然界为生命存在方式提供的条件资源有限资源有限。遗传遗传能力使得物种得以延续,自然界的环境与资源能力使得物种得以延续,自然界的环境与资源限制会使生存能力弱的生物遭到淘汰;限制会使生存能力弱的生物遭到淘汰;变异变异会使生物会使生物的生存能力产生差异,使生物进化或产生新的物种。的生存能力产生差异,使生物进化或产生新的物种。地球上的生物的发展与进化,是生命物质自身具有地球上的生物的发展与进化,是生命物质自身具有的功能与自然界的功能与自
14、然界相互作用的结果相互作用的结果。工程应用软计算工程应用软计算遗传算法遗传算法二、二、DNADNA复制与生复制与生物的遗传物的遗传 细胞是组成生命的最小单元,细胞通常由细胞膜、细胞是组成生命的最小单元,细胞通常由细胞膜、细胞质和细胞核三个部分组成。细胞质和细胞核三个部分组成。其中,细胞核内的染色体中的其中,细胞核内的染色体中的DNADNA分子是生物体携带分子是生物体携带遗传信息的基本物质。遗传信息的基本物质。DNA分子结构图分子结构图:工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法 DNA分子的主要分子的主要功能功能:(1 1)控制和指导各种蛋白质(包
15、括各种酶)的合成。)控制和指导各种蛋白质(包括各种酶)的合成。(2 2)DNADNA本身的复制增生。本身的复制增生。DNA的自我复制也为遗传密码复制,按照碱基互补配的自我复制也为遗传密码复制,按照碱基互补配对原则,当生物体的一个母细胞对原则,当生物体的一个母细胞有丝分裂有丝分裂成两个子细成两个子细胞时,其中每个胞时,其中每个DNA分子也自体复制为两个一模一样的分子也自体复制为两个一模一样的子分子分存于两个子细胞中。子分子分存于两个子细胞中。基因:基因:一个有特定遗传功能的一个有特定遗传功能的DNADNA节段。节段。基因是控制生物遗传的物质单元,基因是控制生物遗传的物质单元,含成百上千的核苷酸,
16、在染色体上含成百上千的核苷酸,在染色体上的排列次序代表遗传密码信息。的排列次序代表遗传密码信息。工程应用软计算工程应用软计算遗传算法遗传算法三三、DNADNA重组与重组与生物的进化生物的进化 地球上的生物都是经过了长期的进化而形成的。地球上的生物都是经过了长期的进化而形成的。复制形成的遗传不可能实现生物的进化复制形成的遗传不可能实现生物的进化。较高等生物的体细胞中,染色体都是成对存在的,较高等生物的体细胞中,染色体都是成对存在的,即染色体个数是双数,称为即染色体个数是双数,称为二倍体二倍体。有性生殖生物的生殖细胞只含半数染色体有性生殖生物的生殖细胞只含半数染色体-单倍体单倍体。减数分裂减数分裂
17、:使得次级细胞由精细胞或卵原细胞分裂:使得次级细胞由精细胞或卵原细胞分裂成生殖细胞(精子或卵)的过程。成生殖细胞(精子或卵)的过程。(1 1)产生的细胞只得到半数染色体,即只获得每对)产生的细胞只得到半数染色体,即只获得每对基因中的一个;基因中的一个;(2 2)减数分裂中)减数分裂中,每对染色体中的一个染色单体与每对染色体中的一个染色单体与它并排的同源染色体的一个染色单体发生交叉它并排的同源染色体的一个染色单体发生交叉-差异;差异;工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法 (3 3)在减数分裂过程中出现染色体对间的随机组合)在减数分裂过程中出现染
18、色体对间的随机组合,引起生殖细胞的多样性。引起生殖细胞的多样性。有性生殖物种内部大量的变异现象对于物种进化起有性生殖物种内部大量的变异现象对于物种进化起了极其重要的作用。了极其重要的作用。减数分裂中减数分裂中,染色单体的交换和随机组合是使生物染色单体的交换和随机组合是使生物生殖细胞发生变异的主要原因。生殖细胞发生变异的主要原因。综上,生物在遗传过程中发生的变异(主要是基因综上,生物在遗传过程中发生的变异(主要是基因重组、基因突变和染色体变异)与自然界生存条件的重组、基因突变和染色体变异)与自然界生存条件的结合,导致了世界生物的进化。结合,导致了世界生物的进化。基因的突变也是使生物得以变异进化的
19、重要因素。基因的突变也是使生物得以变异进化的重要因素。工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法四四、生物遗传与生物遗传与进化对组合优化进化对组合优化问题的启发问题的启发 组合优化问题可以用二元集组合优化问题可以用二元集(S,f)(S,f)描述。其中描述。其中S S是解是解空间:由一切可能的解组成的有限集,空间:由一切可能的解组成的有限集,f f目标函数。目标函数。凸情况:凸情况:目标函数在目标函数在S S上只有一个最小(或最大)值。上只有一个最小(或最大)值。非凸情况:非凸情况:目标函数在目标函数在S S上存在多个极值点。上存在多个极值点。即在即
20、在S S中找一个解,使目标函数值达最小(或最大)。中找一个解,使目标函数值达最小(或最大)。遗传算法的基本思想遗传算法的基本思想:模仿生物遗传进化的机制,:模仿生物遗传进化的机制,将组合优化问题的一组可行解视为染色体,该解对应将组合优化问题的一组可行解视为染色体,该解对应的目标函数值视为生物种群的优劣。的目标函数值视为生物种群的优劣。复制复制可以使优异解得以保留,可以使优异解得以保留,交换交换可行解中部分变可行解中部分变元,或采用元,或采用突变突变手段使部分变元置换,可以产生新的手段使部分变元置换,可以产生新的可行解。这种复制、交换、突变等操作,不断执行下可行解。这种复制、交换、突变等操作,不
21、断执行下去,逐渐会逼近全局最优解。去,逐渐会逼近全局最优解。3.2 遗传遗传算法算法一、遗传算法一、遗传算法的基本步骤的基本步骤 例:例:用遗传算法求二次函数最大值。用遗传算法求二次函数最大值。工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法 解:解:(1 1)编码)编码 对于变量对于变量x x,不妨限定其仅取,不妨限定其仅取031031间的整数。间的整数。随机地产生几个初始值,假设得到随机地产生几个初始值,假设得到4 4个点个点 00101 00101,0110001100,1001110011,1110111101,组成初始群体,其数值分别为组成初始
22、群体,其数值分别为5 5,1212,1919,2929。工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法(2 2)计算个体适应度)计算个体适应度 【注注】3 3号个体相对适应度最高,号个体相对适应度最高,4 4号个体适应度最低。号个体适应度最低。按照生物进化的按照生物进化的“自然选择,适者生存自然选择,适者生存”原则,复制原则,复制3 3号个体,删除号个体,删除4 4号个体。得新的群体号个体。得新的群体 00101,01100,10011,1001100101,01100,10011,10011,重新编为,重新编为1,2,3,41,2,3,4号个体。号个
23、体。(3 3)遗传算子(复制、交换、突变)变换)遗传算子(复制、交换、突变)变换 a a 复制:复制:选择选择1 1号和号和3 3号个体进行交换,号个体进行交换,2 2号和号和4 4号个号个体进行交换,每个个体对第体进行交换,每个个体对第3 3位以后的字符片段与其位以后的字符片段与其配对个体的相应字符进行交换。配对个体的相应字符进行交换。工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法 b b 交换交换:交换前的旧个体交换前的旧个体 交换后的新个体交换后的新个体 交换后个体适应度交换后个体适应度工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工
24、程应用软计算遗传算法遗传算法 c c、突变、突变 将将1 1号个体字符串的最后号个体字符串的最后1 1位进行突变,位进行突变,(4 4)运算终止准则判断)运算终止准则判断 10000 10000已为最优解。故原问题的最大值为已为最优解。故原问题的最大值为 x=16=16。1 1号:号:100010001 1 1000 10000 0 工程应用软计算工程应用软计算遗传算法遗传算法工程应用软计算工程应用软计算遗传算法遗传算法 遗传算法的基本步骤遗传算法的基本步骤:步骤步骤1 1 对研究的变量或对象进行编码(形成字符对研究的变量或对象进行编码(形成字符 串),并随机地建立一个初始群体。串),并随机地
25、建立一个初始群体。步骤步骤2 2 计算群体中诸个体的适应度。计算群体中诸个体的适应度。步骤步骤3 3 执行产生新群体的操作,包括:执行产生新群体的操作,包括:a a 复制:将适应度高的个体进行复制后添入复制:将适应度高的个体进行复制后添入 到新群体中,删除适应度低的个体;到新群体中,删除适应度低的个体;b b 交换:随机选出个体对,进行片段交叉换交换:随机选出个体对,进行片段交叉换 位,产生新个体对;位,产生新个体对;c c 突变:随机改变某个体的某个字符,而得突变:随机改变某个体的某个字符,而得 到新个体。到新个体。步骤步骤4 4 根据某种条件判断计算过程是否可以结根据某种条件判断计算过程是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程 应用 计算 课件 遗传 算法
限制150内