6.2.1 粒子群优化算法

6.2.1 粒子群优化算法

1995年Kennedy和Eberhart首次提出粒子群优化(PSO)算法,该算法基于鸟群对于已知流场设计方法和鱼群的觅食行为设计,核心的优化迭代更新方式中只涉及速度和位置变化,因此算法的设置简单,避免了搜索时间过长的问题,收敛速度快。因此,粒子群优化算法被广泛应用到实际工程问题中,并在求解中进一步验证了其优越性。该算法作为一种基于群体智能的新型演化计算技术,具有简单易实现、设置参数少、优化能力强等优点;但在进化后期,粒子群算法侧重于开采能力,其局部搜索能力强,却存在种群多样性消失及早熟停滞等现象,从而陷入局部最优的缺陷。

粒子群优化算法通过模拟鸟群的飞行觅食行为,将解空间中的设计变量看作一群没有体积和质量的“鸟”(也称“粒子”),将所求问题的最优解看作鸟群寻找的“食物”,粒子没有质量和体积,只有速度和位置信息,粒子通过速度和位置信息的更新逐渐趋向优化目标,在这个过程中,粒子跟踪个体历史最优位置和群体历史最优位置。

PSO算法的流程如图6.1所示。

粒子的更新规律如下:

式中,为第t步中,第i个粒子第j维上的位置;为第t步中,第i个粒子第j维上的速度;1c、2c为调节步长的学习因子;1r、2r为(0,1)的随机数;w为惯性因子,随步数从0.9到0.4递减;pbest为粒子个体极值;gbest 为种群群体极值。

图6.1 PSO算法的流程