基于权重QPSO算法的PID控制器参数优化精文档格式.docx
《基于权重QPSO算法的PID控制器参数优化精文档格式.docx》由会员分享,可在线阅读,更多相关《基于权重QPSO算法的PID控制器参数优化精文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
![基于权重QPSO算法的PID控制器参数优化精文档格式.docx](https://file1.bdocx.com/fileroot1/2023-2/2/04edbe18-9608-4ab9-abbc-785ea6815e1a/04edbe18-9608-4ab9-abbc-785ea6815e1a1.gif)
2.WuxiInstituteofTechnology,Wuxi,Jiangsu214121,ChinaE-mail:
xmlzyh@
ZHOUYang-hua,WEIMin,SUNWei.ParameteroptimizationofPIDcontrollerbasedonquantum-behavedparticle
swarmoptimizationalgorithmwithweightcoefficient.ComputerEngineeringandApplications,
2010,46(5:
224-228.Abstract:
TheconventionalparameteroptimizationofPIDcontrolleriseasytoproducesurgeandbigovershoot,andtherefore
heuristicssuchasGeneticAlgorithm
(GA,ParticleSwarmOptimization(PSOareemployedtoenhancethecapabilityoftraditionaltechniques.ButtheconvergencespeedofSGAisslowlyandPSOmaybetrappedinthelocaloptimaoftheobjectiveandleads
topoorperformance.Inthispaper,aweightcoefficientisintroducedintoQuantum-behavedParticleSwarmOptimization
(QPSOandanimprovedQPSO(WQPSOfortheparameteroptimizationofPIDcontrollerisproposed.ThecomparisonofWQPSO,PSOandQPSObasedonbenchmarkfunctionisgiven.Finally,threeexamplesaregiventoillustratethedesignprocedureandexhibit
theeffectivenessoftheproposedmethodviaacomparisonstudywithanexistingZ-N,GAandPSOapproaches.
Keywords:
Quantum-behavedParticleSwarmOptimization(QPSO;
weightcoefficient;
PIDcontroller;
parameteroptimization摘要:
传统的PID控制器参数优化方法容易产生振荡和较大的超调量,因此智能算法如遗传算法(SGA和粒子群算法(PSO被
用于参数优化,弥补传统算法的不足,但是遗传算法在进化过程中收敛速度慢,粒子群算法存在易于早熟的缺点。
在分析量子粒子群算法(QPSO的基础上,在算法中引入了权重系数,提出使用改进的量子粒子群算法(WQPSO优化PID控制器参数。
将改进量子粒子群算法与量子粒子群算法、粒子群算法通过benchmark测试函数进行了比较。
最后,通过三个传递函数实例,分别使用Z-N、
GA、PSO方法和改进的量子粒子群算法进行了PID控制器参数优化设计,
并对结果进行了分析。
关键词:
量子粒子群算法;
权重系数;
PID控制器;
参数优化DOI:
10.3778/j.issn.1002-8331.2010.05.068文章编号:
1002-8331(201005-0224-05文献标识码:
A中图分类号:
TP272
作者简介:
周阳花(1977-,女,讲师,研究方向为智能控制技术;
魏敏(1979-,女,讲师,研究方向为进化算法;
孙伟(1964-,男,讲师,研究方向为
智能控制技术。
收稿日期:
2008-08-25
修回日期:
2008-11-17
图1PID控制系统
C
(SG
(Sy
(tr(t+
e(t-224
2010,46(5能:
ISE,IAE,ITAE和ITSE,
它们分别定义如下:
ISE=
T
乙
e
(t2
dtIAE=
乙|e(t|dt
ITAE=T
乙t|e
(t|dtITSE=T
乙te
dt在该文中,为了得到一个较小调量和较短的上升时间,将上升时间作为主要的性能指标而将超调量作为辅助性能指标。
将它们组合在一起,就可以得到PID控制器参数整定问题的目标函数,描述如下:
objectivevalue=αTs+
(1-αT
t|e(t|dt(2
这里,α的值表示上升时间在目标值中所占的比例。
3量子粒子群算法(QPSO
粒子群优化算法是在1995年由Kennedy和Eberhart提出
的[11],它源于对生物群体的研究。
在群体中,个体(粒子通过搜索多维空间,在每一轮迭代中评价自身的目标位置信息(适应值,在整个搜索过程中,粒子共享它们“最优”位置的信息,然后使用它们的记忆调整它们自己的速度和位置,不断地比较和追随候选的空间解,最终发现最优解或者局部最优解。
在基本粒子群算法模型中,每个个体在D维空间中被认为没有体积的,粒子i的位置值和速度值表示为:
Vi(t+1=Vi(t+φ1(Pi-Xi(t+φ2(Pg-Xi(t
(3
Xi(t+1=Xi(t+Vi(t+1(4
其中,φ1=c1*rand1;
φ2=c2*rand2。
这里Vi(t是粒子i在t次迭代中的速度信息,Xi(t是粒子i在t次迭代中的位置信息,c1和c2是学习因子,分别调节向全局最优粒子和个体最优粒子方向飞行的最大步长,rand1和rand2
是[0,1]之间的随机数,其中为了防止粒子飞离解空间,粒子的速度被限定在[-Vmax,+Vmax]之间。
矢量Pi=(Pi1,Pi2,…,PiD是粒子i的最好的早先位置称为pbest(这个位置给出了最优的适应值,矢量Pg=(Pg1,Pg2,…,PgD是所有粒子中最优粒子的位置称为gbest。
Shi和Clerc针对基本粒子群算法存在精度低、易发散等缺点提出了各自的改进算法。
惯性权重(inertiaweight法[12],速度更新方程为:
Vi(t+1=w*Vi(t+φ1(Pi-Xi(t+φ2(Pg-Xi(t
(5
其中w是与前一次速度有关的比例因子,用w控制前次的速度对当前速度的影响,较大的w能加强算法的全局搜索能力,较小的w能增加局部搜索能力。
压缩因子法[13],速度更新方程为:
Vi(t+1=K*[Vi(t+φ1(Pi-Xi(t+φ2(Pg-Xi(t](6
在这里K=
22-φ-φ-4φ
姨,φ=φ1max+φ2max,φ>
4。
其中φ1max和
φ2max分别是φ1和φ2的上限。
在文献[11]的粒子搜索路径分析可知,为了保证粒子群算法的收敛性,在粒子搜索过程中,粒子不断地趋近于它们的局部吸引子pi=(pi,1,pi,2,…,pi,n
方程定义为:
pi,j(t
=c1Pi,j(t+c2Pg,j(t12
(j=1,2,…,n(7
或者
pi,j(tφ·
Pi,j(t(1-η·
Pg,j(t
φ~U(0,1,(j=1,2,…,n(8JunSun等[14]认为这样粒子的随机性就有限,
只能描述低智能的动物群体,而不能描述思维随机性很强的人类群体,并且发现人类的智能行为与量子空间中粒子的行为极为相似,因此引入了量子态粒子行为,则对粒子的每一维可以得到概率密度方程Q和分布函数F,
方程定义如下:
Q(Xi,j(t+1
=1i,je-2|pi,j
(t-Xi,j
(t+1|/Li,j
(t
(9F(Xi,j(t+1
=e-2|pi,j(t-Xi,j(t+1|/Li,j(t
(10
这里,Li,j(t决定了每个粒子的搜索范围,使用MonteCarlo方法,可以得到粒子的位置方程
Xi,j(t+1=pi,j(t
±
Li,j(tln1u=rand(0,1
(11
这里u是在(0,1
之间的随机数。
文献[15]中,在PSO算法中引入了称作最优平均值的全局搜索点,使用m表示,定义为群体粒子局部最优的平均值,方程为:
m(t=(m1(t,m2(t,…,m3(t
=1
M
i=1
ΣPi,1(t
1M
ΣPi,2(t
…1M
ΣPi,n
(tΣ
(12这里M是群体的大小,Pi是粒子i的局部最优值,Li,j(t和粒子的位置量就由下面的方程计算:
Li,j(t=2β·
|mj(t-Xi,j(t
|(13Xi,j(t+1=pi,j(t±
β·
|·
ln(1(14
这里,参数β称作压缩膨胀系数,调节它可以控制算法的收敛速度。
则式(7、(12、(14组成了具有量子行为的粒子群算法。
量子粒子群算法在函数测试[14]、滤波器设计[16]、多阶段金融规划[17]、神经网络优化[18]和H∞控制[19]等应用中显示了其优越性。
4权重量子粒子群算法
由上述分析可知,量子粒子群算法中,引入了最优平均值
m来计算L,
使得算法比粒子群算法更加有效。
但是从分析方程(12,可以发现最优平均值只是简单地求了每个粒子局部最优的平均值,也就是说每个粒子对m值的影响是平均的,这看起来似乎很合理,但是在现实生活中,用相同权重系数来计算平均最优值不完全符合社会决策的一般模型。
对于一个社会群体,虽然是整个群体决定了这个群体的主流思想,但是对于每个个体,它们在决策过程中所起的作用是不相同的。
群体中的精英在社会发展过程中扮演了更加重要的角色。
依据这个思想,在量子粒子群算法中增加了新的控制方法,用方程(16中
的计算值代替原算法中的平均最优值。
在改进算法中,关键的问题是如何判断群体中的哪些粒子是精英粒子,也就是说哪些粒子对群体的进化起更加重要的作用。
也就是说,在计算m的过程中,如何评价它们的重要性。
很自然的,对于一个进化算法来讲,算法通过粒子的适应度值来评价粒子的重要程度,好的适应度值对群体的进化起更加重要的作用。
为了更具有一般性,将群体粒子的适应度值,按照大小
降序排列。
在算法中指定一个系数αi随着粒子适应度值的下降线性减少,粒子越接近最优值,系数越大。
算法方程为:
=cp,(P,(12
(j=1,2,…,n(15
周阳花,魏敏,孙
伟:
基于权重QPSO算法的PID控制器参数优化225
ComputerEngineeringandApplications计算机工程与应用2010,46(5
函数
Spherefunctionf1
Rosenbrockfunctionf2
Rastrigrinfunctionf3Griewankfunctionf4DeJong’sfunctionf5
公式
f
1
(x=
n
Σx2i
2
Σ(100(xi+1-x2i2+(xi-12
3
Σ(x2i-10cos(2πxi+10
4
(x=1
Σx2i-n
仪cos(xi+1
5
Σix4i
初始范围
(50,100
(15,30
(2.56,5.12
(300,600(30,100最大范围10010010600100表1benchmark函数
函数sphererosenbrockrastrigringriewankdeJong’s粒子数
20
40
80
MeanBest
2.45E-06
2.26E-10
2.47E-12
313.734
289.593
202.672
47.4168
37.2796
28.6293
0.01811
0.01267
0.01258
3.6326E-008
1.6261E-011
3.8331E-015
St.Var.
7.72E-06
5.10E-10
7.16E-12
547.2635
478.6273
289.9728
17.1595
14.2838
10.3431
0.02477
0.01479
0.01396
1.5575E-008
8.1139E-012
1.0922E-015
5.3183E-014
4.2369E-030
2.2866E-049
157.4707
81.1382
53.6422
33.7218
21.4530
15.9474
1.2425E-004
3.9088E-005
1.3793E-005
8.3442E-018
4.0999E-038
2.3849E-063
5.3623E-016
1.7009E-033
2.3070E-051
0.8287
0.0319
0.2616
0.0114
0.0949
0.0198
0.0110
0.0085
0.0106
8.3338E-020
4.1413E-040
2.4090E-065
3.9664E-033
5.4389E-044
2.1422E-060
70.9525
57.0883
51.8299
23.5593
17.4436
15.0255
4.1471E-043
2.6766E-054
7.2855E-074
St.Var.3.8435E-0352.4132E-0451.9125E-0620.42830.34370.31030.07130.00340.0294
2.1286E-004
3.6762E-005
4.2231E-0054.1885E-0452.2684E-0567.3571E-076WQPSO
QPSO
SPSO
表2使用三种算法得到的BENCHMARK函数的平均最优值和方差
mbest=
Σαipbesti=
(
Σαi1pbesti1M
Σαi2pbesti2
…
Σpbestid(16
Xi,j(t+1=pi,j(t±
|mj(t-Xi,j(t|·
ln1(17
算法的执行过程描述如下:
算法基本步骤如下:
(1在可行解空间中随机初始化一群粒子的位置信息xi,群体大小为M;
(2通过目标优化函数评价个体粒子的适应值,并和个体的先前最优值相比,如果当前信息优于先前的个体最好值,则把当前值替换为个体最优值(pbest,反之不替换;
(3通过优化函数评价全部粒子的适应值,得到gbest,并计算中值最优值(mbest;
(4用方程(15~(17进行粒子信息的更新:
(5查看是否达到预先设置的最佳适应值或最大精度,如果没有则返回到式(2,反之,迭代结束。
由上述可知,在WQPSO算法中,引入了权重系数的概念,平衡了量子粒子群算法本身的全局收敛性和收敛速度的问题,更加符合智能群体的进化模型。
5仿真研究
5.1函数测试
为了测试权重量子粒子群算法(WQPSO的性能,对表1中的5个benchmark函数[14]分别用量子粒子群算法、粒子群算法和改进量子粒子群算法进行了比较。
这些测试函数都是最小化问题,最小的目标值都为0。
表1给出了所有的实验中粒子的初始化值的范围。
对每个实验都做了100轮,记录了每个实验的最优平均值和方差。
为了研究算法的可测量性和稳定性,选择了3种不同数目的粒子群体,分别为20、40和80,变量的维数30维,每轮测试的最大迭代次数2000次。
在标准粒子群优化算法(SPSO测试中,设置参数c1和c2为2.0;
在权重量子粒子群优化算法(WQPSO测试中,随着每轮实验迭代次数的增加,设置系数β从1.0到0.5线性下降,参数α从1.5到0.5线性下降。
表2给出了每个测试函数100轮的最优平均值和方差。
表中的实验数据表明WQPSO能够更快速地寻找到测试函数的最优值。
5.2PID参数优化
在PID参数优化实验中,分别使用现存算法(Z-N,GA,SPSO和WQPSO对
G1(s=1
s3+6s+5s
G2(s=1.6
s2+2.584s+1.6
G3(s=1
(s+12
3个传递函数进行了研究。
为了充分利用Z-N算法的结果,减少算法的搜索空间,以Z-N算法的结果为中心并扩展,作为其他3个算法的搜索空间。
搜索空间的范围由式(18~(20决定。
(1-λKp′≤Kp≤(1+λKp′(18(1-λKi′≤Ki≤(1+λKi′(19(1-λKd′≤Kd≤(1+λKd′(20其中,Kp′,Ki′,Kd′是Z-N算法对应的优化后的PID控制器的参数值,Kp,Ki,Kd是需要通过其他3个算法优化的PID参数。
在实验中,为了平衡系统的超调量和上升时间的矛盾,选择
226
2010,46(5Ov.:
超调量Obj.:
目标函数值10轮中最优的参数值及对应性能指标
表3
每个实例10轮实验中算法对应的最优PID参数和性能指标
G3(SG2(SG1(S算法
Z-NGAPSOWQPSOZ-NGAPSOWQPSO
Kp
1832.345012.595012.6673Ts6.29691.71560.68460.6793
Ki12.81142.62400.64060.6406Ov.0.62290.36460.04830.0500
Kd6.322312.070312.3285
12.3285Obj.6.19681.61010.75360.7479
Kp12.453317.421816.713418.0634Ts0.91070.77580.77220.6945
Ki2.28112.69762.64842.4885Ov.
0.31870.38470.38140.3629
Kd0.10960.17390.16570.2137Ob