楊慶江, 田志龍
(黑龍江科技大學 電氣與信息工程學院, 哈爾濱 150022)
?
基于交叉熵算法的自抗擾控制器參數(shù)整定方法
楊慶江,田志龍
(黑龍江科技大學 電氣與信息工程學院, 哈爾濱 150022)
為解決自抗擾控制器參數(shù)難以整定的問題,提出基于交叉熵算法的自抗擾控制器參數(shù)優(yōu)化設計方法。通過適應交叉熵算法選擇適應度函數(shù),對其中的五個重要參數(shù)β01、β02、β03、β1、β2進行了優(yōu)化分析。仿真結果表明:交叉熵算法比免疫遺傳算法的自抗擾控制器超調量更小,響應時間更快。
自抗擾控制器; 交叉熵算法; 參數(shù)整定
自抗擾控制器(ADRC)需要整定的參數(shù)較多,且整定過程依靠經驗,造成整定參數(shù)不準確,也比較耗時和繁瑣[1]。免疫遺傳算法IGA可以對自抗擾控制器進行優(yōu)化設計,收斂效率較高,也可以全局收斂,但是在優(yōu)化時需要編碼。粒子群算法對自抗擾控制器參數(shù)的優(yōu)化,算法較簡單,但容易陷入局部最優(yōu),不能高效地得到最優(yōu)解[2-4]。筆者提出了交叉熵算法優(yōu)化自抗擾控制器的設計方法。
交叉熵算法作為一種新的優(yōu)化算法,在許多領域的優(yōu)化問題中都得到了很好地應用,其在小概率事件的求解優(yōu)化問題中具有簡單和有效的特點。文中在分析ADRC 參數(shù)對控制器性能影響的基礎上,利用交叉熵優(yōu)化算法理論,提出了基于交叉熵優(yōu)化算法的ADRC設計方法,對ADRC的參數(shù)進行優(yōu)化整定。
自抗擾控制器由跟蹤微分器(Tracking Differentiator,TD)、擴張狀態(tài)觀測器(Extended State Observer, ESO)和非線性反饋控制律(Nonlinear State Error Feedback Control Law,NLSEF)三部分組成,二階ADRC的結構如圖 1 所示[5]。
圖1 自抗擾控制器結構
設二階受控系統(tǒng)方程為
各模塊方程分別為
跟蹤微分器TD:
式中:
d=rh0;d0=dh0;y=x1+h0x2;
擴張狀態(tài)觀測器ESO:
非線性組合反饋NLSEF:
式中:
能夠決定ESO的估計能力的參數(shù)是β01、β02、β03,但這些參數(shù)還需要進行調試。在NLSEF的控制規(guī)律中,控制器的性能則主要由非線性配置系數(shù)β1、β2來決定。由此,對同一類對象而言,除了調試它的{β01、β02、β03、β1、β2},其余的控制器所需參數(shù)只需設置成固定值即可。能夠根據(jù)對象狀態(tài)量實現(xiàn)ESO的設計和根據(jù)積分串聯(lián)型的控制器要求完成NLSEF的設計,但是以上五個參數(shù)之間是相互影響的,僅憑借經驗確定其值,很難實現(xiàn)最優(yōu)控制。對此,采用了交叉熵算法的優(yōu)化理論,優(yōu)化整定ADRC的參數(shù){β01、β02、β03、β1、β2},以調試出這幾個參數(shù)的最優(yōu)值。
交叉熵方法屬于隨機優(yōu)化中的一種新方法,它最先被用在小概率事件的模擬仿真上,后又推廣到解決最優(yōu)化問題。該方法應用領域包括連續(xù)多目標優(yōu)化問題、組合優(yōu)化問題以及機器學習問題等。交叉熵方法解決問題的基本路線是首先確定優(yōu)化問題[6]
(1)
然后,把所優(yōu)化的問題和概率估計問題聯(lián)系起來。為此,在χ上定義一組概率密度函數(shù){f(·;v),v∈V}和指示函數(shù){I{s(x)≥γ}},對某個u∈V,定義式(1)優(yōu)化問題的相關估計:
l=Pμ(S(X)≥γ)=Eμ[I{S(X)≥γ}],
(2)
式中,I{·}表示集合。
對式(2)的估計,當γ取值接近式(2)優(yōu)化問題的最優(yōu)解時,概率l的值會非常小,S(X)≥γ為一小概率事件。如果直接利用Monte Carlo方法求解式(2),需要有足夠大的樣本數(shù)量,因為對于絕大多數(shù)樣本來說S(X)≥γ事件是不發(fā)生的,為此,引入重要采樣密度g(x),則式(2)的參數(shù)估計:
(3)
式中,Xi是根據(jù)g(x;v)生成的樣本。
為求得最優(yōu)的重要采樣密度g*(x;v),從一個函數(shù)族f(x;v)與g*(x;v)之間的交叉熵。交叉熵即Kullback-Leiben距離,對于兩個分布密度函數(shù)g(x)和h(x),它們之間的交叉熵可以表示為[5]
(4)
使f(x;v)與g*(x;v)之間的交叉熵小等價于
(5)
交叉熵方法使用了一個多級更新算法,也就是構造一個分布參數(shù)序列{vt,t≥0}和一個級序列{γt,t≥0},式(5)可以表示為
其參數(shù)估計式為
交叉熵優(yōu)化自抗擾控制器參數(shù)流程:首先利用樣本密度函數(shù)產生自抗擾控制器的隨機參數(shù)值,分別為β01、β02、β03、β1、β2的各個隨機數(shù)值,將這些隨機數(shù)值經過自抗擾控制器計算后產生的輸出作為交叉熵算法的目標函數(shù),再經過交叉熵算法對目標函數(shù)進行尋優(yōu),所得到的最優(yōu)結果用來確定自抗擾控制器的參數(shù)。
圖2 交叉熵算法整定自抗擾控制器流程
Fig. 2Cross-entropy algorithm tuning ADRC controller flowchart
3.1適應度函數(shù)
為了使輸入信號在控制系統(tǒng)作用下有較好的響應,能夠比較準確地進入跟蹤微分器中的過程,須要盡量使系統(tǒng)的輸出和跟蹤微分器的輸出誤差平方的積分達到最小,故目標函數(shù)選為
(6)
由式(6)目標函數(shù)計算它的倒數(shù),由此可得到適應度函數(shù),當適應度函數(shù)達到最大值時,就可得到相對應的控制器參數(shù)[3]。
3.2算法流程
選擇好適應度函數(shù)以后,算法的具體步驟為:
Step1初始化相關參數(shù),定義自抗擾控制器的初始參數(shù)值,令υ0=u0和t=1;
Step2根據(jù)分布密度函數(shù)f(x;υt-1)分別生成五組隨機樣本數(shù):X1,X2,…,XN,分別為β01、β02、β03、β1、β2的各個隨機數(shù)值,用這些樣本數(shù)據(jù)代入到自抗擾控制器的各個組成部分并依次計算每個樣本的目標函數(shù)值S(1),S(2),…,S(N),求出S的ρ分位數(shù);
Step3用生成的樣本數(shù)來求解,解定義為υt;
Step4判斷是否滿足終止條件,若滿足終止,否則t=t+1,返回Step2[7-8]。
在MATLAB的環(huán)境下,選取的一組基準參數(shù)為β01=10、β02=0.1、β03=0.5、β1=0.035、β2=0.008,其他的參數(shù)可設定為r=10 000、h=0.1、a1=0.25、a2=0.125、d=0.1、d=0.01、a3=0.125、a4=0.062 5。經過交叉熵算法迭代優(yōu)化后的五個優(yōu)化參數(shù)為β01=8.446 1、β02=0.314 2、β03=0.533 1、β1=0.035 2、β2=0.009 5。為驗證算法的有效性,仿真得到了優(yōu)化前后的系統(tǒng)階躍響應曲線,如圖3和4所示。
圖3 優(yōu)化前的系統(tǒng)階躍響應
由圖3和圖4對比可見:優(yōu)化前的超調量為1.30,優(yōu)化后的超調量為1.15,優(yōu)化前達到穩(wěn)定的時間約為500 s,而優(yōu)化后達到穩(wěn)定的時間約為300 s。由仿真結果分析可以得出優(yōu)化后的響應比之前的更加地快速和穩(wěn)定,跟蹤效果比之前的好,系統(tǒng)性能得到很好地提高。從而證明了交叉熵算法應用到自抗擾控制器中的可行性。經過交叉熵算法優(yōu)化后的自抗擾控制器動態(tài)和穩(wěn)態(tài)性能夠得到提高。
圖4 優(yōu)化后的系統(tǒng)階躍響應
利用上面的初始值設定,比較免疫遺傳算法IGA和交叉熵算法CE分別優(yōu)化自抗擾控制器的五個參數(shù)[9]。通過兩種算法的仿真對比,得到優(yōu)化后參數(shù),如表1所示。
表1 兩種方法優(yōu)化后參數(shù)
通過仿真得到響應曲線對比,如圖5所示。從圖5的階躍響應曲線可以看出,采用交叉熵算法優(yōu)化后的系統(tǒng)的超調量更小,響應時間也更加快速,進而證明了交叉熵算法在自抗擾控制器參數(shù)優(yōu)化上優(yōu)于免疫遺傳算法。
圖5 階躍響應曲線對比
通過分析交叉熵算法和自抗擾控制器的特點和性能,提出了基于交叉熵算法的自抗擾控制器參數(shù)優(yōu)化方法。結合自抗擾控制器模型進行分析,采用交叉熵算法對自抗擾器中的五個參數(shù)進行優(yōu)化,其收斂效率較高。仿真實驗結果表明,交叉熵算法在參數(shù)優(yōu)化方面具有收斂效率高、便于實現(xiàn)的優(yōu)點,可以提高自抗擾控制器的控制性能。
[1]史永麗, 侯朝楨, 蘇海濱. 基于粒子群優(yōu)化算法的自抗擾控制器設計[J]. 系統(tǒng)仿真學報, 2008, 20(2): 433-436.
[2]羅春松. 改進的粒子群算法及其在控制器參數(shù)整定中的應用 [D]. 長沙: 湖南大學, 2009: 57.
[3]曾文飛. 基于免疫遺傳算法的自抗擾控制器優(yōu)化設計及其應用 [D]. 長沙: 湖南大學, 2009: 10-30.
[4]姜萍, 王培光, 郝靖宇. 自抗擾控制器參數(shù)的免疫遺傳優(yōu)化及應用[J]. 控制工程, 2012, 19(2): 286-289.
[5]韓京清. 自抗擾控制技術[J]. 前沿科學, 2007(1): 24-31.
[6]盧長先. 基于交叉熵方法的布局問題求解算法研究[D]. 北京: 北京交通大學, 2007: 15-22.
[7]邊莉. 基于交叉熵算法的唯相位控制方向圖零點生成[J]. 信號處理, 2011(5): 791-794.
[8]周勇, 劉三陽, 楊曙光. 基于交叉熵的通訊網的優(yōu)化算法[J]. 系統(tǒng)工程與電子技術, 2004, 26(10): 1471-1475.
[9]郝靖宇. 自抗擾控制器的免疫遺傳算法優(yōu)化及其應用研究[D]. 保定: 河北大學, 2011: 28-30.
(編輯李德根)
ADRC controller parameter tuning method based on cross-entropy algorithm
YANGQingjiang,TIANZhilong
(School of Electric & Information Engineering, Heilongjiiang University of Science & Technology, Harbin 150022, China)
Aimed at addressing difficult tuning of the ADRC parameters, this paper offers ADRC parameter optimization design method based on cross-entropy algorithm and presents an optimizing analysis of the five important parameters (β01,β02,β03,β1,β2)of fitness function by employing the cross entropy algorithm. The simulation shows that the cross entropy algorithm exhibits a smaller ADRC overshoot and a faster response than the immune genetic algorithm.
ADRC; cross entropy algorithm; parameter tuning
2013-04-02
楊慶江(1969-),男,黑龍江省哈爾濱人,教授,碩士,研究方向:電力電子與電力傳動,E-mail:yqj7962@163.oom。
10.3969/j.issn.1671-0118.2013.03.018
TP273
1671-0118(2013)03-0298-04
A