人工智能算法(卷2):受大自然启发的算法
上QQ阅读APP看书,第一时间看更新

第1章“种群、计分和选择”引入本书其余部分将要使用的概念。受大自然启发的算法通过形成解的种群来解决问题。评分允许算法评估种群成员的有效性。

第2章“交叉和突变”介绍几种交叉和突变的方法,种群成员可以为下一代创建潜在的更好的解。交叉允许两个或多个潜在解结合其特征,产生下一代的解。突变让个体可以为下一代创建其自身的稍有变化的版本。

第3章“遗传算法”将第1章和第2章的思想组合成一个具体的算法。遗传算法通过演化来优化定长数组,以提供更好的结果。本章将展示如何使用定长数组找到旅行商问题(Traveling Salesman Problem,TSP)的解决方案,以及如何使用花朵的测量值来预测鸢尾花种类。

第4章“遗传编程”展示了演化算法的解数组不一定总是固定长度的。实际上,利用这些想法,可以将计算机程序表示为树,这些树可以演化并生成其他程序,以更好地执行其预期任务。

第5章“物种形成”讨论如何将种群划分为一个物种。就像交叉是通过种群中两个个体的组合来创造后代一样,物种形成也通过相似解决方案的交配而产生后代。程序员从大自然中借用了这个概念,只有同一物种的生物才可以配对并繁殖。

第6章“粒子群优化”使用粒子组搜索最优解。计算机软件中的这种分组本能是根据自然建模的。“牛群”“昆虫群”“鸟群”和“鱼群”等例子表明,有机体自然倾向成群出行,将成群出行作为对付捕食者的最佳解决方案。

第7章“蚁群优化”讨论蚂蚁的信息素追踪如何为计算机程序员提供灵感。随着越来越多的蚂蚁跟随其同伴留下的化学物质前进,足迹变得越来越强。计算机程序可以采用类似的技术来找到最优解。

第8章“细胞自动机”利用简单的规则来产生非常复杂的结果和模式。创建有趣的细胞自动机的关键,是找到一些可以利用基于人类的遗传算法进行演化的简单规则。

第9章“人工生命”旨在反映出真实生命的特征,其中包含本书的一个重点项目。本章将创建一个模拟植物生长的程序。为了帮助读者查看进度,本章将该程序划分为3个里程碑,并提供代码。

第10章“建模”讨论数据科学如何使用受大自然启发的算法。本章还包含了本书的第二个重点项目。本书将利用来自Kaggle教程竞赛之一的数据集,向读者展示如何创建模型来预测泰坦尼克号上的乘客是幸存还是死亡。本章也会用3个里程碑展示这个项目,以便读者验证进度。