老哥学习网 - www.lg9.cn 2024年05月16日 19:29 星期四
当前位置 首页 >情感故事 >

自适应粒子群优化算法在混沌系统参数估计中的应用 遗传算法

发布时间:2019-02-25 06:22:30 浏览数:

  摘要: 惯性权重w的变化会影响粒子群优化算法的搜索能力,本文针对基本粒子群算法不能适应复杂的非线性优化搜索过程的问题,在其基础上提出了一种动态改变惯性权的自适应粒子群算法。该自适应算法引入了h 来衡量算法的进化速度, 引入s 来衡量算法的粒子聚集度,并将其作为函数w 的变量,使w 与算法的运行状态相关,从而使算法具有动态自适应性。最后,本文引入了两个经典的测试函数对该PSO算法进行测试,结果表明该算法明显优于基本PSO算法。
  Abstract: This paper first constructs an appropriate fitness function and transforms the problem of parameter estimation for a chaotic system to that of parameter optimization. Then, on the premise of ensuring the global search capability of particle swarm optimization algorithm (PSO), we adopt a kind of improved particle swarm algorithm which can dynamically change the inertia weight and test this PSO algorithm by using the test function. The test result illustrates that this improved algorithm is obviously superior to the basic PSO algorithm. Finally, we introduce the improved PSO algorithm into parameter estimation for a chaotic system and make a numerical simulation by taking the representative Lorenz chaotic system as example. The actual result indicates that this kind of improved algorithm can effectively estimate the parameter for a chaotic system and has a good adaptability and high convergence. Even under the condition of signal superposition noise, it still has robustness.
  关键词: 粒子群优化算法;响应曲面;进化速度;聚集度
  Key words: particle swarm optimization algorithm;test function;chaotic system;parameter estimation
   中图分类号:O213.1 文献标识码:A 文章编号:1006-4311(2012)11-0286-02
  
  0 引言
  粒子群优化算法PSO( Particle Swarm Optimization) 是由Kennedy 和Eberhart于1995 年提出的一种新颖的进化算法[1]。该方法程序实现简单,收敛速度快,需要调整的参数少,并且对目标函数要求较少(例如无需梯度信息),但在求解多峰函数优化问题时容易陷入局部最优。
  1 改进粒子群算法
  基本的PSO算法虽然有较强的全局收敛性和收敛速度,但是不能适应复杂的非线性优化搜索过程,因此采用了一种动态改变惯性权重的自适应粒子群算法[2]。在该算法中引入了参数粒子群进化速度因子和聚集度因子,将惯性因子表示为粒子群进化速度因子和聚集度因子的函数,从而使算法具有动态自适应性。下面对进化速度因子及聚集度因子做如下定义:
  设h为进化速度因子,如果优化目标是寻找极大值,f(g)
  f(g),则定义h=f(g)/f(g);如果优化目标是寻找极小值,
  f(g)f(g),则定义h=f(g)/f(g)。综合这两种情况,h可以表示为:
  h=(1)
  根据上面的假设和定义,0<h1。该参数考虑了算法运行的历史,也反映了粒子群进化速度,即h值越小,进化速度越快。当经过了一定的迭代次数之后,h值保持为1,则断定算法停滞或者找到了最优解。
  设s为聚集度因子,如果ZT为所有粒子当前适应度值的平均值,则ZT=f(XT[i]),其中XT[i]是粒子i在当前迭代次数为T时的位置,N是粒子群的规模。在极小值的寻优过程中,f(g)ZT,则定义s=f(g)/ZT;在极大值的寻优过程中,f(g)ZT,则定义s=ZT/f(g)。综合以上两种情况,s可以表示为:
  s=(2)
  将s称之为粒子聚集度因子。0<s<1,它反映了所有粒子当前的聚集程度,同时在一定程度上也反映粒子的多样性。s值越大,粒子群聚集程度也越大,粒子多样性越小。当s=1时,粒子群中的所有粒子具有同一性,如果此时算法陷入局部最优,则结果不容易跳出该局部极点。
  2 自适应动量因子粒子群算法
  如果粒子群进化速度较快,算法可以在较大的搜索空间内持续搜索,粒子就可以保持大范围的寻优。当粒子群进化速度减慢时,可以减小w的值,使得粒子群在小空间内搜索,以便更快地找到最优解。
  若粒子较分散,粒子群就不易陷入局部最优解。随着粒子群的聚集程度的提高,算法容易陷入局部最优,此时应增大粒子群的搜索空间,提高粒子群的全局寻优能力。综上所述,w应该随着粒子的聚集度的增大而增大,随着进化速度的降低而减小,它可以表示为:
  w=winit-hwh+sws(3)
  式中:winit为w的初始值,一般winit=1。由于0<h1,0<s1所以winit-wh<w<winit+ws
  3 改进的PSO的应用
  我们将混沌系统的参数估计问题转化为一个参数的寻优问题,以典型的Lorenz混沌系统为例来说明基于改进PSO的混沌系统参数估计。Lorenz混沌系统是Lorenz于1963年提出一个表现奇异吸引子的动力系统[3]:
  x′=・(y-x),y′=・x-x・z-y,z′=x・y-b・z,(4)
  其中参数=10,=28参数b未知。当b=8/3时(4)式所表示的系统是混沌的。在数值仿真中用四阶龙格-库塔算法求解系统(4),步长。将30次独立数值实验(最大进化代数设为100)的平均值作为参数b=2.66666666666675的最终估计结果,该结果接近真实值。本文分别进行了迭代次数为50,100和150次的数值试验,把改进的PSO算法与基本PSO算法从两个方面(适应度值f和混沌参数b)进行比较。由表1可知,改进的PSO算法与基本PSO相比,具有明显的优势。迭代次数为50次的改进PSO算法结果为2.66666666175417比基本PSO算法迭代150次的结果2.66671052831761要精确的多,说明改进的PSO算法具有非常好的收敛性能。
  4 结束语
  本文在标准的PSO算法的基础上,引入了一种动态改变惯性权重的自适应算法来保证收敛速度。该自适应算法引入了h来衡量算法的进化速度,引入s来衡量算法的粒子聚集度,并将其作为函数w 的变量。这样一来,w与算法的运行状态相关,可以根据实际情况调整w, 从而改进算法的性能。并且在文章的最后利用测试函数对改进的PSO算法做了测试,结果表明该算法明显优于基本PSO算法。
  参考文献:
  [1]Kennedy J, Eberhart R. C.Particle Swarm Optimization. In: Proc.IEEE Int"l. Conf. on Neural Networks,IV. Piscataway, NJ:IEEE Service Center, 1995,1942―1948.
  [2]Zhang X P,Du Y P,Qin G Q 2005 Algorithm with Dynamically Changing Inertia Weight(in Chinese) 杜玉平,秦国强等,2005 一种动态改变惯性权的自适应粒子群算法(西安:西安交通大学学报).
  [3]Van den Bergh, Engelbrecht A. A new Locally Convergent Particle Swarm Optimizer.2002 IEEE International Conference on System, Man, and Cybernetics,2002.
  [4]高飞,童恒庆.基于改进粒子群优化算法的混沌系统参数估计方法 [J].物理学报,2006(55):577-582.

推荐访问:粒子 混沌 算法 自适应

相关文章:

Top