摘要:具有量子行為的粒子群優化(Quantumbehaved Particle Swarm Optimization,QPSO)算法是繼粒子群優化算法(Particle Swarm Optimization,PSO)后,最新提出的一種新型#65380;高效的進化算法#65377;提出了運用QPSO算法設計的非線性觀測器方法#65377;該方法屬于滾動時域估計方法,利用具有量子行為的粒子群算法優化獲得系統狀態的最優估計#65377;仿真結果顯示該方法對初始條件不敏感,具有很強的跟蹤能力#65377;
關鍵詞:具有量子行為的粒子群優化算法;非線性觀測器;滾動時域觀測器;狀態估計
中圖分類號:TP391.9; TP273.5文獻標志碼:A
文章編號:1001-3695(2007)04-0246-03
有關非線性系統控制設計的研究近年來取得了很大的進展,但在非線性觀測器方面取得的成果卻較少#65377;盡管已經提出了多種非線性系統狀態觀測器設計方法,但是每種方法通常只適合于滿足一類條件的非線性系統,對于一般非線性系統的狀態觀測器設計依然是一個難點#65377;
近年來,許多研究者在關注基于優化的非線性系統狀態觀測器設計方法#65377;針對滿足一致重構條件的一般非線性連續時間系統,文獻[1]提出了一種滾動時域觀測器(Moving Horizon Observer)#65377;其基本思想是通過最小化區間[t-T,t]上的某個代價函數對t時刻非線性系統的狀態進行估計#65377;滾動時域估計方法簡單#65380;可操作性強#65380;應用范圍廣,缺點是計算量較大#65377;基于數值優化中的Newton法,針對一類由常微分方程和觀測方程描述的非線性可觀測系統,提出了一種狀態逼近的迭代方法,其基本思想是通過計算一個分段連續函數來逼近真實狀態#65377;該方法需要計算代價函數的Hessian陣,不適合實時應用;此外,如果代價函數不滿足二次可微,則會導致Newton法無法應用#65377;從本質上看,Newton法也可以屬于滾動時域估計的范疇#65377;
有研究者提出運用進化算法優化滾動時域的計算方法#65377;進化算法具有較強的全局收斂能力和較強的魯棒性,且不需要借助問題的特征信息#65377;本文提出了一種新的能保證全局收斂的進化算法——具有量子行為的算法(Quantumbehaved Particle Swarm Optimization, QPSO)[2,3]#65377;QPSO算法是一種高效并行的優化算法,可用于解決大量非線性#65380;不可微和多峰值復雜優化問題,這種方法實現簡單#65380;調整參數較少,并適應非線性系統有可能異常復雜的特性,達到了較高的辨識精度#65377;本文將提出運用QPSO的非線性觀測器的設計研究方法#65377;
1QPSO算法
1.1QPSO算法思想
2004年,Sun等人在研究了Clerc等人的關于粒子收斂行為的研究成果后,從量子力學的角度出發提出了一種新的PSO算法模型#65377;這種模型是以Deleta勢阱為基礎,認為粒子具有量子的行為,并根據這種模型提出了量子粒子群算法[2,3]#65377;
在量子空間中粒子的滿足聚集態的性質完全不同,它可以在整個可行解空間中進行搜索,因而量子PSO算法的全局搜索性能遠遠優于標準PSO算法#65377;在量子空間中,粒子的速度和位置是不能同時確定的#65377;因此文獻[2]通過波函數ψ(x,t)(其物理意義為:波函數的平方是粒子在空間某一點出現的概率密度)來描述粒子的狀態,并通過求解薛定諤方程得到粒子在空間某一點出現的概率密度函數#65377;隨后通過蒙特卡羅隨機模擬的方式得到粒子的位置方程為
其中,u為[0,1]范圍內變化的隨機數;L被定義為
其中,β稱為活力系數;M為粒子的數目;D為粒子的維數;Pi為第i個粒子的pbest#65377;最后得到粒子的位置方程為
QPSO的算法流程如下:
初始化種群的每個粒子的位置向量
直到終止條件滿足
在QPSO算法中,粒子的狀態只需用位置向量來描述,并且算法中只有一個控制參數β,對這個參數的選擇和控制是非常重要的,它關系到整個算法的收斂速度#65377;
1.2QPSO算法的優點
量子粒子群算法能夠克服一般粒子群算法在收斂性能上的缺陷是由于其具有如下三點特性:
(1)量子系統是一個復雜的非線性系統并且符合狀態重疊原理#65377;因此量子系統比一個線性系統具有更多的狀態#65377;
(2)量子系統是一個與典型的隨機系統遠遠不同的不確定性系統#65377;在這樣的一個系統中,一個粒子能夠以某一確定的概率出現在搜索空間中的任意一個位置#65377;因為粒子沒有一個確定的軌跡#65377;
(3)在PSO算法中,粒子必須在一個有限的搜索范圍內以確保粒子群的聚集性,使算法收斂于一個最優點或局部最優點#65377;在傳統的PSO算法中,有限的搜索范圍將粒子限制在一個固定的區域,而在QPSO算法中,粒子能夠以某一確定的概率出現在整個可行的搜索空間中的任意一個位置,甚至是一個遠離p點的位置#65377;而這樣的一個位置可能比當前群體中的pbest具有更好的適應值#65377;
2非線性觀測器的設計
由文獻[1]可知,基于優化的非線性觀測器的實質是將非線性連續時間系統的狀態估計問題轉換為非線性函數的在線優化問題#65377;
2.1非線性系統描述和滾動時域估計方法
考慮如下描述的非線性系統:
其中,狀態向量x(t)∈Rn,觀測向量y(t)∈Rm#65377;f ∶Rn→Rn和g∶Rn→Rm為給定非線性函數且滿足如下要求:①f和g對于狀態x(t)來說是局部Lipschitz連續;②f(0)=0#65377;上述假設主要是保證對于任一初始條件x(t0)=x0,方程(1)具有在時刻t0通過x0的一個局部最優解#65377;
對于任一(w,t)∈Rn×R,令x(#8226;;w,t)表示式(1)在時刻t通過狀態w的解,x(t;x0,0)表示真實(但未知)初始條件x0下系統在時刻t的狀態#65377;
對于任意時刻t1≤t2以及任意的w∈Rn,定義
表示區間[t1,t2]上觀測器誤差的測度#65377;其中y(#8226;)=g(x(#8226;;x0,0))為系統的可量測輸出#65377;
當系統滿足一致可重構條件時,系統(式(1)#65380;(2))的狀態估計問題可以通過在線求解以下序列優化問題而得到近似解:
其中,{TEi}為有界時域序列,TEi≤TE,i∈N,TE為最大觀測時域#65377;
2.2基于QPSO的滾動時域估計
當指定初始條件#65380;采樣時間和最大觀測時域后,可以利用常微分方程的數值解法對原非線性連續時間系統進行求解,從而得到原連續時間系統的一系列離散解#65377;而根據式(3)#65380;(4)可知,狀態估計問題又可以轉換為一個序列優化問題,因而優化算法對于基于優化的非線性觀測器來說是一個重要的組成部分#65377;
因此,本文采用QPSO算法作為優化方法,利用滾動時域方法進行狀態估計#65377;從本質上講,本方法屬于文獻[1]所提出的基于優化的滾動時域觀測器,并且同時具有如下特點:
(1)通過最小化區間[t,t+T](也可以采用區間[t-T,t])上的某個代價函數對t時刻非線性系統的狀態進行估計#65377;
(2)基于常微分方程的數值求解方法,應用離散化方法對非線性連續時間系統的狀態進行估計#65377;
(3)采用QPSO算法作為優化方法#65377;它的優點是可以對整個狀態空間進行高效并行搜索,因而無須對初始條件作出比較精確的估計,通常只要給出一個大致范圍即可#65377;
(4)由于使用的優化方法是基于函數值的尋優策略,不需要代價函數可微或連續,降低了對系統的要求,使得所設計的觀測器適用范圍比較廣#65377;
3QPSO算法優化的非線性觀測器的仿真示例
3.1采用著名的Van der Pol系統進行仿真
其中,μ=2,狀態初始值為[4,0.25]#65377;
參照文獻[3],仿真過程如下:
(1)由于四階RungeKutta方法具有較高精度,能滿足仿真需求,本文首先采用0.000 25的步距,運用四階RungeKutta方法對上述連續時間系統進行仿真#65377;
(2)以步距0.005獲取上述仿真中的系統輸出值作為觀測數據,由于此時步距為模擬運行步距的20倍,大致可以認為估計中的數據取自真正的連續系統#65377;
(3)采用QPSO算法的滾動時域方法估計系統狀態,觀測時域取為0.02#65377;
QPSO算法的設置如下:粒子數取30,最大進化代數為100代,系數β在一次運行中由1.0線性遞減為0.5#65377;狀態x1和x2的初始估計均設為區間[-20,20]#65377;
3.2仿真結果
仿真結果如圖1#65380;2所示#65377;由圖1可知,QPSO算法優化的非線性觀測器對系統的狀態估計具有很強的跟蹤能力,對系統作出的狀態估計的誤差均可達到10-11以上的數量級#65377;因此從圖1中可以看出,狀態的實際值和估計值幾乎完全重合,而且無須對狀態初始條件作出比較精確的估計,只給出一個大致的范圍即可#65377;此外,與文獻[4]的優化方法相比,本文方法可以從一開始就能給出準確的狀態估計,而文獻[4]的方法啟動后還需要一段較長時間才能給出比較準確的估計值#65377;
圖2顯示了QPSO算法優化估計的收斂速度#65377;由圖2可知,QPSO的狀態估計值在迭代五次后平均誤差就趨近于零,可見其收斂速度得到了大大提高#65377;
由表1可知,QPSO算法優化狀態估計在訓練集上的平均誤差達到了10-12數量級#65377;因此仿真實驗證明,QPSO算法優化的非線性觀測器具有很強的跟蹤能力,能滿足較高的精度要求#65377;
4結束語
本文提出了一種QPSO算法優化的非線性觀測器的設計方法#65377;仿真證明它的全局收斂能力和全局收斂速度均很優越,并且能達到較高的精度,對于系統狀態的變化具有很強的跟蹤能力,是一種能廣泛適用的設計方法#65377;
本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。