馬鑫泰,何同祥
(華北電力大學(xué) 控制與計(jì)算機(jī)工程學(xué)院,河北 保定 071003)
PID控制器具有原理簡(jiǎn)單、使用方便、適應(yīng)性強(qiáng)、魯棒性強(qiáng)等特點(diǎn),在工程中被廣泛應(yīng)用[1]。盡管PID控制器具有很多優(yōu)點(diǎn),但是應(yīng)用于熱工對(duì)象的PID控制器參數(shù)整定具有一定難度,尤其對(duì)于具有大慣性、大遲延的熱工對(duì)象,采用常規(guī)整定方法如Z-N、C-C、ITAE階躍響應(yīng)曲線法以及衰減曲線法等工程整定方法,來(lái)整定PID參數(shù)變得較為困難,不易于獲得良好的控制效果。隨著智能優(yōu)化算法的普及,控制器參數(shù)的整定方法越來(lái)越多。粒子群算法具有原理簡(jiǎn)單、易于實(shí)現(xiàn)的特點(diǎn),其發(fā)展較為迅速[2]。本文對(duì)粒子群算法進(jìn)行改進(jìn),利用改進(jìn)的算法對(duì)PID參數(shù)進(jìn)行整定優(yōu)化,并應(yīng)用于大遲延熱工對(duì)象,取得良好的控制效果。
粒子群算法[2,3](Particle Swarm Optimization,PSO)最早由Kennedy和Eberhart于1995年提出來(lái)的,是一種群智能優(yōu)化算法。粒子群算法是針對(duì)鳥(niǎo)類捕食這一行為,進(jìn)而產(chǎn)生的一個(gè)模型。
粒子群算法的核心是將優(yōu)化問(wèn)題的解看作空間中的一個(gè)粒子,空間的維度是由優(yōu)化問(wèn)題解的個(gè)數(shù)決定的。例如PID參數(shù)的優(yōu)化,有3個(gè)參數(shù),即在一個(gè)三維空間中去尋找一個(gè)最優(yōu)解。空間中每個(gè)粒子的飛行方向及飛行長(zhǎng)度都會(huì)被目標(biāo)函數(shù)所約束,在此過(guò)程中會(huì)產(chǎn)生兩個(gè)最優(yōu)值,個(gè)體最優(yōu)值Xbest和種群最優(yōu)值XBEST。
確定目標(biāo)問(wèn)題解的個(gè)數(shù)N以及種群中的粒子規(guī)模M,即在N維空間中的M組可能解中尋找一組最優(yōu)解。其中,第i個(gè)粒子的位置可以表示成Xi=(xi1,xi2,…,xiN),i=1,2,…,M;速度可以表示成Vi=(vi1,vi2,…,viN),i=1,2,…,M。將位置坐標(biāo)Xi帶入到所設(shè)定的目標(biāo)函數(shù)Q(x)中,計(jì)算出各個(gè)粒子的適應(yīng)度,根據(jù)適應(yīng)度的大小進(jìn)而判斷粒子位置Xi的好壞。經(jīng)過(guò)一段時(shí)間的尋優(yōu),產(chǎn)生個(gè)體最優(yōu)位置Xbest=(xi1,xi2,…,xiN)以及種群最優(yōu)位置XBEST=(xg1,xg2,…,xgN),每個(gè)粒子根據(jù)式(1)和式(2)來(lái)更新自己的速度和位置,如下:
式(1)中,ω為權(quán)重系數(shù),c1與c2分別為個(gè)體學(xué)習(xí)因子和種群學(xué)習(xí)因子,r1和r2為0~1之間的隨機(jī)數(shù)。隨著尋優(yōu)的進(jìn)行,權(quán)重系數(shù)會(huì)根據(jù)式(3)得到線性更新,如下:
式(3)中,ωmax和ωmin分別為ω的最大值和最小值,k為當(dāng)前走過(guò)的步數(shù),Zmax為最大尋優(yōu)步數(shù)。
如此迭代下去,直到取得最優(yōu)值。
本文從兩個(gè)方面對(duì)粒子群算法進(jìn)行改進(jìn):第一,對(duì)粒子群算法的個(gè)體學(xué)習(xí)因子及種群學(xué)習(xí)因子進(jìn)行改進(jìn);第二,利用PID控制器經(jīng)驗(yàn)整定公式對(duì)粒子群參數(shù)尋優(yōu)區(qū)間進(jìn)行改進(jìn)。
個(gè)體學(xué)習(xí)因子c1為個(gè)體尋找自身最優(yōu)位置的權(quán)重系數(shù),種群學(xué)習(xí)因子c2為個(gè)體靠近種群最優(yōu)位置的權(quán)重系數(shù)。引入α系數(shù)使個(gè)體學(xué)習(xí)因子和種群學(xué)習(xí)因子進(jìn)行非線性變化,系數(shù)α由式(4)進(jìn)行表示,如下:
式(4)中,k為當(dāng)前走過(guò)的步數(shù),Zmax為最大尋優(yōu)步數(shù)。
將個(gè)體學(xué)習(xí)因子c1和種群學(xué)習(xí)因子c2進(jìn)行如式(5)和式(6)改進(jìn),即:
式中,c1max和c1min分別為c1的最大值和最小值,c2max和c2min分別為c2的最大值和最小值。
改進(jìn)前的個(gè)體學(xué)習(xí)因子和種群學(xué)習(xí)因子一般取定值2,尋優(yōu)的過(guò)程中,學(xué)習(xí)因子一直不變。因此,其尋優(yōu)過(guò)程中可能會(huì)錯(cuò)過(guò)最優(yōu)值。改進(jìn)后,個(gè)體學(xué)習(xí)因子和種群學(xué)習(xí)因子隨著尋優(yōu)進(jìn)行非線性變化,對(duì)于尋找最優(yōu)位置更具有針對(duì)性。尋優(yōu)的前期,使個(gè)體學(xué)習(xí)因子取值較大,自身去尋找個(gè)體的最優(yōu)位置,使之完善自身位置,達(dá)到理想的位置;尋優(yōu)的后期,使種群學(xué)習(xí)因子增大,利用種群去尋找最優(yōu)位置,直至取得最優(yōu)值。改進(jìn)粒子群算法有效地避免了粒子群算法已陷入局部最優(yōu)值的狀態(tài),在兼顧搜索精度的基礎(chǔ)上,提高了搜索速度。
確定一個(gè)合適的參數(shù)搜索區(qū)間可有效地提高粒子群算法的搜索速度,因而可通過(guò)計(jì)算來(lái)對(duì)粒子群算法所優(yōu)化的參數(shù)上下限進(jìn)行基本確定。根據(jù)文獻(xiàn)[4]中的經(jīng)驗(yàn)整定公式,對(duì)比例帶δ、積分時(shí)間常數(shù)Ti以及微分時(shí)間常數(shù)Td3個(gè)參數(shù)進(jìn)行計(jì)算,確定基本參數(shù)δ0、Ti0以及Td0。確定的參數(shù)尋優(yōu)參數(shù)范圍如下:
本文對(duì)PID控制器參數(shù)進(jìn)行整定優(yōu)化,它的傳遞函數(shù)為:
式中,δ為比例帶,Ti為積分時(shí)間常數(shù),Td為微分時(shí)間常數(shù)。
PID控制器[5]的控制量是由偏差的比例作用(P)、積分作用(I)、微分作用(D),經(jīng)過(guò)線性組合得到的。只有將比例帶δ、積分時(shí)間常數(shù)Ti以及微分時(shí)間常數(shù)Td三者的組合最優(yōu)時(shí),控制器才會(huì)產(chǎn)生良好的控制效果,進(jìn)而達(dá)到穩(wěn)、準(zhǔn)、快的效果。
整定PID控制器參數(shù)的過(guò)程是以目標(biāo)函數(shù)為核心的,即想要達(dá)到的控制效果可由目標(biāo)函數(shù)進(jìn)行限制。為了得到良好的動(dòng)態(tài)特性同時(shí)避免過(guò)大的控制量,將誤差絕對(duì)值的時(shí)間積分性能指標(biāo)(ITAE)和控制器輸出的平方項(xiàng)加入到目標(biāo)函數(shù)中。同時(shí)給二者用權(quán)重系數(shù)b1和b2進(jìn)行限制。目標(biāo)函數(shù)如下:
圖1 兩種方法對(duì)比仿真曲線Fig.1 Comparison of two methods to simulate the curve
為了檢驗(yàn)改進(jìn)粒子群算法整定出的PID參數(shù)應(yīng)用于大遲延熱工對(duì)象上的效果,對(duì)一個(gè)熱工對(duì)象進(jìn)行仿真及研究。
選取的熱工對(duì)象的傳遞函數(shù)為:
利用經(jīng)驗(yàn)公式整定出的基本參數(shù):δ=1.6929,Ti=57.6,Td=7.2~14.4。
尋優(yōu)參數(shù)的范圍:δ=0.8~2.6,Ti=28~87,Td=3.5~22。
改進(jìn)粒子群算法尋優(yōu)設(shè)定值:定值擾動(dòng)信號(hào)為單位階躍信號(hào),優(yōu)化PID參數(shù)的個(gè)數(shù)為3,粒子的總數(shù)為100,慣性系數(shù)的上下限為ω=0.4~1.6,個(gè)體學(xué)習(xí)因子的上下限為c1=0.5~2.5,種群學(xué)習(xí)因子的上下限為c2=0.5~2.5,比例帶參數(shù)尋優(yōu)的速度上下限為v1=-0.2~0.2,積分時(shí)間常數(shù)參數(shù)尋優(yōu)的速度上下限為v2=-2~2,微分時(shí)間常數(shù)參數(shù)尋優(yōu)的速度上下限為v3=-1~1。
尋優(yōu)結(jié)果:δ=1.8652,Ti=52.3806,Td=10.8253。
仿真曲線如圖1所示。
由曲線可知:與標(biāo)準(zhǔn)粒子群算法整定出的PID參數(shù)相比,改進(jìn)的粒子群算法整定出的PID控制器參數(shù),具有良好的控制效果,減小了超調(diào)量同時(shí)減小控制器輸出的波動(dòng)。因此,改進(jìn)粒子群算法是合理可行的。
本文在粒子群算法的基礎(chǔ)上,提出了改進(jìn)粒子群算法,并將改進(jìn)的算法應(yīng)用到大遲延熱工對(duì)象的PID控制器參數(shù)整定中,得到了良好的控制效果。通過(guò)MATLAB仿真驗(yàn)證了改進(jìn)粒子群算法的優(yōu)越性,針對(duì)大遲延熱工對(duì)象,該算法可有效克制被控對(duì)象的大遲延,在兼顧系統(tǒng)的快速性的基礎(chǔ)上,抑制了系統(tǒng)的超調(diào)量,從而提高了控制效果。