?
基于改進(jìn)PSO算法的PID控制器研究
張燕紅
(常州工學(xué)院電子信息與電氣工程學(xué)院,江蘇常州213002)
摘要:針對一般的粒子群優(yōu)化(PSO)學(xué)習(xí)算法中存在的容易陷入局部最優(yōu)和搜索精度不高的缺點(diǎn),對改進(jìn)型PSO算法進(jìn)行研究。由于慣性權(quán)重系數(shù)ω對算法是否會(huì)陷入局部最優(yōu)起到關(guān)鍵的作用,因此,通過改變慣性權(quán)重ω的選擇,對慣性權(quán)重系數(shù)采取線性減小的方法,引入改進(jìn)型的PSO算法。采用改進(jìn)的PSO算法對PID控制器進(jìn)行參數(shù)優(yōu)化并把得到的最優(yōu)參數(shù)應(yīng)用于控制系統(tǒng)中進(jìn)行仿真。仿真實(shí)驗(yàn)結(jié)果表明:改進(jìn)型PSO算法不會(huì)陷入局部最優(yōu),能得到全局最優(yōu)的PID控制器的參數(shù),并使得控制系統(tǒng)的性能指標(biāo)達(dá)到最優(yōu),控制系統(tǒng)具有較好的魯棒性。
關(guān)鍵詞:粒子群優(yōu)化算法;控制器;參數(shù)優(yōu)化;性能指標(biāo);魯棒性
收到修改稿日期:2012-12-27
多年來,由于PID控制器的結(jié)構(gòu)簡單,設(shè)計(jì)方法非常成熟,對線性控制系統(tǒng)有很好的控制效果,因此,PID控制器一直是工業(yè)控制系統(tǒng)中應(yīng)用最廣泛的控制器,PID控制器對大多數(shù)的簡單工業(yè)過程都能得到滿意的效果[1-3]。但是當(dāng)控制系統(tǒng)比較復(fù)雜或者被控對象的模型發(fā)生變化或者由于擾動(dòng)信號(hào)的影響使得系統(tǒng)的穩(wěn)定性和動(dòng)態(tài)性能受到影響時(shí),之前固定的PID控制器的3個(gè)比例、積分和微分參數(shù)就很難滿足系統(tǒng)的要求了,因此在PID控制器的應(yīng)用中,3個(gè)參數(shù)的調(diào)整和優(yōu)化問題一直是PID控制器研究的熱點(diǎn)問題[4-5],近年來,不少學(xué)者研究了很多優(yōu)化算法[6]。
本文結(jié)合先進(jìn)控制策略和智能控制算法,采用改進(jìn)型的PSO優(yōu)化算法,對PID控制器的參數(shù)進(jìn)行優(yōu)化,尋優(yōu)出來的3個(gè)參數(shù)應(yīng)用于控制系統(tǒng)中,使得之前不穩(wěn)定的控制系統(tǒng)具有很好的魯棒性。
粒子群優(yōu)化算法(PSO)是由Jim Kennedy和Eberhart于1995年提出的。它是源于對鳥群捕食行為的研究,一群鳥在隨機(jī)搜尋食物,如果這個(gè)區(qū)域里只有一塊食物,那么找到食物的最簡單有效的策略就是搜尋目前距離食物最近的鳥的周圍區(qū)域,PSO算法就是從這種模型中得到啟示而產(chǎn)生的,并用于解決優(yōu)化問題[7]。在粒子群算法中,每個(gè)個(gè)體稱為一個(gè)“粒子”,每個(gè)粒子代表一個(gè)潛在的解。所有的粒子都有一個(gè)由被優(yōu)化的函數(shù)決定的適應(yīng)度值,每個(gè)粒子還有一個(gè)速度決定它們飛翔的方向和距離,群體在解空間中追隨最優(yōu)粒子進(jìn)行搜索。粒子通過事先設(shè)定的適應(yīng)值函數(shù)(目標(biāo)函數(shù)),計(jì)算當(dāng)前的適應(yīng)值,根據(jù)適應(yīng)值是否達(dá)到最優(yōu)來衡量粒子位置的優(yōu)劣。在每一次迭代中,粒子通過跟蹤兩個(gè)極值來更新自己,第一個(gè)就是粒子自己找到的最優(yōu)解,稱為個(gè)體極值;另一個(gè)則是整個(gè)粒子群目前找到的最優(yōu)解,稱為全局極值。PSO首先隨機(jī)初始化為一群粒子,在迭代過程中,粒子通過跟蹤前面粒子最優(yōu)的個(gè)體極值點(diǎn)和全局極值點(diǎn)來更新自己當(dāng)前的位置和速度[8]。由于PSO算法具有簡單易于實(shí)現(xiàn)的優(yōu)點(diǎn),被越來越多地應(yīng)用于函數(shù)優(yōu)化、神經(jīng)網(wǎng)絡(luò)訓(xùn)練、模式分類以及傳統(tǒng)優(yōu)化算法的應(yīng)用領(lǐng)域。PSO算法的收斂速度比較快,但是容易陷入局部最優(yōu),這與慣性權(quán)重系數(shù)ω的選擇有關(guān)。根據(jù)經(jīng)驗(yàn),慣性權(quán)重系數(shù)ω越大,粒子尋優(yōu)的全局性越好,ω越小越有利于算法收斂。因此,在尋優(yōu)的開始階段,希望比較大的慣性因子ω使得尋優(yōu)的范圍比較廣;在尋優(yōu)的最后階段,希望較小的慣性因子ω使得算法具有較好的收斂性;因此,本文通過把一般PSO算法中的固定慣性因子ω改變?yōu)榫€性變化的慣性因子ω,而且是隨著迭代次數(shù)的增加線性減小的,這樣更好地兼顧了算法的尋優(yōu)問題和收斂性問題[9-10]。
假設(shè)由n個(gè)粒子組成的種群p=(p1,p2,…,pn),其中第i個(gè)粒子的位置為pi=(pi1,pi2,…,pin),速度為νi=(νi1,νi2,…,νin),位置和速度更新公式為
改進(jìn)型PSO的流程圖如圖1所示。
圖1 改進(jìn)型PSO算法的流程圖
(1)初始化粒子群的各種參數(shù),隨機(jī)產(chǎn)生所有粒子的位置和速度,并確定粒子的最優(yōu)位置和整個(gè)粒子群的最優(yōu)位置。
(2)對粒子群中的每個(gè)粒子,將它的適應(yīng)值(目標(biāo)函數(shù)值)與該粒子所經(jīng)歷過的最優(yōu)位置的適應(yīng)值相比較,如果較好,則將其作為當(dāng)前的最優(yōu)位置;否則保留原來粒子的位置作為最優(yōu)位置。
(3)對粒子群中的每個(gè)粒子,將它的適應(yīng)值(目標(biāo)函數(shù)值)與整個(gè)粒子群所經(jīng)歷過的最優(yōu)位置的適應(yīng)值相比較,如果較好,則將其作為當(dāng)前的粒子群的最優(yōu)位置;否則保留原來粒子群的位置作為最優(yōu)位置。
(4)更新粒子的位置和速度。
(5)如果沒有滿足終止的條件,則返回步驟(2);否則,退出算法,得到最優(yōu)解。
在Simulink環(huán)境下建立PID控制系統(tǒng)的模型,如圖2所示。其中被控對象的傳遞函數(shù)為
該系統(tǒng)是一個(gè)不穩(wěn)定的控制系統(tǒng),PID控制器
乙∞采用的是不完全微分,采用的性能指標(biāo)為J=0e(2t)。設(shè)置改進(jìn)的PSO的初始參數(shù)為:粒子群的規(guī)模為200,加速常數(shù)為c1=2,c2=3,速度的范圍為[-1,1] ,待優(yōu)化參數(shù)的個(gè)數(shù)為3個(gè),即PID控制器中的3個(gè)參數(shù)kp、ki和kd,被優(yōu)化參數(shù)的范圍為[0,100] ,慣性權(quán)重系數(shù)ω1=0.9,ω2=0.4,最大迭代次數(shù)為50,分別采用一般的PSO算法和改進(jìn)型的PSO算法進(jìn)行尋優(yōu)。改進(jìn)型PSO算法的控制系統(tǒng)得到的最優(yōu)個(gè)體適應(yīng)值變化曲線如圖3所示,PID控制器的3個(gè)參數(shù)kp、ki和kd的變化曲線如圖4所示。把圖4得到的PID控制器的3個(gè)參數(shù)代入圖2的控制系統(tǒng)的仿真模型中,輸入信號(hào)采用單位階躍信號(hào),在PID控制器的最優(yōu)參數(shù)的狀況下,對控制系統(tǒng)進(jìn)行仿真,得到的控制系統(tǒng)的輸出曲線如圖5(a)所示,改進(jìn)前PSO算法的控制系統(tǒng)的輸出曲線如圖5(b)所示。
圖3 最優(yōu)個(gè)體適應(yīng)值的變化曲線
圖4 PID參數(shù)的優(yōu)化曲線
圖5 控制系統(tǒng)在最優(yōu)參數(shù)狀態(tài)下的輸出曲線
從圖3可以看出,最優(yōu)個(gè)體適應(yīng)值在迭代次數(shù)為33次的時(shí)候趨于0,說明系統(tǒng)存在的穩(wěn)態(tài)誤差e(t)基本趨于0,系統(tǒng)具有很好的穩(wěn)態(tài)性和穩(wěn)態(tài)精度。從圖4中看出經(jīng)過20次迭代后,尋出的最優(yōu)的PID控制器的參數(shù)為:kp=34,ki=0.2,kd=50。把最優(yōu)的PID控制器的參數(shù)帶入控制系統(tǒng)中進(jìn)行系統(tǒng)仿真,從圖5可以看出,采用改進(jìn)型的PSO算法后,控制系統(tǒng)的輸出的超調(diào)量為17%,上升時(shí)間tr=0.45 s,峰值時(shí)間為tp=0.7s,調(diào)節(jié)時(shí)間ts=1s,而一般PSO算法的控制系統(tǒng)的輸出的超調(diào)量為23%,上升時(shí)間tr=2.1s,峰值時(shí)間為tp=2.8s,調(diào)節(jié)時(shí)間ts=7.8s。
從性能指標(biāo)上看,采用改進(jìn)型的PSO算法的控制系統(tǒng)具有很好的快速性、平穩(wěn)性和穩(wěn)態(tài)精度,采用改進(jìn)型PSO算法提高了控制系統(tǒng)的穩(wěn)態(tài)性能和動(dòng)態(tài)性能。
針對一般的粒子群算法中固定慣性系數(shù)ω的大小對粒子尋優(yōu)的范圍的影響,慣性系數(shù)ω越大,粒子尋優(yōu)的全局性越好,ω越小更利于算法收斂。本文通過對粒子群優(yōu)化算法中慣性系數(shù)的改進(jìn),提出了新的改進(jìn)型粒子群優(yōu)化算法,使得慣性系數(shù)ω線性減小,前期的時(shí)候慣性系數(shù)ω有利于粒子的全局尋優(yōu),后期的時(shí)候慣性系數(shù)ω有利于PSO算法的收斂。把改進(jìn)型PSO算法應(yīng)用于PID控制器中,對PID控制器的3個(gè)參數(shù)進(jìn)行尋優(yōu),得到kp、ki和kd的最優(yōu)值,把尋出的最優(yōu)參數(shù)值應(yīng)用于一個(gè)不穩(wěn)定的控制系統(tǒng)中。仿真結(jié)果表明,尋優(yōu)得到的PID控制器的比例、積分和微分環(huán)節(jié)的最優(yōu)值,可以使得控制系統(tǒng)具有很好的穩(wěn)態(tài)性能和動(dòng)態(tài)性能,提高了控制系統(tǒng)的魯棒性。
參考文獻(xiàn)
[1] 王凌.智能優(yōu)化算法及其應(yīng)用[M] .北京:清華大學(xué)出版社,2001:45-86.
[2] 茍軒,謝華,程玉華,等.模糊PID算法在雙閉環(huán)溫控系統(tǒng)中的應(yīng)用[J] .中國測試,2011,37(4):75-77,84.
[3] 馮冬青,邢廣成.基于改進(jìn)PSO算法的多變量PID型神經(jīng)網(wǎng)絡(luò)控制[J] .系統(tǒng)仿真學(xué)報(bào),2011,23(2):363-366.
[4] 田艷兵.基于PSO的自整定PID溫度控制研究[J] .化工自動(dòng)化及儀表,2010(10):82-84.
[5] 張麗平,俞歡軍,陳德釗,等.粒子群優(yōu)化算法的分析與改進(jìn)[J] .信息與控制,2004,33(5):513-517.
[6] 史峰,王輝,郭磊,等. Matlab智能算法[M] .北京:北京航空航天大學(xué)出版社,2010(12).
[7] 崔長彩,李兵,張認(rèn)成.粒子群優(yōu)化算法[J] .華僑大學(xué)學(xué)報(bào):自然科學(xué)版,2006,27(4):343-347.
[8] 張敏慧.改進(jìn)的粒子群計(jì)算智能算法及其多目標(biāo)優(yōu)化的應(yīng)用研究[D] .杭州:浙江大學(xué),2005.
[9] 呂振肅,侯志榮.自適應(yīng)變異的粒子群優(yōu)化算法[J] .電子學(xué)報(bào),2004,32(3):416-420.
[10] 王啟付,王戰(zhàn)江,王書亭.一種動(dòng)態(tài)改變慣性權(quán)重的粒子群優(yōu)化算法[J] .中國機(jī)械工程,2005,16(11):945-948.
圖2 Simulink環(huán)境下PID控制系統(tǒng)的仿真模型
Research on PID controller based on improved PSO algorithm
ZHANG Yan-hong
(School of Electronic Information & Electric Engineering,Changzhou Institute of Technology,Changzhou 213002,China)
Abstract:For the shortcomings of easily falling into local optimum and lower search precision in common particle swarm optimization(PSO)algorithm,an improved PSO algorithm was studied. The inertia weight coefficient ω plays a key role on whether PSO algorithm falling into local optimum or not,so it is linearly reduced by the improved PSO algorithm. The parameters of PID controller are also optimized by the improved PSO algorithm and the optimized parameters are used in the control system. The simulation results show that the improved PSO algorithm does not fall into local optimal and the optimal parameters of the PID controller can be obtained,which makes the performance index of the control system optimal with better robustness.
Key words:PSO;controller;parameter optimization;performance index;robustness
基金項(xiàng)目:常州工學(xué)院科研基金項(xiàng)目(YN1216)
收稿日期:2012-10-22;
doi:10.11857/j.issn.1674-5124.2013.05.026
文章編號(hào):1674-5124(2013)05-0096-03
文獻(xiàn)標(biāo)志碼:A
中圖分類號(hào):TP273;TP214;N945.13;TM930.12
作者簡介:張燕紅(1979-),女,山東德州市人,講師,研究方向?yàn)橹悄芸刂啤?/p>