胡春安,張起輝
(江西理工大學(xué) 信息工程學(xué)院,江西 贛州341000)
由于基于靜態(tài)的監(jiān)測(cè)很難及時(shí)捕捉山體滑坡的動(dòng)態(tài)信息[1],而使及時(shí)準(zhǔn)確地預(yù)測(cè)滑坡發(fā)生仍有相當(dāng)?shù)碾y度?;掳l(fā)生的條件是坡體不停的運(yùn)動(dòng),當(dāng)坡體位移累積到一定程度,坡體的重力大于對(duì)抗阻力滑坡就會(huì)發(fā)生,因此,滑坡位移的有效監(jiān)測(cè)可以實(shí)現(xiàn)滑坡的預(yù)測(cè)[2]。而作為無(wú)線傳感器網(wǎng)絡(luò)(WSNs)關(guān)鍵技術(shù)之一的節(jié)點(diǎn)定位技術(shù),因其能夠獲取其它監(jiān)測(cè)信息的位置信息而被廣泛應(yīng)用[3,4]。將該技術(shù)應(yīng)用于滑坡監(jiān)測(cè),通過(guò)傳感器節(jié)點(diǎn)位置的變化獲取坡體的運(yùn)動(dòng)狀態(tài),并通過(guò)WSNs 實(shí)時(shí)地將坡體位移信息傳輸給站臺(tái)分析,以取代傳統(tǒng)意義的儀表監(jiān)測(cè)。
目前,估計(jì)傳感器節(jié)點(diǎn)的精確位置仍有很大難度,有必要對(duì)當(dāng)前的定位算法進(jìn)行改進(jìn)。文獻(xiàn)[5]提出在原有質(zhì)心算法的基礎(chǔ)上,通過(guò)數(shù)學(xué)法選取合理的角度對(duì)RSSI 值進(jìn)行篩選,從而使求得的加權(quán)因子能合理反映真實(shí)環(huán)境。文獻(xiàn)[6]Anil Kumar 提出一個(gè)三維節(jié)點(diǎn)定位問(wèn)題,采用生物地理優(yōu)化(BBO)算法降低誤差。綜上所述,目前對(duì)這類定位算法的改進(jìn)是在原始數(shù)據(jù)采集與濾波上,以及對(duì)節(jié)點(diǎn)全局位置的估計(jì)算法進(jìn)行改進(jìn),而沒(méi)有充分利用錨節(jié)點(diǎn)數(shù)據(jù)資源。
本文考慮到滑坡監(jiān)測(cè)的特殊環(huán)境,充分利用錨節(jié)點(diǎn)的數(shù)據(jù)資源,通過(guò)計(jì)算錨節(jié)點(diǎn)之間的測(cè)距誤差獲取產(chǎn)生誤差的環(huán)境因子,同時(shí)引入錨節(jié)點(diǎn)的誤差系數(shù)對(duì)RSSI 測(cè)距進(jìn)行修正,并將環(huán)境因子與修正距離作為權(quán)值選取需要考慮的因素,從而使權(quán)值的選取更加合理,以提高坡體傳感器節(jié)點(diǎn)定位精度。
圖1 是基于WSNs 的滑坡監(jiān)測(cè)的結(jié)構(gòu)框圖,圖中的傳感器節(jié)點(diǎn)分為錨節(jié)點(diǎn)和未知節(jié)點(diǎn)兩類,錨節(jié)點(diǎn)事先知道自身的位置,并且對(duì)未知節(jié)點(diǎn)定位起輔助作用。錨節(jié)點(diǎn)和未知節(jié)點(diǎn)分布在坡體上,但錨節(jié)點(diǎn)分布在坡體周圍比較穩(wěn)定的地方以便錨節(jié)點(diǎn)在滑坡發(fā)生時(shí)不被破壞。匯聚節(jié)點(diǎn)既有錨節(jié)點(diǎn)的功能也負(fù)責(zé)與監(jiān)控中心通信。未知節(jié)點(diǎn)的坐標(biāo)就是通過(guò)圖中的網(wǎng)絡(luò)傳輸?shù)奖O(jiān)控中心。
圖1 基于WSNs 的滑坡監(jiān)測(cè)框圖Fig 1 Landslide monitoring block diagram based on WSNs
在實(shí)際監(jiān)測(cè)過(guò)程中,一旦存在或者近似確定坡體的運(yùn)動(dòng)位置,網(wǎng)絡(luò)中的節(jié)點(diǎn)就轉(zhuǎn)發(fā)傳感器節(jié)點(diǎn)的位置信息到監(jiān)控中心,監(jiān)控中心將這些監(jiān)測(cè)數(shù)據(jù)作為有限元素模型(FEM)的輸入變量,根據(jù)該模型的輸出結(jié)果預(yù)測(cè)滑坡災(zāi)害是否會(huì)發(fā)生[1]。
基于RSSI 的測(cè)距技術(shù)是利用信號(hào)能量損耗測(cè)量距離的一種技術(shù)[7],但信號(hào)衰減易受外部環(huán)境等因素的影響,導(dǎo)致測(cè)距不精確。文獻(xiàn)[8]中介紹的對(duì)數(shù)正態(tài)陰影模型(LNSM),能更真實(shí)地描述RSSI 值和距離之間的關(guān)系,是一個(gè)應(yīng)用比較廣泛的信號(hào)傳播模型,可表示為
式(1)是理想情況的下的傳輸模型,考慮到滑坡所處的環(huán)境情況,LNSM 可進(jìn)一步描述為
式中 PL(d)表示距離d0時(shí)的無(wú)線電波信號(hào)損耗值,d0通常取1,N 為信號(hào)衰減因子,與特定的環(huán)境有關(guān)。d 為兩個(gè)通信節(jié)點(diǎn)之間的距離,δ 滿足均值為零,標(biāo)準(zhǔn)差取值在[4,10]范圍的高斯分布,為了方便計(jì)算可以不考慮其影響。
在WSNs 中傳感器節(jié)點(diǎn)接收到的RSSI 滿足以下關(guān)系
式中 RSSI 可通過(guò)實(shí)驗(yàn)測(cè)量獲得,Pt為發(fā)射功率,Gr為天線增益,dB。利用以上各公式,即可計(jì)算出通信距離d[8]。
利用式(1)、式(3)求出距離,以這個(gè)距離構(gòu)成的函數(shù)作為權(quán)值[9],對(duì)能夠與未知節(jié)點(diǎn)進(jìn)行信息交互的錨節(jié)點(diǎn)進(jìn)行加權(quán),然后通過(guò)式(4)進(jìn)行定位[10]
權(quán)值的選取方法不唯一,一般是一個(gè)關(guān)于距離的函數(shù)[11],選取方法如下式所示
式中 r 為節(jié)點(diǎn)之間的通信半徑,di為節(jié)點(diǎn)之間的測(cè)量距離。事實(shí)證明,引入權(quán)值后算法的定位性能得到明顯改善。
在實(shí)際應(yīng)用中,滑坡所處的外部環(huán)境條件不斷變化,采用上文固定的算法權(quán)值因不能充分體現(xiàn)節(jié)點(diǎn)所處環(huán)境的真實(shí)情況[12]而降低節(jié)點(diǎn)的定位精度。改進(jìn)的算法充分利用錨節(jié)點(diǎn)的數(shù)據(jù)信息,依次將其中之一的錨節(jié)點(diǎn)當(dāng)作未知節(jié)點(diǎn),利用剩余錨節(jié)點(diǎn)的信息依次求得對(duì)應(yīng)錨節(jié)點(diǎn)的平均測(cè)量誤差,然后對(duì)平均測(cè)量誤差進(jìn)行某種計(jì)算分別得出該節(jié)點(diǎn)對(duì)應(yīng)的環(huán)境因子(反映該節(jié)點(diǎn)所處的外部環(huán)境條件)和誤差系數(shù),在定位過(guò)程中利用誤差系數(shù)修正未知節(jié)點(diǎn)到錨節(jié)點(diǎn)的距離,最后將環(huán)境因子與修正距離的商作為權(quán)值,結(jié)合加權(quán)質(zhì)心算法(WCLA)完成節(jié)點(diǎn)定位。
具體過(guò)程如下:對(duì)于已初始化的WSNs,已知錨節(jié)點(diǎn)坐標(biāo)為(xi,yi),i=1,2,…n,則錨節(jié)點(diǎn)i 和j 之間的真實(shí)距離drij為
坡體錨節(jié)點(diǎn)間的測(cè)量距離可由式(1)、式(3)求得為dcij。
假設(shè)網(wǎng)絡(luò)中錨節(jié)點(diǎn)的數(shù)量為M,算法中為了進(jìn)一步減小距離的測(cè)量誤差,取各錨節(jié)點(diǎn)測(cè)量誤差的均值,則錨節(jié)點(diǎn)i 的平均測(cè)量誤差εi為
由上式計(jì)算可知,εi的大小不相同,較小的εi表明該錨節(jié)點(diǎn)對(duì)未知節(jié)點(diǎn)測(cè)距的影響處于主導(dǎo)地位,外界影響力居于次要地位,所以,要想更好地反映錨節(jié)點(diǎn)對(duì)未知節(jié)點(diǎn)的影響情況,就需要將較大的環(huán)境因子賦給εi較小的錨節(jié)點(diǎn)。
假設(shè)WSNs 中滑坡節(jié)點(diǎn)能夠與除自身外n 個(gè)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)交換,則將第i 個(gè)錨節(jié)點(diǎn)的環(huán)境因子θi定義為其自身的平均測(cè)量誤差的倒數(shù)與所有錨節(jié)點(diǎn)平均測(cè)量誤差倒數(shù)之和取商,即
通過(guò)式(8)的計(jì)算,錨節(jié)點(diǎn)被賦予反映自身情況的環(huán)境因子。
前文已經(jīng)提到錨節(jié)點(diǎn)i 的平均測(cè)量誤差為εi,則錨節(jié)點(diǎn)i 的誤差系數(shù)為
假設(shè)錨節(jié)點(diǎn)i 的數(shù)據(jù)交換范圍內(nèi)有一未知節(jié)點(diǎn)m,節(jié)點(diǎn)m 與i 的測(cè)量距離為dcim,則其修正距離為
上述過(guò)程結(jié)束后,引入新的權(quán)值計(jì)算方法,即環(huán)境因子與修正距離的商為
在實(shí)際滑坡應(yīng)用中,每次定位之前先通過(guò)式(8)、式(10)求得反映外部環(huán)境的θi,dxim,并將其作為權(quán)值選取的依據(jù),根據(jù)式(4)求取未知節(jié)點(diǎn)坐標(biāo)(x'i,y'i)。
實(shí)驗(yàn)電腦的硬件環(huán)境為Intel Core i5 3.1 GH,內(nèi)存4 G,顯存1 GMB。操作系統(tǒng)是32 位WINDOWS 7,仿真軟件為Matlab 2012b。在仿真分析時(shí),將120 個(gè)節(jié)點(diǎn)隨機(jī)分布在100 m×100 m 仿真區(qū)域內(nèi),其中,20 個(gè)為未知節(jié)點(diǎn),節(jié)點(diǎn)通信半徑相同。選取定位節(jié)點(diǎn)的估計(jì)位置與真實(shí)位置的差值作為算法性能的評(píng)估參數(shù),并作歸一化處理
其中,n 為未知節(jié)點(diǎn)個(gè)數(shù),R 為節(jié)點(diǎn)通信半徑,(xi,yi)是未知節(jié)點(diǎn)的實(shí)際坐標(biāo)是計(jì)算得到的坐標(biāo)。仿真結(jié)果如圖2 ~圖4.
圖2 三種算法對(duì)應(yīng)的定位節(jié)點(diǎn)誤差曲線Fig 2 Error curve of localization node of three algorithms
圖3 三種算法對(duì)應(yīng)平均誤差與半徑的關(guān)系Fig 3 Relationship between average error and radius of three algorithms
圖4 三種算法對(duì)應(yīng)平均誤差與錨節(jié)點(diǎn)的關(guān)系Fig 4 Relationship between average error and anchor nodes of three algorithms
從圖2 可以看出各未知節(jié)點(diǎn)的定位誤差不相同,這與它們所處周邊具體環(huán)境有關(guān),但從圖中得知,WCLA 明顯優(yōu)于傳統(tǒng)的質(zhì)心算法,改進(jìn)后的WCLA(IWCLA)又優(yōu)于WCLA。
圖3 顯示:IWCLA 的平均定位誤差更小,但是算法平均定位誤差并不是隨著半徑的增大而減小,因此,應(yīng)選擇合適的半徑,圖中誤差在r=30 m 時(shí)最小,在實(shí)際滑坡應(yīng)用中可以考慮將節(jié)點(diǎn)的通信半徑設(shè)在30 m 左右,以提高算法準(zhǔn)確度。
從圖4 可以看出:IWCLA 算法的關(guān)系曲線始終在前兩種算法的下方,并且平均定位精度分別提高了56.3%,26.2%,改進(jìn)后算法優(yōu)越性得到證明。
本文提出將WSNs 應(yīng)用于滑坡預(yù)測(cè),以位移監(jiān)測(cè)作為切入點(diǎn),將坡體位移監(jiān)測(cè)的研究轉(zhuǎn)化為節(jié)點(diǎn)定位問(wèn)題的研究,在充分考慮滑坡外部環(huán)境的條件下,提出一種改進(jìn)的基于RSSI 的加權(quán)質(zhì)心算法,該算法首先以錨節(jié)點(diǎn)為研究目標(biāo),引入錨節(jié)點(diǎn)的誤差系數(shù)對(duì)RSSI 測(cè)距進(jìn)行修正,同時(shí)通過(guò)計(jì)算錨節(jié)點(diǎn)的平均測(cè)量誤差求得對(duì)應(yīng)錨節(jié)點(diǎn)的環(huán)境因子,將環(huán)境因子與修正距離同時(shí)作為權(quán)值選取的依據(jù),以提高算法的定位準(zhǔn)確度。實(shí)驗(yàn)表明:改進(jìn)后的算法更多地考慮到外部環(huán)境的影響,減小了坡體節(jié)點(diǎn)定位誤差,能較好適應(yīng)于滑坡監(jiān)測(cè)預(yù)測(cè)。
[1] Andreas Terzis,Annalingam Anandarajah,Kevin Moore,et al.Slip surface localization in wireless sensor networks for landslide prediction[C]∥Proceedings of the 5th International Conference on Information Processing in Sensor Networks,2006:109-116.
[2] 孫利民,李建中,陳 渝,等.無(wú)線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2005.
[3] Feng Wenjiang,Bi Xiaowei,Jiang Rong.A novel adaptive cooperative location algorithm for wireless sensor networks[J].International Journal of Automation and Computing,2012,9(5):539-544.
[4] 夏心江,胡 鋼,王燁華.基于錨球交域重心的WSNs 三維定位算法研究[J].計(jì)算機(jī)工程與應(yīng)用,2013,49(10):76-79.
[5] 馮冬青,趙志遠(yuǎn).基于RSSI 的無(wú)線傳感器網(wǎng)絡(luò)改進(jìn)定位算法[J].廣西大學(xué)學(xué)報(bào):自然科學(xué)版,2012,37(6):1158-1163.
[6] Anil Kumar,Arun Khosla,Jasbir Singh Saini,et al.Stochastic algorithms for 3D node localization in anisotropic wireless sensor networks[C]∥Proceedings of Seventh International Conference on Bio-Inspired Computing,2012:56-70.
[7] 趙雁航,錢(qián)志鴻,尚小航,等.基于跳距修正粒子群優(yōu)化的WSNs 定位算法[J].通信學(xué)報(bào),2013,34(9):105-114.
[8] 李文田.RSSI 定位算法在滑坡監(jiān)測(cè)系統(tǒng)的應(yīng)用研究[D].重慶:重慶大學(xué),2012.
[9] Gao Leina,Peng Jianshe.Research on ranging optimization and twice-weighted centroid calculation in wireless sensor networks localization algorithm[J].The Open Automation and Control Systems Journal,2013,5:154-160.
[10]Massimo Vecchio,Roberto Lopez-Valcarce,F(xiàn)rancesco Marcelloni.Solving the node localization problem in WSNs by a two-objective evolutionary algorithm and local descent[J].IEEE Signal Processing Mag,2010,22(4):54-69.
[11]Chuku N,Pal A,Nasipuri A.An RSSI-based localization scheme for wireless sensor networks to mitigate shadowing effects[C]∥Proceedings of the IEEE,2013:1-6.
[12]Quan Dedong,Xu Xu.A novel weighted centroid localization algorithm based on RSSI for an outdoor environment[J].Journal of Communications,2014,9(3):279-285.