遗传算法的研究及应用毕业设计
遗传算法解决TSP问题【精品毕业设计】(完整版)

GA(Fitness,Fitness_threshold,p,r,m)
Fitness:适应度评分函数,为给定假设赋予一个评估分数
Fitness_threshold:指定终止判据的阈值
p:群体中包含的假设数量
r:每一步中通过交叉取代群体成员的比例
m:变异率
初始化群体:P←随机产生的p个假设
在本程序的TSP问题中一共有20个城市,也就是在图模型中有20个顶点,因此一个染色体的长度为20。
3.3适应函数f(i)
对具有n个顶点的图,已知各顶点之间( , )的边长度d( , ),把 到 间的一条通路的路径长度定义为适应函数:
对该最优化问题,就是要寻找解 ,使f( )值最小。
3.4选择操作
选择作为交叉的双亲,是根据前代染色体的适应函数值所确定的,质量好的个体,即从起点到终点路径长度短的个体被选中的概率较大。
(2)交叉(Crossover):对于选中进行繁殖的两个染色体X,Y,以X,Y为双亲作交叉操作,从而产生两个后代X1,Y1.
(3)变异(Mutation):对于选中的群体中的个体(染色体),随机选取某一位进行取反运算,即将该染色体码翻转。
用遗传算法求解的过程是根据待解决问题的参数集进行编码,随机产生一个种群,计算适应函数和选择率,进行选择、交叉、变异操作。如果满足收敛条件,此种群为最好个体,否则,对产生的新一代群体重新进行选择、交叉、变异操作,循环往复直到满足条件。
3.变异:使用均匀的概率从Ps中选择m%的成员.对于选出的每个成员,在它表示中随机选择一个为取反
4.更新:P←Ps
5.评估:对于P中的每个h计算Fitness(h)
从P中返回适应度最高的假设
3.
3.1 TSP问题的图论描述
基本遗传算法【精品毕业设计】(完整版)

基本遗传算法【精品毕业设计】(完整版)遗传算法1、遗传算法⽣物学基础和基本理论达尔⽂⾃然选择学说认为,⽣物要⽣存下去,就必须进⾏⽣存⽃争。
⽣存⽃争包括种内⽃争、种间⽃争以及⽣物跟⽆机环境之间的⽃争三个⽅⾯。
在⽣存⽃争中,具有有利变异(mutation)的个体容易存活下来,并且有更多的机会将有利变异传给后代;具有不利变异的个体就容易被淘汰,产⽣后代的机会也少得多。
因此,凡是在⽣存⽃争中获胜的个体都是对环境适应性⽐较强的。
达尔⽂把这种在⽣存⽃争中适者⽣存,不适者淘汰的过程叫做⾃然选择。
达尔⽂的⾃然选择学说表明,遗传和变异是决定⽣物进化的内在因素。
遗传是指⽗代与⼦代之间,在性状上存在的相似现象。
变异是指⽗代与⼦代之间,以及⼦代的个体之间,在性状上或多或少地存在的差异现象。
在⽣物体内,遗传和变异的关系⼗分密切。
⼀个⽣物体的遗传性状往往会发⽣变异,⽽变异的性状有的可以遗传。
遗传能使⽣物的性状不断地传送给后代,因此保持了物种的特性,变异能够使⽣物的性状发⽣改变,从⽽适应新的环境⽽不断地向前发展。
⽣物的各项⽣命活动都有它的物质基础,⽣物的遗传与变异也是这样。
根据现代细胞学和遗传学的研究得知,遗传物质的主要载体是染⾊体(chromsome),染⾊体主要是由DNA(脱氧核糖核酸)和蛋⽩质组成,其中DNA⼜是最主要的遗传物质。
现代分⼦⽔平的遗传学的研究⼜进⼀步证明,基因(gene)是有遗传效应的⽚段,它储存着遗传信息,可以准确地复制,也能够发⽣突变,并可通过控制蛋⽩质的合成⽽控制⽣物的性状。
⽣物体⾃⾝通过对基因的复制(reproduction)和交叉(crossover),即基因分离、基因⾃由组合和基因连锁互换)的操作使其性状的遗传得到选择和控制。
同时,通过基因重组、基因变异和染⾊体在结构和数⽬上的变异产⽣丰富多采的变异现象。
需要指出的是,根据达尔⽂进化论,多种多样的⽣物之所以能够适应环境⽽得以⽣存进化,是和上述的遗传和变异⽣命现象分不开的。
毕业设计论文基于遗传算法的BP神经网络的优化问题研究.doc

编号:审定成绩:重庆邮电大学毕业设计(论文)设计(论文)题目:基于遗传算法的BP神经网络的优化问题研究学院名称:学生姓名:专业:班级:学号:指导教师:答辩组负责人:填表时间:2010年06月重庆邮电大学教务处制摘要本文的主要研究工作如下:1、介绍了遗传算法的起源、发展和应用,阐述了遗传算法的基本操作,基本原理和遗传算法的特点。
2、介绍了人工神经网络的发展,基本原理,BP神经网络的结构以及BP算法。
3、利用遗传算法全局搜索能力强的特点与人工神经网络模型学习能力强的特点,把遗传算法用于神经网络初始权重的优化,设计出混合GA-BP算法,可以在一定程度上克服神经网络模型训练中普遍存在的局部极小点问题。
4、对某型导弹测试设备故障诊断建立神经网络,用GA直接训练BP神经网络权值,然后与纯BP算法相比较。
再用改进的GA-BP算法进行神经网络训练和检验,运用Matlab软件进行仿真,结果表明,用改进的GA-BP算法优化神经网络无论从收敛速度、误差及精度都明显高于未进行优化的BP神经网络,将两者结合从而得到比现有学习算法更好的学习效果。
【关键词】神经网络BP算法遗传算法ABSTRACTThe main research work is as follows:1. Describing the origin of the genetic algorithm, development and application, explain the basic operations of genetic algorithm, the basic principles and characteristics of genetic algorithms.2. Describing the development of artificial neural network, the basic principle, BP neural network structure and BP.3. Using the genetic algorithm global search capability of the characteristics and learning ability of artificial neural network model with strong features, the genetic algorithm for neural network initial weights of the optimization, design hybrid GA-BP algorithm, to a certain extent, overcome nerves ubiquitous network model training local minimum problem.4. A missile test on the fault diagnosis of neural network, trained with the GA directly to BP neural network weights, and then compared with the pure BP algorithm. Then the improved GA-BP algorithm neural network training and testing, use of Matlab software simulation results show that the improved GA-BP algorithm to optimize neural network in terms of convergence rate, error and accuracy were significantly higher than optimized BP neural network, a combination of both to be better than existing learning algorithm learning.Key words:neural network back-propagation algorithms genetic algorithms目录第一章绪论 (1)1.1 遗传算法的起源 (1)1.2 遗传算法的发展和应用 (1)1.2.1 遗传算法的发展过程 (1)1.2.2 遗传算法的应用领域 (2)1.3 基于遗传算法的BP神经网络 (3)1.4 本章小结 (4)第二章遗传算法 (5)2.1 遗传算法基本操作 (5)2.1.1 选择(Selection) (5)2.1.2 交叉(Crossover) (6)2.1.3 变异(Mutation) (7)2.2 遗传算法基本思想 (8)2.3 遗传算法的特点 (9)2.3.1 常规的寻优算法 (9)2.3.2 遗传算法与常规寻优算法的比较 (10)2.4 本章小结 (11)第三章神经网络 (12)3.1 人工神经网络发展 (12)3.2 神经网络基本原理 (12)3.2.1 神经元模型 (12)3.2.2 神经网络结构及工作方式 (14)3.2.3 神经网络原理概要 (15)3.3 BP神经网络 (15)3.4 本章小结 (21)第四章遗传算法优化BP神经网络 (22)4.1 遗传算法优化神经网络概述 (22)4.1.1 用遗传算法优化神经网络结构 (22)4.1.2 用遗传算法优化神经网络连接权值 (22)4.2 GA-BP优化方案及算法实现 (23)4.3 GA-BP仿真实现 (24)4.3.1 用GA直接训练BP网络的权值算法 (25)4.3.2 纯BP算法 (26)4.3.3 GA训练BP网络的权值与纯BP算法的比较 (28)4.3.4 混合GA-BP算法 (28)4.4 本章小结 (31)结论 (32)致谢 (33)参考文献 (34)附录 (35)1 英文原文 (35)2 英文翻译 (42)3 源程序 (47)第一章绪论1.1 遗传算法的起源从生物学上看,生物个体是由细胞组成的,而细胞则主要由细胞膜、细胞质、和细胞核构成。
遗传算法及其应用-毕业论文

传算法及其应用-毕业论文摘要遗传算法是一种模拟自然界生物进化的搜索算法,由于它的简单易行、鲁棒性强,尤其是其不需要专门的领域知识而仅用适应度函数作评价来指导搜索过程,从而使它的应用范围极为广泛,并且己在众多领域得到了实际应用,取得了许多令人瞩目的成果,引起了广大学者和工程人员的关注。
在简要的介绍了遗传算法的发展历史和研究现状及其生物学、数学基础后,文中引出了遗传算法的基本概念和原理、分析了遗传算法的基本实现技术。
如:编码、适应度函数、遗传算法的三大遗传操作、参数规则等。
最后在介绍了遗传算法程序设计原则的基础上,编程实现了遗传算法在图像识别中的应用,在实践中检验了遗传算法的实际效果。
关键词:遗传算法,适应度函数,图像识别ABSTRACTThe genetic algorithm is a kind of searching method which simulates the natural evolution. It is simple and easy to implement, especially it do not need the special field knowledge, so it has been using in very broad fields. Now the genetic algorithm has got a lot of fruits, and more and more scholars begin to pay attention on it.After brief introducted the genetic algorithm and studyed the history of the development status and biology, mathematical basis, we brought out the basic genetic algorithm concepts and principles, analysised the genetic algorithm to achieve the basic technology. Such as: coding, fitness function, genetic algorithm of the three major genetic manipulation, and other parameters of the rules. Finally, introduced a genetic algorithm procedures based on the principles of design, programming a genetic algorithm in the application of image recognition, in practice, we test the practical effects of genetic algorithm.Key word:genetic algorithm,Fitness function,image recognition引言当前科学技术正进入多学科互相交叉、互相渗透、互相影响的时代,生命科学与工程科学的交叉、渗透和相互促进是其中的一个典型例子,也是近代科学技术发展的一个显著特点。
遗传算法新论文【精品毕业设计】(完整版)

学校代码 10126 学号 00708037 分类号密级本科毕业论文基于遗传算法的图像阈值分割学院、系数学科学学院计算数学系专业名称信息与计算科学年级 2007级学生姓名刘家祥指导教师曹军2011年 5月 20 日内容摘要图像分割就是指把图像分成各具特性的区域并提取出感兴趣目标的技术和过程。
图像的分割是以灰度值作为分割的依据,通过各个像素的灰度值和事先确定的阈值的比较来分割图像。
如何确定最合适的阈值是处理好图像分割的关键,这自然成为一直以来分割算法研究的焦点。
遗传算法是对生物进化论中自然选择和遗传学机理中生物进化过程的模拟来计算最优解的方法。
遗传算法具有众多的优点,如鲁棒性、并行性、自适应性和快速收敛,可以应用在图像处理技术领域中图像分割技术来确定分割阈值。
本文主要介绍基于遗传算法的最小误差阈值法、最大类间方差法(Otsu法)以及最佳直方图熵法(KSW熵法)等三种方法分割图像。
关键词:图像分割,遗传算法,阈值分割AbstractImage segmentation refers to the image into regions each with characteristics and goals of the technology to extract and process of interest. Segmentation is a segmentation based on gray value, gray value of each pixel through the predetermined threshold value and comparing the image segmentation. How to determine the most appropriate threshold is the key to handling image segmentation, which has naturally become the focus of segmentation algorithms.Genetic algorithm is a biological theory of evolution and genetic mechanism of natural selection in biological evolution simulation method to calculate the optimal solution. Genetic algorithm has many advantages, such as robustness, parallel, adaptive, and fast convergence, can be used in the field of image processing image segmentation technique to determine the split threshold.In this paper, genetic algorithm based on minimum error threshold, the largest class variance (Otsu method) and the best histogram entropy (KSW entropy method) are three ways to split the image.Keywords : Image segmentation, genetic algorithms, threshold目录第一章绪论 .................................................. - 1 - 第二章遗传算法概述 ........................................ . - 2 -2.1遗传算法的研究历史....................................... - 2 -2.2生物背景................................................. - 2 -2.3遗传算法的基本思想....................................... - 3 -2.4遗传算法的几个概念....................................... - 4 -2.4.1适应度函数......................................... - 4 -2.4.2遗传算法最常用的算子............................... - 4 -2.5遗传算法运算的基本流程................................... - 5 - 第三章图像分割的现状 ........................................ - 7 -3.1图像分割简介............................................. - 7 -3.2图像分割方法............................................. - 8 -3.2.1基于边缘检测的分割................................. - 8 -3.2.2基于区域的分割..................................... - 8 -3.2.3边缘与区域相结合的分割............................. - 9 -3.3阈值选取................................................. - 9 - 第四章基于遗传算法的图像阈值分割 ........................... - 10 -4.1图像阈值................................................ - 10 -4.2阈值分割的原理.......................................... - 10 -4.3最小误差阈值法.......................................... - 11 -4.3.1最小误差法图像阈值分割............................ - 11 -4.3.2 利用遗传算法来改进最小误差法...................... - 12 -4.4 最大类间方差法(Otsu法)............................... - 13 -4.4.1最大类间方差法(Otsu法)阈值分割.................. - 13 -4.4.2 Otsu阈值分割的遗传算法设计........................ - 15 -4.5 KSW熵法................................................ - 17 -4.5.1 KSW熵阈值分割................................... - 17 -4.5.2 KSW单阈值分割的遗传算法设计..................... - 18 -4.5.3 KSW双阈值分割的遗传算法设计..................... - 19 - 第五章基于新的遗传算法的图像分割 ........................... - 25 -5.1混沌遗传算法............................................ - 25 -5.2量子遗传算法............................................ - 25 -5.3免疫遗传算法............................................ - 25 - 结论 .......................................................... - 26 - 致谢 .......................................................... - 27 - 参考文献: ..................................................... - 28 -内蒙古大学本科学年论文第- 1 - 页基于遗传算法的图像阈值分割第一章绪论图像分割是图像处理与计算机视觉的基本问题之一,是图像处理到图像分析的关键步骤。
遗传算法及其改进设计

[2]朱灿.实数编码遗传算法机理分析及算法改进研究[D].中南大学,博士学位论文, 2009.
[3]许琦.基于遗传算法的高校排课问题的研究[D].华南理工大学,硕士学位论文, 2012.
系审核意见
负责人(签名)————————
备注:1、本任务书一式三份,系、指导教师、学生各执一份。
2、学生须将此任务书作为毕业论文(设计)说明书的附件,装订在说明书中。
(1)研究掌握遗传算法的原理;
(2)设计实现遗传算法的C语言程序;
(3)研究掌握通过matlab遗传算法工具箱进行问题优化的方法;
(4)分析普通遗传算法的缺点,并提出算法改进措施,并用matlab语言和遗传算法工具箱实现;
(5)对一些标准测试函数,用提出的改进算法进行优化,检验算法结果;
(6)选定某实际问题(可使用UCI机器学习数据库数据),用遗传算法进行优化;
工作阶段(包括时间划分和各阶段主要工作内容)
一、2012年12月查阅文献资料,确定设计方向;
二、1月至3月确定设计的研究方法并提交开题报告;
三、2013年1月至2013年3月完成毕业设计作品;
四、2013年4月完成毕业论文初稿。
五、2013年5月日,完成最终毕业论文。
其它要求(包括文献研究、实验实习等方面)
毕业论文(设计)任务书
学生姓名
学号
专业班级
指导教师
职称
题目
遗传算法及其改进设计
研究(设计)任务(包括目标和要求)
1、根据设计(论文)选题,查阅相关技术书籍、学校图书馆网站数据库文献资料,进一步明确选题的目的、意义和应用领域;
2、பைடு நூலகம்据选题进行理论验证,补充掌握进行设计需要补充的知识;
算法毕业设计

算法毕业设计算法是计算机科学中的一个重要领域,它研究如何设计和优化有效的问题求解方法。
在我的毕业设计中,我选择了一项基于遗传算法的优化问题求解。
首先,我对遗传算法进行了深入研究。
遗传算法是一种模拟自然选择和遗传机制的优化算法。
它模拟了生物进化的过程,通过模拟基因的交叉、变异、选择等操作,从而找到问题的最优解。
接下来,我选择了一个实际的优化问题作为研究对象:车辆路径规划问题。
该问题是指在一定的时间内,找到一条最佳路径,使得多个车辆在规定的时间内交通效率最高。
这个问题的复杂度很高,传统的算法难以得到最优解。
在我的算法设计中,首先我将车辆路径规划问题建模为一个图论问题,节点表示车辆的起点和终点,边表示车辆之间的路径。
然后,我使用遗传算法进行优化求解。
遗传算法中的基因编码为车辆的路径,通过不断迭代,交叉和变异操作产生更好的解。
为了提高算法的效率和求解的精确度,我还对遗传算法进行了一些改进。
首先,我采用了多种适应度函数,根据不同的优化目标进行调整。
其次,我设计了一种更高效的交叉和变异操作,能够通过保留有用的基因信息来加速搜索。
最后,我还引入了一种自适应参数调整机制,根据算法的迭代过程的性能动态调整算法的参数。
通过对实际例子的测试和对比分析,我发现我的算法在车辆路径规划问题上的优化效果显著。
相比于传统的算法,我的算法在求解时间和求解质量上都有明显的提升。
综上所述,本毕业设计通过研究遗传算法,针对车辆路径规划问题设计了一种优化算法。
通过对算法的改进和优化,提高了算法的效率和求解的精确度。
相信在今后的研究和实际应用中,这个算法还有更多的潜力可以发挥。
关于遗传算法的研究毕业论文

摘要:在本篇论文主要讨论的是通过介绍生物的遗传问题,什么是遗传算法(genetic Algorithm),遗传算法的性质,应用,传统遗传算法的基本步骤和遗传算法的目前的发展趋向等等内容,使大家得到关于遗传算法的比较深厚的了解。
中文关键词:遗传;遗传算法;染色体;基因;基因地点;基因特征值;适应度英文关键词:Genetic;Genetic Algorithm;Chronmosome;Gene;Locus;Gene Feature;Fitness1、生物的遗传问题与自然选择:众所周知,生命的出现,变化以及其消亡是必然的。
在地球上最早的生命出现以来,在自然界中多种多样的生物一起存在着并且生命的形式与物种不断发生着变化。
由于不同原因,一些物种相继消亡,有一些物种得以生存到现在且还有一些生物改变到另一种生物。
那么到底是什么原因导致这种情况呢?我们先看一下达尔文的自然选择学说的主要内容。
达尔文的自然选择学说是一种被人们广泛接受的生物进化学说。
这种学说认为,生物要生存下去,就必须进行生存斗争。
生存斗争包括种内斗争、种间斗争以及生物跟无机环境之间的斗争三个方面。
在生存斗争中,具有有利变异的个体容易存活下来,并且有更多的机会将有利变异传给后代;具有不利变异的个体就容易被淘汰,产生后代的机会也少的多。
因此,凡是在生存斗争中获胜的个体都是对环境适应性比较强的。
达尔文把这种在生存斗争中适者生存,不适者淘汰的过程叫做自然选择。
它表明,遗传和变异是决定生物进化的内在因素。
自然界中的多种生物之所以能够适应环境而得以生存进化,是和遗传和变异生命现象分不开的。
总之,在这个问题中,我们把主要原因概括在下列两个方面:一个是自然界为生命存在方式所提供的条件即有些生物由于对自然界的适应能力比较强,它们都能适应自然环境的各种变化,反而,还有一些生物的适应能力比较弱,所以它们不能适应自然环境和资源的变化并且很容易就被自然界淘汰。
原因之二是生物自身的遗传与变异功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业设计遗传算法的研究及应用摘要本文分为三部分:第一部分:遗传算法的概述。
主要介绍了遗传算法的基本思想、遗传算法的构成要素、遗传算法的特点、遗传算法的基本模型、遗传算法的应用情况及今后的研究方向等等的内容。
第二部分:基于Matlab 7.0下的遗传算法求解函数最值问题。
遗传算法作为一种新的优化方法,广泛地用于计算科学、模式识别和智能故障诊断等方面,它适用于解决复杂的非线性和多维空间寻优问题,近年来也得到了较为广阔的应用。
本人选择了函数优化这个应用领域,按照遗传算法的步骤,即编码、解码、计算适应度(函数值)、选择复制运算、交叉运算和变异运算,对函数进行求解最值。
第三部分:对遗传算法求函数最值问题的改进。
这部分主要针对本文第二部分进行改进,通过改变基本遗传算法运行参数值,如改变交叉概率Pc值和变异概率Pm值,从而使最优值更加接近相对标准下函数的最值。
关键词:遗传算法适应度交叉概率变异概率目录1 前言 (1)2 遗传算法概述 (1)2.1生物进化理论和遗传学的基本知识 (1)2.2遗传算法的基本思想 (3)2.3遗传算法的构成要素 (3)2.3.1 染色体编码方法 (3)2.3.2 适应度函数 (4)2.3.3 遗传算子 (4)2.3.4 基本遗传算法运行参数 (5)2.4遗传算法的特点 (6)2.5遗传算法的基本模型 (7)2.6遗传算法的应用 (8)2.7遗传算法今后的研究方向 (10)3 基于MATLAB 7.0下的遗传算法求解函数最值问题 (11)3.1遗传算法的标准函数 (11)3.2解题步骤说明 (12)3.2.1 编码问题 (12)3.2.2 选择运算 (12)3.2.3 交叉运算 (13)3.2.4 变异运算 (13)3.3运行参数说明 (14)3.4对遗传算法求得的最值的分析 (14)3.5运行程序以及对其解释 (14)3.6从数学的角度求解函数最优值 (18)3.6.1 自变量x以0.2为步进单位 (18)3.6.2 自变量x以0.1为步进单位 (19)3.6.3 自变量x以更精确的数为步进单位 (21)4 对遗传算法求解函数最值问题的改进 (21)4.1寻找求得最优解的运行参数值 (22)4.1.1 当Pc=0.9和Pm=0.0001 (22)4.1.2 当Pc=0.9和Pm=0.001 (23)4.1.3 当Pc=0.9和Pm=0.01 (24)4.1.4 当Pc=0.9和Pm=0.1 (26)4.1.5 当Pc=0.4和Pm=0.1 (27)5 结论 (29)参考文献 (30)ABSTRACT (31)附录 (32)致谢 (38)仲恺农业工程学院毕业论文(设计)成绩评定表 (39)1 前言生命科学与工程科学的相互交叉、相互渗透和相互促进是近代科学技术发展的一个显著特点,而遗传算法的蓬勃发展正体现了科学发展的这一特征和趋势。
遗传算法(Genetic Algorithm---GA),是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,它是由美国Michigan大学的J.Holland教授于1975年首先提出的。
J.Holland教授和他的研究小组围绕遗传算法进行研究的宗旨有两个:一是抽取和解释自然系统的自适应过程,二是设计具有自然系统机理的人工系统。
毫无疑问,J.Holland 教授的研究无论对自然系统还是对人工系统都是十分有意义的。
众所周知,在人工智能领域中,有不少问题需要在复杂而庞大的搜索空间中寻找最优解或准最优解。
因此,研究能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应地控制搜索过程,从而得到最优解或准最优解的通用搜索算法一直是令人瞩目的课题。
遗传算法就是这种特别有效的算法。
它的主要特点是简单、通用、鲁棒性强,适用于并行分布处理,应用范围广。
尽管遗传算法本身在理论和应用方法上仍有许多待进一步研究的问题,但它在组合优化问题求解、自适应控制、规划设计、机器学习和人工生命等领域的应用中已发展现了其特色和魅力。
2 遗传算法概述2.1 生物进化理论和遗传学的基本知识在介绍遗传算法之前,有必要了解有关的生物进化理论和遗传学的基本知识。
达尔文的生物进化论告诉我们,“适者生存,优胜劣汰”。
在生物自然环境中,生物种群的自然繁衍,生存,发展,最终取决于它对自然环境的适应能力。
当一个种群相对其他种群,对周围的环境能够显示出良好的适应能力,它将在生物竞争中处于优势地位,获取较大的生存机会,反之,该种群则趋向于消亡。
所以,一个种群的优异的适应能力是该种群得以繁衍发展的根本。
从达尔文的进化论我们可以看出,生物环境对生物的进化主要通过三个途径来进行:选择,交叉和变异。
遗传算法是一种模拟生物进化过程的学习方法,它操作的对象是由多个个体构成的种群,通过对种群中的成员模拟生物进化的方式来产生下一代种群,新种群总是在旧种群的基础上获得改进和提高,周而复始,从而使得种群的整体质量朝着优良的方向发展。
由于遗传算法是借鉴生物进化的思想,所以,遗传算法仍然沿用生物学中的一些术语。
染色体:它是遗传算法中运行的最基本的单位,是特定问题在算法中的表现形式,一般由二进制的数串所组成;基因:它是染色体的最小组成单位,在二进制数串中它由一个数位来表示;基因片:多个基因构成基因片;种群:种群是由多个染色体构成的集合,它的数目称之为种群规模;适应度:适应度反映了染色体所蕴涵的问题解质量的优劣,一般来说,染色体的适应度是一个非负数;适应度函数:染色体到适应度之间的映射关系;选择:遗传算子之一,是算法基于适应度对染色体进行优胜劣汰的操作过程;交叉:遗传算子之一,是算法产生新个体的途径之一,又称之为基因重组;变异:遗传算子之一,是算法产生新个体的途径之一,是小概率发生事件。
遗传算法所借鉴的生物学基础就是生物的遗传、变异和进化。
遗传---世间的生物从其父代继承特性或性状,这种生命现象就称为遗传。
生物的遗传方式有以下三个:(1) 复制生物的主要遗传方式是复制。
遗传过程中,父代的遗传物质DNA被复制到子代。
即细胞在分裂时,遗传物质DNA通过复制而转移到新生的细胞中,新细胞就继承了旧细胞的基因。
(2) 交叉有性生殖生物在繁殖下一代时,两个同源染色体之间通过交叉而重组,亦即在两个染色体的某一相同位置处DNA被切断,其前后两串分别交叉组合而形成两个新的染色体。
(3) 变异在进行细胞复制时,虽然概率很小,仅仅有可能产生某些复制差错,从而使DNA发生某种变异,产生出新的染色体。
这些新的染色体表现出新的性状。
生物的不同品种都属于变异,在丰富多彩的生物界中,蕴含着形形色色的变异现象。
在这些变异现象中,有的仅仅是由于环境因素的影响造成的,并没有引起生物体内的遗传物质的变化,因而不能够遗传下去,属于不遗传的变异。
有的变异现象是由于生殖细胞内的遗传物质的改变引起的,因而能够遗传给后代,属于可遗传的变异。
敌酋上的生物,都是经过长期进化而形成的。
根据达尔文的自然选择学说,地球上的生物具有很强的繁殖能力。
在繁殖过程中,大多数生物通过遗传,使物种保持相似的后代;部分生物由于变异,后代具有明显差别,甚至形成新物种。
正是由于生物的不断繁殖后代,生物数目大量增加,而自然界中生物赖以生存的资源却是有限的。
因此,为了生存,生物就需要竞争。
生物在生存竞争中,根据对环境的适应能力,适者生存,不适者消亡。
自然界中的生物,就是根据这种优胜劣汰的原则,不断地进行进化。
2.2 遗传算法的基本思想遗传算法实质上是一种繁衍、监测和评价的迭代算法。
它一般要包含以下几个处理步骤:(1) 对问题的解进行编码,即用染色体表示问题的可能潜在解,生成经过编码的初始种群,适应度函数因优化问题的目标函数而定;(2) 根据适应度大小挑选个体进行遗传操作; (3) 按照适者生存和优胜劣汰的原理逐代演化,得到问题的最优解或近似最优解。
每个个体在种群演化过程中都被评价优劣并得到其适应度值,个体在选择、交叉以及变异算子的作用下向更高的适应度进化以达到寻求问题最优解的目标。
2.3 遗传算法的构成要素遗传算法中包含五个基本要素,即染色体的编码方法、适应度函数、遗传算子、基本遗传算法运行参数及约束条件的处理。
每个要素对应不同的环境有各种相应的设计策略和方法,而不同的策略和方法决定了相应的遗传算法具有不同的特征。
2.3.1 染色体编码方法遗传算法不能直接处理问题空间的参数,而需要把问题的可行解从其解空间转换到遗传算法所能处理的搜索空间中,这一转换方法就称为编码。
一般来说,由于遗传算法的鲁棒性,它对编码的要求并不苛刻。
但由于编码的方法对于个体的染色体排列形式,以及个体从搜索空间的基因型到解空间的表现型的转换和遗传算子的运算都有很大影响,因此编码方法在很大程度上决定了如何进行群体的遗传进化运算以及遗传进化运算的效率。
针对一个具体应用问题,如何设计一种完美的编码方案是遗传算法的应用难点,而目前还没有一套既严密又完整的指导理论及评价准则能帮我们设计编码方案。
对于实际应用问题,仍须对编码方法、选择运算方法、交叉运算方法、变异运算方法、解码方法统一考虑,以寻求到一种对问题的描述最为方便、遗传运算效率最高的编码方案。
在目前看来,人们已经提出了许多种不同的编码方法,主要有:二进制编码、格雷码和浮点数编码等等[2]。
2.3.2 适应度函数适应度函数指为了体现染色体的适应能力,引入了对问题中的每一个染色体都能进行度量的函数。
遗传算法在进化搜索中基本不利用外部信息,仅以种群中每个个体的适应度函数值为依据进行搜索,因此适应度函数的选取至关重要。
遗传算法常常将目标函数直接作为适应度函数,但由于在执行选择操作时,它要按与个体适应度成正比的概率来决定当前群体中每个个体遗传到下一代群体中的几率,而要正确计算此概率,要求所有个体的适应度值必须非负[3]。
2.3.3 遗传算子(1) 选择算子选择操作建立在对个体的适应度进行评价的基础之上,适应度较高的个体被遗传到下一代群体中的概率较大;适应度较低的个体被遗传到下一代群体中的概率较小,因而可以避免有效基因的损失,使高性能的个体得以较大的概率生存,从而提高全局收敛性和计算效率。
最常用的选择算子是比例选择算子,它是以正比于个体适应度值的概率来选择相应的个体。
另外还有比较常用的选择算子还有:最优保存策略选择、排序选择和随机联赛选择。
(2) 交叉算子遗传算法中,在交叉运算之前还必须先对群体中的个体进行随机配对,然后在这些配对个体组中两个个体之间进行交叉操作。
交叉算子用于组合产生新的个体,它要求对个体编码串中的优良模式不能有太多的破坏并且能有效的产生出一些较好的新个体模式,以便在解空间中能进行有效搜索,且保证对有效模式的破坏概率较小。
最常用的交叉算子有单点交叉算子和算术交叉算子。