周雪婷
湖南工学院电气与信息工程学院 湖南衡阳 421002
粒子群优化(PSO)算法是1995年首先提出的一种模拟鸟类觅食行为过程的智能优化算法,该算法结构简单且易于实现,成功解决了非线性优化等复杂优化问题,广泛应用于路径优化等领域。但PSO算法存在易早熟、迭代后期收敛速度慢、收敛精度差等缺点,因此,对PSO算法进行改进具有重要意义。
为克服PSO算法的上述缺点,Shi.Y等人先后提出惯性权重、线性惯性权重等策略;文献[1]分别提出几种非线性惯性权重策略;文献[2]提出正弦调整惯性权重的PSO算法,优化性能虽有改善,却未考虑学习因子的影响;文献[3]首次提出舍去粒子速度项的简化 PSO算法 (Simplified Particle Swarm Algorithm,SPSO);文献[4]则论证了非线性惯性权重与三角函数学习因子之间的相互关系对PSO算法性能的影响,为将二者结合提供了新的研究思路。为此,本文提出一种基于算法参数变化的简化粒子群算法,以克服易早熟,迭代后期收敛速度慢、收敛精度低的问题。
2.1.3 惯性权重选择
研究表明:在算法初始阶段,开口向上的抛物线递减惯性和指数递减惯性权重的下降速度均大于线性递减惯性权重,而且下降速度随迭代次数增加而减小。故本文采用指数递减惯性权重策略。
2.2.1 非线性变化学习因子
(1)正弦函数变化学习因子
研究表明:迭代初期c1较大c2较小算法全局搜索能力强,迭代后期c1较小c2较大算法能更好收敛于全局最优值。因此,本文采用正弦三角函数变化的学习因子改进策略。
本文选用 Sphere、Rosenbrock、Griewank、Rastrigrin 4 个经典测试函数进行测试,前两个函数为单峰函数,后两个函数为多峰函数,四个函数全局最小值均为0;
本文所提算法与其他5种改进算法具体描述如下:
(1)PSO 算法:=0.8,c1=c2=2.0。
(2)G1-SPSO 算法:=0.8,c1,c2正弦函变化。
(3)G2-SPSO算法:呈W1变化,c1,c2正弦函数变化。
(4)G3-SPSO算法:呈W3变化,c1,c2正弦函数变化。
(5)G4-SPSO算法:呈W2变化,c1,c2正弦函数变化。
表1 仿真测试结果
为验证所提算法的有效性和可行性,分别对六种算法应用上述 4个测试函数进行测试。参数设置如下:N=40,d=30,1=0.9,2=0.4,m=10;f1(x)、f2(x)、f3(x)、f4(x)的收敛精度分别为 10-10、10-5;f1(x)、f4(x)的 Tmax=50,f2(x)、f3(x)的 Tmax=100,运行 50 次。
表1所示仿真测试结果显示:在所有算法中,WCSPSO算法的平均迭代收敛次数最少,收敛精度最高,且算法的最优解均比其他算法小,更接近0。
综述所述,相比其他5种算法,WCSPSO算法收敛速度、收敛精度和寻优能力均有显著提升,且能有效避免早熟;对于单峰和多峰函数,WCSPSO算法都能获得较好的优化效果。
本文提出一种WCSPSO算法,其惯性权重指数变化,学习正弦变化因子,仿真结果证明所提算法明显优于其他5种PSO算法,它不仅有效避免了早熟,而且加快了收敛速度,提高了收敛精度。