基于粒子交互学习策略的PSO算法(IIL-PSO)

IIL-PSO算法思想(单目标)

Interswarm Interactive Learning

①初始化:
将粒子随机分为数量相等的两组,为每组粒子初始化位置,
速度,全局最优粒子、和个体历史最优数组。

②迭代与学习:
计算每组粒子的成为被学习粒子群的概率。成为被学习粒子群中的粒子更新和普通PSO算法一样,
成为学习粒子群中的粒子,不仅需要学习自身和所在粒子群的经验,还需学习被学习粒子群中的经验。
在此基础上,为了防止两个粒子群结果接近,作者提出了速度变异策略和全局最优震动策略。

IILS

(Interswarm Interactive Learning Strategy)

①分出两个粒子群,计算成为被学习粒子群的概率。

T:时间参数(作者称为temperature,时间越长,两个粒子群的概率越接近)

②在学习粒子群中,计算每个粒子的学习概率,不需要学习的粒子利用简单PSO算法更新,需要学习的粒子不仅需要学习自身和所在粒子群的经验,还需学习被学习粒子群中的经验。

Si:粒子编号

N:当前粒子群粒子总数

VMO

(Velocity Mutation Operator)

目的:为了防止两个粒子群的全局最优结果接近,作者使用了速度变异算子。

操作:随机选择一个粒子群,在此粒子群中随机选择一个粒子和该粒子需要变异的维度数量。

GBVS

(Global Best Vibration Strategy)

目的:为了防止PSO陷入局部最优

由于Gbest已经有良好的适应度的值,因此在这里只需要对一个维度进行修改

流程图

原文

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注