相关资源链接:
https://download.csdn.net/download/julengdong2179/12436162
一、粒子群算法简述
粒子群算法(Particle Swarm Optimization, PSO)是一种基于群体的随机优化技术,其基本思想是受鸟类群体行为的研究结果的启发。PSO算法通过模拟群体行为,将每个可能产生的解表述为群中的一个微粒,每个微粒都具有自己的位置向量和速度向量,以及一个由目标函数决定的适应度。所有微粒在搜索空间中以一定速度飞行,通过追随当前搜索到的最优值来寻找全局最优值。
粒子群算法对个体进行操作的3 条基本规则是:
①飞离最近的个体,以避免碰撞;
②飞向目标;
③飞向群体的中心。
二、PSO算法的数学模型
设在一个S维的目标搜索空间中,有 m m m个粒子组成一个群体,其中第 i i i个粒子表示为一个S维的向量 x i ⃗ = x i 1 , x i 2 , … , x i S \vec{x_i}=x_{i1},x_{i2},\ldots,x_{iS} xi=xi1,xi2,…,xiS, i = 1 , 2 , … , m i=1,2,\ldots,m i=1,2,…,m,每个粒子的位置就是一个潜在的解。将 x i ⃗ \vec{x_i} xi代入一个目标函数就可以算出其适应值,根据适应值的大小衡量解的优劣。第 i i i个粒子的飞翔的速度是S维向量,记为 V i ⃗ = V i 1 , V i 2 , … , V i S \vec{V_i}=V_{i1},V_{i2},\ldots,V_{iS} Vi=Vi1,Vi2,…,ViS。记第 i i i个粒子迄今为止搜索到的最优位置为 P i ⃗ = P i 1 , P i 2 , … , P i S \vec{P_i}=P_{i1},P_{i2},\ldots,P_{iS} P