一种在线动态粒子群PID优化方法与流程

文档序号:11826822阅读:来源:国知局

技术特征:

1.一种在线动态粒子群PID优化方法,其特征在于,包括以下步骤:

1)建立实际控制过程的数学传递函数模型;

2)利用步骤1)所建立的数学传递函数模型建立控制模型;

3)利用步骤2)所建立的控制模型建立粒子群数据库更新机制。

2.根据权利要求1所述的一种在线动态粒子群PID优化方法,其特征在于,步骤1)中,建立实际控制过程的数学传递函数模型,具体如下:

<mrow> <mi>G</mi> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mi>k</mi> <mrow> <mo>(</mo> <mn>1</mn> <mo>+</mo> <msub> <mi>T</mi> <mn>1</mn> </msub> <mi>s</mi> <mo>)</mo> <mo>(</mo> <mn>1</mn> <mo>+</mo> <msub> <mi>T</mi> <mn>2</mn> </msub> <mi>s</mi> <mo>)</mo> </mrow> </mfrac> <msup> <mi>e</mi> <mrow> <mo>-</mo> <mi>&tau;</mi> <mi>s</mi> </mrow> </msup> </mrow>

其中G(s)为数学传递函数;s为拉普拉斯算子;k为传递函数增益;T1为第一惯性时间;T2为第二惯性时间;τ为传递函数迟延时间。

3.根据权利要求1所述的一种在线动态粒子群PID优化方法,其特征在于,步骤2)中,利用数学传递函数模型建立控制模型,并通过粒子群进行控制模型PID参数更新,其中,控制模型包括的参数有设定值YSP、被调量YPV、随机内扰量d、调节器传递函数及PID过程传递函数G0(s)。

4.根据权利要求1所述的一种在线动态粒子群PID优化方法,其特征在于,步骤3)中,建立粒子群数据库更新机制,包括两部分内容,第一部分为动态粒子群算法,第二部分为粒子群库更新机制,PID调节器的控制参数利用粒子群库进行更新。

5.根据权利要求4所述的一种在线动态粒子群PID优化方法,其特征在于,步骤3)中的动态粒子群算法,如下,

假设第i个粒子所携带的信息为Xi=(Kpi,Kii,Kdi),分别对应PID调节器的比例,积分和微分作用,其速度为Vi,在循环迭代计算一次后,利用适应度函数对所有的粒子进行评价,其中解算出来的最小值为个体所找到的最优解,这个解所对应的粒子被称为个体极值,记为Xp=(Kpp,Kip,Kdp),在进过若干次迭代计算以后,在所有的个体极值点中,最小的极值所对应的个体,被称为全局极值,其位置记为Xg=(Kpg,Kig,Kdg),那么在第j次迭代后,第i个粒子的速度和位置信息分别按照如下形式进行更新:

<mrow> <msubsup> <mi>V</mi> <mi>i</mi> <mrow> <mi>j</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>MV</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>+</mo> <msub> <mi>c</mi> <mn>1</mn> </msub> <mi>r</mi> <mi>a</mi> <mi>n</mi> <mi>d</mi> <mrow> <mo>(</mo> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msubsup> <mi>P</mi> <mi>p</mi> <mi>j</mi> </msubsup> <mo>-</mo> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>c</mi> <mn>2</mn> </msub> <mi>r</mi> <mi>a</mi> <mi>n</mi> <mi>d</mi> <mrow> <mo>(</mo> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msubsup> <mi>P</mi> <mi>g</mi> <mi>j</mi> </msubsup> <mo>-</mo> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>)</mo> </mrow> </mrow>

<mrow> <msubsup> <mi>X</mi> <mi>i</mi> <mrow> <mi>j</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>+</mo> <msubsup> <mi>V</mi> <mi>i</mi> <mrow> <mi>j</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> </mrow>

其中rand()为[0,1]之间变化的随机数,W为速度更新的惯性权重,c1和c2分为正实数,称着加速因子,用来调节每一次迭代的步长,为了保证粒子寻优的稳定性,粒子的位置信息由边界限制,定义粒子的位置最大值为Xmax,最小值为Xmin,每一次粒子迭代寻优完毕以后,进行如下判断:

<mrow> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>=</mo> <mi>m</mi> <mi>i</mi> <mi>n</mi> <mrow> <mo>(</mo> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>,</mo> <msub> <mi>X</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>&cup;</mo> <mi>m</mi> <mi>a</mi> <mi>x</mi> <mrow> <mo>(</mo> <msubsup> <mi>X</mi> <mi>i</mi> <mi>j</mi> </msubsup> <mo>,</mo> <msub> <mi>X</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

且粒子更新速度也受到位置信息限制,即粒子更新的最大速度为:

Vmax=KV(Xmax-Xmin)

Kv为速度步长参数,粒子更新的最小速度为:

Vmin=-Vmax

每一次粒子迭代寻优完毕以后,进行如下判断:

Vij=min(Vij,Vmax)∪max(Vij,Vmin)

粒子群算法的初始化如下,第i个粒子初始化的位置和速度Vi0为:

<mrow> <msubsup> <mi>X</mi> <mi>i</mi> <mn>0</mn> </msubsup> <mo>=</mo> <msub> <mi>X</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> <mo>+</mo> <mi>r</mi> <mi>a</mi> <mi>n</mi> <mi>d</mi> <mrow> <mo>(</mo> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msub> <mi>X</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>X</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

Vi0=Vmin+rand()(Vmax-Vmin)。

6.根据权利要求4所述的一种在线动态粒子群PID优化方法,其特征在于,步骤3)中的粒子群库更新机制如下,

首先按照粒子群算法初始化粒子群库,共20个粒子,其次将粒子群库的每一个粒子包含的位置信息,即比例、积分、微分稀释传递给对应的粒子PID,每当控制程序计算一次时,对应的粒子群PID调节器的设定值为YSPDELAY+YSP–YPV,这其中YSPDELAY为控制程序上一控制周期的YSP,U为过程PID调节器输出,YPVi则是第i个粒子经过粒子PID调节器调节以后经传递函数G(s)所得的被调量,其代表的意义是虚拟出实际的被调量,由每个粒子的设定值和虚拟被调量进行适应度函数的计算,得到个体极值和全局极值,将全局极值点所携带的位置信息传递到实际的过程PID中,同时利用个体极值点和全局极值点进行速度更新和位置更新,同时更新粒子群库,为下一次的计算迭代作准备,每迭代一次,过程PID的参数更新机制如下,

Kp(k+1)=0.99Kp(k)+0.01Kpg(k)

Ki(k+1)=0.99Ki(k)+0.01Kig(k)

Kd(k+1)=0.99Kd(k)+0.01Kdg(k)

这其中Kp(k+1),Ki(k+1),Kd(k+1)为本次迭代计算后的比例、积分和微分参数,Kp(k),Ki(k),Kd(k)为本次迭代计算前的比例、积分、微分参数,Kpg(k),Kig(k),Kdg(k)为粒子群寻优的全局极值点的位置信息,

全局适应度函数S的计算公式为,

<mrow> <mi>S</mi> <mo>=</mo> <munderover> <mo>&Integral;</mo> <mrow> <mi>t</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>T</mi> </munderover> <mrow> <mo>(</mo> <msub> <mi>W</mi> <mn>1</mn> </msub> <mo>|</mo> <msub> <mi>Y</mi> <mrow> <mi>S</mi> <mi>P</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>Y</mi> <mrow> <mi>P</mi> <mi>V</mi> </mrow> </msub> <mo>|</mo> <mo>+</mo> <msub> <mi>W</mi> <mn>2</mn> </msub> <msup> <mi>U</mi> <mn>2</mn> </msup> <mo>)</mo> </mrow> <mi>d</mi> <mi>t</mi> </mrow>

其中T为粒子群库更新时间。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1