Page 159 - 大数据技术及安全研究
P. 159

第四章  大数据时代演化算法与进化算法的有关分析




              人们对传统的演化算法做了诸多改进,如多种群和变种群策略、混合策略、稳态
              策略等。

                  三、分层演化算法


                  HEA 可以认为是遗传算法的一种变形,它们都是模拟达尔文生物进化论的
              自然选择和遗传学机理的生物进化过程的计算模型,是通过模拟自然进化过程搜
              索最优解的方法。二者都是从一个种群开始,种群代表问题的潜在解集,由经过
              基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。在
              算法一开始,我们就需要实现从表现型到基因型的映射,也就是编码工作。编码

              通常有浮点数编码和二进制编码等方式。
                  当第一代的种群产生以后,算法将依照生物学中优胜劣汰的原理,逐代演化
              从而产生出越来越好的近似解。每一次迭代称为一代,新的一代的产生,都要经

              过以下三个步骤:
                  ①计算:在父代中的每一个个体都通过适应值评价函数计算得到适应值。
                  ②选择:适应值高的个体将被选择,成为新一代的个体。
                  ③交配:通过交叉、变异等遗传操作来产生新的个体。

                  以上三个步骤不断地循环操作,指导问题得到最优解或者满足终止条件。最
              后一代种群中的最优个体经过解码后,可以作为问题的近似最优解。
                  从生物学和医学的观点上看,染色体中的基因结构是各种不同的基因按照分
              层的结构排列着的,根据这个事实,Tang 在 1998 年提出了分层演化算法(HEA)

              来模拟这个现象。如果一个控制基因的值是“1”,表示与它对应的参数基因是
              可用的;如果是“0”,则表示与它对应的参数基因不可用。参数基因被第二层
              控制基因直接控制,而第二层控制基因被第一层控制基因控制,因此,只有基因
              78.5 是活跃的。尽管现在大多数研究的遗传算法的染色体都是固定长度的,也有

              很多研究是围绕着具有可变长度的染色体或者其他结构的染色体的遗传算法展开
              的。从某种程度上来说,HEA 可以算是一种可变长度染色体的简明的表现形式。
              无论如何,通过这种分层的结构,不仅可以简化简单的遗传算法的重新排列,而
              且在算法的鲁棒性和参数的设置上都有所改进。对于具有分层结构的问题,HEA

              可以很自然地通过它的特点对问题的参数进行编码,因此,它的这种灵活的表示
              对于求解一些具有限制的问题时,具有一定的优势。相比起遗传算法,HEA 更


                                                                                  ·147·
   154   155   156   157   158   159   160   161   162   163   164