梁華
摘要:當?shù)V井下瓦斯?jié)舛瘸瑯说仁录l(fā)生時,如果不能及時檢測到事件發(fā)生的位置,通常會帶來非常嚴重的人員傷亡和經(jīng)濟損失。因此,我們考慮采用基于智能大數(shù)據(jù)的礦井監(jiān)控系統(tǒng)對突發(fā)事件進行準確及時地定位操作。目前,在無限傳感器網(wǎng)絡(luò)中使用較多的定位算法是DV-Hop算法,但定位精度較差。因此本文提出了一種基于粒子群優(yōu)化的改進PDV-Hop算法。實驗表明,相比于原有的DV-Hop算法,PDV-Hop算法大大降低了突發(fā)事件的平均定位誤差。
關(guān)鍵詞:定位問題;DV-Hop算法;無線傳感器網(wǎng)絡(luò);粒子群優(yōu)化
引言
在礦井生產(chǎn)作業(yè)過程中,當某些特定事件,如礦井下瓦斯?jié)舛瘸瑯?、礦井塌陷、管道泄漏等事件發(fā)生時,如果不能及時檢測到事件發(fā)生的位置,通常會帶來非常嚴重的人員傷亡和經(jīng)濟損失。本文考慮采用基于無線傳感器網(wǎng)絡(luò)技術(shù)[1] (Wireless Sensor Network, WSN)的礦井監(jiān)控系統(tǒng)對礦井的生產(chǎn)作業(yè)進行實時監(jiān)測。在監(jiān)測活動中,對象的位置信息對整個監(jiān)測活動起著非常重要的作用。因此,如何及時準確地對突發(fā)事件進行定位是WSN監(jiān)控系統(tǒng)中最急需研究的問題之一。
1無線傳感器網(wǎng)絡(luò)節(jié)點定位問題
在WSN中,現(xiàn)在主要的定位技術(shù)分為節(jié)點自身定位和移動目標定位,而當前提出的定位算法主要基于無需測距的算法。在無需測距的算法研究中,DV-Hop[2]算法是目前被研究得最多的算法,其主要原理是基于跳段的方式,來估算未知節(jié)點和錨結(jié)點之間的距離。目前很多的定位算法都是基于此進行改進,常見的用遺傳算法 [3]、禁忌搜索[4]等算法對其做優(yōu)化,也有研究采用多種混合算法,來對其做全局的優(yōu)化,以增強其全局搜索能力。本文也在此基礎(chǔ)上,提出了一種基于粒子群優(yōu)化(Particle Swarm Optimization, PSO) [5]來對DV-Hop算法進行改進,以提高定位的精度。
2 DV-HOP算法
DV-Hop算法具有方法簡單,定位精度較高的特點,它主要依賴節(jié)點間的信息交換和協(xié)調(diào),由節(jié)點自行計算定位。它的實現(xiàn)主要分為以下三步:
(1) 計算未知節(jié)點與每個錨節(jié)點的最小跳數(shù)。信標節(jié)點向鄰居節(jié)點廣播自身位置信息的分組,其中包括跳段信息,且將該值初始化為0,并接受其他錨節(jié)點的最小跳數(shù)信息,忽略來自同一個錨節(jié)點的較大跳數(shù)的信息,然后將跳數(shù)值加1轉(zhuǎn)發(fā)給鄰居節(jié)點。
(2) 計算平均每跳距離。一旦一個錨節(jié)點得到了其他所有錨節(jié)點的信息,該錨節(jié)點就會計算平均每跳距離HopSizei,HopSizei被未知節(jié)點用來粗略估算到每個錨節(jié)點的歐式距離,即每個錨節(jié)點估計平均每跳的距離,并廣播該值。
(3) 對未知節(jié)點進行定位計算。當未知節(jié)點接收到3個及以上的HopSizei值后,就可使用極大似然估計法或三邊測量法來進行數(shù)學(xué)運算,估算未知節(jié)點的坐標值。當未知節(jié)點與所有錨節(jié)點的估計距離已知時,我們便可對未知節(jié)點的位置進行計算。
3 PDV-HOP算法
因為距離為預(yù)測值,因此存在一定的誤差。定位問題的實質(zhì)就是要盡量減小誤差,該問題可用公式(3)表示為:
其中為位置節(jié)點的預(yù)估值,AT為錨節(jié)點的坐標位置。
本文提出的PDV-Hop算法是使用PSO算法對原有的DV-HOP算法進行優(yōu)化和改進,該算法的適應(yīng)度函數(shù)可用公式(4)表示:
第一步:計算每一個節(jié)點到每一個錨節(jié)點的最小跳數(shù)值和平均單跳距離,并根據(jù)最小二乘法求解未知節(jié)點的位置。
第二步:根據(jù)DV-Hop求解得出的未知節(jié)點位置初始化粒子群。
第三步:使用粒子群優(yōu)化算法,計算當前粒子群的適應(yīng)函數(shù)值。
第四步:根據(jù)Gbest和pbesti計算粒子群中成員新的速度,并根據(jù)該速度求得新的位置。
第五步:對新的粒子群成員進行測試,看是否符合接受標準,以此跳出局部最小值。
終止標準:當?shù)螖?shù)達到我們預(yù)先設(shè)定的最大值的值時,循環(huán)停止。
4實驗和結(jié)果分析
我們將基于PSO算法改進的PDV-Hop算法應(yīng)用到基于WSN的礦井監(jiān)控系統(tǒng)仿真實驗中,使用Matlab 7.0對該算法進行仿真,并和現(xiàn)有的DV-Hop算法及MEDV-Hop算法進行比較。仿真場景設(shè)置如下:模擬在礦井下部署100個傳感器節(jié)點,其中信標節(jié)點為60個,區(qū)域范圍為100米×100米。控制參數(shù)被設(shè)置為:通信半徑R = 15米, c1 = c2 = 2, ω = 0.6;對定位問題主要的檢測標準為平均定位誤差。因此本文將從定位誤差上對比DV-Hop算法和PDV-Hop算法,仿真結(jié)果如圖1所示:
其中1(a)圖為DV-Hop算法下未知節(jié)點的定位誤差,范圍在3%-45%之間,平均誤差在20%左右;1(b)圖為PDV-Hop算法下未知節(jié)點的定位誤差,范圍在1%-17%之間,平均誤差在9%左右。從1(a),(b)圖對比可知,通過PDV-Hop算法,未知節(jié)點的定位誤差降低到17%以下。
5 結(jié)論
在本文中,我們使用基于WSN的礦井監(jiān)控系統(tǒng)對礦井下的突發(fā)事件進行監(jiān)測和定位。為了提高定位的精度,我們在原有的DV-Hop算法基礎(chǔ)上,采用PSO(Particle Swarm Optimization)算法對其進行改進,提出PDV-Hop算法。通過仿真實驗結(jié)果可知,在基于WSN的礦井監(jiān)控系統(tǒng)中PDV-Hop算法相比于傳統(tǒng)的DV-Hop算法,平均定位誤差減少了55%,在不需增加額外硬件支持的情況下,大大降低定位誤差。因此,在實際的基于WSN的礦井監(jiān)控系統(tǒng)中使用該算法,可以大大提高監(jiān)控系統(tǒng)的定位精確度。
參考文獻:
[1] Akyildiz IF, Su W, Sankarasubramaniam Y, Cayirci E. A survey on sensor networks [J]. IEEE Communications Magazine, 2002, 40(8):102-114.
[2] D. Niculescu and B. Nath. DV Based Positioning in Ad hoc Networks. Journal of Telecommunication Systems[J], 27(5), 136-142, 2003.
[3] D. E. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning[M], Reading, Mass. Addison Wesely, 1989.
[4] J. A. Bland and G. P. Dawson, Tabu Search and Design Optimization[J], 1991, 23(3):195-201.
[5] 葉蓉,趙靈鍇. 基于蟻群粒子群混合的無線傳感器網(wǎng)絡(luò)定位算法[J] . 數(shù)據(jù)測量與控制,2011,19(3):732-735.