歐縣華,武憲青,何熊熊
(浙江工業(yè)大學(xué)信息工程學(xué)院,杭州 310023)
?
基于AIUKF的WSN節(jié)點(diǎn)定位算法*
歐縣華,武憲青,何熊熊*
(浙江工業(yè)大學(xué)信息工程學(xué)院,杭州 310023)
針對(duì)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位精度不足的問題,在無跡卡爾曼濾波(UKF)的基礎(chǔ)上,結(jié)合迭代約束條件和自適應(yīng)因子,提出了一種自適應(yīng)迭代無跡卡爾曼濾波(AIUKF)算法。根據(jù)基于測(cè)距的節(jié)點(diǎn)定位模型,采用RSSI進(jìn)行測(cè)距,以極大似然估計(jì)法進(jìn)行節(jié)點(diǎn)初步定位,利用AIUKF算法對(duì)節(jié)點(diǎn)進(jìn)行精確定位,并且直接以RSSI作為系統(tǒng)的觀測(cè)量。仿真結(jié)果表明,本文提出的基于AIUKF的定位算法相比EKF和UKF算法具有更高的定位精度。
無線傳感器網(wǎng)絡(luò);節(jié)點(diǎn)定位;AIUKF;UKF;自適應(yīng)因子
無線傳感器網(wǎng)絡(luò)作為一個(gè)新型的網(wǎng)絡(luò),現(xiàn)已被廣泛應(yīng)用于國(guó)防軍事、環(huán)境監(jiān)測(cè)、醫(yī)療看護(hù)等諸多領(lǐng)域,被認(rèn)為是21世紀(jì)影響人類生活的21項(xiàng)技術(shù)之一。在無線傳感器網(wǎng)絡(luò)的相關(guān)研究與應(yīng)用中,節(jié)點(diǎn)定位技術(shù)不僅是研究中基礎(chǔ)和熱點(diǎn)問題,也是決定應(yīng)用有效性的關(guān)鍵技術(shù)之一[1-2]。
無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法常見的分類是基于測(cè)距的定位算法(Range-Based)和無需測(cè)距的定位算法(Range-Free)[3]。前者根據(jù)信標(biāo)節(jié)點(diǎn)位置信息以及未知節(jié)點(diǎn)與信標(biāo)節(jié)點(diǎn)之間的距離或角度信息來實(shí)現(xiàn)對(duì)未知節(jié)點(diǎn)的定位,常用的測(cè)距方法有[4]:TOA、TDOA、AOA、RSSI;后者僅根據(jù)網(wǎng)絡(luò)的連通度來確定未知節(jié)點(diǎn)的位置信息。
鑒于基本算法實(shí)現(xiàn)的定位精度有限,國(guó)內(nèi)外許多學(xué)者將濾波技術(shù)應(yīng)用到WSN節(jié)點(diǎn)定位中,取得了大量的研究成果。對(duì)于非線性系統(tǒng),最常用的是擴(kuò)展卡爾曼濾波(EKF)算法[5]。文獻(xiàn)[6]首次將擴(kuò)展卡爾曼濾波技術(shù)應(yīng)用于節(jié)點(diǎn)定位修正階段中,相比基本的定位算法,定位精度有了較大程度的提高。然而,EKF使用泰勒展開式近似代替非線性系統(tǒng)時(shí),往往忽略一階以上的高階項(xiàng),在計(jì)算過程中可能會(huì)引入較大的誤差,造成估計(jì)精度的降低,嚴(yán)重時(shí)會(huì)引起濾波器發(fā)散;同時(shí),標(biāo)準(zhǔn)EKF及其衍生算法都需要計(jì)算雅可比矩陣,這個(gè)在許多實(shí)際問題中可能很難甚至無法求得。為避免上述問題,Julier等人提出了基于無跡變換的無跡卡爾曼濾波(UKF)算法[7-8],相比EKF,UKF無需計(jì)算雅可比矩陣,且對(duì)任意系統(tǒng),利用無跡變換得到的近似狀態(tài)的均值和方差可以精確到二階或更高階,具有更高的估計(jì)精度。文獻(xiàn)[9]將加權(quán)最小二乘估計(jì)和UKF用于WSN節(jié)點(diǎn)定位中,取得了比EKF更好的定位性能。但是UKF仍存在對(duì)初始值的波動(dòng)以及觀測(cè)噪聲比較敏感等問題,初始值的波動(dòng)會(huì)造成UKF的估計(jì)結(jié)果不穩(wěn)定,精度變差。為此,文獻(xiàn)[10]提出迭代無跡卡爾曼濾波算法(IUKF),改善了UKF算法存在的一些問題,應(yīng)用到WSN定位中得到了較好定位性能,但是,數(shù)值穩(wěn)定性等問題仍然存在,為了改善上述問題,本文在IUKF算法的基礎(chǔ)上,結(jié)合自適應(yīng)抗差濾波理論[11-12]提出一種自適應(yīng)迭代UKF算法,提高定位精度,增強(qiáng)算法的穩(wěn)定性。
1.1 RSSI測(cè)距模型
在基于RSSI的節(jié)點(diǎn)定位算法中,測(cè)距是節(jié)點(diǎn)定位算法的基礎(chǔ)。RSSI測(cè)距是根據(jù)已知的未知節(jié)點(diǎn)發(fā)射信號(hào)強(qiáng)度和信標(biāo)節(jié)點(diǎn)接收到的信號(hào)強(qiáng)度,得到能量損耗值,并使用理論或經(jīng)驗(yàn)?zāi)P蛯⑵滢D(zhuǎn)化為距離值。在實(shí)際應(yīng)用中,最常用的理論測(cè)距模型是對(duì)數(shù)-常態(tài)分布模型[13]。
Pr(dr)=Pr(d0)-10·δ·log(dr/d0)+χσ
(1)
式中,Pr(dr)為經(jīng)過距離dr后的信號(hào)接收能量值;d0為參考距離,一般取1 m;Pr(d0)為經(jīng)過距離d0后的信號(hào)接收能量值;δ為路徑損耗因子,與信號(hào)傳輸環(huán)境相關(guān);χσ為均值等于0的高斯隨機(jī)變量。
1.2 節(jié)點(diǎn)初始定位
在基于測(cè)距的定位算法中,常見的基本定位方法有三邊測(cè)量法、三角測(cè)量法和極大似然估計(jì)法。當(dāng)信標(biāo)節(jié)點(diǎn)的數(shù)目較小時(shí),三邊測(cè)量法的定位精度較高,但當(dāng)信標(biāo)節(jié)點(diǎn)數(shù)目超過6個(gè)時(shí),極大似然估計(jì)法的精度更高[14]。本文采用極大似然估計(jì)法作為初始定位方法。
設(shè)(x1,y1)、(x2,y2)、…、(xn,yn)表示n個(gè)位置信息已知的信標(biāo)節(jié)點(diǎn)的坐標(biāo),每個(gè)信標(biāo)節(jié)點(diǎn)與未知節(jié)點(diǎn)之間的距離對(duì)應(yīng)為d1、d2、…、dn,根據(jù)極大似然估計(jì)法的原理使用MMSE法求得未知節(jié)點(diǎn)初始定位坐標(biāo)(xMLE,yMLE)為:
(2)
式中,X=[xy]T,
2.1 定位算法模型
在引入卡爾曼濾波技術(shù)估計(jì)的WSN節(jié)點(diǎn)定位算法模型中,離散時(shí)間非線性系統(tǒng)的一般形式為:
(3)
式中,X為系統(tǒng)狀態(tài)向量;Y為系統(tǒng)的觀測(cè)量;uk-1為確定控制項(xiàng);wk和vk分別為系統(tǒng)的過程噪聲和觀測(cè)噪聲,其協(xié)方差矩陣分別為Qk和Rk。
將未知節(jié)點(diǎn)的坐標(biāo)作為系統(tǒng)的狀態(tài)量,而關(guān)于觀測(cè)量的選取,文獻(xiàn)[9]將未知節(jié)點(diǎn)與信標(biāo)節(jié)點(diǎn)之間的距離值作為系統(tǒng)的觀測(cè)量,但是需要求解雅可比矩陣,并有可能造成距離計(jì)算過程中的誤差累積,故在本文中,直接采用RSSI值作為觀測(cè)量。因此,引入卡爾曼濾波的WSN節(jié)點(diǎn)定位算法中的狀態(tài)方程和觀測(cè)方程為:
①狀態(tài)方程:
Xk+1=f(Xk,uk-1)+wk=AXk+wk
(4)
式中,Xk=[xk,yk]T表示未知節(jié)點(diǎn)在第k時(shí)刻濾波計(jì)算的狀態(tài)向量;A為狀態(tài)轉(zhuǎn)移矩陣,由于實(shí)現(xiàn)的是靜態(tài)節(jié)點(diǎn)定位,故A為單位矩陣。
②觀測(cè)方程
(5)
2.2 標(biāo)準(zhǔn)UKF算法實(shí)現(xiàn):
標(biāo)準(zhǔn)UKF算法流程如下:
①初始化:
(6)
②樣點(diǎn)計(jì)算:
(7)
式中:λ=α2(L-κ)-L;α決定樣點(diǎn)的散布程度,取值范圍為10-4≤α≤1,一般取0.01;L為系統(tǒng)狀態(tài)變量X的維數(shù);κ為調(diào)整參數(shù),一般取0。
③時(shí)間更新:
(8)
(9)
(10)
(11)
(12)
(4)量測(cè)更新:
(13)
(14)
(15)
(16)
(17)
2.3 迭代策略與自適應(yīng)因子的選取
雖然UKF算法對(duì)EKF算法存在的一些問題有了明顯的改善,但是UKF算法的基礎(chǔ)也是卡爾曼濾波,因此,其仍存在著受初始值波動(dòng)、可觀測(cè)性弱、觀測(cè)噪聲不確定性等因素影響而造成濾波精度和魯棒性降低等問題。在基于RSSI的WSN節(jié)點(diǎn)定位中,RSSI易受各種干擾因素影響使其值具有較大的誤差,同時(shí)造成測(cè)距階段可能產(chǎn)生較大誤差而使得采用MLE法獲得的結(jié)果具有較大的波動(dòng)性,這些因素都會(huì)造成基于UKF的定位算法的性能變差。為改善上述問題,本文在標(biāo)準(zhǔn)UKF算法的基礎(chǔ)上,結(jié)合文獻(xiàn)[10]提出的迭代策略,同時(shí)引入自適應(yīng)因子,以抑制初始值波動(dòng)和觀測(cè)量異常值等因素的影響,提高定位算法定位精度和穩(wěn)定性。
①迭代策略
文獻(xiàn)[10]提出的IUKF算法迭代策略的判斷準(zhǔn)則如下:
(18)
②自適應(yīng)因子δk的選取
確定自適應(yīng)因子常用的幾種誤差判別統(tǒng)計(jì)量分別是狀態(tài)不符值統(tǒng)計(jì)量、預(yù)測(cè)殘差統(tǒng)計(jì)量和方差分量比統(tǒng)計(jì)量[11]。由于本文采用RSSI作為觀測(cè)量是已知的,且使用預(yù)測(cè)殘差向量能較好的反應(yīng)系統(tǒng)中的異常擾動(dòng),也無需在濾波前計(jì)算狀態(tài)向量參考值,故采用預(yù)測(cè)殘差統(tǒng)計(jì)量作為判別統(tǒng)計(jì)量,參照兩段式函數(shù)提出的自適應(yīng)因子定義如下:
(19)
將標(biāo)準(zhǔn)UKF方程中的式(10)、式(13)~式(17)更新為下面的式(20)~式(24),即可得到自適應(yīng)迭代UKF算法方程。
(20)
(21)
(22)
(23)
(24)
式中,g=ηg,η為衰減因子,其取值范圍為:0<η<1。
2.4 基于AIUKF的節(jié)點(diǎn)定位算法流程
Step 1:使用極大似然估計(jì)(MLE)法求得節(jié)點(diǎn)初始定位坐標(biāo)值(xMLE,yMLE)。
Step 3:計(jì)算并更新自適應(yīng)因子δk。
利用MATLAB對(duì)本文提出的定位算法進(jìn)行仿真分析,并與相關(guān)方法進(jìn)行對(duì)比,驗(yàn)證該算法的性能。仿真區(qū)域設(shè)置為30 m×20 m,根據(jù)式(1)生成RSSI數(shù)據(jù),并在數(shù)據(jù)中添加零均值的高斯白噪聲,來代替實(shí)際環(huán)境中的多種干擾因素的影響。分別考慮兩種仿真場(chǎng)景:①利用3個(gè)信標(biāo)節(jié)點(diǎn)對(duì)單一未知節(jié)點(diǎn)進(jìn)行定位;②未知節(jié)點(diǎn)數(shù)目與位置固定,改變信標(biāo)節(jié)點(diǎn)的數(shù)目,對(duì)未知節(jié)點(diǎn)進(jìn)行定位。
3.1 仿真場(chǎng)景1
仿真中的參數(shù)初始化設(shè)置如下:系統(tǒng)噪聲協(xié)方差矩陣Q=diag([0.2,0.2]),觀測(cè)噪聲協(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次。
仿真中三信標(biāo)節(jié)點(diǎn)的坐標(biāo)為:(26,0),(14,20),(0,10),未知節(jié)點(diǎn)的真實(shí)位置為(14,12)。針對(duì)基于EKF,UKF,AIUKF的3種定位算法獨(dú)立仿真100次,該仿真情形中采用節(jié)點(diǎn)定位誤差和平均定位誤差來衡量算法的性能。
(25)
式中,(x,y)表示未知節(jié)點(diǎn)的真實(shí)坐標(biāo)值,(xi,yi)表示第i次迭代獲得的未知節(jié)點(diǎn)坐標(biāo)值。
(25)
式中:M代表仿真的次數(shù)。
假定定位誤差ε<1.2·εm視為收斂,3種定位算法的節(jié)點(diǎn)定位誤差的數(shù)據(jù)統(tǒng)計(jì)特性如表1所示。
表1 定位誤差數(shù)據(jù)統(tǒng)計(jì)表
圖1 3種算法下的定位誤差曲線對(duì)比圖
仿真的定位誤差對(duì)比曲線圖如圖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%。同時(shí)AIUKF算法精度的波動(dòng)范圍僅為EKF算法的25.7%,UKF算法的48%。因此,在相同的條件下,基于AIUKF的定位算法具有更高的定位精度和較好的收斂性。
3.2 仿真場(chǎng)景2
為了進(jìn)一步對(duì)比驗(yàn)證3種定位算法的性能,固定未知節(jié)點(diǎn)位置,信標(biāo)節(jié)點(diǎn)的數(shù)量從3個(gè)依次增加到9個(gè),進(jìn)行仿真,采用平均定位誤差來衡量3種定位算法的性能。不同信標(biāo)節(jié)點(diǎn)數(shù)目下3種算法的平均定位誤差對(duì)比曲線圖如圖2所示。
圖2 不同信標(biāo)節(jié)點(diǎn)數(shù)下平均誤差對(duì)比曲線圖
從圖2中可以看出,3種算法中,AIUKF算法的平均定位誤差最低。3個(gè)信標(biāo)節(jié)點(diǎn)時(shí),EKF、UKF、AIUKF算法的平均定位誤差分別為:3.399 3m、2.289 3m、1.512 6m,9個(gè)信標(biāo)節(jié)點(diǎn)時(shí),三算法的平均定位誤差分別為1.613 2m、0.753 9m、0.437 7m。AIUKF算法相對(duì)EKF算法精度分別提高了55.5%和72.87%,相對(duì)UKF算法分別提高了33.93%和72.24%。同時(shí),平均定位誤差隨著信標(biāo)節(jié)點(diǎn)數(shù)目的增加定位誤差逐漸降低,但當(dāng)信標(biāo)節(jié)點(diǎn)數(shù)目達(dá)到一定數(shù)目后,變化趨于平緩。因此,在應(yīng)用中,在一定范圍內(nèi)增加信標(biāo)節(jié)點(diǎn)數(shù)目可提高定位精度,但無限增加信標(biāo)節(jié)點(diǎn)的數(shù)目卻無助于提高定位精度,反而會(huì)增加算法的復(fù)雜度和成本,沒有實(shí)際意義。
本文在標(biāo)準(zhǔn)UKF的基礎(chǔ)上,結(jié)合迭代UKF和自適應(yīng)抗差濾波理論,提出了一種基于AIUKF的WSN節(jié)點(diǎn)定位算法。采用極大似然估計(jì)法進(jìn)行初始定位,作為AIUKF算法的初始值,并且直接以信標(biāo)節(jié)點(diǎn)接收到的信號(hào)能量值作為觀測(cè)方程的觀測(cè)量。仿真結(jié)果表明,在固定未知節(jié)點(diǎn)和增加信標(biāo)節(jié)點(diǎn)數(shù)目的情況下,本文的算法不僅在定位精度,而且在穩(wěn)定性方面都明顯優(yōu)于其他算法,具有很高的應(yīng)用價(jià)值。
[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的功率匹配定位算法的研究與實(shí)現(xiàn)[J].傳感技術(shù)學(xué)報(bào),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é)點(diǎn)定位研究[J].傳感技術(shù)學(xué)報(bào),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]楊元喜,任夏,許艷.自適應(yīng)抗差濾波理論及應(yīng)用的要進(jìn)展[J].導(dǎo)航定位學(xué)報(bào),2013,1(1):9-15.
[12]高為廣,何海波,陳金平.自適應(yīng)UKF算法及其在GPS/INS組合導(dǎo)航中的應(yīng)用[J].北京理工大學(xué)學(xué)報(bào),2008,28(6):505-509.
[13]袁鑫,吳曉平,王國(guó)英.線性最小二乘法的RSSI定位精確計(jì)算方法[J].傳感技術(shù)學(xué)報(bào),2014,27(10):1412-1417.
[14]彭宇,王丹.無線傳感器網(wǎng)絡(luò)定位技術(shù)綜述[J].電子測(cè)量與儀器學(xué)報(bào),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-),男,碩士研究生,主要研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法,oxhzjut@163.com;
武憲青(1987-),男,博士研究生,主要研究方向?yàn)榍夫?qū)動(dòng)橋式吊車系統(tǒng)控制、TORA系統(tǒng)控制,wux.zjut@gmail.com。
何熊熊(1965-),男,教授,博士生導(dǎo)師,主要從事迭代學(xué)習(xí)控制、信號(hào)處理等方面的研究,hxx@zjut.edu.cn;
項(xiàng)目來源:“十二五”國(guó)家科技支撐計(jì)劃項(xiàng)目(2013BAF07B03);國(guó)家自然科學(xué)基金項(xiàng)目(61473262);浙江省重大科技專項(xiàng)項(xiàng)目(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