遗传算法是一类借鉴达尔文自然选择原理和孟德尔遗传机理而创制的仿生算法,通过模拟生物的代际进化,解决优化问题。
自然选择与遗传机制
在介绍遗传算法之前,我们需要知道一些基本的生物学概念、理论:
基因:基因也叫遗传因子。从承载生命信息的角度来说,基因承载着与生物体的生长、发育、疾病、死亡相关的一切“信息”,可以说所有生命现象都与基因有关;生命活动也无不由基因调控。从物质角度来说,承载着遗传信息的脱氧核糖核酸(DNA)片段为基因。
性状:可遗传的发育个体和全面发育个体可以观察到的特征,包括形态特征、生理特征、行为特征等。生物体的性状是由基因控制的。
遗传:指亲代的性状通过无性繁殖或有性繁殖遗传给子代,使子代继承亲代的特性。在有性生殖中,亲代各提供一部分基因融合为子代的基因,因此子代有可能具有亲代双方的特征。
变异:这里仅指发生在遗传过程中且可遗传的变异,即基因发生歧变(如DNA片段的缺失、重复、倒位等)导致遗传信息发生变化。变异可能会影响形状;从根本上来说,变异是生物进化的根源。
达尔文进化论:自然环境中资源有限,生物具有过度繁殖的倾向,会争夺各类生存资源;因此种群内部存在竞争。由于遗传和变异,生物性状具有多样性(本质上基因具有多样性),而环境倾向于使具有某类性状的生物获取资源、生存繁衍的机会;而因为性状不适应环境的个体因为在竞争中失败,会丧失生命,逐渐被淘汰。这样的过程就是自然选择;生物因自然选择而进化。
核心关系:①基因决定性状,性状很大程度决定生物是否适应环境;基因不是一成不变的,通过遗传和变异让子代产生新的性状。
②自然选择淘汰了不适应环境的个体,但也让适应环境的个体存活下来,得以繁衍。生物对环境的适应性来源于基因,因此“适应环境的基因”也得以遗传。
③将种群(彼此可交配繁殖的个体集合)中的全部基因看做一个整体,“基因池”;随着自然选择的进行,基因池中的基因在整体分布上发生着深刻的变化,这就是生物的进化。
理论的迁移
众所周知,自然选择学说与遗传理论在科学史上具有中心性的地位,且对人类思想史有着深刻的影响,其理论、概念被迁移、应用到了社会学、人类学、哲学等领域。而今天我们要谈的遗传算法,就是融合了该理论的一种启发式算法。
我们可以思考以下的问题:为什么自然选择学说和遗传理论可以被迁移到解决优化问题上来?或者说,解优化问题和生物进化有何相似性:
如果将优化问题的解看做生物个体,同时也看做生物的基因;优化问题的目标函数看做“自然选择”的标准。那么对每个解而言,它们的目标函数值不同,正如每个生物个体在自然选择前的“适应度”不同。目标函数值更符合期待的解如更适应自然选择的个体,而不符合期待的解如不适应自然选择的个体;
通过某种规则,让两个解生成一个能反映双方特征的新解,且通过引入随机变动让解“变异”,增加解的多样性,就能丰富解的范围,正如产生具有基因多样性的种群;
最后,基于适应度(目标函数决定的“自然选择”&#x