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

大数据技术及安全研究
                     Big Data Technology and Security Research


             次。基本的演化算法所使用的三种操作属于个体级层次的遗传操作。为此,有的
             研究者便将其他层次的一些遗传操作(称为高级操作)引入到演化算法中。虽然
             高级操作的引入对演化算法的稳健性有一定改善,但它们增加了额外的计算开销
             且适应的编码种类较少,而且不少人对采用这些操作能否增强演化算法的计算

             性能和求解效率持怀疑态度。在演化计算中使用的基因级的高级操作包括:倒位
            (Inversion)、显性基因(Dominance)、二倍体(Diploidy)、重复(Duplication)、
             缺失(Deletion)、易位(Translocation)和隔离(Segregation)等。群体级的高
             级操作包括:迁移(Migration)、婚配限制(Marriage Restriction)、分享(Sharing)

             和挤聚(Crowding)等。
                 (六)控制参数的选取
                 在设计演化算法时,一方面,需要针对具体问题选择适当的编码方案及相应
             的遗传算子;另一方面,需要选择算法的控制参数。对一个具体问题,要想获得

             最优的参数设置,通常采取下述两种方法之一:①试验法。该方法是对每个参数
             在某区间上按一定的间隔取有限个值,然后根据不同的参数组合执行演化算法,
             以比较它们的性能,并在其中选择最优的组合。②二级演化算法(meta-EA)。
             这种方法将演化算法控制参数的选取问题也作为一个优化问题,从而用一个二级

             演化算法去优化控制参数。
                 虽然上述两种方法能就某类问题获得较佳的参数设置,但它们的计算量都比
             较大,因而在计算实际问题时用得并不是很多。常用的方法是根据经验取定控制
             参数值,然后多次执行算法,以获得问题的最优或近似最优解。传统演化算法在

             演化过程中控制参数是不变的,这样,选取合适的控制参数对算法设计就非常重
             要。因此,不少学者提出了自适应调整遗传概率的策略。其基本思想是,在演化
             的初期应使用较大的遗传概率,从而使群体内具有足够的多样性,这将有助于找
             到全局最优解;而在演化的后期,较小的遗传概率将使算法具有良好的收敛性,

             且使搜索在某些可能有最优解的局部邻域内进行。实际上,我们还可以考虑在同
             一演化代中,对不同的个体使用不同的变异概率。这样,在较好的解的局部进行
             搜索,而对较差的解则在其较大的邻域内搜索。
                 (七)演化算法的改进

                 基本演化算法源于对生物演化过程的直接模拟,求解问题时,一般需要较大
             的运算量且有时收敛不到全局最优解。为了提高算法的效率、改善算法的性能,


             ·146·
   153   154   155   156   157   158   159   160   161   162   163