劉 戀, 向鳳紅, 毛劍琳
(昆明理工大學 信息工程與自動化學院,云南 昆明 650500)
修正的UKF濾波時差定位算法*
劉 戀, 向鳳紅, 毛劍琳
(昆明理工大學 信息工程與自動化學院,云南 昆明 650500)
為了降低到達時間差(TDOA)測距在非視距(NLOS)傳播環(huán)境中的誤差,提出了在強跟蹤無跡卡爾曼濾波(UKF)基礎上改進的算法。在狀態(tài)發(fā)生突變時,給預測協(xié)方差矩陣加入次優(yōu)漸消因子;對NLOS誤差進行正負判斷,利用整體偏移法修改濾波增益,但估計協(xié)方差矩陣不做改進,以免出現(xiàn)不收斂。實驗結果表明:該算法不僅能有效地抑制突變帶來的影響,也能高效地消除NLOS誤差,提高了NLOS傳播的到達時間差定位精度。
到達時間差; 無線傳感器網(wǎng)絡; 非視距傳播; 無跡卡爾曼濾波; 濾波增益
隨著全球不同地區(qū)和用戶應用的網(wǎng)絡不同,尤其是GSM/GPRS/EDGEUMTS、CDMA2000、PHS、WLAN和WiMAX等無線網(wǎng)絡技術互補融合,無線異構網(wǎng)絡受到廣泛關注[1]。與在同構網(wǎng)絡中的定位技術一樣,異構無線傳感器網(wǎng)絡,很多功能的實現(xiàn)都依賴網(wǎng)絡定位技術的精度。
到達時間差(time difference of arrival,TDOA)[2]定位技術是無線傳感器網(wǎng)絡節(jié)點定位的一種重要技術,它具有精度高、易組網(wǎng)實現(xiàn)、能對付寬帶低譜密度信號等優(yōu)點。TDOA技術是測量移動臺(mobile station,MS)到不同基站(base station,BS)的時間差而進行估計MS的位置。由于無線電信號在實際傳輸過程中易被障礙物遮擋只能以反射、折射等非視距(non line of sight,NLOS)傳播方式進行傳播,因此,MS位置估計問題就轉化成高度非線性方程組估計問題。
在引入了NLOS誤差的TDOA定位中,擴展卡爾曼濾波(extended Kalman filtering,EKF)[3,4]被廣泛應用,它對非線性模型進行一階Taylor展開,缺點是近似線性化在對狀態(tài)后驗分布的估計中引入很大誤差。所以,學者們提出了一種確定性樣本點計算的濾波算法無跡卡爾曼濾波(unscented Kalman filtering,UKF)[5],它直接利用真實的系統(tǒng)模型,其后驗值和協(xié)方差可以精確到三階Taylor展開,但它的缺點是在模型不準確或狀態(tài)發(fā)生突變的情況下魯棒性不佳。在文獻[6]中,提出先對系統(tǒng)狀態(tài)進行突變判斷,狀態(tài)發(fā)生突變時給預測協(xié)方差矩陣加入多重次優(yōu)漸消因子,以消除狀態(tài)突變時的影響,雖然這種方法明顯優(yōu)于標準UKF,但它僅改進了異常狀態(tài)的部分誤差,在狀態(tài)正常時對引入NLOS誤差卻不能很好地消除。針對這個問題,本文將基于改進的強跟蹤UKF算法引入到TDOA抗NLOS的處理中,并對此進行改進,避免原文中的算法對引入NLOS誤差可能出現(xiàn)的不收斂問題,提高了系統(tǒng)的自適應能力和魯棒性。仿真結果驗證了所提算法的有效性。
假設在二維空間中有M個基站,基于時差定位的空間示意圖如圖1所示。圖中,u=[x,y]T為MS待估計位置坐標;si=[xi,yi]T為第i個BS的實際位置坐標。MS到BSi之間的距離為
(1)
式中 ‖‖為模。
圖1 時差定位原理圖
ti為電信號從MS到BSi的視距(lineofsight,LOS)傳播時間,tei為從MS到BSi的NLOS超量時延,它為一個正值的隨機變量,各tei之間相互獨立,當電信號從MS到BSi的是LOS傳播時,tei=0。不失一般性,選取s1作為參考接收站,可以得到MS到BSi的TDOA定位方程為
i=2,…,M
(2)
i=2,…,M
(3)
r=f(u)+η
(4)
式中r=[r21,…,rM1]T;f(u)=[f21(u),…,fM1(u)]T;η=[η21,…,ηM1]T,為方便起見,認為此噪聲η服從均值為零、正定協(xié)方差矩陣為Q的高斯分布
Q=E[η-E[η])(η-E[η])T]
(5)
式中 E[]為期望值。根據(jù)式(4)可得似然函數(shù)[6]為
exp{-(1/2)(r-f(u))TQ-1(r-f(u))}
(6)
式中 Q-1為Q的逆矩陣,Q為對稱正定矩陣,其逆存在。
最大似然估計是最大化(6)中u的值,因此,可以轉化為最小化二次型目標函數(shù),即
J(u)=(r-f(u))TQ-1(r-f(u))
(7)
根據(jù)式(7)可知,求解u必須求J(u)的最小值,但是用解析方法求解高度非線性函數(shù)非常困難[8]。因此,本文采用最優(yōu)估計求解此非線性方程,確定MS的位置坐標值。
2.1 標準UKF算法
由于式(3)為高度非線性函數(shù),得到的式(7)的幾何結構很不規(guī)則,且存在局部極小點[9]。而濾波主要解決以某種最優(yōu)方式聯(lián)合求解未知方程和測量方程的問題,因此,先將時差定位問題轉化成非線性系統(tǒng)方程,建立狀態(tài)方程和測量方程
(8)
式中sk和zk分別為第k個時刻的狀態(tài)向量和測量向量,F(xiàn)k和Hk分別為狀態(tài)轉移矩陣和測量矩陣,wk和vk分別為第k個時刻的過程噪聲向量和測量噪聲向量,其統(tǒng)計特性滿足
(9)
式中Qk和Rk分別為wk和vk的協(xié)方差矩陣,δkj為Kronecker-δ函數(shù)。UKF的算法過程如下:
1)濾波初值
(10)
2)樣本點計算
(11)
式中a∈R為調節(jié)參數(shù),取值為一個小的正值。
3)時間更新
(12)
(13)
(14)
4)量測更新
(15)
(16)
(17)
(18)
式中 Kk為第k個時刻的濾波增益,Rk為vk的協(xié)方差矩陣,ek為zk所對應的新息過程。
pk=p(s0∶k,z1∶k)
(19)
(20)
(21)
(22)
(23)
式中n=1,2,…,nx,sk[n]為狀態(tài)矢量sk的第n維。
從上述過程式(12)~式(18)可看出,狀態(tài)的每一次更新都是由前一次狀態(tài)估計和新的變量測量值得到,而且Kk是估計值隨新息過程值變化程度的標志。因此,可通過改變增益Kk的大小來控制估計值。第一,在狀態(tài)突變時不受上次修正Kk影響的情況下將次優(yōu)漸消因子引入到預測協(xié)方差矩陣P~k中。第二,利用整體偏移法[10]直接修正增益。這樣可以實時調整濾波增益Kk,提高系統(tǒng)的魯棒性。
2.2 修正UKF算法
2.2.1 強跟蹤UKF算法
在式(16)中可知濾波器輸出的新息序列為ek,衡量濾波性能優(yōu)良時它應滿足
(24)
此式要求不同時刻的新息向量保持正交關系,且具有類似白噪聲的性質,表明已將新息序列中的一切有效信息提取出來。
利用新息序列的統(tǒng)計信息,采用假設檢驗的方法對系統(tǒng)異常進行檢測,定義統(tǒng)計量
(25)
統(tǒng)計量αk服從自由度為m的χ2分布。判斷狀態(tài)是否突變
(26)
若檢測到狀態(tài)突變,給預測協(xié)方差矩陣P~k引入次優(yōu)漸消因子λk,則
(27)
(28)
令Vj=0,由式(15)與式(28)可得
(29)
令λk=diag(λ1,k,λ2,k,…,λn,k),對式(27)與式(29)求跡可得解
(30)
(31)
狀態(tài)突變時,式(15)改變?nèi)缦?/p>
(32)
2.2.2 修正濾波增益
由第1節(jié)可知,NLOS傳播給TDOA測量引入的誤差tei1是兩個隨機變量之差,其值與MS到BSi的距離有關。而在式(17)中新息ek代表預測值往估計值校正的方向和大小。因此,可以根據(jù)ek的大小和引入誤差是正還是負,改變式(17)中Kk大小,使偏離的估計值拉回到正確的方向。
增益Kk修正情況如下
(33)
式中 “+”代表正偏時的情況,“-”代表負偏時的情況;θ≥1為可調修正因子,其根據(jù)實驗統(tǒng)計取值。
式(17)則作出如下修改
(34)
2.2.3 修正UKF算法實現(xiàn)
1)采用式(10)進行初始化;
2)利用式(11)進行樣點計算;
3)采用式(12),式(13)計算狀態(tài)預測;
4)采用式(26)的方法對狀態(tài)突變做出預判,若存在突變, 則用式(27)計算P~k,式(32)代替(15)計算Kk,否則,采用式(13)計算P~k;
6)完成剩下的時間和量測更新,返回步驟(2),進行下一次濾波解算。
在一片區(qū)域內(nèi),將4個傳感器節(jié)點按設定位置部署。設主節(jié)點位置s1為(0,0),3個輔節(jié)點位置為s2(100,400),s3(800,400),s4(800,0)。輻射源沿著運動軌跡(見圖2)運動:依次以1m/s從A,B,C到D。在B點有一次狀態(tài)突變,運動曲線AB到BC的斜率由4/3轉變?yōu)?/4;在C點也發(fā)生了一次狀態(tài)突變,運動曲線BC到CD的斜率由3/4轉變?yōu)?4/3。從A運動到B,需要100s,共100m;從B運動到C,需要600s,共600m;從C運動到D,需要500s,共500m。
圖2 運動軌跡
仿真時,每秒測量一次TDOA值,仿真時間為1 200s,每次實驗中共有1 200個TDOA測量值。NLOS傳播分3種情況:1)主節(jié)點與輻射源是LOS傳播,輔節(jié)點與輻射源是NLOS傳播,仿真時由經(jīng)驗值選取θ=5,E=1μs,TDOA重構誤差仿真結果見圖3;2)主節(jié)點與輻射源是NLOS傳播,輔節(jié)點與輻射源是LOS傳播,仿真時由經(jīng)驗值選取θ=3,E=1μs,TDOA重構誤差仿真結果見圖4;3)輻射與主節(jié)點輔節(jié)點間都是NLOS傳播,仿真時由經(jīng)驗值選取θ=2,E=1μs,TDOA重構誤差仿真結果見圖5。
圖3 NLOS只影響主節(jié)點
圖4 NLOS只影響輔節(jié)點
圖5 主節(jié)點和輔節(jié)點都受NLOS影響的仿真結果
仿真結果如圖3、圖4和圖5所示,將標準UKF算法、強跟蹤改進UKF算法和本文算法進行測量值重構TDOA誤差進行仿真。在0s開始時,輻射源從A出發(fā),由于本文算法中先對NLOS誤差進行判決,用整體偏移法修正了濾波增益,所以,本文算法在開始時誤差就比其他兩者小。在0~100s階段,輻射源從A運動到B,3種算法的TDOA誤差都是由大到小,這是因為隨著迭代次數(shù)逐漸增加誤差減??;在100~200s,輻射源從B點出發(fā),在B點有一次突變,所以TDOA誤差都有一定的波動;在700~810s時,輻射源從C點出發(fā),在C點有一次突變,這次突變比B點突變對系統(tǒng)影響大,這是因為在此點突變比B點大。在1 000s以后,在C點突變影響結束后,隨著迭代次數(shù)的增加,TDOA誤差趨于穩(wěn)定。在整個過程中,強跟蹤改進UKF算法比UKF誤差相對低,是因為強跟蹤UKF算法在面對突變時加入了次優(yōu)漸消因子,在以后的迭代也起了相應的作用,但在圖4中出現(xiàn)超調現(xiàn)象,所以,在此基礎上本文算法不僅使此次迭代不受上次修正的預測方差矩陣影響,而且修正了濾波增益。因此,在圖3、圖4和圖5中,本文算法比其他2種算法,TDOA誤差明顯小,而且在面對突變時,本文算法雖有一點波動,但相較于其他2種算法,波動較小。
比較仿真結果圖3、圖4和圖5,會發(fā)現(xiàn)主節(jié)點和輔節(jié)點只有一個受NLOS影響比兩者都受影響時,UKF和強跟蹤改進UKF算法的TDOA誤差更大,這是因為在兩者都受影響時,NLOS誤差做差抵消了一部分NLOS影響。本文的算法在這3種情況下,TDOA誤差都比較小,這是因為在計算過程中根據(jù)NLOS誤差的正負對增益Kk進行了修正,有效地減少了NLOS誤差。
根據(jù)式(23)分別對情況一、二、三進行了200次蒙特卡洛實驗,并計算得到TDOA估計值的RMSE,其值見表1。
表1 3種情況下TDOA估計值的RMSE
由表1可看出,本文算法比另2種算法明顯削弱了NLOS和突變對TDOA定位的影響,顯著提高了定位精度。
本文提出了在強跟蹤UKF的基礎上減小NLOS對系統(tǒng)的影響的算法。利用新息序列判斷狀態(tài)是否突變,若突變則將次優(yōu)漸消因子引入預測協(xié)方差矩陣中,使狀態(tài)突變對系統(tǒng)的誤差減?。慌袛喑鯪LOS誤差正負,對TDOA重構,進行濾波增益的修正。仿真結果表明:經(jīng)過改進后的算法,在狀態(tài)突變時,不僅沒有增加計算的復雜度,也大大減小了NLOS對定位的影響,提高了定位精度,并且改善了系統(tǒng)不收斂的現(xiàn)象。另外,如何將此方法運用到不同模型中,也是將繼續(xù)研究的內(nèi)容。
[1] 杜曉玉,孫力娟,郭 劍,等.異構無線傳感器網(wǎng)絡覆蓋優(yōu)化算法[J].電子與信息學報,2014(3):696-702.
[2] 高洪元,于雪梅,趙忠凱.基于文化魚群算法的到達時間差定位技術[J].計算機工程,2011,37(14):137-139.
[3] 羅 磊,田增山,陳俊亞.EKF定位跟蹤算法研究[J].重慶郵電大學學報:自然科學版,2009,21(1):50-52.
[4] 李仕云,鄧洪權.基于EKF的雙站測向/時差聯(lián)合定位算法[J].無線通信技術,2015,41(1):38-40.
[5] 姚依翔,謝俊元.基于UKF區(qū)域交叉定位的WSNs Sink節(jié)點動態(tài)跟蹤算法[J].傳感器與微系統(tǒng),2015,34(4):123-126.
[6] 胡高歌,劉逸涵,高社生,等.改進的強跟蹤UKF算法及其在INS/GPS組合導航中的應用[J].中國慣性技術學報,2014,22(5):634-639.
[7] Torrieri D J. Statistical theory of passive location systems[J].IEEE Transactions on Aerospace and Electronic Systems,1984,20(2):183-198.
[8] 朱國輝,馮大政,李 進,等.一種利用修正牛頓迭代的時差定位算法[J].西安電子科技大學學報:自然科學版,2014,41(5):36-41.
[9] Dogancay K,Sakhtsari A H.Target tracking by time of difference of arrival using recursive smoothing[J].Signal Processing,2005,85(4):667-679.
[10] 李 靜,劉 琚.用卡爾曼濾波器消除TOA中NLOS誤差的三種方法[J].通信學報,2005,26(1):130-135.
[11] 薛 麗,高社生,胡高歌.自適應Sage-Husa粒子濾波及其在組合導航中的應用[J].中國慣性技術學報,2013,21(1):84-88.
Modified UKF filtering time difference localization algorithm*
LIU Lian, XIANG Feng-hong, MAO Jian-lin
(Faculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650000,China)
In order to reduce time difference of arrival(TDOA)ranging error in non line of sight(NLOS) environments,two improvements are introduced to enhance unscented Kalman filtering(UKF).When the system states change, suboptimal fading factors are added into the prediction covariance to eliminate the influence of mutational states.Secondly,judging type of NLOS error and using the total-deflection method can modify filtering gain,but estimation covariance matrix is not modified to avoid non-convergence.Experimental result indicates that the proposed method can not only restrain the influence of mutation,but also eliminate NLOS error highly effectively and improve positioning precision greatly.
time difference of arrival(TDOA); wireless sensor networks(WSNs); non line of sight(NLOS)propagation; unscented Kalman filtering(UKF); filtering gain
10.13873/J.1000—9787(2017)04—0138—05
2016—03—25
國家自然科學基金資助項目(61163051,F020809)
TN 923
A
1000—9787(2017)04—0138—05
劉 戀(1991-),女,碩士研究生,主要研究方向為物聯(lián)網(wǎng)、無線傳感器網(wǎng)絡定位。