遗传算法综述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
遗传算法综述
遗传算法是计算数学中用于解决最优化的搜索算法,是进化算法的一种。进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、自然选择以及杂交等。
在阅读了一些相关资料后,我整理出这篇综述,将通过五个部分来介绍遗传算法以及其在计算机科学领域的相关应用、
一、起源和发展分支
尝试性地将生物进化过程在计算机中模拟并用于优化问题求解开始于20世纪50年代末,其目的是将生物进化的思想引入许多工程问题中而成为一种优化工具,这些开拓性的研究工作形成了遗传算法的雏形。但当时的研究进展缓慢,收效甚微。原因是由于缺少一种通用的编码方式,人们只有通过变异才能改变基因结构,而无法使用交叉,因而增加了迭代次数。同时算法本身需要较大的计算量,当时的计算机速度便无法满足要求,因而限制了这一仿生过程技术的迅速发展。20世纪60年代中期,Holland在Fraser和Bremermann等人研究成果的基础上提出了位串编码技术,这种编码技术同时适用于变异操作和交叉操作。
遗传算法的真正产生源于20世纪60年代末到70年代初,美国Michigan大学的Holland教授在设计人工适应系统中开创性地使用了一种基于自然演化原理的搜索机制,并于1975年出版了著名的专著“Adaptation in Natural and
Artificial Systems”,这些有关遗传算法的基础理论为遗传算法的发展和完善奠定了的基础。同时,Holland教授的学生De Jong首次将遗传算法应用于函数优化中,设计了遗传算法执行策略和性能评价指标,他挑选的5个专门用于遗传算法数值实验的函数至今仍被频繁使用,而他提出的在线(on-line)和离线(off-line)指
标则仍是目前衡量遗传算法优化性能的主要手段。
在Holland教授和他的学生与同事De Jong进行大量有关遗传算法的开创性工作的同时,德国柏林工业大学的Rechenberg和Schwefel等在进行风洞实验时,为了对描述物体形状的参数进行优化以获得更好的实验数据,将变异操作引入计算模型中,获得了意外的优良效果。实验后,经过进一步系统地研究,形成了进化策略(evolutionary strategies, ES)。1962年,Fogel等人在设计有穷状态自动机(finite state machine, FSM)时借用进化和思想对一组FSM进行进化,提出了一种模仿人类智能的方法,称为进化编程(evolutionary programming, EP),也叫进化规划(evolutionary planning),随后将其应用于数值优化及神经网络的训练问题中。这两种算法和遗传算法以及遗传编程(genetic programming, GP)一起构成了目前进化计算的四大分支,它们从不同层次、不同角度模拟自然演化的规律,以达到求解实际问题的目的。而进化计算则与人工神经网络、模糊理论一起形成一个新的研究方向,即计算智能。计算智能以生物进化的观点认识和模拟智能,以数据为基础,通过进化过程建立联系而进行问题求解。人工智能已从传统的基于符号主义向以神经网络为代表的连接主义和以进化计算为代表的进化主义方向发展,形成了新的研究方法。
遗传算法被提出之后立即受到了各国学者的广泛关注,有关遗传算法的研究成果不断涌现。1968年Holland提出了著名的模式(schema)定理;1975年De Jong 首先尝试将遗传算法用于函数优化,提出了5个测试函数用以测试遗传算法的优化性能;1981年Bethke应用Walsh函数分析模式;1983年Wetzel用遗传算法解决了NP难问题旅行商问题(TSP);1985年Schaffer利用多种群遗传算法研究解决了多目标优化问题;1987年Goldberg等人提出了借助共享函数的小生境遗传
算法。1989年,Goldberg出版专著“Genetic Algorithm in
Search, Optimization, and Machine learning”,对遗传算法的研究产生了非常大的
影响。1992年,Michalewicz出版另一部具有极大影响力的著作“Genetic Algorithm Data Structure Evolutionary Programming”。从20世纪80年代中期起,遗传算法
和进化计算到达一个研究高潮,以遗传算法和进化计算为主题的国际学术会议在世界各地定期召开。1985年,第一届国际遗传算法会议
(international conference on genetic algorithms, ICGA)在美国卡耐基·梅隆大学召开,以后每两年召开一届。此外,进化规划年会(annual conference on evolutionary programming, ACEP)于1992年在美国的加州召开第一届会议,以后每隔两年召
开一届;进化计算会议(IEEE conference on evolutionary computation)也于1994年开始定期召开。相关的国际学术会议还有很多。[1]
目前遗传算法的主要分支有CHC算法、自适应遗传算法、小生境遗传算法、双倍体遗传算法以及双种群遗传算法。
二、重要人物和经典文章
对于遗传算法带来重要影响的人物和相关文献如下:
1.J.D.Bagley,1967年在其博士论文中首次提出“遗传算法(Genetic Algorithms)”一词。
2.Fogel等出版了《基于模拟进化的人工智能》,系统阐述了进化规划的思想。3.R.B.Hollstien,在他的博士论文中首次把遗传算法用于函数优化。4.Holland,于1975年出版了他的著名专著《自然系统和人工系统的自适应》(Adaptation in Natural and Artificial Systems),这是第一本系统论述遗传算法的专著,因此有人把1975年作为遗传算法的诞生年。Holland在该书中系统地阐述