参考博客(内含C++代码,流程图和伪代码示例)——最优化算法之粒子群算法(PSO)
参考博客(内含matlab代码,发展方向)——粒子群优化算法(PSO)
一、核心思想
利用群体中个体之间的协作和信息共享来寻找最优解。
二、对PSO的改进
对标准PSO算法的改进,无论是参数的选取、小生境技术的采用或是其他技术与PSO的融合,其目的都是希望在加强算法局部搜索能力的同时,保持种群的多样性,防止算法在快速收敛的同时出现早熟收敛。
三、PSO算法的优点
(1)它是一类不确定算法。不确定性体现了自然界生物的生物机制,并且在求解某些特定问题方面优于确定性算法。
(2)是一类概率型的全局优化算法。非确定算法的优点在于算法能有更多机会求解全局最优解。
(3)不依赖于优化问题本身的严格数学性质。
(4)是一种基于多个智能体的仿生优化算法。粒子群算法中的各个智能体之间通过相互协作来更好的适应环境,表现出与环境交互的能力。
(5)具有本质并行性。包括内在并行性和内含并行性。
(6)具有突出性。粒子群算法总目标的完成是在多个智能体个体行为的运动过程中突现出来的。
(7)具有自组织和进化性以及记忆功能,所有粒子都保存优解的相关知识。
(8)都具有稳健性。稳健性是指在不同条件和环境下算法的实用性和有效性,但是现在粒子群算法的数学理论基础还不够牢固,算法的收敛性还需要讨论。