粒子群优化算法(Particle Swarm Optimization,PSO)
PSO算法对每个粒子的要求
- 所有粒子都在一个D维空间中进行搜索
- 所有粒子都由一个适应函数确定适应值以判断目前位置的好坏
- 每个粒子都有记忆功能,可以记住寻找到的最佳位置
- 每个粒子有一个速度和飞行方向
粒子群优化算法求最优解:(D维空间中,有N个粒子)
- 粒子i的位置: X i = ( x i 1 , x i 2 , . . . x i D ) X_i=(x_{i1},x_{i2},...x_{iD}) Xi=(xi1,xi2,...xiD),将 X i X_i Xi带入适应函数 f ( x i ) f(x_i) f(xi)求适应值
- 粒子i的速度: V i = ( v i 1 , v i 2 , . . . v i D ) V_i=(v_{i1},v_{i2},...v_{iD}) Vi=(vi1,vi2,...viD)
- 粒子i自身经历最好的位置: p b a s t i = ( p i 1 , p i 2 , . . . p i D ) pbast_i=(p_{i1},p_{i2},...p_{iD}) pbasti=(pi1,pi2,...piD)
- 粒子种群经历过最好的位置: g b a s t = ( g 1 , g 2 , . . . g D ) gbast=(g_{1},g_{2},...g_{D}) gbast=(g