程蘭王志遠陳杰謝剛
?
基于粒子濾波和滑動平均擴展Kalman濾波的多徑估計算法
程 蘭*①王志遠①陳 杰②謝 剛①
①(太原理工大學信息工程學院自動化系 太原 030024)②(北京理工大學復雜系統智能控制與決策國家重點實驗室 北京 100081)
多徑干擾是高精度定位的主要誤差源,估計多徑參數對消除多徑誤差,提高導航系統定位精度具有重要意義。針對擴展Kalman濾波(EKF)在進行多徑參數估計時,存在對初值敏感,估計結果在真值附近具有較大波動的缺點,該文提出一種基于粒子濾波(PF)和滑動平均EKF的多徑估計算法。該算法首先利用PF得到多徑參數的粗略估計值,并將該值作為EKF的初始估計值,以克服EKF對初值敏感的問題。接著對EKF的估計結果進行滑動平均,并將平均后的濾波結果作為多徑參數的估計結果。仿真結果表明,改進后的多徑估計算法可有效降低估計結果的波動幅度,同時解決了EKF對初值敏感的問題。
參數估計;粒子濾波;擴展Kalman濾波;多徑干擾
多徑干擾是高精度定位系統中的主要誤差源[1,2]。多徑存在時,接收機跟蹤由直接信號和多徑信號構成的復合信號,而我們期望接收機只跟蹤直接信號,多徑信號的存在使跟蹤精度降低,進而帶來了測距偏差,導致定位精度降低。多徑誤差受測量環境的影響具有很大的不確定性和不相關性,不能像電離層誤差、對流層誤差那樣,通過差分技術消除[3],因此,多徑誤差抑制成了導航系統高精度定位中的研究難點。
隨著數字信號處理器的發展,基于數據處理的多徑誤差抑制方法成為近年來研究的熱點[4]。基于數據處理的多徑誤差抑制方法的核心是參數估計,即首先根據接收信號(或相關輸出)利用各種參數估計算法估計多徑參數,并根據所估計的多徑參數重構多徑信號(或多徑信號的相關輸出),然后從接收信號(或者接收信號的相關輸出中)減去多徑信號(或多徑信號的相關輸出),得到直接信號的相關輸出,再進行后續的跟蹤處理等[4]。在基于數據處理的多徑誤差抑制方法中,基于擴展Kalman濾波(Extended Kalman Filter, EKF)的多徑誤差抑制方法是一種常用的方法[5,6]。然而,EKF能否收斂到正確值與初值直接相關,即EKF對初值敏感。而目前在基于EKF的應用中對初值的設置一般都設定為真值。在一般的跟蹤系統中,系統狀態的初值可以確定為真值[8],而在基于EKF的多徑估計中,我們往往很難獲取多徑參數的初值,文獻[9]也已通過仿真分析證明了多徑參數的初值對估計結果具有較大的影響,偏差較大的初值可能導致多徑估計結果收斂到錯誤值、甚至發散,從而無法實現抑制多徑誤差的目的。
同時,EKF算法需要對非線性方程進行線性化帶來了截斷誤差,致使EKF算法的估計結果具有較大的波動[10]。為了克服EKF的這個固有缺點,研究者提出了幾種改進算法,如二階EKF、迭代EKF、修正增益EKF以及修正協方差EKF[11]。然而,二階EKF的運算開銷隨著狀態維數增加而顯著增大、迭代EKF必須以高精度觀測為前提,修正增益EKF以及修正協方差EKF的修正矩陣不存在或難推導。因此,這些改進算法在解決實時性要求較高、噪聲強度大的導航系統中的多徑估計問題時,往往還不如EKF快速、直接。
近年來,迅速發展的粒子濾波(Particle Filter, PF)因其不需要對觀測方程線性化,對噪聲不敏感等優點,被廣泛應用于目標跟蹤、故障診斷、人臉識別等領域中。PF利用先驗信息產生初始粒子群,并利用貝葉斯準則進行參數的后驗估計[12]。PF對初始粒子的選擇具有較大的隨機性,且不同的初始粒子對估計結果的影響并不明顯,這一優點正是本文在解決EKF初值敏感問題時所要借鑒的。但PF需要對多個粒子進行貝葉斯估計,相比于只需要一個粒子就能進行狀態估計的EKF,其時間復雜度大大增加。而且,在高斯噪聲下PF的估計性能明顯低于EKF的估計性能。
因此,為了既利用PF對初值不敏感的優點,又可以降低多徑估計算法的時間復雜度,本文利用PF進行初始估計,將PF的估計結果作為EKF的估計初值,然后利用EKF進行后續估計。同時,為了解決EKF的估計結果在真值附近具有較大波動的問題,本文采用對EKF的濾波結果進行滑動平均的方法對當前時刻的估計結果進行平滑處理,可以有效降低估計結果的波動幅度。
2.1 信號模型
多徑信號存在時,GPS接收機的基帶信號模型可建模為[13]

上述模型忽略了數據碼的影響。其中,第1項表示直接信號,第2項表示路多徑信號;為直接信號的幅值;()為調制在載波上的C/A碼;為直接信號的偽碼延時;為多路徑的個數;為第路多徑信號的幅值,為第個多徑信號相對于直接信號的時間延遲;多徑信號的時間延遲只考慮小于一個碼片的情況(超過一個碼片的多徑信號對跟蹤環的影響很小),為基帶信號載波頻率,是加性高斯白噪聲。
對接收信號進行數字化,模型式(1)可表示為

接收信號與本地偽碼進行相關運算,得到的相關輸出為

式中,
2.2 多徑估計結構
3.1 多徑估計問題的狀態空間模型

狀態模型:(5)
觀測模型:(6)

圖1 基于PF和滑動平均EKF的多徑估計結構
3.2 算法基本原理
首先根據多徑參數的先驗信息產生PF的初始種群,并進行PF濾波,當PF濾波結果趨于穩定時,將濾波結果作為EKF的初值,并切換到EKF模式。在EKF模式下,采用滑動平均的方式降低估計偏差對濾波輸出的影響。具體的算法流程如圖2所示。

(7)
(8)

(10)
(2)基于PF的多徑估計:產生初始種群后,就可以根據PF進行濾波估計。PF是一種基于蒙特卡羅方法和遞推貝葉斯估計的統計濾波方法,是貝葉斯濾波的一種近似解。它通過一組從重要性密度函數(·)中采樣的隨機樣本和與之對應的權重來近似后驗概率密度函數,,為粒子個數[12]。在濾波過程中為避免出現樣本枯竭,需要進行重采樣。

圖2 基于PF和滑動平均EKF的多徑估計算法
PF算法基本流程:
(a)根據先驗分布產生隨機樣本,即

新算法在進行迭代過程中,前次迭代用PF估計多徑參數并輸出估計結果。當估計結果開始收斂時,就把此時刻的參數值作為EKF的初值繼續進行后續的迭代估計。需要說明的是,在初始時刻樣本是根據多徑參數的取值范圍由均勻分布來產生初始種群,而在PF的迭代過程中,用預測分布來代替重要性分布函數以降低權值的計算復雜度,這種重要性函數選擇方案也是PF算法的一般選擇方案[12]。本文采用的重要性分布函數為高斯分布,具有如下形式:,其中為的維數,為時刻的第個粒子。為時刻的狀態值預測值,為的預測估計協方差。和的計算可根據式(11)和式(12)得到。
(3)基于滑動平均EKF的多徑估計:根據PF獲得EKF的濾波初值后,即可切換到EKF模式下進行濾波估計。此時個粒子的濾波就變為只有一個粒子的EKF濾波,降低了時間復雜度。EKF的濾波過程可以描述如下:
(a)根據上一時刻的狀態值預測當前時刻的狀態估計值:

(b)誤差協方差陣預測:
(12)
(c)計算觀測矩陣:

(d)計算卡爾曼增益:
(14)
(e)根據真實觀測值更新狀態估計值:

(f)更新誤差協方差陣:
(16)
在式(13)中需要對觀測方程求偏導才能得出線性化的觀測矩陣。為了簡單,本文以單一多徑,即為例,說明的計算過程。即。因此,根據式(13)可以求得線性化的觀測矩陣,即

在計算觀測矩陣時需要用到自相關函數的偏導數,假設()具有理想的自相關特性,則

對自相關函數求偏導得:
(19)
為了降低EKF估計結果的波動幅度,在靜態環境中,可通過滑動平均的方法對濾波結果進行平滑處理,以降低多徑估計結果的波動幅度。假設滑動窗的長度為,則基于滑動窗的平滑處理結果可表示為

3.3 算法實現
基于PF和滑動平均EKF的多徑估計算法實現如表1所示。在算法實現過程中,決策判決是通過判斷PF的濾波次數是否達到來實現的。當PF的濾波次數小于時,輸出PF的濾波結果(for1循環);當濾波次數等于時,將PF的濾波結果作為EKF的初值,并切換到滑動EKF模式(for2循環)。可以看出,參數決定了PF和EKF的切換時刻,因此需要對進行選擇,本文通過仿真實驗來確定,即剛開始只采用PF進行多次仿真,找到可以保證PF收斂的迭代次數作為。在本文考慮的情況中,選擇可以保證PF收斂。同理,在滑動平均EKF中,需要對進行選擇。本文中也是通過仿真來確定的,在確定時需要兼顧計算復雜度和精度,太小無法達到平滑的效果,導致估計精度不能滿足要求,而太大又會增加計算復雜度,且較大的對估計結果的平滑程度改進并不明顯,因此,本文通過逐漸增大來觀測估計結果的改善程度,以選擇合適的。
3.4 算法復雜度分析
與EKF相比,本文算法在前個時刻采用PF進行參數估計,其時間復雜度實際上是PF濾波的時間復雜度,這也是本文算法最耗時的階段。因為PF需要對p個粒子進行貝葉斯估計才能獲得狀態的后驗估計,即時間復雜度為,也就是說PF的復雜度隨粒子數目增加線性增加。而EKF只需要對1個粒子進行估計,其時間復雜度為O(1)。在時刻之后,本文算法實際就是EKF算法,只需要保存個狀態估計結果,用于滑動平均計算。滑動平均計算僅涉及(wd_max+1)次加法和1次乘法運算。所以,本文算法復雜度介于PF和EKF之間。為了更加直觀地比較本文算法的時間復雜度,我們在一臺索尼筆記本電腦上進行了時間復雜度對比分析。實際復雜度計算采用了100次蒙特卡羅仿真,并取平均值,并設,,,。EKF算法迭代1次需要0.13 ms,本文算法需要0.20 ms。
考慮接收機在不同應用場合下的實時性要求。如,對于以時速120 km/h(33.3 m/s)的速度行駛的汽車而言,要想達到2 m左右的定位精度,算法的1次迭代時間不應超過60 ms。而本文算法的1次平均迭代時間僅需0.20 ms,所以所提出算法可以滿足這種情況下的定位需求。

表1 基于PF和滑動平均EKF的多徑估計算法偽碼
本次仿真只考慮了單一多徑的情況,這是因為盡管理論上多徑信號的個數可能是多個,但實際上在某一時刻通常只有一路或兩路多徑信號起決定性作用[14]。且文獻[14]中也提到考慮多于1路的多徑信號對多徑抑制性能的改善并不十分顯著,所以本文只考慮了單一多徑。仿真采用2號衛星的C/A碼,采樣倍數s=10,狀態真值0=[0.5, 0.7, 0.2, 0.4]T,=diag([0.0001, 0.0001, 0.0001, 0.0001]),信噪比SNR =-20 dB,通過7路相關輸出獲得測量數據,即早碼側和晚碼側各有3路相關器,并且關于即時碼對稱,各支路與及時碼的相關間距為(= 1, 2,, 7)分別取值,,, 0, -, -, -。其中表示早碼支路,則表示晚碼支路,表示即時碼支路。相關輸出支路數與待估參數的維數相關,即相關輸出的支路數應大于待估參數的維數。仿真結果如圖3所示。
在圖3的仿真中將真值0作為EKF的初始值,而新算法通過PF來預測初值。其中PF的初始粒子根據式(7)~式(10)產生個服從均勻分布的初始粒子,通常選為待估參數維數的10倍,因此,當考慮單一多徑時,有4個待估參數,所以PF的粒子數目選為,若考慮多路多徑參數時可據此原則增加初始粒子數目。從圖3中可以看出,本文算法的多徑估計性能明顯優于EKF和PF算法,出現較小的波動幅度,而EKF由于受到觀測方程線性化誤差的影響,導致估計值圍繞真值具有較大的波動。而PF的波動幅度比EKF更大,這是因為PF只采用先驗概率密度函數產生初始種群,并未考慮當前測量輸出中包含的信息。同時,從圖3也可以看出,本文算法在剛開始的前次迭代中也出現了波動現象,這是因為前次的濾波結果為PF的濾波結果,此后開始利用滑動平均的方法來平滑EKF的濾波結果,可以根據需要調整。
圖3的仿真中,EKF的初值為真值,所以EKF的估計結果雖然具有較大波動,但仍可收斂到真值附近。為了說明新算法可以克服EKF對初值敏感的問題,我們進行了第2組仿真,仿真結果如圖4所示。本次仿真將EKF的初值設置為根據先驗信息獲得一個隨機值,新算法仍根據第1組仿真的方法隨機產生p個初始粒子。經過多次仿真發現,EKF對狀態初值比較敏感,當EKF的初始值偏離真值較小時,估計參數的收斂速度降低,當EKF的初始值偏離真值較大時,會收斂到錯誤的值,甚至發散,而新算法估計結果始終是收斂的,克服了EKF 對初值敏感的問題。
對PF, EKF,本文算法從對初值是否敏感、計算復雜度、估計精度以及估計結果的波動幅度幾個方面進行比較,結果如表2所示,綜合來說,3種算法中,本文算法具有最好的性能。

圖3 EKF的初值為真值時的估計結果

表2 PF、EKF與本文算法的對比結果

圖4 EKF的初值為隨機數時的一次估計結果
本文針對基于EKF的多徑估計算法存在對初值敏感,且多徑估計結果圍繞真值具有較大波動的問題,提出了一種基于PF和滑動平均EKF的多徑估計算法。該算法利用了PF對狀態初值不敏感的優點,將其估計結果作為EKF的估計初值,克服了EKF因初值設置不合理而導致估計結果收斂到錯誤值或者發散的問題。同時,利用了EKF估計的狀態后驗概率密度函數為高斯分布的特點,采用滑動平均的方法對EKF的估計結果進行平滑處理,以降低估計結果的波動性。仿真結果驗證了算法的有效性。本文主要完成了算法的仿真驗證,在后續工作中我們將考慮用實際信號驗證算法的有效性。
[1] BRAASCH M S and BIBENEDETTO M F. Spread- spectrum ranging multipath model validation[J]., 2001, 37(1): 298-304. doi:10.1109/7.913691.
[2] 程蘭, 陳杰, 甘明剛. GPS接收機載波跟蹤多徑誤差分析[C].第29屆中國控制會議論文集, 北京, 2010: 573-576.
CHENG Lan, CHEN Jie, and GAN Minggang. Multipath error analysis of carrier tracking loop in GPS receiver[C].Proceedings of the 29th Chinese Control Conference, Beijing, 2010: 573-576.
[3] 張孟陽, 呂保維, 宋文淼. GPS系統中的多徑效應分析[J]. 電子學報, 1998, 26(3): 10-14.
ZHANG Mengyang, Lü Baowei, and SONG Wenmiao. Analyses of multipath effects in the GPS system[J]., 1998, 26(3): 10-14.
[4] 程蘭, 陳杰, 謝剛. 軟件接收機中基于數據處理的多徑估計方法[J]. 系統工程與電子技術, 2013, 35(10): 2050-2056. doi: 10.3969/j.issn.1001-506X.2013.10.06.
CHENG Lan, CHEN Jie, and XIE Gang. Multipath estimation algorithms based on data processing in soft ware receiver[J]., 2013, 35(10): 2050-2056. doi: 10.3969/j.issn.1001-506X.2013.10.06.
[5] 張文明, 周一宇, 姜文利. 基于擴展卡爾曼濾波的GPS多徑抑制技術[J]. 宇航學報, 2003, 24(1): 53-56. doi: 10.3321/ j.issn:1000-1328.2003.01.010.
ZHANG Wenming, ZHOU Yiyu, and JIANG Wenli. GPS multipath rejection through EKF[J]., 2003, 24(1): 53-56.doi: 10.3321/j.issn:1000-1328.2003.01.010.
[6] ILTIS R A. Joint estimation of PN code delay and multipath using the extend kalman filter[J]., 1990, 38(10): 1677-1685.
[7] 熊偉, 陳立奎, 何友, 等. 有色噪聲下的不敏卡爾曼濾波器[J]. 電子與信息學報, 2007, 29(3): 598-600.
XIONG Wei, CHEN Likui, HE You,. Unscented Kalman filter with colored noise[J].&, 2007, 29(3): 598-600.
[8] 黃小平, 王巖石. 卡爾曼濾波原理及應用[M]. 北京: 電子工業出版社, 2015: 89-90.
HUANG Xiaoping and WANG Yanshi. Kalman Filter and Its Application[M]. Beijing: Publishing House of Electronics Industry, 2015: 89-90.
[9] 程蘭, 謝剛. 一種基于擴展Kalman濾波的多徑估計算法[J]. 太原理工大學學報, 2012, 43(5): 575-579.doi: 10.3969/j.issn.1007-9432.2012.05.011.
CHENG Lan and XIE Gang. A multipath estimation algorithm based on extended Kalman filter[J]., 2012, 43(5): 575-579. doi: 10.3969/j.issn.1007-9432.2012.05.011.
[10] 程蘭. 軟件接收機原理及多徑誤差研究[M]. 北京: 國防工業出版社, 2015: 170-182.
CHENG Lan. Software Receiver Principle and the Research of Multipath Error[M]. Beijing: China National Defence Industry Press, 2015: 170-182.
[11] 占榮輝, 張軍, 歐建平, 等. 非線性濾波理論與目標跟蹤應用[M]. 北京: 國防工業出版社, 2013: 43-46.
ZHAN Ronghui, ZHANG Jun, OU Jianping. Nonlinear Filtering Theory with Target Tracking Application[M]. Beijing: China National Defence Industry Press, 2013: 43-46.
[12] 朱志宇. 粒子濾波算法及其應用[M]. 北京: 科學出版社, 2010: 27-32.
ZHU Zhiyu. Particle Filter and Its Application[M]. Beijing: Science Press, 2010: 27-32.
[13] CHENG Lan, CHEN Jie, and XIE Gang. Model and simulation of multipath error in DLL for GPS receiver[J]., 2014, 23(3): 508-515.
[14] Townsend B R, Fenton P C, Dierendonck K J V,. Performance evaluation of the multipath estimating delay lock loop[J]., 1995, 42(3): 502-514. doi:10.1002/j.2161-4296.1995.tb01903.x.
An Improved Multipath Estimation Algorithm Using Particle Filter and Sliding Average Extended Kalman Filter
CHENG Lan①WANG Zhiyuan①CHEN Jie②XIE Gang①
①(,,030024,)②(,,100081,)
Multipath is the dominant error source for high-accuracy positioning systems. It is significant for eliminating the multipath error and improving the positioning accuracy to estimate multipath parameters. There are two main disadvantages for multipath parameters estimation by using the Extended Kalman Filter (EKF): it is sensitive to the initial value; filtering results fluctuate obviously around actual values. To solve these problems, an improved multipath estimation algorithm based on Particle Filter (PF) and sliding average EKF is proposed. Firstly, PF is used to obtain rough estimation values of multipath parameters, which are set as initial estimations for EKF to reduce the initial value sensitivity. Then, the EKF filtering results are smoothed by sliding average. The smoothing results are outputted as the multipath estimation. The simulation results show that the estimation results of the proposed algorithm have smaller fluctuation magnitude compared with EKF, and it is insensitive to the initial estimation.
Parameter estimation; Particle Filter (PF); Extended Kalman Filter (EKF); Multipath interference
TN966; TP273.1
A
1009-5896(2017)03-0709-08
10.11999/JEIT160587
2016-06-03;改回日期:2016-11-11;
2017-01-22
程蘭 taolan_1983@126.com
國家自然科學基金(61503271, 61603267),山西省自然科學基金(20140210022-7),復雜系統智能控制與決策國家重點實驗室開放基金(900101-03910353)
The National Natural Science Foundation of China (61503271, 61603267), The Natural Science Foundation of Shanxi Province (20140210022-7), The Open Foundation of Key Laboratory of Intelligent Control and Decision of Complex Systems (900101-03910353)
程 蘭: 女,1984年生,講師,博士,主要研究方向為導航系統高精度定位、信號跟蹤.
王志遠: 男,1989年生,碩士生,研究方向為導航系統高精度定位、多徑抑制等.
陳 杰: 男,1965年生,教授,博士,主要研究方向為智能控制與智能系統、多目標優化與決策、非線性控制等.
謝 剛: 男,1972年生,教授,博士,主要研究方向為智能信息處理、智能控制等.