在遗传算法的基础理论研究方面,它的相关性质可以通过模式定理和构造块假设等分析加以讨论,Markov链也是分析遗传算法的一个有效工具。
1.模式(Schema)理论
(1)模式定理
模式表示一些相似的模块,它描述了在某些位置上具有相似结构特征的个体编码串的一个子集,以及该集合中位串上共同的基因特征。模式的阶是指模式中所包含0和1确定基因位的个数。模式的定义长度是指模式中从左到右第一个无关符和最后一个无关符之间的距离。模式的维数是指模式中所包含的位串的个数,也称为模式的容量。
模式定理:在遗传算子选择、交叉、变异的作用下,那些低阶、定义长度短、超过群体平均适应值的模式的生存数量,将随着迭代次数的增加以指数规律增长。
该定理反映了重要基因的发现过程。重要基因的联结对应于较高的适应值,说明了它们所代表的个体在下一代有较高的生存能力,是提高群体适应性的进化方向。
(2)建筑模块假设(Building Block)
由于遗传算法的求解过程并不是在搜索空间中逐一地测试各个基因的枚举组合,而是通过一些较好的模式,像搭积木一样,将它们拼接在一起,从而逐渐地构造出适应度越来越高的个体编码串。
建筑模块假设:定义长度短、低阶的、适应值高的模式(建筑模块),在遗传算子的作用下被采样、重组,从而形成高阶、长距、高于群体平均适应值的模式。
(3)模式处理与隐含并行性(Implicit Parallelism)
对于规模为N的群体隐含着2L-N·2L个模式。由于交叉算子的作用,并不是所有的模式都能以高概率被处理,一些定义长度较长的模式将遭到破坏。
在遗传算法的运行过程中,每代都处理了pop个个体,但由于一个个体编码串中隐含有多种不同的模式,所以算法实质上却并行处理了更多的模式,所处理的模式总数与群体规模pop的立方成正比。这一性质称为隐并行性。
2.遗传算法的收敛性分析
(1)经典遗传算法的收敛性分析
经典遗传算法可描述为一个齐次Markov链,因为经典遗传算法的选择、交叉和变异操作都是独立随机进行的,新群体仅与其父代群体及遗传操作算子有关,而与其父代群体之前的各代群体无关,即群体无后效性,并且各代群体之间的转移概率与时间的起点无关。
已经证明[135,136]:经典遗传算法收敛于最优解的概率小于1;使用保留最佳个体策略的经典遗传算法能收敛于最优解的概率为1。
(2)遗传算法的马尔可夫链模型
将遗传算法的种群迭代序列视为一个有限状态马尔可夫链来加以研究。主要运用种群马氏链转移概率矩阵的某些一般性,分析遗传算法的极限行为,但由于所采用有限状态马氏链理论本身的限制,该模型只能用于描述通常的二进制或特殊的非二进制遗传算法,另外,转移概率的具体形式很难表达,因而,对于较大规模的遗传算法,只能借助于遍历性考查而得出粗糙的结论。
(3)齐次遗传算法收敛性分析
一般来说,在给定的遗传算法中,适应度函数以及遗传算子均不随时间变化时,相应的状态转移矩阵为常数阵,因此所对应的MarKov链为齐次MarKov链,一般称这样的遗传算法为齐次遗传算法。
无论是否允许父代参加竞争,标准遗传算法及其变形,以及广义有限群体模型所对应的遗传算法等,这类齐次遗传算法总是强不收敛的。并且对于基于非保留策略的齐次遗传算法,理论分析已给出了它收敛的充分条件。
对于遗传算法的收敛性及随机性分析,还有其他细致的分类别的理论,如遗传算法的收敛速率分析、广义退火遗传算法的收敛性分析、遗传算法的随机泛函分析等,在这里不再详细介绍。目前,遗传算法的理论机制仍不是特别清楚,这可能和生命科学的研究一样,将是一个永恒的研究课题,并且也是一个难题。
3.遗传算法执行策略的改进
自从1975年J.H.Holland系统地提出遗传算法的完整结构和理论以来,众多学者一直致力于推动遗传算法的发展,对编码方式、控制参数的确定、选择、交叉以及变异算子的改进进行了深入的研究和探讨,引入了动态策略和自适应策略来改进遗传算法的性能,并针对遗传算法收敛速度慢等,有的还结合传统的优化方式,使得整个算法的性能得到很大的提高,改进策略大致可以概括为一下几个方面:
(1)改变遗传算法的组成成分或使用技术,如选用优化控制参数、适合问题特性的编码技术等;
(2)采用混合遗传算法;
(3)采用动态自适应技术,在进化过程中调整算法控制参数;
(4)采用非标准的遗传操作算子;
(5)采用并行遗传算法。
相关的典型思路和改进方法有分层遗传算法、CHC算法、messy遗传算法、基于小生境技术的遗传算法、混合遗传算法、并行遗传算法等,具体改进方法有:Glover等[137]提出了遗传算法与禁忌搜索(tabu search)相结合的策略;Poths等[138]为克服遗传算法的早熟现象,提出了基于迁移和人工选择的遗传算法;Kazarlis等[139]为提高遗传算法的搜索性能,把微遗传算法(microgenetic algorithms,种群规模小并且进化代数少的遗传算法)作为标准遗传算法的广义爬山算子,构成混合遗传策略;张讲社等[140]提出了遗传算法与模拟退火算法(simulated annealing)的混合策略,以克服遗传算法早熟的缺点。此外,还有遗传算法与模糊集(fuzzy set)结合的混合算法[141],遗传算法与混沌(chaos)相结合的策略[142,143],遗传算法与爬山法、梯度法等局部搜索算法的结合[144,145],遗传算法与单纯形法相结合[146,147],神经网络与遗传算法相融合的策略[148],遗传算法与正交设计的结合[149,150],以及在遗传算法中加入免疫算子,构成免疫进化算法(immune evolutionary algorithms)[151],等等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。