# 17. Geatpy 进化算法

# 1. 简介

# 1.1. Geatpy 简介

  1. Geatpy 是一个高性能实用型进化算法工具箱,提供许多已实现的进化算法中各项重要操作的库函数,并提供一个高度模块化、耦合度低的面向对象的进化算法框架,利用“定义问题类 + 调用算法模板”的模式来进行进化优化,可用于求解单目标优化、多目标优化、复杂约束优化、组合优化、混合编码进化优化等,并且能和 SCOOP 等框架紧密配合进行分布式计算。

  2. 安装

    pip install geatpy
    
    1

# 1.2. 遗传算法简介

  1. 遗传算法简介

    遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。 其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,不需要确定的规则就能自动获取和指导优化的搜索空间,自适应地调整搜索方向。 遗传算法以一种群体中的所有个体为对象,并利用随机化技术指导对一个被编码的参数空间进行高效搜索。其中,选择、交叉和变异构成了遗传算法的遗传操作;参数编码、初始群体的设定、适应度函数的设计、遗传操作设计、控制参数设定五个要素组成了遗传算法的核心内容。

# 2. 算法介绍

# 2.1. 多目标优化

  1. 适应性权重遗传算法 (awGA)
  2. 基于分解的多目标进化算法 (MOEA)
  3. 非支配排序遗传算法 (NSGAⅡ)

# 3. 使用方法

# 3.1. 单目标优化

  1. 目标函数
  2. 代码

# 3.2. 多目标优化

  1. 目标函数

    min(x)min (x)

  2. 代码

# 4. 备注

  1. Geatpy 官网🔗 (opens new window)
  2. 超详细的遗传算法 (Genetic Algorithm) 解析🔗 (opens new window)
  3. 粒子群算法和遗传算法的比较🔗 (opens new window)
  4. 遗传算法 与 粒子群算法孰好🔗 (opens new window)
lastUpdate: 3/30/2023, 2:14:30 PM