本文共 537 字,大约阅读时间需要 1 分钟。
本节书摘来异步社区《Java遗传算法编程》一书中的第2章,第2.9节,作者: 【英】Lee Jacobson(雅各布森) , 【美】Burak Kanber(坎贝尔),更多章节内容可以访问云栖社区“异步社区”公众号查看。
在本章中,你已经学会了实现遗传算法的基本知识。本章开头的伪代码提供了一个通用的概念模型,针对本书其余部分所有要实现的遗传算法:每个遗传算法将初始化并评估种群,然后进入一个循环,进行交叉、变异和再评估。仅当终止条件满足时,才退出循环。
在本章中,你建立了遗传算法的支持组件,尤其是Individual和Population类,在后面的章节中基本上会复用它们。然后你专门建立了GeneticAlgorithm类,具体解决“全一”问题,并成功地运行了它。
你还了解了以下内容:虽然每个遗传算法在概念上和结构上相似,但不同的问题领域需要评估技术(即适应度评分、交叉技术和变异技术)的不同实现。
本书其余的部分将通过示例问题,探讨这些不同的技术。在后面的章节中,你将复用Population和Individual类,只需轻微的修改。然而,后面每章将大量修改GeneticAlgorithm类,因为这个类是交叉、变异、终止条件和适应度评估发生的地方。
转载地址:http://pycda.baihongyu.com/