差分进化算法Python实现

本文共407个字,预计阅读时间需要2分钟。

DE 算法主要用于求解连续变量的全局优化问题,其主要工作步骤与其他进化算法基本一致,主要包括变异(Mutation)、交叉(Crossover)、选择(Selection)三种操作。算法的基本思想是从某一随机产生的初始群体开始,利用从种群中随机选取的两个个体的差向量作为第三个个体的随机变化源,将差向量加权后按照一定的规则与第三个个体求和而产生变异个体,该操作称为变异。然后,变异个体与某个预先决定的目标个体进行参数混合,生成试验个体,这一过程称之为交叉。如果试验个体的适应度值优于目标个体的适应度值,则在下一代中试验个体取代目标个体,否则目标个体仍保存下来,该操作称为选择。在每一代的进化过程中,每一个体矢量作为目标个体一次,算法通过不断地迭代计算,保留优良个体,淘汰劣质个体,引导搜索过程向全局最优解逼近。

DE算法伪代码:

DE算法Python实现

 

读者评分
[评分人数: 3 平均分: 4]

3 位极客在 “差分进化算法Python实现” 留下足迹

  1. 这里基本上涵盖了主流的几种Python实现的高性能DE算法:https://github.com/geatpy-dev/geatpy/tree/master/geatpy/templates/soeas/DE

评论