湖南工学院电气与信息工程学院湖南衡阳421002
【摘要】针对PSO算法易早熟、收敛精度差、迭代后期收敛速度慢等问题,提出了一种基于算法参数变化的简化粒子群算法。该算法惯性权重和学习因子分别随迭代次数呈指数函数变化和正弦三角函数变化,使用4个经典Benchmark测试函数进行仿真测试。结果表明:本算法能较好收敛到全局最优值,且收敛速度快,收敛精度高,优化性能好。
【关键词】惯性权重;学习因子;简化粒子群算法
粒子群优化(PSO)算法是1995年首先提出的一种模拟鸟类觅食行为过程的智能优化算法,该算法结构简单且易于实现,成功解决了非线性优化等复杂优化问题,广泛应用于路径优化等领域。但PSO算法存在易早熟、迭代后期收敛速度慢、收敛精度差等缺点,因此,对PSO算法进行改进具有重要意义。
为克服PSO算法的上述缺点,Shi.Y等人先后提出惯性权重、线性惯性权重等策略;文献[]分别提出几种非线性惯性权重策略;文献[]提出正弦调整惯性权重的PSO算法,优化性能虽有改善,却未考虑学习因子的影响;文献[]首次提出舍去粒子速度项的简化PSO算法(SimplifiedParticleSwarmAlgorithm,SPSO);文献[]则论证了非线性惯性权重与三角函数学习因子之间的相互关系对PSO算法性能的影响,为将二者结合提供了新的研究思路。为此,本文提出一种基于算法参数变化的简化粒子群算法,以克服易早熟,迭代后期收敛速度慢、收敛精度低的问题。
1.粒子群算法
2.参数变化的简化粒子群算法
2.1惯性权重的改进策略
2.1.3惯性权重选择
研究表明:在算法初始阶段,开口向上的抛物线递减惯性和指数递减惯性权重的下降速度均大于线性递减惯性权重,而且下降速度随迭代次数增加而减小。故本文采用指数递减惯性权重策略。
2.2学习因子的改进策略
2.2.1非线性变化学习因子
(1)正弦函数变化学习因子
研究表明:迭代初期c1较大c2较小算法全局搜索能力强,迭代后期c1较小c2较大算法能更好收敛于全局最优值。因此,本文采用正弦三角函数变化的学习因子改进策略。
3.仿真测试
3.1算法函数
本文选用Sphere、Rosenbrock、Griewank、Rastrigrin4个经典测试函数进行测试,前两个函数为单峰函数,后两个函数为多峰函数,四个函数全局最小值均为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正弦函数变化。
3.2算法测试及结果分析
表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算法,它不仅有效避免了早熟,而且加快了收敛速度,提高了收敛精度。
参考文献:
[1]张顶学.关治洪.刘新芝.一种动态改变惯性权重的自适应粒子群算法[J].控制与决策.2008.23(11):1253-1257.
[2]姜长元.赵曙光.沈士根.等.惯性权重正弦调整的粒子群算法[J].计算机工程与应用.2012.48(8):40-42.