吳華麗,吳進華,李澤雪
(海軍航空工程學院控制工程系,山東煙臺 264001)
Kp、Ki、Kd這三個參數直接影響PID控制器控制效果,如果其中一個值選得不合適,都會對其他兩個值有影響,不能得到期望的控制效果,所果就要對三個參數進行協調調整和整體優化。本文選取粒子群算法對PID控制參數進行優化。
PID控制由于結構簡單、易于實現等特點在導彈控制系統的設計中得到了較多的應用。但是PID控制的性能在很大程度上取決于比例、積分、微分三個參數的選取,多數情況下,這三個參數的選擇憑借經驗。為了得到較好的控制效果,本文利用粒子群算法(Partical Swarm Optimization,PSO)對參數進行優化。
粒子群算法是1995年由Eberhart博士和Kennedy博士共同提出的一種優化算法[1],是繼蟻群算法之后又一種新的群智能算法。文獻[2]對算法中的隨機參數設置進行了實驗分析,表明隨機參數對算法的優化性能有著很大影響。文獻[3-6]對粒子群算法提出改進方法,得到了較好的收斂效果。文獻[7-8]將改進粒子群算法應用到PID參數整定和智能機器人的路徑規劃中,亦取得了較好的效果。
在彈體坐標系下建立導彈俯仰平面攻角和俯仰角速度動力學方程如下:

式中α為攻角、ωz為俯仰角速度、ai(i=1~5)為動力系數、δz表示俯仰舵偏角。
采用如圖1所示的PID控制。

圖1 PID控制結構圖Fig.1 Control system with PID

Kp、Ki、Kd這三個參數直接影響PID控制器控制效果,如果其中一個值選得不合適,都會對其他兩個值有影響,不能得到期望的控制效果,所果就要對三個參數進行協調調整和整體優化。本文選取粒子群算法對PID控制參數進行優化。
設計反饋控制律
PSO算法首先隨機生成解空間,在解空間中初始化一群粒子。每一個粒子代表一個解,由目標函數確定一個適應度與之對應,通過迭代,更新每個粒子的位置。在迭代過程中,每個粒子跟蹤兩個最優解:該粒子所經歷的最優解和種群所找到的最優解,通過迭代搜索,最終得到全局最優解。
按追隨當前最優粒子的原理,粒子xi將按式(4)更新速度和位置。

式中t為代數,vit D為粒子i第t代飛行速度矢量的第D維分量;xit D為粒子i第t代位置矢量的第D維分量;PiD為粒子i位置矢量所經歷的最好位置的第D維分量;PgD表示目前粒子群在解空間中所經歷的最好位置的第D維分量;r1,r2是介于[0,1]之間的隨機數;c1,c2是加速度系數;w是慣性權因子。
PID參數整定就是選擇合適的3個參數得到性能良好的PID控制器。從優化角度來說,就是從這3個參數組成的3維搜索空間中找尋一組最優的參數使PID控制器的效果達到最優。
本文采用平方偏差積分(ISE)作為參數選擇的目標函數

式中e(t)為α跟蹤αd的誤差,可以將誤差表達式適當放大,比如放大10倍。
設種群中的粒子數為n,每個粒子的位置矢量由PID控制器的三個參數組成,即粒子矢量的維數D=3,該矩陣可以表示為:

用Fi表示粒子i當前的適應值,Fib表示粒子i經歷過的最好適應值,Fgb表示種群的最優適應值。利用PSO優化PID控制器參數步驟如下所示。
1)確定種群規模n、種群維數D、最大進化數。在[-20,20]的范圍內隨機初始化粒子群。
2)根據適應度評價函數計算粒子群中每一個粒子的適應值。
3)將每個粒子當前適應值Fi與個體極值Fib進行比較,如果Fi<Fib,則Fib=Fi,且置Pi為該粒子的最優位置。
4)比較粒子適應值與種群最優值。如果Fi<Fgb,則Fgb=Fi,且置Pi為種群最優位置。
5)按式(4)更新粒子的速度和位置。
6)判斷終止條件,如果達到最大迭代次數或優化的終止條件,則循環終止,否則,轉至第2步。
粒子群算法中群體規模n設為30,參數c1、c2分別設為0.12、1.2,w=0.9。最大收斂代數為50代,經過50代進化后得到優化參數如下:

為驗證方法的有效性,對導彈控制系統進行了如下仿真,系統參數如表1所示。

表1 系統參數Tab.1 System parameters
圖2中實線表示攻角的期望值αd,虛線表示攻角的實際值α,α可以很快跟蹤上αd,超調量非常?。粓D3表示俯仰角速度ωz,很快可以收斂到一較小值。仿真結果說明選擇的這一組PID參數是比較理想的。

圖2 攻角變化曲線Fig.2 Curves of attack angle

圖3 俯仰角速度變化曲線Fig.3 Curves of pitch angle rate
當氣動參數向下拉偏30%時,攻角和俯仰角速度的變化曲線分別見圖4和圖5,效果依然較好,說明了PID控制的魯棒性。

圖4 攻角變化曲線Fig.4 Curves of attack angle

圖5 俯仰角速度變化曲線Fig.5 Curves of pitch angle rate
PID控制器三個參數的選擇對控制性能有非常大的影響。本文選取粒子群算法對PID控制器的參數進行優化,據此對導彈俯仰通道控制系統進行了仿真研究。結果表明,通過優化選取的一組參數,能夠使攻角和俯仰角速度取得較好的效果,當氣動參數具有不確定性時,效果同樣較好,說明了所設計方法的正確性和有效性。
[1]Kennedy J,Eberhart R C.Particle swarm optimization[A].Proceedings of IEEE International Conference on Neural Networks[C]//.Piscataway,NJ:IEEE Press,1995.1942-1948.
[2]劉志雄,梁華.粒子群算法中隨機數參數的設置與實驗分析 [J].控制理論與應用,2010,27(11):1490-1496.
[3]沈佳杰,江紅,王肅.基于多點速度向量和自適應速度值的離散二進制粒子群算法改進[J].計算機科學,2013,40(11A):125-130.
[4]劉淳安.一種求解動態多目標優化問題的粒子群算法[J].系統仿真學報,2011,23(2):288-293.
[5]吳敏,丁雷,曹衛華,等.一種克服粒子群早熟的混合優化算法 [J].控制與決策,2008,23(5):511-519.
[6]趙偉,蔡興盛.基于解空間劃分的PSO改進算法[J].吉林大學學報,2012,50(4):725-732.
[7]羅春松,張英杰,王錦錕.改進粒子群算法整定PID參數研究[J].計算機工程與應用,2009,45(17):225-227.
[8]張萬緒,張向蘭,李瑩.基于改進粒子群算法的智能機器人路徑規劃[J].計算機應用,2014,34(2):510-513.