遗传算法讲义.docx
- 文档编号:8889384
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:11
- 大小:22.10KB
遗传算法讲义.docx
《遗传算法讲义.docx》由会员分享,可在线阅读,更多相关《遗传算法讲义.docx(11页珍藏版)》请在冰豆网上搜索。
遗传算法讲义
第一章概述
计算方法→→智能计算→→遗传算法
美国Michigan大学J.Holland教授1975年提出,其特点是群体搜索策略和群体中个体之间的信息交换,搜索不依赖于梯度信息。
来源:
孟德尔的遗传学说和达尔文的进化学说。
“物竟天择、适者生存、优胜劣汰”
1.1从生物进化到进化计算
自然界生物进化的特点:
由简单到复杂,由低级到高级,进化的动力使“自然选择,适者生存”。
遗传物质是细胞核中染色体上的有效基因,其中包含了大量的遗传信息。
基因是决定生物特征的最基本的物质单元,基因在染色体上以一定的顺序和结构排列,每个基因有特殊的位置并控制生物的某些特性。
不同的基因组合产生的个体对环境的适应性不一样,通过基因杂交和突变可以产生对环境适应性强的后代。
经过优胜劣汰的自然选择,适应值高的基因结构就得以保存下来。
生物的进化本质体现在染色体的改变核改进上,生物体自身形态的改变是染色体结构变化的表现形式。
染色体→→DNA→→基因→→交叉、复制→→新个体
基因组合的特异性决定了生物体的多样性,基因结构的稳定性保证了生物物种的稳定性,而基因的杂交和变异使生物进化成为可能。
生物进化过程的发生需要四个基本条件:
1)存在由多个生物个体组成的种群;
2)生物个体之间存在着差异,或群体具有多样性;
3)生物能够自我繁殖;
4)不同个体具有不同的环境生存能力,具有优良基因结构的个体繁殖能力强,反之则弱。
生物群体的进化机制包括三种基本形式:
自然选择:
控制生物群体行为的发展方向,能够适应环境变化的生物个体具有更高的生存能力,似的它们在中群中的数量不段增加,同时该生物个体所具有的染色体性状特征在自然选择中得以保留。
杂交
突变:
突变是一种不可逆过程,具有突发性、间断性和不可预测性,对于保证群体的多样性具有不可替代的作用。
另外,生物进化是一个开放的过程,自然界对进化中的生物群体提供及时的反馈信息,或称为外界对生物的评价。
评价反映了生物的生存价值和机会。
大多数高级生物体是以自然选择和有性繁殖这两种基本过程实现进化发展的。
自然界的生物进化是一个不断循环的过程。
在这一过程中,生物群体也就不断地完善和发展。
可见,生物进化过程本质上是一种优化过程,在计算科学上具有直接的借鉴意义。
尽管到目前为止,进化计算的发展不过20余年,但其思想可以追溯到20世纪50年代。
一般认为进化计算(EvolutionaryComputation,EC)包括三个组成部分:
1)由美国密歇根大学JohnH.Holland教授提出的遗传算法
2)由美国科学家LawrenceJ.Fogel等人提出的进化规划(EvolutionaryProgramming,EP);
3)由德国科学家IngoRechenberg和Hans-PaulSchwefel提出的进化策略(EvolutionaryStrategies,ES)。
他们用不同的进化控制模式模拟了生物进化过程,从而形成了三种具有普遍影响的模拟进化的优化计算方法。
这三种方法也统称为进化算法(EvolutionaryAlgorithms,EAorEAs)。
进化算法是一种基于自然选择和遗传变异等生物进化机制的全局性概率搜索算法。
与其他启发式搜索方法一样,进化算法在形式上也是一种迭代方法。
他从选定的初始解出发,通过不断迭代逐步改进当前解,直至最后搜索到最优解或满意解。
在进化计算中,迭代计算过程采用了模拟生物体的进化机制,从一组解(群体)出发,采用类似自然选择和有性繁殖的方式,在继承原有优良基因的基础上,生成具有更好性能的下一代解的群体。
ASimpleEvolutionaryAlgorithm
1.GeneratetheinitialpopulationP(0)atrandom,andseti=0;
2.Repeat
!
)EvaluatethefitnessofeachindividualinP(i);
2)SelectparentsfromP(i)basedontheirfitnessinP(i);
3)GenerateoffspringfromtheparentsusingcrossoverandmutationtoformP(i+1);
4)I=I+1;
3.Untilhaltingcriteriaissatisfied.
优化问题采用进化计算求解的一般过程包括以下步骤:
1)随机给定一组初始解;
2)评价当前这组解的性能;
3)根据评价结果,从当前解中选择一定数量的解作为基因操作的对象;
4)对所选择的解进行基因操作(交叉、变异),得到一组新解;
5)返回2),对该组新解进行评价;
6)若当前解满足要求或进化过程达到一定的代数,计算结束,否则转到3)继续进行。
TakeasimplefunctionoptimizationasanexampleinPage6~9.
Takeacomplexfunctionoptimizationasanotherexampleonblackboard.
如:
六峰驼背函数等。
Summary:
进化算法是一种随机化搜索算法,在初始解生成以及选择、交叉和变异等遗传操作过程中,均采用了随机化处理方法,与其他搜索技术相比,进化算法具有以下特点:
1)进化算法的搜索过程是从一群初始点开始,而不是从单一的初始点开始搜索。
2)在搜索过程中使用的是基于目标函数值的评价信息,而不是传统方法主要采用的目标函数的导数信息或待求解问题领域内知识。
进化算法的这一特点使其成为具有良好普适性和可规模化(Scalability)的优化方法。
3)进化算法具有显著的隐并行性。
4)形式上简单明了,不仅便于与其他方法相结合,而且非常适合于大规模并行计算机的运算。
5)具有很强的鲁棒性(Robustness)。
1.2遗传算法的特点与发展
1.遗传算法和其他传统搜索方法的对比
!
)解析方法;
2)穷举法;
3)随机搜索;(无方向搜索)
4)模拟退火。
(利用随机化处理技术来指导对于最小能量状态的搜索)
遗传算法不仅包含了进化算法的基本形式和全部优点,同时还具备了若干独特的性能:
1)直接处理的对象是参数的编码集而不是问题参数本身,搜索过程既不受优化函数连续性的约束,也没有优化函数必须可导的要求。
优化过程可以摆脱对问题本身特性的依赖,只需根据简单的评价就可以引导优化进行下去。
2)具有隐并行性。
若每一代对群体规模为n的个体进行操作,实际上处理了大约O(n3)个模式。
3)具有较好的全局寻优能力。
在所求解问题为非连续、多峰以及有噪声的情况下,能够以很大的概率收敛到最优解或满意解。
4)具有较好的普适性和易扩充性
5)基本思想简单,运行方式和实现步骤规范,便于具体使用。
1.3遗传算法理论研究
与其他启发式优化搜索算法相比,GA的主要本质特征在于群体搜索策略和简单的遗传算子。
群体搜索使遗传算法得以突破邻域搜索的限制,可以实现整个解空间的分布式信息采集和探索;遗传算子仅仅利用适应值度量作为运算指标进行随机操作,降低了一般启发式算法在搜索过程中对人机交互的依赖。
遗传算法所追求的是当前群体产生比现有个体更好个体的能力,即遗传算法的可进化性或称群体可进化性。
因此,遗传算法的理论和方法研究也就围绕着这一目标展开。
关于下面五个问题的回答,就成为GA理论研究的主要方向:
1)遗传算法如何更好地模拟复杂系统的适应性过程和进化行为?
2)遗传算法在优化问题求解中怎样才能具备全局收敛性?
3)遗传算法的搜索效率如何评价?
4)遗传策略的设计和参数控制的理论基础是什么?
5)遗传算法与其他算法如何结合?
其中,遗传策略包括GA流程设计、群体设定、群体初始化、GA算子、终止条件等,广义上的遗传策略还包括遗传算法与其他算法结合形成的混合算法。
1.3.l遗传算法的基础理论研究
当采用迭代算法求解一个特定问题时,若该算法的搜索过程所产生的解或函数的序列的极限值是该问题的全局最优解,则该算法是收敛的。
遗传算法的基础理论主要以收敛性分析为主,即群体收敛到优化问题的全局最优解的概率。
从整体上讲,可以分为基于随机过程的收敛性研究和基于模式理论的收敛性分析,我们将前者称为遗传算法的随机模型理论,后者称为遗传算法的进化动力学理论。
1.随机模型理论
对于有限的编码空间和有限的群体,遗传算法的搜索过程可以表示为离散时间的马尔可夫链模型(Markochainmodel),从而可以采用已有的随机过程理论进行严密分析。
遗传算法满足有限马尔可夫链(finiteMarkovchain)的基本特征,具有齐次性,存在极限概率分布。
由于编码空间的有限性,标准遗传算法可以搜索到空间上的任何一个点。
在采用精英保留策略下,遗传算法可以以概率1收敛于问题的全局最优解。
Rudolph用齐次有限马尔可夫链证明了带有选择、交叉和变异操作的标准遗传算法收效不到全局最优解,但是如果让每一代群体中的最佳个体不参加交叉与变异操作而直接保留到子代,那么遗传算法是收敛的。
正是由于遗传算法的搜索过程的统计抽象描述,使得随机模型的收敛性分析远离了遗传算法的设计与应用。
因此,尽管随机模型理论的研究成果非常丰富,对于遗传算法的具体应用和参数设计所提供的指导信息却非常少。
2.进化动力学理论
在随机模型理论下具备全局收敛性的任何算法,必须以某种具体运算形式应用于优化问题的求解,然而随机模型理论下的全局收敛性,并不能保证任何运算形式的算法在有限群体和有限进化代数下一定能够搜索到问题的全局最优解。
因此,基于某种具体运算形式的遗传算法的进化行为分析就构成了进化动力学理论的基本内容。
由Holland提出的模式定理可以称为遗传算法进化动力学的基本定理,但是,模式定理仅仅描述了模式的生存模型,没有反映模式的重组过程,所以有限群体下的模式定理不保证遗传搜索的全局收敛性。
积木块假设描述了遗传算法的重组功能,要求短距、低阶、适应度高的模式(积木快),在遗传算子的作用下,被采样、重组,从而形成高阶、长距、高于群体平均适应度水平的模式。
模式定理和积木块假设构成了求解优化问题时遗传算法具备发现全局最优解的充分条件,也是分析遗传算法的进化行为的基本理论,统称为模式理论。
尽管还存在着不完善之处,但是它为深入研究遗传算法的运行机理奠定了基础。
很大实际问题采用遗传算法求解并不完全满足积木块假设,存在着各种程度的模式欺骗性,那么遗传算法求解的全局收敛性就成为一概率事件。
其中有关理论还有待深入研究,所取得的成果将不仅丰富进化动力学的基本理论,而且对遗传算法的设计和应用具有重要的指导意义。
1.3.2遗传策略研究与设计
为了维持群体可进化性并最终搜索到问题的全局最优解,遗传算法必须采用合适的运算形式(计算流程、种群规模、种群初始化策略、GA算子、终止条件等),这就是遗传策略研究与设计的主要研究内容。
在研究和设计遗传策略时,一般考虑遗传算法应具备两个方面的能力:
探索(exploration)能力:
发现新模式的能力,GA探索未知解空间的能力。
开发(exploitation)能力:
根据已有知识发现局部最优解的能力。
又称求泛(reforming)与求精(refining)能力。
但是,这两种能力很难同时具备,对于任何一种算法来讲它们构成了一对矛盾求精能力好的算法往往不具备良好的解空间上的探索能力,反过来,求泛能力好的算法往往又开发能力不足。
对于复杂的应用问题,往往需要GA同时具备这两种能力,这时一般通过遗传策略的的设计,引入自适应算子来达到这一目标。
遗传策略研究与设计可以分为微观遗传策略研究和宏观遗传策略研究两部分。
微观遗传策略:
主要讨论群体规模、遗传算子的形式和参数设计,及其GA求解能力的影响。
微观遗传策略的理论研究一直集中于遗传算子的适应性的控制,即进化过程中遗传算子参数的适应性调整,进而达到预期的搜索目标,并针对一组函数进行了详细测试。
宏观遗传策略:
主要讨论关于通过GA流程的再设计改变GA的宏观特征,或者以GA流程为基础,引入其他算法构成混合GA,以期提高GA求解问题全局最优解的能力。
全局-局部混合搜索机制的宏观研究一般包括三个部分:
1)特定的优化问题。
对特定问题解空间的可能分布进行研究,获得其对算法全局、局部搜索能力的需求信息,用于指导全局-局部混合机制的设计。
2)全局搜索算法和局部搜索算法。
全局和局部搜索算法可以是两种独立的算法,也可以是同一种算法下的适应性变化。
3)全局与局部搜索方法的协调。
此外,针对多峰函数优化问题,如何构造一种优化算法,使之能够搜索到尽可能多的、或者全部全局最优解和有意义的局部最优解,已成为一个重要的研究领域。
这一类问题要求算法具有很强的维持种群多样性的能力,即时刻保持足够的探索能力。
已有的一些基于小生境技术的GA对这一类问题具有较好的求解能力。
1.3.3遗传算法的编码方式
遗传算法的直接操作对象为编码后得到的字符串,而非问题解本身,因而在应用遗传算法求解问题之前,首先需要完成由问题解空间到到GA编码空间的映射,即确定将解转换为GA编码的方法,这一过程称为编码。
编码方案要能满足一些基本的要求,如完备性、健壮性、唯一性等。
此外,编码还要能满足模式定理和积木块假设,因为这样就可以保证用遗传算法能得到全局最优解。
针对不同的问题,人们设计了一些不同的编码方案,很难比较这些编码方案哪个好哪个不好。
总的说来,由Holland教授建议的二进制编码具有最为广泛的应用支持。
1.3.4遗传算法其他问题
1)NFL(nofreelunch)定理:
对任意的表现度量,当对所有可能的目标函数作平均时,所有搜索算法的表现是完全一样的。
2)约束问题的求解。
3)并行遗传算法研究。
4)遗传学习系统。
1.4遗传算法的应用
遗传算法的主要应用领域:
控制:
瓦斯管道控制,防避导弹控制,机器人控制
规划:
生产规划,并行机任务分配
设计:
VLSI布局,通信网络设计,喷气发动机设计
组合优化:
TSP问题,背包问题,图划分问题
图像处理:
模式识别,特征抽取
信号处理:
滤波器设计
机器人:
路径规划
人工生命:
生命的遗传进化
1.5遗传算法的基本术语
由于遗传算法研究与应用尚在不断发展之中,有关术语的运用尚未完全取得统一。
为了在下面研究中做到准确、清晰、规范地描述,本文中采用的术语及其含义解释如下:
●个体(individual):
GA所处理的基本对象、结构。
●群体(population):
个体的集合。
●位串(bitString):
个体的表示形式。
对应于遗传学中的染色体(Chromosome)
●基因(gene):
位串中的元素,表示不同的特征。
对应于生物学中的遗传物质单位,以 DNA序列形式把遗传信息译成编码。
●基因位(Locus):
某一基因在染色体中的位置。
●等位基因(allele):
表示基因的特征值,即相同基因位的基因取值。
●位串结构空间(bitStringSpace):
等位基因任意组合构成的位串集合,基因操作在位串结构空间进行,对应于遗传学中的基因型的集合。
●参数空间(ParametersSpace):
是位串空间在物理系统中的映射。
对应于遗传学中的表现型的集合。
●适应值(fitness):
某一个体对于环境的适应程度,或者在环境压力下的生存能力,取决于遗传特性。
●复制、选择(reproductionorselection):
在有限资源空间上的排他性竞争。
●交叉、交换、交配、重组(crossoverorrecombination):
一组位串或者染色体上对应基因段的交换。
●变异(mutation):
位串或染色体水平上的基因变化,可以遗传给子代个体。
●逆转或倒位(inversion):
反转位串上的一段基因的排列顺序。
对应于染色体上的一部分,在脱离之后反转180o再连接起来。
●单倍体(haploid,monoploid):
细胞核中有n个正常的不配对染色体。
●二倍体(diploid)、多倍体(polyploid):
细胞核中有2n或更多个正常的配对染色体。
●基因型(genotype):
或称遗传型,指用基因组定义遗传特征和表现。
对应于GA中的位串。
●表现型(phenotype):
生物体的基因型在特定环境下的表现特性。
对应于GA中的位串解码后的参数。
●基因连结(linkage):
两个或更多的等位基因出现在同一个染色体上。
对应于GA中的模式的概念。
●上位遗传或者基因关联(即epistasis):
两个非等位基因之间的相互作用,使得其中之一(上位基因)对另一个(下位基因)的表现型产生干扰或抑制。
对应于优化函数的非线性特征(non-linearity)。
●基因多效性(pleiotropy):
指单一基因对生物体多个物理性状的影响。
对应于GA求解多目标优化问题中,某个变量对多个目标函数的影响。
●多基因效性(polygeny):
指生物体某个物理性状由多个基因共同决定。
对应于GA求解多目标优化问题中,某个目标函数的值由多个变量的状态所决定。
●遗传源变或遗传漂移(geneticdift):
指群体的遗传组成的随机变化,不含自然选择的影响。
●遗传(heredity):
父代个体通过有性方式向子代个体的特征传递过程。
●局部环境或者环境小生境(environmentalniches):
具有某种特征的子环境,其中生物体具有特定的染色体结构,表现出特定的物理性状。
对应于多模态函数中局部极值点的邻域。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 遗传 算法 讲义