陳正岸
(廣東粵電湛江生物質發電有限公司,廣東湛江524000)
遺傳算法是從代表問題可能潛在解集的一個種群開始的,而一個種群則由經過基因編碼的一定數目的個體組成。每個個體實際上是染色體帶有特征的實體。染色體作為遺傳物質的主要載體,它決定了個體的形狀外部表現。因此,需要實現從表現型到基因型的映射編碼工作。由于仿照基因編碼的工作很復雜,需要進行簡化,如二進制編碼。初代種群產生之后,按照優勝劣汰的原理,逐代演化產生出越來越好的近似解。在每一代,根據問題式中個體的適應度大小選擇個體,并借助于自然遺傳學的遺傳算子進行組合交叉和變異,產生出新的解集種群。末代種群中的最優個體經過解碼,可以作為問題近似最優解。
遺傳算法模仿生物遺傳及進化的步驟,以自然選擇和遺傳理論為基礎,將生物進化過程中適者生存規則與群體內部染色體的隨機信息交換機制相結合,在問題空間進行全局并行的、隨機的搜索優化,求得問題的全局最優解。遺傳算法模仿生物遺傳及進化的步驟,引人了如繁殖、交叉、變異等方法。
由于遺傳算法的整體搜索策略和優化搜索方法在計算時不依賴于梯度信息或其他輔助知識,只需要影響搜索方向的目標函數和相應的適應度函數,所以遺傳算法提供了一種求解復雜系統問題的通用框架,它不依賴于問題的具體領域,對問題的種類有很強的魯棒性,所以廣泛應用于許多科學。例如,函數優化、權值優化、組合優化、結構優化。
PID 控制器中一般微分時間為0,所以選取比例帶δ 和積分時間Ti 為參數,我們的任務是離線尋找最合適的參數,以使控制器的控制達到最優。首先確定參數范圍,該范圍一般由用戶給定,根據經驗設 δ∈[0,5],Ti∈[0,100],然后由精度的要求,對其進行編碼。選取10 位的二進制字串來表示每一個參數,并建立與參數的關系,再把兩個參數的二進制連接起來組成一個長的二進制字串,該字串為遺傳算法可以操作的對象。
因為需要編程來實現各過程,所以采用計算機隨機產生初始種群即先產生0 ~1 之間均勻分布的隨機數,然后規定產生的隨機數 0 ~0.5 之間代表 0,0.5 ~1 之間代表 1。此外,考慮到計算的復雜程度,規定種群的大小為迭代,也就是迭代20 次。
一般的尋優方法在約束條件下可以求得滿足條件的一組參數,在設計中是從該組參數中尋找一個最好的。衡量一個控制系統的指標有三個方面,即穩定性,準確性和快速性。而上升時間反映了系統的快速性,上升時間越短,控制進行就越快,系統品質也就越好。
實際應用中系統中固有的飽和特性導致系統不穩定,為了防止控制能量過大,在目標函數中加入控制量。因此,為了使控制效果更好,我們給出了控制量,誤差和上升時間作為約束條件。適應函數同目標函數相關,目標函數確定后,直接將其作為適配函數進行參數尋優。最優的控制參數就是在滿足約束條件下是f(x)最大時,x 所對應的控制器參數。
利用遺傳算法優化Kp,Ki,Kd 的具體步驟如下。
1)確定每個參數的大致范圍和編碼長度,進行編碼。
2)隨機產生n 個個體構成初始種群P(0)。
3)將種群中各個體解碼成對應的參數值,用此參數求代價函數值J 及適應函數值f,取f=1/J。
4)應用復制,交叉和變異算子對種群P(t)進行操作,產生下一代種群P(t+1)。
5)重復步驟3)和4),直至參數收斂或達到預定的指標。
通過計算機編程實現以上功能,選取單回路尋優控制回路實例做進一步分析。實例:某單回路尋優控制回路如圖1 所示,其中被控對象為二階傳遞函數:
G(s)=300/(s2+30s),PID 為 U(S)= Kp(1 +1/TiS +TdS)。采樣時間為1 ms,輸入為階躍信號。

圖1 控制系統圖
為獲取滿意的過渡過程動態特性,采用誤差絕對值時間積分性能指標作為參數選擇的最小目標函數。為了避免超調,采用超調量作為最優指標的一項,此時的最優指標為:

e(t)為系統誤差,u(t)為控制器輸出,tu為上升時間,w1,w2,w3,w4 為權值。
采用二進制編碼方式,用長度為10 位的二進制編碼串來分別表示三個決策變量Kp,KI,Kd。最優指標的選取同十進制編碼遺傳算法的PID 整定。遺傳算法中使用的樣本個數為Size =30,交叉概率和變異概率分別為:pc=0.06,pm=0.01 -[1 ∶1:Size]。參數 Kp的取值范圍為[0,20],KI,Kd的取值范圍為[0,1],w1,w2,w3,w4 的取值同十進制編碼遺傳算法的PID 整定。經過100 代進化,最優個體為 BestS=[010000011101011100100000100110]。
PID 優化參數為:Kp =17.556 2,Ki =0.391 0,Kd =0.306 9,性能指標 J=27.364 3。
為顯示用遺傳算法進行參數優化的優越性,用遺傳算法和工程上常用的衰減曲線法進行了PID 參數整定與優化,并進行效果性能的比較。我們用MATLAB 的Simulink 搭建的模塊圖去模擬實際的工程,Simulink 接線如圖2,輸入信號都為單位階躍信號。

圖2 仿真結構圖
用兩種方法整定出PID 的參數,在兩個PID 控制中填入相應的參數值,最后運行可以得出兩條輸出響應曲線如圖3。

圖3 階躍響應曲線
通過上圖的仿真實驗表明,從兩條階躍響應曲線可以看出,遺傳算法的調節時間比衰減曲線法的調節時間短,超調量比衰減曲線法小。遺傳算法優化出來的PID 參數在應用到實際中得出的系統響應動態效果明顯,比衰減曲線法的參數好。
被控對象在運行過程中可能出現劣性變化時,對象的時間常數T 增大,靜態增益K 減小,此時,控制系統的控制水平會發生的變化是工程上必須考慮的重要問題。當時間常數T 增加50%后,原來被控對象變G'(s)=10/(0.05s2+s),定值擾動信號為單位階躍信號來檢驗系統的魯棒性。PID 采用遺傳算法優化參數 Kp=17.556 2,Ki =0.391 0,Kd =0.306 9,用衰減曲線法整定出來的 PID 的參數為 Kp =3.062 5,Ki =0.180,Kd =0.060,兩種方法魯棒性比較如圖4

圖4 響應曲線
從上圖曲線中可以看出,魯棒性測試中,對象發生了結構和參數的變化,基于遺傳算法PID 參數優化方法下的控制效果仍比較好,可以說該方法具有較強的魯棒性。
遺傳算法運用于PID 的參數整定,不但克服了常規PID 整定方法的缺點,而且還避免了基于專家系統的PID 參數整定方式中知識庫建立的困難性,實現PID 參數離線整定。如果把該方法運用于工業控制過程的上位機,結合系統辨識可以實現PID 在線參數整定。
[1]周明,孫樹棟.遺傳算法原理及應用[M].北京:國防工業出版社,1999.
[2]金以慧,方宗智.過程控制[M]. 北京:清華大學出版社,2008.
[3]薛定宇.控制系統仿真與計算機輔助設計[M]. 北京:機械工業出版社,2005.
[4]黃忠霖.控制系統 MATLAB 計算及仿真[M].北京:國防工業出版社,2009.
[5]劉金昆.先進 PID 控制及其 MATLAB 仿真[M].北京:電子工業出版社,2003.
[6]劉娜,韓璞,甄成剛.基于遺傳算法的PID 參數尋優[J].計算機仿真,2002,19(2):.
[7]毛敏,于希寧. 基于遺傳算法的 PID 參數優化方法[J].中國電力.2002,35(8):48 -51.
[8]陳祥光.遺傳算法在PID 控制器參數尋優中的應用研究[J].計算機真,2001,18(2):.
[9]劉俊麗,韓旭. 遺傳算法技術淺論[J]. 電腦學習,2009,5:142 -143.
[10]丁寅磊,呂麗霞.基于遺傳算法的PID 控制器參數優化研究[J].儀器儀表用戶,2009(1).