劉德春,譚 信
(1.阿壩師范高等專科學校 電子信息工程系,四川 郫縣 611741;2.電子科技大學電子 工程學院,四川 成都 611731)
現在多傳感器聯合目標跟蹤已經十分廣泛,由于被動傳感器不發射信號,只是被動的接受信號,因此只能測量目標的角度信息,而不能測量距離,因此狀態方程和測量方程都是非線性的,因此非線性濾波算法得到了越來越廣泛的研究和應用[1]。
本文中重要討論三種非線性濾波算法,一類是擴展卡爾曼濾波,這種算法是利用泰勒級數展開方法將非線性問題轉化為一個線性濾波問題,再用卡爾曼濾波方法進行求解,這種算法簡單方便,但是在強非線性和非高斯條件下濾波性能急劇變差,甚至出現濾波發散;另一類是不敏卡爾曼濾波[2-3],這種算法是基于UT變換的,不需要對非線性系統進行線性化,而是利用采樣點對狀態向量的概率密度函數進行近似,近似后的概率密度函數仍然是高斯的;第三類粒子濾波算法[4,5]是近年來興起的非線性濾波算法,是基于蒙特卡洛仿真的最優回歸貝葉斯濾波方法,由于是利用隨機樣本對狀態估計,因此該方法不受線性化誤差和高斯噪聲的限制,這是優于前兩種濾波算法之處。
非線性系統的狀態方程和觀測方程如式1和式2所示。

其中,xk是目標的狀態向量,zk是目標的觀測向量,fk是系統的狀態轉移矩陣,hk是系統的觀測矩陣,uk和vk分別是系統狀態噪聲和觀測噪聲,之間互不相關,協方差矩陣分別是Q和R。
擴展卡爾曼濾波算法是一種常用的非線性濾波方法,由于狀態噪聲協方差矩陣和觀測噪聲協方差矩陣一直保持不變,因此其濾波結果好壞與過程噪聲和量測噪聲的初始估計有很大的關系,另外該算法只有當模型線性化誤差較小時才有較好的濾波精度;相關參考文獻指出泰勒級數保留的階數越高,濾波的性能越好,但是計算量將大幅增大,實驗證明,二階擴展卡爾曼濾波器的性能要優于一階,但是計算量要大很多,因此一般情況下只采用一階擴展卡爾曼濾波算法。
擴展卡爾曼濾波遞推步驟如下[1]:步驟1:狀態的一步預測為

步驟2:協方差的一步預測

步驟3:量測值預測值

步驟4:量測預測值協方差

步驟5:濾波增益

步驟6:狀態更新方程

步驟7:協方差更新

當系統的非線性特性比較繁雜時,擴展卡爾曼濾波算法效果常常不能令人滿意,為了得到更好的濾波效果,Julier等人便提出了基于UT變換的不敏卡爾曼濾波算法(UKF)。該算法利用一組近似高斯分布的樣本點經過UT變換傳遞后,得到對狀態分布函數的近似,該算法避免了EKF算法對非線性函數近似時引入的誤差,得到了更好的濾波效果。
首先介紹UT變換的基本思想:
1)首先計算(2nx+1)個δ采樣點ξi和其對應的權值Wi

式中,κ是尺度參數,滿足κ+nx≠0。nx是狀態向量的維數。
2)χi通過非線性傳遞得到新的樣本點

3)y的估計均值與協方差估計如下:

不敏卡爾曼濾波的算法流程如下[6]:
3)進行觀測值的更新


由UKF算法的流程可知,該算法不需要計算非線性函數的雅克比矩陣,從而大大節省了計算量,因此速度比EKF算法要快,并且UT變換能夠更準確的估計非線性函數的均值和方差,因此濾波精度要比EKF算法要高。通過非線性函數傳遞時,對于任意非線性函數,UKF是后驗均值和協方差都可以精確到二階的高斯濾波,EKF只能獲得一階的精度,這就使UKF可以使用于任何動態模型。另外UKF算法對狀態向量近似化后的概率密度函數仍然服從高斯分布的,因此對非高斯系統的濾波將會帶來極大的誤差。
粒子濾波的基本思想是將所關心的狀態矢量表示為一組帶有相關權值的隨機樣本,并基于這些樣本和權值計算出狀態估計值。當隨機得到的采樣點足夠多時,粒子估計得到的概率密度函數趨近于真實的概率密度,粒子濾波趨于最優貝葉斯濾波。


如果所選擇的重要性密度概率密度條件獨立,即

另外希望重要性概率密度函數只與前一個時刻有關,及滿足馬爾科夫過程,則

通過以上幾式可得權值有如下關系:

當粒子數N→∞時,求出的后驗概率密度函數接近于真實的概率密度函數。
粒子濾波在實際操作中存在粒子退化現象,即隨著采樣數的增加,許多粒子的權值會變得很小,樣本的方差會隨著時間增大。避免粒子退化現象可以采用兩種方法:重采樣技術和選取好的重要性密度函數。重采樣技術可能會使樣本枯竭,從而損失了粒子的多樣性,樣本枯竭問題還有待深入研究。選取好的重要性密度函數遵循兩大原則:使重要性密度函數容易采樣和使權系數的方差最小。
仿真中系統采用非線性的模型[7],系統狀態方程和量測方程如式26和式27所示。

式中,狀態噪聲 ν1是服從伽馬分布 G(3,2),量測噪聲 ν2是服從高斯分布N(0,1),并且相互獨立,仿真時長取為50 s。進行100此獨立的蒙特卡洛仿真,粒子濾波粒子數取為200。
仿真結果如下:

圖1 濾波航跡與真實航跡Fig.1 Filtering track and real track

圖2 三種濾波算法方差對比Fig.2 Comparison of variance of three filtering algorithm
三種濾波算法綜合比較如表1所示。

表1 非線性模型下三種算法比較Tab.1 Comparison of three algorithms in the nonlinear model
通過以上仿真結果可以看出,由于采用了強非線性模型并且狀態噪聲是非高斯的,EKF算法的一階泰勒級數展開的舍入誤差較大,產生了明顯的濾波發散,UKF算法也產生了較大的濾波偏差,而PF算法則要優于EKF和UKF算法。由表1可以看出,由于采用了非線性模型和非高斯誤差EKF和UKF算法的方差急劇增大產生了發散,濾波性能急劇下降,PF算法的方差相對較小,濾波性能仍然較為良好,但是付出的代價是耗用了更長的仿真時間。
本文對三種非線性濾波算法進行了仿真,從計算速度角度來說,EKF和UKF要明顯優于PF算法;從濾波精度角度來說,如果采用強非線性模型和非高斯噪聲,EKF和UKF算法產生了明顯的發散,而PF濾波算法性能依然良好。因此,在選擇濾波算法時,在一般的非線性高斯環境中宜采用EKF算法,當非線性增大時可以采用UKF算法,當系統處于更復雜的非高斯環境時,最好采用濾波效果更好的PF算法。并且隨著計算機能力的大幅提高,PF將具有更廣泛的應用前景。
[1]何友,修建絹等.雷達數據處理及應用[M].二版.北京:電子工業出版社,2009.
[2]潘泉,楊峰.一類非線性濾波器-UKF綜述[J].控制與決策,2005,20(5):481-488.PAN Quan,YANG Feng.Survey of a kind of nonlinear filters—UKF[J].Control and Decision, 2005, 20(5):481-488.
[3]江寶安.基于UKF濾波的單目標跟蹤算法研究[D].合肥:國防科學技術大學,2003.
[4]胡士強,敬忠良.粒子濾波算法綜述 [J].控制與決策,2005,20(4):361-365.HU Shi-qiang,JING Zhong-liang.Overview of particle filter algorithm[J].Control and Decision, 2005, 20(4):361-365.
[5]朱志宇.粒子濾波算法及其應用[M].北京:科學出版社,2010.
[6]吳凡.基于非線性濾波的機動目標跟蹤算法研究 [D].西安:西安電子科技大學,2010.
[7]Merve R,Doucet A.The unscented particle filter[J].Technical Reprot CUED/FINFENG/TR 380, 2000:1-45.