Memetic Algorithm(文化基因算法)

时间:2021-08-12 12:12:58

1. 文化进化理论

  威尔逊认为,从性质上来讲,文化进化总是以拉马克主义为特征的,即文化进化依赖于获得性状的传递,相对来说速度比较快;而基因进化是达尔文主义式的,依赖于经过几个世代的基因频率的改变,因而是缓慢的。威尔逊将可供选择的行为划分为分离的单位,称以文化基因。文化基因的传递可以是纯粹遗传的,也可以是纯文化的,此外,还可以通过基因──文化的方式传递,它同时兼有两者的某些特点:一方面,文化的发展在某种程度上要受到基因的制约和指导;另一方面,文化发明的压力又影响着基因的生存,且最终改变着遗传纽带的强度和韧力。人类的文化基因就是以这种方式传递的。(注:拉马克主义 Lamarckism 生物进化学说之一,为法国博物学家拉马克所创立。 认为生物在新环境的直接影响下,习性改变,某些经常使用的器官发达增大,不经常使用的器官则逐渐退化(用进废退),并认为这样获得的后天性状可传给后代,使生物逐渐演变,且认为适应是生物进化的主要过程。)

2.文化基因算法的思想

 

  Pablo Moscato认为,在遗传算法(GA)中,变异操作可以看作是含有一定噪声的爬山搜索,实际上模拟遗传编码和自然选择的过程不应包含变异操作,因为在文化进化的过程中, 在众多的随机变化步骤中得到一个正确的可提高整体性能的一步进展是非常困难的,只有此领域的拥有足够的专业知识的精通者们,才有可能创造新的进展,但是这样的事情发生的频率是很低的。 因此,文化基因的传播过程应是严格复制的,若要发生变异,那么每一步的变异都需要有大量的专业知识支撑,而所有的变异都应带来进展而不是混乱,这就是为什么我们观察到的文化进化速度要比生物进化速度快得多的原因。 对应于模拟生物进化过程的遗传算法,Moscato提出了模拟文化进化过程的文化基因算法,文化基因算法 用局部启发式搜索来模拟由大量专业知识支撑的变异过程,因此说, 文化基因算法是一种基于种群的全局搜索和基于个体的局部启发式搜索的结合体

 

  文化基因算法的这种全局搜索和局部搜索的结合机制使其搜索效率在某些问题领域比传统遗传算法快几个数量级,可应用于广泛的问题领域并得到满意的结果。 很多人将文化基因算法看作混合遗传算法、 遗传局部搜索或是拉马克式进化算法,实际上,文化基因算法提出的是一种框架、 是一个概念,在这个框架下,采用不同的搜索策略可以构成不同的文化基因算法,如全局搜索策略可以采用遗传算法、 进化策略、 进化规划等,局部搜索策略可以采用爬山搜索、模拟退火、贪婪算法、禁忌搜索、导引式局部搜索等。

 

  在遗传算法中,我们通常对个体(Individual) 进行选择、 交叉、 变异操作,通过对一代一代个体的适应性进化得到问题的最优解。 在文化基因算法中,用了智能体 (agent,实际上agent在此译为“代表”更加恰当)的概念,遗传操作的对象并不是种群空间中的普通个体,而是各局部区域推选出的优秀代表,遗传操作的结果是选出那些适应性强的优秀代表,同时也产生一些交叉作用后新的个体,这些新个体可能属于一些新的区域,在下一代的局部搜索中它们会被附近的优秀个体取代,然后再进行进一步的全局进化。 这种局部与全局的混合搜索机制显然要比单纯在普通个体间搜索的进化效率高得多。

3.文化基因算法的实现

  Pablo Moscato提出了一种基于竞争式作为文化基因算法的一个例子:对于一个给定的优化问题,可以先确定一定数量的初始个体,这些个体的状态可以是随机的,也可以根据某个启发式机制来确定,随后对每个个体都进行局部搜索,通过局部搜索提高个体适应度使种群达到一定的预备状后,就可以进行个体与个体之间的相互操作,这种相互作用可以是相互竞争,也可以是相互协作。相互竞争的操作类似于遗传算法中的个体选择过程,相互协作行为可以理解为遗传算法中的交叉机制或者其他产生新个体的方法,也可以更概括性的理解为信息的交换过程。局部搜索、竞争、协作操作都是循环进行的,知道满足终止条件。

 

 

参考文献: 刘漫丹。文化基因算法(Memetic Algorithm)研究进展[J]. 控制理论与应用。《自动化技术与应用》2007 年第 26 卷 第 11 期