遗传算法设计及其并行实现.doc
《遗传算法设计及其并行实现.doc》由会员分享,可在线阅读,更多相关《遗传算法设计及其并行实现.doc(95页珍藏版)》请在三一办公上搜索。
1、 编 号: 审定成绩: XXXX大学毕业设计(论文)设计(论文)题目:遗传算法设计及其并行实现学 院 名 称 :计算机学院学 生 姓 名 :X X专 业 :计算机科学与技术班 级 :学 号 :指 导 教 师 :X X X答辩组 负责人 :填表时间: 2010 年 5 月XXXX大学教务处遗传算法设计及其并行实现摘要遗传算法(Genetic AlgorithmGA),是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型。 传统的遗传算法虽然具有隐含的并行性,但目前大多为串行遗传算法。串行遗传算法在解决一些实际问题时,由于需要较多的个体数量和大量的计算,使得进化过程比较缓慢,难以达到实时的要求
2、。因此并行遗传算法(Parallel Genetic AlogrithmPGA)就受到了较大的重视,并且已经成为目前遗传算法研究的主要课题。遗传算法与并行计算机相结合,能把并行机的高速性和遗传算法固有的并行性两者的长处彼此结合起来。 本论文设计和实现了简单遗传算法(GA),和并行遗传算法(PGA)两个例子。包括:1. Rosenbrock函数。2. TSP问题。关键字:遗传算法 并行遗传算法 TSP问题The Design and Parallel Realization of Genetic AlgorithmAbstractGenetic Algorithm is the computat
3、ion model which simulating the biological evolution process of Darwins heredity choice and the natural selection. Although the traditional genetic algorithm has the concealment parallelism, but realized the method in essentially still was actually serial. When this kind of serial genetic algorithm s
4、olves some actual problems, it will need lots of individuals and computations, and this will causes the evolution process to be so slow that difficult to meets the real-time requirements. Therefore, the Parallel Genetic Algorithm has received a big value, and already becomes the main topic at geneti
5、c algorithm research. With the PGA, you can unites the parallel machines high speed with genetic algorithms inherent parallelism. The present paper designed and has realized simple heredity algorithm (GA), and parallel genetic algorithm (PGA) with two examples. Including:1. Rosenbrock function.2. TS
6、P problem.Keywords: Genetic Algorithm GA Parallel Genetic Algorithm PGA TSP目录毕业设计(论文)任务书I摘要VAbstractVI第一章 遗传算法简介1第一节 遗传算法的生物学基础1一、 遗传和变异1二、 进化1三、 遗传与进化的系统观2第二节 遗传算法简介2第三节 遗传算法的特点4第四节 遗传算法的应用情况5第二章 遗传算法的基本原理和实现技术7第一节 模式定理(schemata theorem)7一、 模式7二、 模式定理7第二节 编码方法9一、 编码概念9二、 编码技术9第三节 群体设定10第四节 适应度函数11一
7、、 目标函数到适应度函数的映射11二、适应度尺度变换(适应度函数定标)11第五节 遗传操作12一、选择算子12二、交叉算子12三、变异算子13第六节 遗传算法的性能分析13一、在线性性能评估14二、离线性能评估14第三章 遗传算法的求解构造步骤及应用举例15第一节 遗传算法的求解步骤15一、遗传算法的伪码描述和形式化定义15二、遗传算法的求解步骤及其框图16第二节 遗传算法的构造步骤18第三节 基本遗传算法在函数优化中的应用举例19第四章 并行遗传算法25第一节 遗传算法并行化的目的25第二节 遗传算法在并行实现上的困难25第三节 遗传算法的并行性分析25一、 个体适应度评价的并行性26二、
8、群体中各个个体适应度评价的并行性26三、 子代群体产生过程的并行26四、 基于群体分组的并行性26第四节 遗传算法的并行化途径26一、 步进模型26二、 粗粒度模型27三、 细粒度模型27第五节 并行程序设计环境MPICH简介28一、 什么是MPI28二、 MPI的语言绑定28三、 MPICH29第五章 用并行遗传算法实现TSP问题30第一节 旅行商问题描述30第二节 编码方法与群体初始化30一、 编码30二、 种群初始化31第三节 解码设计32第四节 个体适应度评价方法设计33第五节 遗传算子设计33一、 选择算子设计33二、 交叉算子设计34三、 变异算子设计34第六节 程序的并行化改造3
9、5一、 算法描述35二、 并行化的实现35第七节 运行参数的确定和实验结果分析36一、 运行参数的确定36二、实验结果及分析40结论43参考文献44致谢45英文翻译46英文原文46中文翻译55附录65附录1 求解Rosenbrock函数最大值源码65附录2 TSP问题源码73第一章 遗传算法简介第一节 遗传算法的生物学基础生物在自然界中生存繁衍,显示出其对自然环境的自适应能力。受此启发,人们致力于对生物各种生存特性的研究和行为模拟,为人工自适应系统的设计和开发提供了广阔的前景。遗传算法(Genetic Algorithm,简称GA)就是这种生物行为的计算机模拟中令人瞩目的成果。遗传算法所借鉴的
10、就是被人们所广泛接受的达尔文的自然选择(Natural Selection) 学说。自然选择学说中最重要的三个部分是遗传、变异和进化。 一、 遗传和变异构成生物的基本结构和功能单位是细胞(Cell)。细胞中含有的一种微小的丝状化合物称为染色体(Chromosome),生物的所有遗传信息都包含在这个复杂而又微小的染色体中。遗传信息是由基因(Gene)组成的,生物的各种性状由其相应的基因所控制,基因是遗传的基本单位。细胞通过分裂具有自我复制的能力,在细胞分裂的过程中,其遗传基因也同时被复制到下一代,从而其性状也被下一代所继承。人们已经明白,控制并决定生物遗传性状的染色体主要是由一种叫做脱氧核糖核酸
11、(Deoxyribonucleic Acid,简称DNA)的物质所构成。另外,低等生物中还含有一种叫做核糖核酸(Ribonucleic Acid。简称RNA)的物质,它的作用和结构与DNA相似。基因就是DNA或者RNA长链结构中占有一定位置的基本遗传单位。遗传基因在染色体中所占的位置称为基因座(Locus),基因的所有可能的取值叫做等位基因(Allele)。某种生物所特有的基因及其构成形式称为该生物的基因型(Genotype),而该生物在环境中呈现出的相应性状称为该生物的表现型(Phenotype)。一个细胞核中所有染色体所携带的遗传信息的全体称为一个基因组(Genome)细胞在分列时,遗传物
12、质DNA通过复制(Reproduction)而转移到新产生的细胞中,新细胞就继承了旧细胞的基因。有性生殖生物在繁殖下一代时,两个同源染色体之间通过交叉(Crossover)而重组,即在两个染色体的某一相同位置处DNA被切断,其前后两串分别交叉组合而形成两个新的染色体。除此之外,在进行细胞复制时,虽然概率很小,但是也有可能产生某些复制差错,从而使DNA发生某种变异(Mutation),产生出新的染色体。这些新的染色特表现出新的性状。如此这般,遗传基因或染色体在遗传的过程中由于各种各样的原因而发生着变化。 二、 进化生物在其延续生存的过程中,逐渐适应生存环境,使得其品质不断得到改良,这种生命现象称
13、为进化(Evolution)。生物的进化是以集团的形式共同进行的,这样的一个集团称为群体(Population),组成群体的单个生物体称为个体(Individual),每一个个体对其生存环境都由不同的适应能力,这种适应能力称为个体的适应度(Fitness)。达尔文的自然选择学说是现代进化论的主题。现代进化论认为,通过不同生物间的交配以及其他一些原因,生物的基因有可能发生变异而形成一种新的生物基因,这部分变异了的基因也将遗传到下一代。虽然这种变化的概率是可以预测的,但是具体哪一个个体发生变化却是偶然的。这种新的基因依据其与环境的适应程度决定其增殖能力,适应生存环境的基因逐渐增多,而不适应生存环境
14、的基因逐渐减少。通过这种自然的选择,物种将逐渐的向适应于生存化环境的方向进化,从而产生出优良的物种。 三、 遗传与进化的系统观虽然人们还未完全揭开遗传与进化的奥秘既没有完全掌握其机制,也不完全清楚染色体编码和译码过程的细节,更不完全了解其控制方式,但遗传与进化的以下几个特点4却为人们所共识:1生物的所有遗传信息都包含在其染色体中,染色体决定了生物的性状。2染色体是由基因及其有规律的排列所构成的,遗传和进化过程发生在染色体上。3生物的繁殖过程是由其基因的复制过程来完成的。4通过同源染色体之间的交叉或染色体的变异会产生新的物种使生物呈现新的性状。5对环境适应性好的基因或染色体经常比适应性差的基因或
15、染色体有更多的机会遗传到下一代。第二节 遗传算法简介遗传算法是模仿生物遗传学和自然选择机理,通过人工方式构造的一类优化搜索算法,是对生物进化过程进行的一种数学仿真,是进化计算的最重要的形式。遗传算法用与传统的数学模型截然不同。它模拟自然界优胜劣汰的进化现象,把搜索空间映射为遗传空间,把可能的解编码成一个向量染色体,向量的每个元素称为基因。通过不断计算各染色体的适应值,选择最好的染色体,获得最优解。它为那些难以找到传统数学模型的难题找出了一个解决方法。自从霍兰德(Holland)于1975年在它的著作“Adaptation in Natural and Artificial Systems”9中
16、首次提出遗传算法以来,经过近30年的研究,现在已发展到一个比较成熟的阶段,并且在实际中得到很好的应用。遗传算法是具有“生成+检测”(generateandtest)的迭代过程的搜索算法。它的基本处理流程如图1-1所示。遗传算法是一种群体型操作,该操作以群体中的所有个体为对象。选择(selection)、交叉(crossover)和变异(mutation)是遗传算法的3个主要操作算子,它们构成了遗传操作(genetic operation),使遗传算法具有了其它传统方法所没有的特性。遗传算法中包含了如下4个基本要素2:1染色体编码方法。在遗传算法中,将 n 维决策向量用 n 个记号所组成的符号串
17、 X 来表示:(1.1)把每个看作一个遗传基因,它的所有可能取值称为等位基因,这样,X 就可以看作由 n 个遗传基因所组成的一个染色体。在一般情况下,染色体长度n是固定的,但是对一些问题 n 也可以是变化的。根据不同的情况,等位基因可以是一组整数,也可以是某一范围内的实数,或者纯粹一个记号。最简单的等位基因是由0和1这两个整数组成的,相应的染色体就可以表示成一个二进制符号串。遗传算法中,决策变量 X 组成了问题的解空间。对问题最优解的搜索是通过对染色体 X 的搜索过程来进行的。图1-1 简单遗传算法框图 2个体适应度评价。基本遗传算法按与个体适应度成正比的概率来决定当前群体中每个个体遗传到下一
18、代群体中的机会多少。为正确计算这个概率,这里要求所有个体的适应度必须为正数或零。这样,根据不同种类的问题,必须预先确定好由目标函数值到个体适应度之间的转换规则,特别是要预先确定好当目标函数值为负数时的处理方法。3遗传算子。基本遗传算法使用下述三种遗传算子:选择算子选择或复制操作的目的是为了从当前的群体中选出优良的个体,使他们有机会作为父代为下一代繁殖子孙。判断个体优良与否的准则就是各自的适应度。这一操作是借用了达尔文适者生存的进化原则。也就是说,个体适应度越高,其被选择的机会就越多。选择操作的实现方式很多,比如有赌轮选择,最佳个体保留选择,等等。交叉算子 简单的交叉(一点交叉)操作可分成两步:
19、首先对配对库中的个体进行随机配对;其次,在配对的个体中随机的设定交叉处,配对个体彼此交换部分信息。具体的操作及图示在下面一章作详细的说明。 需要指出的是,交叉操作是遗传算法中最主要的遗传操作。通过交叉操作得到的新群体,个体适应度的平均值和最大值都有了明显的提高。实际上,对于几十到几百个变量组成的函数,遗传算法照样能够不依靠任何搜索空间的外部知识而仅用适应度函数来指导和优化搜索的方向。变异算子变异操作是按位进行的,即把某一位的内容进行变异。对于二进制编码个体来说,如果某位原来为0,则通过变异操作就变成了1,反之亦然。变异操作同样也是随机进行的。一般而言,变异概率都取得很小。 变异操作是十分微妙的
20、遗传操作,它需要和交叉操作妥善配合使用,目的是挖掘群体中个体的多样性,克服有可能限于局部解的弊病。这一点在下一章会作进一步的讨论。4遗传算法的运行参数。基本遗传算法有下述4个运行参数需要提前设定: M:群体大小 T:遗传运算的终止进化代数 Pc:交叉概率,一般取为0.40.99。 Pm:变异概率,一般取为0.00010.1。需要说明的是,这4个运行参数对遗传算法的求解结果和求解效率都有一定的影响,但目前尚无合理选择它们的理论依据。在遗传算法的实际应用中,往往需要经过多次试算后才能确定出这些参数合理的取值大小或取值范围。第三节 遗传算法的特点随着优化问题种类的不同以及问题规模的扩大,要寻求一种能
21、以有限的代价来解决搜索和优化的通用方法遗传算法为我们提供的一个有效的途径它不同于传统的搜索和优化方法。重要区别在于4:1自组织、自适应和自学习性(智能性)。应用遗传算法求解问题时在编码方案、适应度函数及遗传算子确定后算法将利用进化过程中获得的信息自行组织搜索。由于基于自然的选择策略为“适者生存。不适应者被淘汰”,因而适应度大的个体具有较高的生存概率。通常,适应度大的个体具有更适应环境的基因结构再通过基因重组和基因突变等遗传操作,就可能产生更适应环境的后代进化算法的这种自组织、自适应特征,使它同时具有能根据环境变化来自动发现环境的特性和规律的能力 自然选择消除了算法设计过程中的一个最大障碍,即需
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 遗传 算法 设计 及其 并行 实现

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