1
模式识别与智能计算的MATLAB实现
1.13.2 11.2 全局模式与局部模式

11.2 全局模式与局部模式

Kennedy等在对鸟群觅食的观察中发现,每只鸟并不总是能看到鸟群中其他所有鸟的位置和运动方向,而往往只是看到相邻的鸟的位置和运动方向。由此而提出了两种粒子群算法模式即全局模式(Global Version PSO)和局部模式(Local Version PSO)。

全局模式是指每个粒子的运动轨迹受粒子群中所有粒子的状态影响,粒子追寻两个极值即自身极值和种群全局极值。前述算法的粒子更新公式就是全局模式。而在局部模式中,粒子的轨迹只受自身的认知和邻近的粒子状态的影响,而不被所有粒子的状态所影响。粒子除了追寻自身极值pid外,不是追随全局极值pgd,而是追随邻粒子当中的局部极值pnd。在该模式中,每个粒子需记录自己及其邻居的最优解,而不需要追寻粒子当中的局部极值,此时,速度更新过程可用下式表示:

vid=wvid(t)+η1rand()[pid-zid(t)]+η2rand()[pnd-zid(t)]

zid(t+1)=zid(t)+vid(t+1)

全局模式具有较快的收敛速度,但是鲁棒性较差;相反,局部模式具有较高的鲁棒性,而收敛速度相对较慢。因而在运用粒子群算法解决不同的优化问题时,应针对具体情况采用相应模式。