摘要:對(duì)基于采樣的非線性濾波方法的原理及應(yīng)用進(jìn)行了綜述。在系統(tǒng)闡述貝葉斯估計(jì)理論的基礎(chǔ)上,按照非線性函數(shù)線性化方法的不同,分析和總結(jié)卡爾曼濾波、擴(kuò)展的卡爾曼濾波、sigma點(diǎn)卡爾曼濾波以及粒子濾波等算法的特點(diǎn)、使用方法和使用范圍。最后,對(duì)非線性濾波的發(fā)展方向進(jìn)行了展望。
關(guān)鍵詞:貝葉斯估計(jì);卡爾曼濾波;統(tǒng)計(jì)線性回歸;粒子濾波
1 引言
利用含有噪聲的觀測(cè)量,對(duì)非線性系統(tǒng)的狀態(tài)做出實(shí)時(shí)估計(jì)的問(wèn)題,在許多領(lǐng)域都具有廣泛的應(yīng)用價(jià)值。狀態(tài)空間方法,利用作概率推理所必須的兩個(gè)模型,即動(dòng)態(tài)方程和量測(cè)方程,集中處理系統(tǒng)的狀態(tài)向量,較好地描述了這一問(wèn)題。序列貝葉斯估計(jì)方法,通過(guò)實(shí)時(shí)更新系統(tǒng)狀態(tài)的條件概率密度函數(shù),充分利用所有的觀測(cè)信息和系統(tǒng)信息,給出解決這一問(wèn)題的基本框架;而且,由于后驗(yàn)概率密度函數(shù)包含了系統(tǒng)狀態(tài)的全部統(tǒng)計(jì)信息,因而,也是這一問(wèn)題的完整解決方案。但在實(shí)際應(yīng)用中,最優(yōu)的貝葉斯估計(jì)方法不易實(shí)現(xiàn),而只能用次優(yōu)的濾波算法。在一系列次優(yōu)濾波算法中,擴(kuò)展的卡爾曼濾波(EKF)方法,無(wú)疑是應(yīng)用最為廣泛的一種。但在許多應(yīng)用條件下,由于一階近似帶來(lái)的精度差、估計(jì)有偏甚至發(fā)散等問(wèn)題,促使人們不斷尋求新的非線性濾波算法。最近出現(xiàn)的一系列基于采樣的濾波算法,無(wú)論是實(shí)現(xiàn)方法,還是使用范圍,都是EKF方法的有益擴(kuò)展,并且濾波性能也得到改善。本文在介紹一些基本濾波方法的基礎(chǔ)上,對(duì)這些算法的理論基礎(chǔ)、使用方法、應(yīng)用范圍及相互間的聯(lián)系及區(qū)別,作了較為詳細(xì)的闡述。
2 最優(yōu)濾波方法
對(duì)非線性狀態(tài)估計(jì)問(wèn)題,至少需要兩個(gè)模型才能對(duì)狀態(tài)作分析和推理。即表達(dá)狀態(tài)隨時(shí)間變化的動(dòng)態(tài)方程和表述觀測(cè)向量與狀態(tài)向量之間關(guān)系的量測(cè)方程。
(1)
(2)
其中,是系統(tǒng)的狀態(tài)序列,,都是非線性函數(shù),都是獨(dú)立同分布的噪聲序列。
2.1 貝葉斯估計(jì)方法[1]
從貝葉斯估計(jì)的角度講,狀態(tài)估計(jì)問(wèn)題就是利用全部已知信息構(gòu)建系統(tǒng)狀態(tài)的條件概率密度函數(shù),其中。如果能夠得到,我們不僅可以得到狀態(tài)的最優(yōu)估計(jì),而且也能對(duì)估計(jì)的質(zhì)量給出定量描述。例如:
遞推的貝葉斯估計(jì)方法共包含兩個(gè)步驟:時(shí)間更新和觀測(cè)更新。
時(shí)間更新:
(5)
觀測(cè)更新:
(6)
其中,歸一化常數(shù)
(7)
雖然遞推的貝葉斯估計(jì)方法給出了狀態(tài)的最優(yōu)解,但式(7)中的多維積分使得本方法難以實(shí)現(xiàn)。只有在線性高斯條件下,才存在解析解,這就是著名的卡爾曼濾波。
2.2 卡爾曼濾波方法
當(dāng)系統(tǒng)方程為線性函數(shù),過(guò)程噪聲,觀測(cè)噪聲以及系統(tǒng)狀態(tài)的先驗(yàn)概率密度函數(shù)為高斯分布時(shí),遞推的貝葉斯會(huì)計(jì)問(wèn)題可以大大減化。在這種條件下,由于高斯分布的一、二階矩包含了概率分布的全部信息,只須估計(jì)系統(tǒng)狀態(tài)的條件均值及協(xié)方差陣,就能夠遞推計(jì)算后驗(yàn)概率密度函數(shù),其實(shí)現(xiàn)過(guò)程就是卡爾曼濾波算法[2]。此時(shí),系統(tǒng)方程為:
(8)
(9)
式中,都是均值為零,獨(dú)立同分布的高斯過(guò)程。
卡爾曼濾波算法可描述為:
(10)
(11)
(12)
式中, (13)
(14)
(15)
(16)
(17)
其中,表示變量服從均值為,方差為的高斯分布。
3 次優(yōu)濾波方法
卡爾曼濾波方法只是針對(duì)線性,高斯條件下的特殊情況的貝葉斯估計(jì)實(shí)現(xiàn),而實(shí)際應(yīng)用中,非線性非高斯系統(tǒng)是更為廣泛的一類情況,此時(shí),只能采用近似的次優(yōu)濾波算法。這些算法按照使用條件不同,大致可分為高斯近似方法和序列蒙特卡洛方法。高斯近似方法對(duì)系統(tǒng)方程中的過(guò)程噪聲,觀測(cè)噪聲作了高斯分布假定,從而繼續(xù)使用卡爾曼濾波的框架結(jié)構(gòu),只是對(duì)非線性函數(shù)作了處理。按照處理方式的不同,又可劃分為擴(kuò)展的卡爾曼方法和sigma點(diǎn)方法。而序列蒙特卡洛方法則完全摒棄了對(duì)卡爾曼濾波方法的依賴,通過(guò)逼近狀態(tài),后驗(yàn)概率密度函數(shù)的方法實(shí)現(xiàn)濾波過(guò)程。
3.1 擴(kuò)展的卡爾曼濾波(EKF)
擴(kuò)展的卡爾曼濾波方法[3]是在高斯噪聲假定條件下,通過(guò)對(duì)相應(yīng)的高斯隨機(jī)變量作泰勒級(jí)數(shù)展開,即
(18)
把展開式作一階截短,就得到EKF中要用的均值和方差,即
(19)
(20)
利用這一結(jié)果,對(duì)非線性系統(tǒng)(1)(2),式(13)~(17)變?yōu)?/p>
(21)
(22)
(23)
(24)
(25)
式(21)~(25)與(10)~(12)共同構(gòu)成EKF濾波算法。
EKF方法在線性化過(guò)程中,僅對(duì)泰勤級(jí)數(shù)展開作一階截短,因而其相應(yīng)的均值,方差估計(jì)僅僅有一階精度;而且,該方法忽略了系統(tǒng)狀態(tài)及噪聲的隨機(jī)分布特性,僅僅在當(dāng)前狀態(tài)、估計(jì)值點(diǎn)上作線性變換。這些都對(duì)轉(zhuǎn)換后變量均值、方差估計(jì)引入了較大的誤差,甚至導(dǎo)致濾波器發(fā)散。
3.2 Sigma點(diǎn)卡爾曼濾波(SPKF)
為了改善高斯近似濾波方法估計(jì)的準(zhǔn)確性、一致性及有效性,近期出現(xiàn)了一系列通過(guò)確定性采樣,對(duì)非線性變換用采樣點(diǎn)的變換逼近的方法,它們都隱含使用了加權(quán)統(tǒng)計(jì)線性回歸的思想,只是出發(fā)點(diǎn)有所差異。
(1)加權(quán)統(tǒng)計(jì)線性回歸(WSLR)
加權(quán)統(tǒng)計(jì)線性回歸[4](WSLR)提供了一種對(duì)隨機(jī)變量的非線性函數(shù)作線性化處理的有效方法。不同于EKF中利用狀態(tài)估計(jì)值點(diǎn)的一階泰勤級(jí)數(shù)近似非線性函數(shù),WSLR通過(guò)在隨機(jī)變量的先驗(yàn)分布上采樣 個(gè)取值點(diǎn),對(duì)每一個(gè)點(diǎn)作非線性轉(zhuǎn)換,再對(duì)轉(zhuǎn)換后的r個(gè)值作線性回歸,從而求得所需的均值和方差。由于WSLR考慮了隨機(jī)變量的概率分布特性,因而比泰勤展開方法誤差更小。
對(duì)非線性函數(shù) ,在的分布上采取個(gè)樣值點(diǎn),并作變換,定義
其中個(gè)回歸權(quán)值,滿足 。
對(duì)應(yīng)一個(gè)非線性函數(shù),如有在隨機(jī)變量的先驗(yàn)分布上選取采樣點(diǎn),又稱sigma點(diǎn),以及如何確定各點(diǎn)對(duì)應(yīng)的權(quán)值,成為一個(gè)關(guān)鍵問(wèn)題。正是對(duì)這一問(wèn)題的不同回答,導(dǎo)致產(chǎn)生無(wú)軌道卡爾曼濾波[5](unscented Kalman Filter, UKF)和中心差分卡爾曼濾波[6,7](Central Difference Kalman Filter, CDKF)兩種不同的濾波方法。
(2)無(wú)軌跡卡爾曼濾波(UKF)方法
作為SPKF的一種,UKF對(duì)sigma 點(diǎn)及對(duì)應(yīng)權(quán)值的選定遵循以下原則:選取的sigma點(diǎn)能夠捕獲隨機(jī)變量X最重要的統(tǒng)計(jì)特性,它把sigma點(diǎn)的選取問(wèn)題轉(zhuǎn)化為以下的優(yōu)化問(wèn)題:
(31)
其中是全部的sigma點(diǎn)及其權(quán)值集合。函數(shù)表示約束條件,是代價(jià)函數(shù),代價(jià)函數(shù)包含我們期望的統(tǒng)計(jì)特性,但不一定需要滿足。是我們必須滿足的條件,在UKF中,由于一二階矩是必須捕獲得統(tǒng)計(jì)特性,約束條件可表示為:
而代價(jià)函數(shù)的確定視我們的需要而是。如果我們要降低高階矩的估計(jì)誤差,則可選為三階矩或四階矩 ;如果我們要盡可能減少sigma點(diǎn)的數(shù)目,則。
基本的UKF中,sigma點(diǎn)的選取是為了捕獲的一二階矩,常選取以下的sigma點(diǎn)及其對(duì)應(yīng)權(quán)值:
其中,是標(biāo)度因子。決定sigma點(diǎn)在周圍的散布情況,是另外一個(gè)標(biāo)度因子,K表征X的先驗(yàn)發(fā)布信息。詳細(xì)說(shuō)明可參閱文獻(xiàn)[5]。
(3)中心差分卡爾曼濾波(CDKF)方法
由Ito等[6]和等[7],各自獨(dú)立提出的CDKF方法,基于斯特靈(stirling)內(nèi)插公式,利用中心插分代替式(18)中泰勤展開中的一二階級(jí)數(shù),即
(35)
(36)
對(duì)多維向量的情況,通過(guò)線性變換作隨機(jī)解耦,使得各方向之間互不相關(guān),從而把式(35)、(36)擴(kuò)展到多維的情況。
利用中心差方方法進(jìn)行線性變化過(guò)程中,雖然沒明確利用WSLR原理,但其最終結(jié)果顯示,它也是一種基于WSLR的線性方法。其sigma點(diǎn)集及對(duì)應(yīng)數(shù)值為:
參數(shù)h在狀態(tài)X為高斯分布時(shí),可取值 [7]。
(4)sigma點(diǎn)卡曼濾波(SPKF)算法
當(dāng)sigma點(diǎn)集及其對(duì)應(yīng)權(quán)值確定后,就得到SPKF濾波算法,它們對(duì)應(yīng)于系統(tǒng)(1)、(2):
式(38)~(45)與式(10)~(12)共同構(gòu)成SPKF濾波算法。
4 序列蒙特卡洛(SMC)方法
SMC方法[3]同樣基于采樣方法,但對(duì)系統(tǒng)噪聲及狀態(tài)的先驗(yàn)分布不再作高斯分布假定,因而完全拋棄卡爾曼濾波的結(jié)構(gòu)框架,而采用一組隨機(jī)采取的樣值點(diǎn)直接近似狀態(tài)的后驗(yàn)概率密度函數(shù)。如果有一組采樣點(diǎn)及相應(yīng)權(quán)值集合,則后驗(yàn)概率密度函數(shù)表示為
(46)
表示條件概率密度函數(shù)的采樣點(diǎn),在理想條件下應(yīng)該由函數(shù)中抽取,但求得與估計(jì)系統(tǒng)狀態(tài)具有同樣的難度。所幸的是,對(duì)各采樣點(diǎn)的權(quán)值,并不要求得其確切數(shù)值,只須在一定比例因子下求得其大小,這使得對(duì)后驗(yàn)概率密度函數(shù)的近似成為可能。我們可以選取另外一個(gè)容易采樣的概率密度函數(shù),由函數(shù)q采取樣值點(diǎn),它們?cè)诤瘮?shù)p上對(duì)應(yīng)的權(quán)值為:
假定在k-1時(shí)刻,我們有一組采樣點(diǎn)集,對(duì)由式(1)(2)確定的系統(tǒng),在貝葉斯估計(jì)框架下,SMC方法形式經(jīng)推導(dǎo)為:
式中為函數(shù)上的隨機(jī)采樣點(diǎn)。
采樣函數(shù)q的選取具有重要意義,它至少應(yīng)該包含所有的函數(shù)p的支持點(diǎn),即:存在常數(shù),滿足,而且,函數(shù)q應(yīng)該盡可能與函數(shù)p接近。
5 結(jié)束語(yǔ)
非線性對(duì)自然界的描述更接近事物的本原,因而其處理結(jié)果更加準(zhǔn)確。在貝葉斯框架下,以對(duì)EKF方法改進(jìn)為出發(fā)點(diǎn)的各種高斯近似方法,在計(jì)算量基本不變的條件下,提高了濾波精度,拓展了適應(yīng)范圍。以計(jì)算機(jī)技術(shù)發(fā)展為前提發(fā)展起來(lái)的SMC方法,摒棄了對(duì)狀態(tài)分布的高斯限定,處理精度可以隨計(jì)算能力無(wú)限提高,代表了未來(lái)的發(fā)展方向。對(duì)SMC方法中采樣函數(shù),重采樣技術(shù),以及高斯近似與SMC方法的有效融合,都將成為將來(lái)的研究重點(diǎn)。另外Set-valued濾波方法[8]通過(guò)傳遞狀態(tài)的期望值及分布區(qū)域邊界,實(shí)現(xiàn)對(duì)系統(tǒng)狀態(tài)的遞推估計(jì),是一種全新的濾波思想,也不斷受到人們的關(guān)注。
參考文獻(xiàn)
[1] MERWE R V. Sigma-Point Kalman filters for probabilistic inference in dynamic state-space models[D]. PhD thesis, School of Science Engineering at Oregon Health Science University, 2004.
[2] KALMAN R E. A new approach to linear filtering and prediction problems[J]. Transactions of the ASME-Journal of Basic Engineering, 1960:82 (D): 35-45.
[3] ARULAMPALAM M S, MASKELL S,et al. A tutorial on particle filters for online nonlinear/non-
Gaussian Bayesian tracking[J]. IEEE Transactions on Signal Processing,2002, 50(2):174-188.
[4] SCHEI T S. A Finite-difference method for linearization in nonlinear estimation algorithms[J]. Automatica, 1997, 33(11): 2051-2058.
[5] JULIER S J, UHLMANN J K. Unscented filtering and nonlinear estimation[J]. Proceeding of the IEEE, 2004, 92(3):401-422.
[6] ITO K, XIONG K. Gaussian filters for nonlinear filtering problems[J]. IEEE Transactions on Automatic Control, 2000, 45(5): pp. 910-927.
[7] NORGAARD M.POULSEN N.RAVN O. New developments in state estimation for nonlinear systems [M]. Automatica, 36, 2000:1627-1638.
[8] CALAFIORE G. Reliable Localization Using Set-Valued Nonlinear Filters[J]. IEEE Transactions on systems, man, and cybernetics-part A:systems and humans, 2005, 35(2):189-197.