python人工智能包inspyred使用心得-生物启发算法概述

1 生物启发算法概述


生物启发算法从属于计算智能,属于人工智能领域中智能算法研究环节。其设计目的在于模拟动物生存过程,发现优化问题解决途径。通常适用于组合优化问题。目前,生物启发算法已经发展为人工智能领域的重要方向,在解决海量数据处理等问题上,具有高效、稳定等优势。


不同学者根据不同生物的生存过程,抽象出各类仿生方法。具有代表性的包括:模拟鸟类觅食过程的粒子群算法,模拟蚂蚁觅食的蚁群算法,模拟密封采蜜过程的蜜蜂算法等。虽然各算法寻优的思路不同,但从各算法的结构上看,总会包括以下内容:

  1. 种群初始化
  1. 根据目标函数衡量个体的适应度
  1. 设置算法的控制参数
  1. 初始化算法监控器*
  1. 选择父代个体,根据演化机制,生成子代
  1. 衡量子代的适应度
  1. 根据适应度生成新的子代
  1. 判断结束条件,否则继续循环
inspyred依据上述通用过程,设计了基于生物启发算法的人工智能工具包。该包中得主要类实现了上述步骤,在每一次用户构建人工智能程序的时候,都可以根据需要,将已实现的默认类或已修改的自定义类嵌入所需的步骤,组成解决实际问题的人工智能程序。


简要的概述inspyred的类与上述步骤的对应关系:

  • 个体适应度衡量-Evaluator
  • 算法结束条件-Terminator
  • 算法监控器-Observer
  • 个体选择-Selector
  • 生成子代-Variator
  • 子代取代父代-Replacer
  • 精英个体-Archiver

后续通过例子简单了解inspyred构成智能算法的方式。

你可能感兴趣的:(python人工智能包inspyred使用心得-生物启发算法概述)