购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 遗传算法起源

1.1.1 遗传算法生物学基础

生物在自然界的生存繁衍,经历了一代又一代的更替,新旧物种的淘汰或进化展示了生物在自然界的自适应能力。受此启发,遗传算法模拟生物遗传和进化过程,成为求解极值问题的一类自组织、自适应的人工智能技术。其理论来源包括拉马克进化学说(Lamarckism)、达尔文进化学说和孟德尔遗传学(Mendelian inheritance),主要借鉴的生物学基础是生物的遗传、变异和进化。

1809年,拉马克出版了《动物哲学》一书。此书首次提出并系统阐述了生物进化学说。其重要内容包括:①物种都是由其他物种演变和进化而来的,而生物的演变和进化是一个缓慢而连续的过程;②环境的变化能够引起生物的变异,环境的变化迫使生物发生适应性的进化。生物对环境的适应是发生变异的结果,环境变了,生物会发生相应的变异,以适应新的环境。

达尔文于1859年完成了《物种起源》一书。与此同时,Wallace发表了题为《论变种无限地离开其原始模式的倾向》的论文。他们提出的观点被统称为达尔文进化学说,其要点是适者生存原理。该学说认为每一物种在发展中越来越适应环境;物种内每个个体的基本特征由后代继承,但后代又会产生一些异于父代的新变化。

拉马克和达尔文的观点有许多相似之处,他们都认为物竞天择,适者生存。这一理论是遗传算法(Genetic Algorithm,GA)能够成功实现函数优化的重要内容。

孟德尔则通过豌豆杂交实验,总结了以下两条定律(孟德尔定律)。

(1)分离定律:基因作为独特的独立单位而代代相传。细胞中有成对的基本遗传单位,在杂种的生殖细胞中,一个来自雄体亲本,另一个来自雌体亲本。

(2)自由组合定律(又称独立分配定律):一对染色体上的基因对中的等位基因能够独立遗传。

基于上述理论基础,对比生物遗传过程中的群体、种群、染色体、基因及适应能力,遗传算法也相应地创造了搜索空间,选择得到新群体、可行解、解的编码单元、解的适应度函数。解的适应度函数相当于环境,当适应度值达到要求,即生物性状达到对环境的适应能力时,即可停止进化,此时遗传算法也就求出了目标极值。

有了上述定义,遗传算法便可以模拟生物的遗传方式——复制、交叉和变异——来实现对数据的“进化”。顾名思义,复制就是将父代基因复制给子代。交叉即是两个染色体在某一位置处被剪断后的重新组合。变异是染色体上的某一基因发生了突变,变异的概率很小,它可以使染色体表现出新的形状。

1.1.2 遗传算法发展历程

早在20世纪50年代后期,一些生物学家就着手采用电子计算机模拟生物的遗传系统,尽管这些工作纯粹是为了研究生物现象,但其中已使用现代遗传算法的一些标识。

20世纪50年代末期,Holland教授开始研究自然界的自适应现象,并希望能够将自然界的进化方法用于实现求解复杂问题的自动程序设计。Holland教授认为:可以用一组二进制数来模拟一组计算机程序,并且定义了一个衡量每个“程序”正确性的度量——适应度值。Holland教授模拟自然选择机制对这组“程序”进行“进化”,直到最终得到一个正确的“程序”,Holland教授也成为遗传算法的创始人。

1967年,Bagley发表了关于遗传算法应用的论文,在其论文中首次使用了“遗传算法”来命名Holland教授所提出的“进化”方法。

20世纪70年代初,Holland教授提出了遗传算法的基本定理——模式定理,从而奠定了遗传算法的理论基础。模式定理揭示出群体中的优良个体的样本数呈指数级增长的规律。

1975年是遗传算法研究史上十分重要的一年,Holland教授总结了自己的研究成果,发表了在遗传算法领域具有里程碑意义的著作——《自然系统和人工系统的适应性》。在这本书中,Holland教授为所有的适应系统建立了一种通用理论框架,并展示了如何将自然界的进化过程应用到人工系统。Holland教授认为,所有的适应问题都可以表示为“遗传”问题,并用“进化”方法来解决。

80年代,Holland教授实现了第一个基于遗传算法的机器学习系统——分类器系统,开创了遗传算法机器学习的新概念。

1975年,De Jong在其博士论文中结合模式定理进行了大量纯数值函数优化计算实验,建立了遗传算法的工作框架,得到了一些重要且具有指导意义的结论。它还构造了5个著名的De Jong测试函数。1989年,Goldberg出版了专著《搜索、优化和机器学习中的遗传算法》。该书系统总结了遗传算法的主要研究成果,全面而完整地论述了遗传算法的基本原理及应用,奠定了现代遗传算法的科学基础。

1991年,Davis编辑出版了《遗传算法手册》一书,书中包括了遗传算法科学计算、工程技术和社会经济中的大量应用实例,对推广和普及遗传算法起到了重要的作用。 sXm7x+tO1kb4A6Z5JrDAYx7bEghQuO0VF4YeNAiZoStVAyg+PdiUh8ryfxr3F5uh

点击中间区域
呼出菜单
上一章
目录
下一章
×