, ,
(石家莊鐵道大學(xué) 電氣與電子工程學(xué)院,河北 石家莊 050043)
非線性濾波問題是運(yùn)動(dòng)目標(biāo)跟蹤研究領(lǐng)域的關(guān)鍵問題,近年來引起越來越多研究者們的關(guān)注。在目標(biāo)模型為非線性時(shí),通常采用擴(kuò)展卡爾曼濾波器(EKF)[1-2]對(duì)其進(jìn)行跟蹤。它的基本思路是對(duì)運(yùn)動(dòng)目標(biāo)的非線性模型在狀態(tài)向量的鄰域內(nèi)做Taylor展開,取其一階或二階近似。然而,該算法需要計(jì)算模型的Jacobian矩陣,因而計(jì)算復(fù)雜,實(shí)現(xiàn)起來較為困難。而且,在模型的非線性較強(qiáng)以及系統(tǒng)噪聲非高斯時(shí),EKF的估計(jì)精度嚴(yán)重降低,并可能造成濾波器的發(fā)散[3]。基于上述EKF在非線性系統(tǒng)中的問題,近年來提出了粒子濾波[4-5]跟蹤算法。粒子濾波也叫做貝葉斯濾波(Bayes filter)或蒙特卡羅濾波 (Monte Carlo filter),它是一種蒙特卡羅方法[6]。該算法通過尋找一組在狀態(tài)空間傳播的隨機(jī)樣本對(duì)概率密度函數(shù)進(jìn)行近似,以樣本均值代替積分運(yùn)算,從而獲得狀態(tài)最小方差分布。本文通過仿真實(shí)驗(yàn)研究了噪聲協(xié)方差與粒子數(shù)對(duì)PF的影響,并將PF與EKF進(jìn)行了對(duì)比。實(shí)驗(yàn)結(jié)果表明,當(dāng)運(yùn)動(dòng)模型為強(qiáng)非線性時(shí),PF比EKF具有更小的均方根誤差( RMSE)和更高的目標(biāo)跟蹤精度。
圖1 粒子濾波跟蹤算法流程圖
粒子濾波跟蹤算法可用于強(qiáng)非線性系統(tǒng)。其流程圖如圖1所示。
粒子濾波跟蹤運(yùn)動(dòng)目標(biāo)的具體算法如下[7]:
第二步:采樣。通過系統(tǒng)狀態(tài)轉(zhuǎn)移方程
xk=f(xk-1,uk) (1)
(2)
式中,q(xk|x0:k-1,uk)為概率密度分布近似目標(biāo)函數(shù)p(xk)。
第三步:更新粒子權(quán)重。通過觀測方程
yk=h(xk,vk) (3)
(4)
式中,yk表示k時(shí)刻實(shí)際觀測值。然后將粒子權(quán)值進(jìn)行歸一化處理
(5)
此時(shí)可以通過式(2)近似計(jì)算出后驗(yàn)概率密度分布
(6)
(7)
第六步:下一狀態(tài)重復(fù)第二步并循環(huán)迭代。
采用廣泛使用的非線性模型,分別使用擴(kuò)展卡爾曼濾波器和粒子濾波器完成了運(yùn)動(dòng)目標(biāo)跟蹤實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果和誤差分析如圖2所示。非線性模型
圖2 EKF與PF狀態(tài)估計(jì)仿真實(shí)驗(yàn)
(8)
式中,wk,vk均為零均值的高斯白噪聲,其方差分別為Q=1和R=1。初始粒子分布為均值為0,方差為2的正態(tài)分布,時(shí)間步長數(shù)為50。粒子濾波的粒子數(shù)為100,蒙特卡洛仿真次數(shù)為200次。
由圖2(a)可以看出,當(dāng)運(yùn)動(dòng)模型是強(qiáng)非線性時(shí),擴(kuò)展卡爾曼濾波器對(duì)目標(biāo)跟蹤的偏差非常大,在時(shí)間長度為50 s的蒙特卡羅迭代中,幾乎有1/5的目標(biāo)估計(jì)狀態(tài)與真實(shí)狀態(tài)有明顯偏差,有的甚至與真實(shí)狀態(tài)完全相反。而粒子濾波器基本上可以準(zhǔn)確估計(jì)目標(biāo)的狀態(tài),沒有出現(xiàn)估計(jì)狀態(tài)與目標(biāo)真實(shí)狀態(tài)相反的情況,僅僅與真實(shí)值有很小的偏差。為了從定量的角度來對(duì)比EKF和PF在強(qiáng)非線性下的運(yùn)動(dòng)目標(biāo)跟蹤誤差,本文進(jìn)一步計(jì)算了兩種方法的狀態(tài)估計(jì)均方根誤差RMSE及其均值。圖2(b) 為仿真過程中兩種方法的狀態(tài)估計(jì)均方根誤差曲線,并求得出EKF的RMSE均值為4.828 3,PF的RMSE均值為0.775 32。從以上分析結(jié)果可以看出,PF中的RMSE相對(duì)于EKF得到了顯著地降低,PF中的RMSE均值降低為EKF的16%,PF的估計(jì)性能明顯優(yōu)于EKF。
在粒子濾波跟蹤算法中,過程噪聲與觀測噪聲協(xié)方差分別影響著目標(biāo)預(yù)測和觀測值,進(jìn)而影響算法中每個(gè)粒子的權(quán)值,最終使濾波結(jié)果受到影響;粒子數(shù)代表著算法中樣本的大小,樣本越多,越能夠反映運(yùn)動(dòng)目標(biāo)的真實(shí)狀態(tài)。本實(shí)驗(yàn)通過調(diào)整噪聲協(xié)方差的值與粒子數(shù)的大小,來觀察這些因素對(duì)粒子濾波跟蹤算法的影響。非線性系統(tǒng)模型如式(1),式(2)所示,用粒子濾波跟蹤算法對(duì)上述非線性系統(tǒng)的狀態(tài)進(jìn)行估計(jì)。圖3是過程噪聲與觀測噪聲協(xié)方差均為1,粒子數(shù)分別取值N=20、50、100、200時(shí),用PF進(jìn)行目標(biāo)狀態(tài)估計(jì)的實(shí)驗(yàn)結(jié)果。
圖3 噪聲協(xié)方差為1,粒子數(shù)分別取20,50,100,200的仿真實(shí)驗(yàn)結(jié)果
圖4是過程噪聲與觀測噪聲協(xié)方差均為0.1,粒子數(shù)分別取值N=20、50、100、200時(shí),用PF進(jìn)行目標(biāo)狀態(tài)估計(jì)的實(shí)驗(yàn)結(jié)果。表2為不同噪聲協(xié)方差情況下,粒子數(shù)分別取值N=20、50、100、200時(shí)的RMSE均值。
圖4 噪聲協(xié)方差為0.1,粒子數(shù)分別取20,50,100,200的仿真實(shí)驗(yàn)結(jié)果
表1 粒子濾波狀態(tài)估計(jì)均方誤差均值粒子數(shù)噪聲協(xié)方差=1噪聲協(xié)方差=0.1203.909 62.866 2502.522 20.921 61002.341 60.543 92002.2260.425 16
由圖3、圖4均可以看出,噪聲協(xié)方差值一定時(shí),隨著粒子數(shù)的增加,粒子濾波狀態(tài)估計(jì)值與實(shí)際值的差值減小,粒子濾波狀態(tài)估計(jì)值越能真實(shí)地反映系統(tǒng)真實(shí)狀態(tài)。對(duì)比圖3和圖4以及由表1可知,降低噪聲協(xié)方差的值,能夠降低粒子濾波估計(jì)的誤差,提高PF在目標(biāo)跟蹤中的跟蹤精確度。
通過仿真實(shí)驗(yàn),對(duì)比了PF與EKF兩種算法在強(qiáng)非線性條件下的運(yùn)行目標(biāo)跟蹤的性能,并研究了噪聲協(xié)方差與粒子數(shù)對(duì)PF跟蹤算法的影響。實(shí)驗(yàn)結(jié)果表明:
(1)在強(qiáng)非線性條件下,PF能夠準(zhǔn)確的對(duì)目標(biāo)的狀態(tài)進(jìn)行估計(jì),相比于EKF有更高的精確度。
(2)隨著噪聲協(xié)方差的降低,粒子濾波的跟蹤精度明顯提高。
(3)在噪聲協(xié)方差一定的條件下,粒子數(shù)的增加能夠使粒子濾波的跟蹤誤差降低。
但是,粒子濾波跟蹤算法也存在一些問題,比如:增大粒子數(shù)在降低運(yùn)動(dòng)目標(biāo)跟蹤誤差的同時(shí),會(huì)導(dǎo)致計(jì)算量迅速增加;在重采樣環(huán)節(jié)會(huì)出現(xiàn)樣本枯竭的問題等等,這些都會(huì)影響跟蹤性能。對(duì)于前一問題,可以在保證跟蹤誤差較低的前提下,盡量減少粒子的數(shù)目;對(duì)于樣本枯竭的問題,可以采用重采樣-移動(dòng)算法(Resampling-Move Algorithm)[8]等改進(jìn)算法來解決,但改進(jìn)算法有時(shí)會(huì)出現(xiàn)計(jì)算量大和收斂判斷難等問題,所以這些問題都還需進(jìn)一步研究。
參 考 文 獻(xiàn)
[1]Haykin S Ed. Kalman Filtering and Neural Networks [M]. New York: John Wiley & Sons, 2001: 16-20.
[2]Barshalom Y, Li X R, Kirubarajan T. Estimation with Applications to Tracking and Navigation: Theory, Algorithms, and Software [M]. New York: John Wiley & Sons, 2001: 381-395.
[3]程水英,張劍云.粒子濾波評(píng)述[J]. 宇航學(xué)報(bào), 2008, 29(4):1099-1111.
[4]Arulampalam M, Maskell S, Gordon N, Clapp T. A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking[J]. IEEE Trans. on Signal Processing, 2002, 50(2): 174-188.
[5]Doucet A, Gordon N, Krishnamurthy V. Particle filters for state estimation of jump Markov linear systems[J]. IEEE Trans. on Signal Processing, 2001, 49(3): 613-624.
[6]胡士強(qiáng),敬忠良.粒子濾波原理及其應(yīng)用[M].北京:科學(xué)出版社,2010:22-24.
[7]韓磊,郭曉金,齊威,等. 改進(jìn)的粒子濾波算法[J].電視技術(shù),2012,36(7):16-23.
[8]Chen Zhe. Bayesian Filtering: From Kalman Filters to Particle Filters, and Beyond[R]. Hamilton: McMaster University, 2003.