进化计算与遗传编程:原理、方法与优化策略
1. 种群多样性的重要性
种群多样性在进化计算中至关重要。在繁殖过程中,信息可能会丢失,重组池的多样性也会逐渐降低,导致多样性丧失的原因完全是未被采样的个体。有观点认为,进化的进展根本上依赖于种群中变异的存在。虽然选择作用于表型,但表型变异是遗传和表观遗传过程共同作用的结果。
种群多样性有助于产生更优的程序,这种能力被称为可进化性,它对搜索性能起着重要作用。如果种群多样性不足,交叉和变异等遗传算子在从可用基因库中产生新的解决方案候选时会变得效率低下,降低成功适应的可能性。普遍认为,多样性促进适应,有助于避免进化停滞和过早收敛。如果在找到良好解决方案之前就出现多样性严重丧失的情况,算法就会过早收敛。
选择算子导致的多样性丧失速率在一定程度上可以通过选择强度或选择压力来控制。例如,在锦标赛选择方案中,锦标赛规模控制着选择强度,较大的锦标赛会导致个体之间的竞争更加激烈,重组池中的独特个体更少。锦标赛组规模必须与种群大小一起进行调整。
关于在结构(基因型)或语义层面促进多样性对搜索过程哪个更好,仍存在争议。结构度量通常使用树距离或指标,计算成本较高;语义或行为度量使用个体的适应度或其在训练数据上的输出信息,由于这些信息在评估过程中已经可用,因此通常更容易计算。
2. 缓冲、冗余和中性
基因型和表型之间的依赖关系是复杂的,上位性在基因型相互作用的结果中起着重要作用。上位性描述了一个基因的表达及其后续选择价值取决于基因组中其他基因的情况。为了更好地理解这种依赖关系,引入了适应度景观的概念,它是基因型空间中的一个假想表面,相邻点代表相差一个突变的基因型,表面的高度由基因型的平均种群适应度给
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



