7 重插入 通过前面的选择、重组和变异后,我们得到的是育种后代,此时育种后代的个体数有可能会跟父代种群的个体数不相同。这时,为了保持种群的规模,这些育种后代可以重新插入到父代中,替换父代种群的一部分个体,或者丢弃一部分育种个体,最终形成子代种群。 重插入方案有以下两种:
1) 全局重插入(Global reinsertion): 这种插入算法适用于使用除了本地选择外的其他选择算法所生成的交配池。假如在选择操作时使用了本地选择算法,那么重插入中就不能用全局重插入算法了。 • 育种个体与父代个体一样多,直接用所有的育种个体生成新一代种群(完全重新插入)。 • 育种个体比父代个体少,把育种个体随机均匀地替换父代的个体(均匀重新插入)。 • 育种个体比父代个体少,取代适应度较低的父代个体(精英重新插入)。 • 育种个体比父代个体多,重新插入适应度较大的育种个体(精英保留重新插入) 完全重新插入是最简单的重插入算法。然而最坏的情况是:父代中最优秀的个体并没有繁殖产生优秀的个体,此时在重插入时又被最差的个体替代,因此种群丢失了精英。因此在多数情况下,推荐使用精英重新插入和精英保留重新插入的方法。 2) 本地重插入(Local reinsertion): 在前面章节中介绍过本地选择算法,它在有界邻域中选择个体。那么育种后代的重插入也应该发生在相同的邻域中。这是一种基于位置信息的重插入算法,重插入时使用的邻域要跟本地选择中的一样。 以下的方法是可行的: • 把育种个体随机均匀地替换其所在邻域内的父代个体。 • 把育种个体替换其所在邻域内的最差的父代个体。 • 把更适合插入到相邻邻域的育种个体替换相邻邻域中的最差的父代个体。 • 把更适合插入到相邻邻域的育种个体随机均匀地替换相邻邻域中的父代个体。