学海荡舟手机网
导航

主页 > 论文知识 > 最新论文资料 > 信息 > > 详细内容

基于质心和自适应指数惯性权重改进的粒子群算法


  粒子群优化(Particle Swarm Optimization, PSO算法[1]是一种基于种群优化的算法,具有全局寻优能力[2],可解决多峰值问题的优化,并已广泛用于科学和工程领域[3]。然而,PSO易于陷入局部最优解,造成粒子进化停滞不前现象的发生[4]。

  为了提高PSO算法的优化性能,众多学者对其进行了改进。Shi等[5]通过引入惯性权重(Inertia Weight修改了PSO中速度计算公式,提出了线性调整惯性权重的粒子群( Linearly Decreasing Weight PSO, LDWPSO算法。研究表明,惯性权重较大利于粒子发挥全局寻优作用,较小可改善粒子局部寻优能力。为了揭示PSO算法的工作原理,Clerc等[6]分别从代数和分析角度对其进行了理论研究,并将约束因子(Constriction Factor引入到PSO算法中。研究表明,约束因子能确保算法收敛并利于提高粒子群的寻优能力。Eberhart等[7]对基于惯性权重的粒子群算法和带约束因子的粒子群算法进行了比较研究,他们认为后者是前者的一种特殊表现形式。就惯性权重的表现形式来说,主要有线性型[5]、指数型 [8-10]、随机数型[11-12]和其他非线性形式[13],文献[14]对其表现形式进行了综述。其中,文献[8]使用两种形式的指数惯性权重并提出了e1PSO和e2PSO算法,文献[9]使用Sigmoid函数设计了SDIW和SIIW两种形式的指数惯性权重。近期,Ting等[15]设计了一种新的指数惯性权重框架,通过实验验证,他们给出了设置该指数惯性权重中相关参数的建议,并得出基于该指数惯性权重的粒子群优化(Exponential PSO, EPSO算法较LDWPSO寻优能力强的结论[15]。然而,从粒子群优化算法迭代运行过程看来,初始时,随机初始化各粒子位置使得粒子间位置较为分散,种群具有良好的多样性,随着算法迭代运行次数的增加,粒子逐渐向某一个或多个位置聚集,种群越来越集中并在局部最优解附近寻优,迭代后期,种群的聚集程度趋于最高值,算法也将趋于收敛[16]。选用Ting等[15]设计的指数惯性权重模型时,如何依据粒子群群体当前状态动态调整惯性权重以提高粒子寻优能力?结合质心模型和Ting等[15]设计的指数惯性权重,本文设计了一种基于双质心和分段指数惯性权重的改进粒子群(Centroid and Exponential PSO, CEPSO算法。以Sphere等6个基本函数为测试对象,通过与SDIWPSO等算法的比较,实验结果显示CEPSO具有较强的寻优能力。下面将对PSO等算法进行阐述。

  1粒子群优化算法

  粒子群优化算法中的每个粒子都有自己的位置矢量、速度矢量和一个用于评估粒子位置质量的适应度值。令问题的解为D维向量,粒子适应度函数记为f,粒子群规模为S,最大进化代数为CS,第t次搜索中第i粒子位置矢量为Xi(t=(x(ti1,x(ti2,…,x(tij,…,x(tiD、速度矢量为Vi(t=(v(ti1,v(ti2,…,v(tij,…,v(tiD,对应适应度值为f(ti=f(Xi(t,迄今为止第i粒子、粒子群的最优适应度分别为f(ri、 f(rg,对应位置分别为pi和pg,则PSO算法启动后各粒子分别依式(1、(2更新速度和位置,并计算pi和pg。

  v(t+1ij=v(tij+c1×r1×(pij-x(tij+c2×r2×(pgj-x(tij(1

  x(t+1ij=x(tij+v(t+1ij(2

  式(1中

  c1、c2为调节参数,r1、r2为U[0,1]中的随机数,g=arg maxi∈{1,2,…,S}{f(ri},r=arg maxt{f(ti}。为了改善算法收敛性能,Shi等[5]在PSO中引入了惯性权重的概念,将速度更新式(1调整为式(3,从而提出了LDWPSO算法。

  v(t+1ij=w(t×v(tij+c1×r1×(pij-x(tij+c2×r2×(pgj-x(tij(3

  LDWPSO算法中,惯性权重采用了时变递减方式设计,当惯性权重的取值范围为[wmin,wmax],最大迭代次数为CS时,第t次迭代对应的惯性权重如式

相关文章