遗传算法 - 种群

种群是当前一代解决方案的子集。它也可以定义为一组染色体。处理 GA 种群时,需要记住几件事 −

  • 应保持种群的多样性,否则可能会导致过早收敛。

  • 种群规模不应保持过大,因为这会导致 GA 速度减慢,而较小的种群可能不足以形成良好的交配池。因此,需要通过反复试验来确定最佳种群规模。

种群通常定义为二维数组 - 种群大小、x 大小、染色体大小

种群初始化

在 GA 中初始化种群有两种主要方法。它们是 −

  • 随机初始化 − 使用完全随机的解决方案填充初始种群。

  • 启发式初始化 − 使用已知的启发式方法填充初始种群。

据观察,不应使用启发式方法初始化整个种群,因为这会导致种群具有相似的解决方案和很少的多样性。实验表明,随机解决方案是推动种群达到最优的解决方案。因此,使用启发式初始化,我们只需用几个好的解决方案来播种种群,用随机解决方案填充其余部分,而不是用基于启发式的解决方案填充整个种群。

还观察到,在某些情况下,启发式初始化只会影响种群的初始适应度,但最终,解决方案的多样性会导致最优性。

种群模型

有两种广泛使用的种群模型 −

稳定状态

在稳定状态 GA 中,我们在每次迭代中生成一个或两个后代,它们会替换种群中的一个或两个个体。稳定状态 GA 也称为增量 GA

代际

在代际模型中,我们生成"n"个后代,其中 n 是种群规模,迭代结束时整个种群将被新种群取代。