黃海松 卞國龍
摘 要: 在無線傳感器網(wǎng)絡的節(jié)點定位中,原RSSI定位算法利用接收信號強度的對數(shù)正態(tài)模型,其存在計算量大、功耗大等問題。由于物體運動不會突變,可以利用以前的軌跡與速度,預測當前時刻的位置信息,采用改進的神經(jīng)網(wǎng)絡算法,對當前時刻的位置做了很好的預測。實驗結果表明,該算法與傳統(tǒng)的RSSI算法相比,減小了采樣范圍,提高了定位精度,降低了無線傳感系統(tǒng)的功耗。
關鍵詞: 節(jié)點定位算法; 衰減模型; 算法優(yōu)化; 模糊控制; 神經(jīng)網(wǎng)絡
中圖分類號: TN915?34; TP393; TN711?34 文獻標識碼: A 文章編號: 1004?373X(2017)10?0086?04
Abstract: In the node localization algorithm of wireless sensor networks, the original RSSI location algorithm uses the lognormal model of the received signal strength, which has the problems of large amount of computation and large power consumption. Because the motion of the object does not change suddenly, it can be used to predict the position at the current time by using the previous track and speed. The improved neural network algorithm is adopted to predict the position at the current time. The experimental results show that the proposed algorithm can reduce the sampling range, improve the positioning accuracy and decrease the power consumption of the system, compared with the traditional RSSI algorithm.
Keywords: node localization algorithm; attenuation model; algorithm optimization; fuzzy control; neural network
在無線傳感器網(wǎng)絡技術中,定位技術是重要的組成部分,在其應用領域內,事件發(fā)生的位置信息是傳感器節(jié)點監(jiān)測消息中的重要信息,沒有節(jié)點的位置信息的感知數(shù)據(jù)是毫無實際意義的[1]。BP神經(jīng)網(wǎng)絡以其獨特的自組織和自學習能力,快速準確的實時處理性,在許多應用領域有較好的前景,在定位算法領域中有明顯優(yōu)點。
1 RSSI測距算法
1.1 RSSI測距基本原理
信號的接收強度和傳輸距離之間的關系可以用式(1)表示,常數(shù)A和n的值決定了信號接收強度和傳輸距離的關系。參數(shù)A為距參考節(jié)點1 m時收到信號平均能量值,單位為dBm;參數(shù)n為路徑損耗系數(shù),其大小取決于信號的傳播環(huán)境。接收信號強度的衰減RSSI與d成比例[2],理想環(huán)境下,信號的長期衰落服從對數(shù)正態(tài)分布:
[RSSI=A-10nlgd] (1)
式中:RSSI為接收信號強度;d為節(jié)點之間的距離;n為路徑損耗系數(shù)。
1.2 定位信號衰減模型
利用RSSI算法進行定位,當傳輸距離較近時,功率衰減較快,而傳輸距離越遠,信號衰減越慢[3]。所以用RSSI定位,距離越近,定位越準確;距離越遠,定位誤差越大。在實際傳輸過程中,多徑現(xiàn)象,信號被障礙物吸收或者發(fā)生反射和衍射。這時可以采用不規(guī)則無線電傳輸模型來模擬應用環(huán)境,該模型在不同方向的路徑損耗不同,所以需要對由式(1)的距離d優(yōu)化。圖1為原RSSI模型和實際測試條件下RSSI值的比較。由圖1的曲線變化可以看出, 實際到達接收端的信號損耗值與傳輸距離呈現(xiàn)出明顯的衰落變化, 并非平滑的曲線。
2 定位算法的優(yōu)化
2.1 原始數(shù)據(jù)處理
直接通過RSSI值估算移動節(jié)點與參考節(jié)點的距離有較大誤差,主要原因是室內環(huán)境存在多徑效應。利用信號強度進行定位,需要對原始的RSSI數(shù)據(jù)做一定的濾波,才能相應地提高定位精度。
由于考慮到軟件運行的流暢性以及定位的實時性,選擇復雜程度不高的中位值遞推平均濾波法;考慮到移動端上定位算法的執(zhí)行速度和程序所占空間的大小,在實際操作中,采集5個單位長度的RSSI隊列,每次采樣把新到的一個數(shù)據(jù)放在隊尾,并去掉隊首原來的數(shù)據(jù)[4],在剩下5個數(shù)據(jù)中去掉一個最小值和一個最大值,然后計算其余3個數(shù)據(jù)的平均值,如下:
2.2 RSSI的模糊控制優(yōu)化
由模糊控制理論可以計算出RSSI與各個移動節(jié)點的貼合程度,建立不同參數(shù)的模糊分布參數(shù),對“距離?損耗”模型改進,可較準確地計算出移動節(jié)點的位置信息[5]。設RSSI值偏差值為[e],偏差變化為[ec],輸出控制量為[u]。設三者的上下線分別如下:[eL=-120 dB,eH=-20 dB,]
基于模糊控制的思想,優(yōu)化的主要任務是將接收到的RSSI特征信息組成的模式與實際的位置模式進行匹配來確定移動點最可能的具體位置。在本次優(yōu)化中采用模糊控制算法對RSSI值進行修正,通過對參數(shù)和規(guī)則自校正后明顯提升了響應速度和對RSSI值的優(yōu)化,為通過神經(jīng)網(wǎng)絡進一步精確計算RSSI值打下了基礎。
2.3 基于BP網(wǎng)絡的優(yōu)化設計
BP神經(jīng)網(wǎng)絡是前饋網(wǎng)絡,通過反向傳播不斷調整權值以及閾值,使誤差最小,確定神經(jīng)網(wǎng)絡的輸入層為5個場強強度,輸出層為5個修正后的場強強度。各層神經(jīng)元數(shù)、隱含層的個數(shù)以及訓練函數(shù)和激勵函數(shù)的選擇都是需要確定的參數(shù)[6]。目前沒有準確的理論指導,要通過實驗調節(jié)模型中的各個參數(shù),已達到較好的定位效果。如圖3所示。首先用RSSI 室內定位系統(tǒng)在實際環(huán)境中測得大量參考標簽的場強和對應距離。在調節(jié)實驗效果時,首先假設隱含層的節(jié)點數(shù),根據(jù)經(jīng)驗本仿真固定隱含層節(jié)點個數(shù)為14個。逐步調節(jié)隱含層的層數(shù),觀察隱含層的實驗效果,結果發(fā)現(xiàn)隱含層為1層就可以達到實驗效果。而且1層網(wǎng)絡訓練時間短、結構簡單,所以確定隱含層的層數(shù)為1層。
定位的精度決定于RSSI值的質量,在實際測量過程中,5個參數(shù)一起反饋作用于定位精度,借助BP網(wǎng)絡,提高轉換過程中的容錯能力。網(wǎng)絡共設計三層,輸入層5個節(jié)點、輸出層5個節(jié)點,設輸入量為(RSSI1,RSSI2,RSSI3,RSSI4,RSSI5),其中,RSSIi表示的是環(huán)境下的移動節(jié)點收到的RSSI值,那么輸入向量設為:
BP神經(jīng)網(wǎng)絡經(jīng)過反復的自主學習和訓練,當誤差[E≤0.000 000 1]時,BP網(wǎng)絡增強了定位過程的可靠性,借助于BP神經(jīng)網(wǎng)絡的自學習能力和自組織能力對函數(shù)及推理進行優(yōu)化,可以達到優(yōu)化BP神經(jīng)網(wǎng)絡及模糊控制各自的優(yōu)點,彌補對方不足[7]。
3 測試與性能分析
3.1 算法的優(yōu)化分析
表2是對誤差函數(shù)在隱含層神經(jīng)元個數(shù)從12~19依次增加時的統(tǒng)計結果,數(shù)據(jù)中預測的函數(shù)與實際函數(shù)曲線的相對誤差的最大值并做比為最大相對誤差。觀察實驗的優(yōu)化效果后得出隱含層為17個節(jié)點時神經(jīng)網(wǎng)絡訓練的實驗效果最好,所以神經(jīng)網(wǎng)絡模型采用5∶17∶5的網(wǎng)絡結構[8]。
由圖6分析移動速度對定位誤差的影響,可知,節(jié)點速度增大使節(jié)點的下一位置的可能分布區(qū)增大,誤差增大[9]。當速度為2 m/s時,定位誤差最小,當速度繼續(xù)增大時,定位誤差也會增大。基于神經(jīng)網(wǎng)絡算法的定位誤差雖然也有變化,但可以大幅度提高定位的準確性[10]。
3.3 不同環(huán)境下定位誤差
實驗區(qū)域為30 m×30 m,參考節(jié)點數(shù)為7,通信半徑R為15 m,移動節(jié)點隨機移動。比較兩種不同算法在不同環(huán)境下的定位誤差,實驗結果如圖7所示,為不同的信道環(huán)境下的誤差結果。
4 結 語
本文利用神經(jīng)網(wǎng)絡進行室內定位可以取得更好的定位精度。針對現(xiàn)有的RSSI室內定位算法的不足,將BP神經(jīng)網(wǎng)絡引入定位方法中,通過訓練BP神經(jīng)網(wǎng)絡,結合實際得到了較好的定位效果。本文中采用優(yōu)化的BP算法使均方根誤差趨向最小, 直到達到定位的精度要求。但在實際中, 存在收斂速度慢、局部極值等問題[12]。本文選擇一種修正后的BP神經(jīng)網(wǎng)絡算法,實驗結果表明,改進后的神經(jīng)算法在沒有增加硬件的情況下,明顯提高了算法的定位精度,較好地解決了原算法的問題。BP 神經(jīng)網(wǎng)絡的隱含層作用機理和隱含層節(jié)點個數(shù)的選擇是BP神經(jīng)網(wǎng)絡的難點,隱含層的節(jié)點個數(shù)的選擇需反復進行試驗, 當多次輸出結果在誤差允許的范圍內才可確定。
注:本文通訊作者為卞國龍。
參考文獻
[1] WU S Q, ER M J. Dynamic fuzzy neural networks?a novel approach to function approximation [J]. IEEE transactions on systems, man, and cybernetics, Part B, 2000, 30(2): 358?364.
[2] 黃海輝,李龍連.WSN中一種基于RSSI的移動節(jié)點改進定位算法[J].電子技術應用,2015(1):86?89.
[3] WANG Shuxin,YUN Jintian,ZHANG Zhifei. Modeling and compensation technique for the geometric errors of five?axis CNC machine tools [J]. Chinese journal of mechanical engineering, 2003, 16(2): 197?201.
[4] DOHERTY L, PISTER K S, GHAOUI L E. Convex position estimation in wireless sensor netw orks [C]// Proceedings of the IEEE 2001 INFOCOM. Anchorage, Alaska: IEEE Computer and Communications Societ ies, 2001: 1655?1663.
[5] Theodore S Rappaport.Wireless communications:Principles and practice [M]. 2nd ed. Prentice Hall PTR,2001.
[6] 孫鳳,施偉斌,黃靈鳳.基于無線傳感器網(wǎng)絡的室內定位技術的研究[J].電子技術應用,2013(10):80?83.
[7] HE Tian, HUANG Chengdu, BLUM B M, et al. Range?free localization schemes for large scale sensor networks [C]// Proceedings of the 9th Annual International Conference on Mobile Computing and Networking. San Diego, CA, USA: CAM, 2003: 81?95.
[8] 朱明輝,張會清.基于RSSI的室內無線網(wǎng)絡定位技術研究[J].現(xiàn)代電子技術,2010,33(17):45?48.
[9] HUIRCAN J I, MUNOZ C, HECTOR Y, et al. ZigBee?based wireless sensor network localization for cattle monitoring in grazing fields [J]. Computers and electronics in agriculture, 2010, 74: 258?264.
[10] 郝維來,白潔.基于RSSI的煤礦井下人員定位系統(tǒng)研究[J].現(xiàn)代電子技術,2016,39(4):48?50.
[11] 陳桂忠,董利達.基于位姿評估的無線傳感器網(wǎng)絡自主移動節(jié)點定位技術[J].電子學報,2008(12):2428?2432.
[12] VO D M N, VO D, CHALLA S, et al. Nonmetric MDS for sensor localization [C]// Proc of the 3rd International Symposium on Wireless Pervasive Computing. [S.l. : s.n.], 2008: 396?400.