粒子群算法(Particle Swarm Optimization),简称PSO算法,是一种模拟生物群体行为的随机优化算法,经常用于求解优化问题,寻找最优解或较优解,它是一种以群体智能为基础的问题优化方法。
粒子群算法源于对鸟群行为的研究。在算法中,优化问题被视作寻找高维空间中某个目标函数的最小值。PSO算法借鉴了生物界群体中群体行为的进化思想,尤其是对于“探索——开发”策略的强调,让粒子群算法在大规模优化问题上表现出了良好的适应度。
在粒子群算法中,每个候选解被表示为群体中称为“粒子”的对象。每个粒子携带两个个体向量,一个表示该粒子本身以往的最优解,另一个表示整个粒子群体中的全局最优解。其运作过程主要包括初始化粒子群体、评估群体中每个粒子的适应度、更新每个粒子的位置和速度、更新全局最优解以及更新每个粒子自身的最优解等步骤。
粒子群算法已经成功地应用于多领域的优化问题。不论是在智能感知、数据挖掘、路径规划、机器学习等领域,还是在系统优化、资源调度、电力系统优化等实际问题中,都取得了较好的应用效果。