歐縣華,武憲青,何熊熊
(浙江工業(yè)大學信息工程學院,杭州 310023)
?
基于AIUKF的WSN節(jié)點定位算法*
歐縣華,武憲青,何熊熊*
(浙江工業(yè)大學信息工程學院,杭州 310023)
針對無線傳感器網(wǎng)絡(luò)節(jié)點定位精度不足的問題,在無跡卡爾曼濾波(UKF)的基礎(chǔ)上,結(jié)合迭代約束條件和自適應因子,提出了一種自適應迭代無跡卡爾曼濾波(AIUKF)算法。根據(jù)基于測距的節(jié)點定位模型,采用RSSI進行測距,以極大似然估計法進行節(jié)點初步定位,利用AIUKF算法對節(jié)點進行精確定位,并且直接以RSSI作為系統(tǒng)的觀測量。仿真結(jié)果表明,本文提出的基于AIUKF的定位算法相比EKF和UKF算法具有更高的定位精度。
無線傳感器網(wǎng)絡(luò);節(jié)點定位;AIUKF;UKF;自適應因子
無線傳感器網(wǎng)絡(luò)作為一個新型的網(wǎng)絡(luò),現(xiàn)已被廣泛應用于國防軍事、環(huán)境監(jiān)測、醫(yī)療看護等諸多領(lǐng)域,被認為是21世紀影響人類生活的21項技術(shù)之一。在無線傳感器網(wǎng)絡(luò)的相關(guān)研究與應用中,節(jié)點定位技術(shù)不僅是研究中基礎(chǔ)和熱點問題,也是決定應用有效性的關(guān)鍵技術(shù)之一[1-2]。
無線傳感器網(wǎng)絡(luò)節(jié)點定位算法常見的分類是基于測距的定位算法(Range-Based)和無需測距的定位算法(Range-Free)[3]。前者根據(jù)信標節(jié)點位置信息以及未知節(jié)點與信標節(jié)點之間的距離或角度信息來實現(xiàn)對未知節(jié)點的定位,常用的測距方法有[4]:TOA、TDOA、AOA、RSSI;后者僅根據(jù)網(wǎng)絡(luò)的連通度來確定未知節(jié)點的位置信息。
鑒于基本算法實現(xiàn)的定位精度有限,國內(nèi)外許多學者將濾波技術(shù)應用到WSN節(jié)點定位中,取得了大量的研究成果。對于非線性系統(tǒng),最常用的是擴展卡爾曼濾波(EKF)算法[5]。文獻[6]首次將擴展卡爾曼濾波技術(shù)應用于節(jié)點定位修正階段中,相比基本的定位算法,定位精度有了較大程度的提高。然而,EKF使用泰勒展開式近似代替非線性系統(tǒng)時,往往忽略一階以上的高階項,在計算過程中可能會引入較大的誤差,造成估計精度的降低,嚴重時會引起濾波器發(fā)散;同時,標準EKF及其衍生算法都需要計算雅可比矩陣,這個在許多實際問題中可能很難甚至無法求得。為避免上述問題,Julier等人提出了基于無跡變換的無跡卡爾曼濾波(UKF)算法[7-8],相比EKF,UKF無需計算雅可比矩陣,且對任意系統(tǒng),利用無跡變換得到的近似狀態(tài)的均值和方差可以精確到二階或更高階,具有更高的估計精度。文獻[9]將加權(quán)最小二乘估計和UKF用于WSN節(jié)點定位中,取得了比EKF更好的定位性能。但是UKF仍存在對初始值的波動以及觀測噪聲比較敏感等問題,初始值的波動會造成UKF的估計結(jié)果不穩(wěn)定,精度變差。為此,文獻[10]提出迭代無跡卡爾曼濾波算法(IUKF),改善了UKF算法存在的一些問題,應用到WSN定位中得到了較好定位性能,但是,數(shù)值穩(wěn)定性等問題仍然存在,為了改善上述問題,本文在IUKF算法的基礎(chǔ)上,結(jié)合自適應抗差濾波理論[11-12]提出一種自適應迭代UKF算法,提高定位精度,增強算法的穩(wěn)定性。
1.1 RSSI測距模型
在基于RSSI的節(jié)點定位算法中,測距是節(jié)點定位算法的基礎(chǔ)。RSSI測距是根據(jù)已知的未知節(jié)點發(fā)射信號強度和信標節(jié)點接收到的信號強度,得到能量損耗值,并使用理論或經(jīng)驗模型將其轉(zhuǎn)化為距離值。在實際應用中,最常用的理論測距模型是對數(shù)-常態(tài)分布模型[13]。
Pr(dr)=Pr(d0)-10·δ·log(dr/d0)+χσ
(1)
式中,Pr(dr)為經(jīng)過距離dr后的信號接收能量值;d0為參考距離,一般取1 m;Pr(d0)為經(jīng)過距離d0后的信號接收能量值;δ為路徑損耗因子,與信號傳輸環(huán)境相關(guān);χσ為均值等于0的高斯隨機變量。
1.2 節(jié)點初始定位
在基于測距的定位算法中,常見的基本定位方法有三邊測量法、三角測量法和極大似然估計法。當信標節(jié)點的數(shù)目較小時,三邊測量法的定位精度較高,但當信標節(jié)點數(shù)目超過6個時,極大似然估計法的精度更高[14]。本文采用極大似然估計法作為初始定位方法。
設(shè)(x1,y1)、(x2,y2)、…、(xn,yn)表示n個位置信息已知的信標節(jié)點的坐標,每個信標節(jié)點與未知節(jié)點之間的距離對應為d1、d2、…、dn,根據(jù)極大似然估計法的原理使用MMSE法求得未知節(jié)點初始定位坐標(xMLE,yMLE)為:
(2)
式中,X=[xy]T,
2.1 定位算法模型
在引入卡爾曼濾波技術(shù)估計的WSN節(jié)點定位算法模型中,離散時間非線性系統(tǒng)的一般形式為:
(3)
式中,X為系統(tǒng)狀態(tài)向量;Y為系統(tǒng)的觀測量;uk-1為確定控制項;wk和vk分別為系統(tǒng)的過程噪聲和觀測噪聲,其協(xié)方差矩陣分別為Qk和Rk。
將未知節(jié)點的坐標作為系統(tǒng)的狀態(tài)量,而關(guān)于觀測量的選取,文獻[9]將未知節(jié)點與信標節(jié)點之間的距離值作為系統(tǒng)的觀測量,但是需要求解雅可比矩陣,并有可能造成距離計算過程中的誤差累積,故在本文中,直接采用RSSI值作為觀測量。因此,引入卡爾曼濾波的WSN節(jié)點定位算法中的狀態(tài)方程和觀測方程為:
①狀態(tài)方程:
Xk+1=f(Xk,uk-1)+wk=AXk+wk
(4)
式中,Xk=[xk,yk]T表示未知節(jié)點在第k時刻濾波計算的狀態(tài)向量;A為狀態(tài)轉(zhuǎn)移矩陣,由于實現(xiàn)的是靜態(tài)節(jié)點定位,故A為單位矩陣。
②觀測方程
(5)
2.2 標準UKF算法實現(xiàn):
標準UKF算法流程如下:
①初始化:
(6)
②樣點計算:
(7)
式中:λ=α2(L-κ)-L;α決定樣點的散布程度,取值范圍為10-4≤α≤1,一般取0.01;L為系統(tǒng)狀態(tài)變量X的維數(shù);κ為調(diào)整參數(shù),一般取0。
③時間更新:
(8)
(9)
(10)
(11)
(12)
(4)量測更新:
(13)
(14)
(15)
(16)
(17)
2.3 迭代策略與自適應因子的選取
雖然UKF算法對EKF算法存在的一些問題有了明顯的改善,但是UKF算法的基礎(chǔ)也是卡爾曼濾波,因此,其仍存在著受初始值波動、可觀測性弱、觀測噪聲不確定性等因素影響而造成濾波精度和魯棒性降低等問題。在基于RSSI的WSN節(jié)點定位中,RSSI易受各種干擾因素影響使其值具有較大的誤差,同時造成測距階段可能產(chǎn)生較大誤差而使得采用MLE法獲得的結(jié)果具有較大的波動性,這些因素都會造成基于UKF的定位算法的性能變差。為改善上述問題,本文在標準UKF算法的基礎(chǔ)上,結(jié)合文獻[10]提出的迭代策略,同時引入自適應因子,以抑制初始值波動和觀測量異常值等因素的影響,提高定位算法定位精度和穩(wěn)定性。
①迭代策略
文獻[10]提出的IUKF算法迭代策略的判斷準則如下:
(18)
②自適應因子δk的選取
確定自適應因子常用的幾種誤差判別統(tǒng)計量分別是狀態(tài)不符值統(tǒng)計量、預測殘差統(tǒng)計量和方差分量比統(tǒng)計量[11]。由于本文采用RSSI作為觀測量是已知的,且使用預測殘差向量能較好的反應系統(tǒng)中的異常擾動,也無需在濾波前計算狀態(tài)向量參考值,故采用預測殘差統(tǒng)計量作為判別統(tǒng)計量,參照兩段式函數(shù)提出的自適應因子定義如下:
(19)
將標準UKF方程中的式(10)、式(13)~式(17)更新為下面的式(20)~式(24),即可得到自適應迭代UKF算法方程。
(20)
(21)
(22)
(23)
(24)
式中,g=ηg,η為衰減因子,其取值范圍為:0<η<1。
2.4 基于AIUKF的節(jié)點定位算法流程
Step 1:使用極大似然估計(MLE)法求得節(jié)點初始定位坐標值(xMLE,yMLE)。
Step 3:計算并更新自適應因子δk。
利用MATLAB對本文提出的定位算法進行仿真分析,并與相關(guān)方法進行對比,驗證該算法的性能。仿真區(qū)域設(shè)置為30 m×20 m,根據(jù)式(1)生成RSSI數(shù)據(jù),并在數(shù)據(jù)中添加零均值的高斯白噪聲,來代替實際環(huán)境中的多種干擾因素的影響。分別考慮兩種仿真場景:①利用3個信標節(jié)點對單一未知節(jié)點進行定位;②未知節(jié)點數(shù)目與位置固定,改變信標節(jié)點的數(shù)目,對未知節(jié)點進行定位。
3.1 仿真場景1
仿真中的參數(shù)初始化設(shè)置如下:系統(tǒng)噪聲協(xié)方差矩陣Q=diag([0.2,0.2]),觀測噪聲協(xié)方差矩陣R=diag([0.25,0.25,0.25]),UKF算法中的參數(shù)α=0.01,β=2,κ=0,初始狀態(tài)誤差協(xié)方差矩陣P0=diag([0.001,0.001])。AIUKF算法中的最大迭代次數(shù)限制設(shè)置并不需要過大,在仿真中設(shè)為3次。
仿真中三信標節(jié)點的坐標為:(26,0),(14,20),(0,10),未知節(jié)點的真實位置為(14,12)。針對基于EKF,UKF,AIUKF的3種定位算法獨立仿真100次,該仿真情形中采用節(jié)點定位誤差和平均定位誤差來衡量算法的性能。
(25)
式中,(x,y)表示未知節(jié)點的真實坐標值,(xi,yi)表示第i次迭代獲得的未知節(jié)點坐標值。
(25)
式中:M代表仿真的次數(shù)。
假定定位誤差ε<1.2·εm視為收斂,3種定位算法的節(jié)點定位誤差的數(shù)據(jù)統(tǒng)計特性如表1所示。
表1 定位誤差數(shù)據(jù)統(tǒng)計表
圖1 3種算法下的定位誤差曲線對比圖
仿真的定位誤差對比曲線圖如圖1所示。
從圖1中可以看出,基于AIUKF的定位算法相比UKF算法和IUKF算法不僅在精度上有了明顯的提高,并且呈現(xiàn)較好的收斂性。由表1可知,基于EKF、UKF和AIUKF的3種算法的平均定位誤差分別為:3.399 3m,2.289 3m,1.512 6m。AIUKF算法較EKF和UKF算法其定位精度分別提高55.5%,33.9%。同時AIUKF算法精度的波動范圍僅為EKF算法的25.7%,UKF算法的48%。因此,在相同的條件下,基于AIUKF的定位算法具有更高的定位精度和較好的收斂性。
3.2 仿真場景2
為了進一步對比驗證3種定位算法的性能,固定未知節(jié)點位置,信標節(jié)點的數(shù)量從3個依次增加到9個,進行仿真,采用平均定位誤差來衡量3種定位算法的性能。不同信標節(jié)點數(shù)目下3種算法的平均定位誤差對比曲線圖如圖2所示。
圖2 不同信標節(jié)點數(shù)下平均誤差對比曲線圖
從圖2中可以看出,3種算法中,AIUKF算法的平均定位誤差最低。3個信標節(jié)點時,EKF、UKF、AIUKF算法的平均定位誤差分別為:3.399 3m、2.289 3m、1.512 6m,9個信標節(jié)點時,三算法的平均定位誤差分別為1.613 2m、0.753 9m、0.437 7m。AIUKF算法相對EKF算法精度分別提高了55.5%和72.87%,相對UKF算法分別提高了33.93%和72.24%。同時,平均定位誤差隨著信標節(jié)點數(shù)目的增加定位誤差逐漸降低,但當信標節(jié)點數(shù)目達到一定數(shù)目后,變化趨于平緩。因此,在應用中,在一定范圍內(nèi)增加信標節(jié)點數(shù)目可提高定位精度,但無限增加信標節(jié)點的數(shù)目卻無助于提高定位精度,反而會增加算法的復雜度和成本,沒有實際意義。
本文在標準UKF的基礎(chǔ)上,結(jié)合迭代UKF和自適應抗差濾波理論,提出了一種基于AIUKF的WSN節(jié)點定位算法。采用極大似然估計法進行初始定位,作為AIUKF算法的初始值,并且直接以信標節(jié)點接收到的信號能量值作為觀測方程的觀測量。仿真結(jié)果表明,在固定未知節(jié)點和增加信標節(jié)點數(shù)目的情況下,本文的算法不僅在定位精度,而且在穩(wěn)定性方面都明顯優(yōu)于其他算法,具有很高的應用價值。
[1] Chong C Y,Kumar S P.Sensor Networks:Evolution,Opportunities,and Challenges[J].Proceedings of the IEEE,2003,91(8):1247-1256.
[2]陳錫劍,程良倫.基于RSSI的功率匹配定位算法的研究與實現(xiàn)[J].傳感技術(shù)學報,2013,26(5):709-714.
[3]Bal M,Liu M,Shen W,et al.Localization in Cooperative Wireless Sensor Networks:A Review[C]//Proceedings of 19th International Conference on Computer Supported Cooperative Work in Design,2009:438-443.
[4]Blumrosen G,Hod B,Anker T,et al.Enhancing RSSI-Based Tracking Accuracy in Wireless Sensor Networks[J].ACM Transactions on Sensor Networks,2013,9(3):29.
[5]Jiang Z,Song Q,He Y,et al.A Novel Adaptive Unscented Kalman Filter for Nonlinear Estimation[C]//Proceeding of 46th IEEE Conference on Decision and Control:IEEE,2007:4293-4298.
[6]Savvides A,Park H,Srivastava M B.The Bits and Flops of the N-hop Multilateration Primitive for Node Localization Problems[C]//Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications:ACM,2002:112-121.
[7]Julier S J,Uhlmann J K,Durrant H F.A New Approach for Filtering Nonlinear Systems[C]//Proceedings of the 1995 American Control Conference,IEEE,1995,3:1628-1632.
[8]Julier S J,Uhlmann J K,Durrant H F.A New Method for the Nonlinear Transformation of Means and Covariances in Filters and Estimators[J].IEEE Transactions on Automatic Control,2000,45(3):477-482.
[9]梁玉琴,曾慶華,劉建業(yè).基于UKF濾波的WSN節(jié)點定位研究[J].傳感技術(shù)學報,2010,23(6):878-882.
[10]Zhan R,Wan J.Iterated Unscented Kalman Filter for Passive Target Tracking[J].IEEE Transactions on Aerospace and Electronic Systems,2007,43(3):1155-1163.
[11]楊元喜,任夏,許艷.自適應抗差濾波理論及應用的要進展[J].導航定位學報,2013,1(1):9-15.
[12]高為廣,何海波,陳金平.自適應UKF算法及其在GPS/INS組合導航中的應用[J].北京理工大學學報,2008,28(6):505-509.
[13]袁鑫,吳曉平,王國英.線性最小二乘法的RSSI定位精確計算方法[J].傳感技術(shù)學報,2014,27(10):1412-1417.
[14]彭宇,王丹.無線傳感器網(wǎng)絡(luò)定位技術(shù)綜述[J].電子測量與儀器學報,2011,25(5):389-399.
Adaptive Iterated UKF Based Node Localization for WSN*
OUXianhua,WUXianqing,HEXiongxiong*
(College of Information Engineering,Zhejiang University of Technology,Hangzhou 310023,China)
In this paper,by combining iterative constraint conditions and adaptive factor,an adaptive iterated unscented Kalman filter(AIUKF)algorithm is presented to improve the node localization accuracy in Wireless Sensor Network(WSN),which is based on the unscented Kalman filter(UKF).According to the model of range-based localization algorithm,RSSI is used to measure the distance;the maximum likelihood estimation method is utilized to realize node initial location;by using AIUKF algorithm to achieve the accurate positioning of the node finally and RSSI is applied as the measurement values of observation equation directly.The simulation results show that the proposed algorithm based on AIUKF has the best positioning precision than EKF algorithm and UKF algorithm.
WSN;node localization;AIUKF;UKF;adaptive factor
歐縣華(1990-),男,碩士研究生,主要研究方向為無線傳感器網(wǎng)絡(luò)節(jié)點定位算法,oxhzjut@163.com;
武憲青(1987-),男,博士研究生,主要研究方向為欠驅(qū)動橋式吊車系統(tǒng)控制、TORA系統(tǒng)控制,wux.zjut@gmail.com。
何熊熊(1965-),男,教授,博士生導師,主要從事迭代學習控制、信號處理等方面的研究,hxx@zjut.edu.cn;
項目來源:“十二五”國家科技支撐計劃項目(2013BAF07B03);國家自然科學基金項目(61473262);浙江省重大科技專項項目(2011C13011)
2014-10-30 修改日期:2014-11-29
C:6140B;6150P;7230
10.3969/j.issn.1004-1699.2015.02.015
TP393
A
1004-1699(2015)02-0234-05