
一种改进学习因子的粒子群算法.doc
7页v pso算法作为一种随机搜索算法,在高维目标函数,pso对全局最 优解搜索有时不成功,而是陷入局部最优,为此许多研究者从不同 的角度给出不同的策略改进算法y.shi r和eberhart在1998年提出线性递减惯性权重的粒子群 算法,文献[3]给出了很多让非线性递减的方法文献[4、5、6]给 出了动态调整惯性权重的算法,使得惯性权值随着粒子的搜索状态 而改变而为了不使粒子陷入局部最优,文献[7、8、9、10]采用 变异的思想本文在采用文献[2]中提到的改进惯性权重的基础上, 对学习因子进行改进,使得算法更好地平衡局部搜索能力和全局搜 索能力通过五个测试函数的试验结果对比,发现本文算法在以前 的算法上得到很好的改进1 惯性权重线性递减pso算法[ldiw- pso]shi和eberhart在1998年提出了惯性权重线性递减linearlydecreasing inertia weight 记为]ldiw-pso]3 =3 max-(3 max-3 min) (1)式中3 max, 3 min分别为最大,最小惯性权重,一般取3 max=0.9,3 min=0.42 改进学习因子的pso算法2.1 微粒均匀分布在微粒位置初始化时往往是在搜索空间随机产生,这样容易造成 微粒初始位置过于集中而使得搜索的失败。 为此,本文在初始化时 让微粒“相对均匀”分布在搜索空间里设有m个微粒,搜索空间 是[a,b]d, m个微粒的初始位置x10,x20,…,xm0, xi0W [a+(i-1),b+i](d 是空间维数)2.2 改进学习因子粒子群算法中的粒子在搜索过程中,希望搜索的前阶段速度大, 达到对整个空间的搜索不致于陷入局部本文就是对学习因子c1 和c2进行改进,在搜索的前阶段c1取较大值,c2取较小值,目的 是让粒子多向自己的最优pbest学习,向社会最优gbest学习少一 些,使粒子的全局搜索能力增强;而在后阶段刚好相反, c1 取较小 值,c2取较大的值,使粒子的向社会最优位置gbest的局部靠拢, 使得局部搜索增强我们对c1和c2的改进如下公式:c1=1.3+1.2cosc2=2-1.2cos理魁一论文发表专家一 麵U中国学木期测其中k是当前迭代次数,itermax是最大迭代次数由 1.3+1.2cosx=2T.2cosx, x 三[0, n ],解得 x^0.47n因此,当 lWkW0.47itermax 时,cl〉c2;当 0.47itermaxWkW itermax 时,cl〈c23 对比试验3.1 实验设计 为了分析“相对均匀”初始化和修改学习因子对算法优化的效果,本文进行如下对比试验。 为了记法方便进行如下说明对五个测试函数仅采用 ldiw-pso 算法的情形,记为 a1 对五个测试函数采用 ldiw-pso 算法基础上,采用本文提出对粒 子的初始化和改进学习因子的算法,记为a2本文五个测试函数(如表1)分别设置为90, 100维,每个函数独 立运行30次,每次迭代3000次,微粒个数为50评估算法的效果 从最小值(min),最大值(max),平均值(avg),标准方差(sd)进行 比较3.2 实验结果及其分析表2的数据是分别采用ldiw-pso算法和在ldiw-pso算法基础上 改进学习因子的算法得到的,测试了五个基准函数,其中fl、f2 是单模函数,f3、f4、f5是多模态函数f1(rosenbrock)函数它是 主要考查局部开发能力,而f4(rastrigin)函数具有大量局部最小 值,是考查算法避免陷入局部最优,进行全局探索的能力,从表2中不难发现这两个基准函数改进后的算法在最大、最小、平均值和方差这四个方面的效果得到了很大提高其中f5(griewank)和 f2(schwefel)函数的结果表现最好,f3(ackley)的结果略逊色一 些4 结束语一般认为,在粒子群算法中,较大的惯性权重倾向全局搜索,而 较小的惯性权重适应局部搜索,固定惯性权重往往得不到很好的结 果,于是提出了很多修改惯性权重的方法。 但是我们往往对两个学 习因子的取值却相同,使得社会搜索和认知搜索权重相同,这种做 法似乎忽略了学习因子变化的重要性本文在已有变化惯性权重的基础之上把学习因子随着搜索状态 的改变而改变也考虑到算法中去,让它们二者相辅相成,使得算法 更优在以后的研究中,会考虑把学习因子和更多其它变化惯性权 重的方法结合到一起,使得它们在微粒的搜索过程中让微粒具有更 强的局部和全局搜索能力,得到更加完美的最优解参考文献[1] kennedy j,eberhart r c. pacticle swarm optimization[c].ieee international conference on neuralnetworks.perth .1995:1942-1948.[2] shi y,eberhart r c.a modify particle swarm optimizer[c].proceedings of the 1998 ieee internationalcoference on evolutionary computation , usa .1998 :69-73.[3] 陈贵敏,贾建援,韩琪.粒子群优化算法的惯性权值递减策 略研究[j].西安交通大学学报,2006, 40 (1): 53-56.[4] 冯婷,陆雪松,阳维,张素.改进收敛条件的动态调整惯性 权重pso算法[j].计算机工程与应用,2009, 45(3) : 175-177.[5] nobuhiroiwasaki,keiichiroyasuda,genkiueno. dynamic parameter tuning of particle swarm optimization [j]. ieej trans on electrical and electronic. 2006, 1(1): 353-363.[6] keiichiro yasuda,nobuhiro iwasaki. adaptive particle swarm optimization using velocity information of swarm[c] . ieee international conference on systems,man and cybernetics, usa. 2004, 3475-3481.[7] 刘伟,周育人.一种改进惯性权重的pso算法[j].计算机 工程与应用,2009, 45(7): 46-48.[8] 焦魏,刘光斌,王凯•基于粒子多样性研究的改进pso算法 [j].系统仿真学报,2009, 21 (20) 6483-6486.[9] 高浩,冷文浩,须文波.一种全局收敛的 pso 算法及其收敛 分析[j].控制与决策,2009, 24 (2): 196-201.[10] 赫然,王永吉,王清等.一种改进的自适应逃逸微粒群算 法及实验分析[j].软件学报,2005, 16 (12): 2036-2044.。












