文獻標識碼: A
文章編號: 0258-7998(2015)06-0088-03
中文引用格式:杜楊洋,毛永毅.基于多功率移動錨節(jié)點WSN智能定位算法[J].電子技術(shù)應(yīng)用,2015,41(6):88-90.
英文引用格式:Du Yangyang,Mao Yongyi.Intelligent algorithm for locating nodes in wireless sensor network based on the multi-power level mobile anchor node[J].Application of Electronic Technique,2015,41(6):88-90.
0 引言
無線傳感器網(wǎng)絡(luò)主要應(yīng)用于對事件的智能監(jiān)控,而事件發(fā)生的坐標信息對于監(jiān)控消息至關(guān)重要。由于錨節(jié)點移動算法僅使用少量移動的信標節(jié)點在待定位區(qū)域進行游走定位,定位成本大大降低,同時定位精度也較高,從而得到了國內(nèi)外學(xué)者的廣泛重視[1,2],文獻[3]介紹了通過優(yōu)化錨節(jié)點移動路徑以降低定位誤差的方法;文獻[4]介紹了未知節(jié)點根據(jù)接收到的移動錨節(jié)點發(fā)射的信號時間差來確定位置坐標的方法。由于錨節(jié)點一般采用GPS設(shè)備確定坐標,這難免出現(xiàn)誤差,而以上算法在對未知節(jié)點定位時均未考慮到此誤差產(chǎn)生的影響,因此,算法不夠完善。本文充分考慮錨節(jié)點誤差及成本,提出了一種采用單個多功率移動錨節(jié)點的自適應(yīng)權(quán)重粒子群(SAPSO- SMPMA)算法。
1 SAPSO-SMPMA算法
在SAPSO-SMPMA算法中,設(shè)待定位區(qū)域為L×L正方形區(qū)域,未知節(jié)點隨機撒布,錨節(jié)點按照設(shè)計的路徑進行移動,在錨節(jié)點發(fā)射信號的不同位置,分別用靜態(tài)的虛擬錨節(jié)點進行表示,如圖1中,移動錨節(jié)點從定位區(qū)域的一個頂點出發(fā)(圖1中黑色實點所示),按照箭頭方向進行移動直至游走完整個待定位區(qū)域。
1.1 計算未知節(jié)點與不同位置錨節(jié)點的距離
本文設(shè)定移動錨節(jié)點的移動步長為s=L/5,錨節(jié)點通過功率控制,每次移動一個步長的距離后,以一定的時間間隔依次向四周發(fā)射4種功率依次增強的功率信號,信號包含錨節(jié)點發(fā)射時的坐標A和相應(yīng)發(fā)射功率下錨節(jié)點信號的極限傳輸半徑R={ri|i=1,2,3,4且r1<r2<r3<r4}及4種錨節(jié)點極限傳輸半徑數(shù)據(jù)包。一旦錨節(jié)點的功率信號被待定位節(jié)點接收,此節(jié)點便不再接收錨節(jié)點同一位置更高功率的信號。
若待定位節(jié)點Q接收到錨節(jié)點在坐標A11處第i次發(fā)射的功率信號則有||Q-A11||<ri,同時由于信號是按照功率依次增強的順序進行發(fā)射的,故有||Q-A11||>ri-1,即得到未知節(jié)點的位置區(qū)間為ri-1≤||Q-A11||≤ri,此時取d=(ri-1+ri)/2作為此時錨節(jié)點和未知節(jié)點之間的距離估計,當i=1時,取ri-1=0。如圖2所示,未知節(jié)點位于錨節(jié)點的第二次發(fā)射信號最大傳輸半徑r2和第三次發(fā)射信號的最大傳輸半徑r3之間,則此時(r2+r3)/2即為估計距離。
1.2 錨節(jié)點誤差矢量分析
由于定位過程中信標節(jié)點位置信息的核心地位,所以加入錨節(jié)點定位誤差進行分析具有重要的意義,文獻[5]提到了一種GPS矢量分析形式,但是這種表示形式,僅考慮到了節(jié)點定位裝置接收GPS信號的誤差,未考慮定位環(huán)境差異帶來的影響及錨節(jié)點移動的誤差,因此本文提出了如式(1)所示的錨節(jié)點誤差分析的矢量坐標表示形式,其中envir_error表示錨節(jié)點的環(huán)境誤差,gps_error表示因噪聲等干擾的信號誤差,β表示錨節(jié)點移動角度誤差。
1.3 估計未知節(jié)點的坐標
為了在保證定位精度的前提下,盡可能延長移動錨節(jié)點的生存壽命,本文設(shè)定錨節(jié)點傳輸半徑r4位于區(qū)間內(nèi),未知節(jié)點根據(jù)接收到的信標節(jié)點的坐標及與相應(yīng)信標節(jié)點坐標對應(yīng)的距離d,采用魯棒性強、實現(xiàn)簡單并且收斂快的自適應(yīng)權(quán)重粒子群算法進行處理,從而得到未知節(jié)點的估計坐標。
1.3.1 自適應(yīng)權(quán)重粒子群算法(SAPSO)描述
在基本的PSO算法[6]中,準確適當?shù)仄胶馑惴ǖ木植考叭炙褜つ芰?,對于求取最?yōu)值非常重要,因此,如能自主合理地匹配慣性權(quán)重則能精準快速地求得最優(yōu)值。
基于以上思想,Shi和Eberhart[7]提出了SAPSO算法,算法數(shù)學(xué)描述如下:在e維搜尋區(qū)域有N個潛在問題解的粒子形成的種群,微粒速度及坐標可分別表示為Vi=[vi,1,…,vi,e]和Xi=[xi,1,…,xi,e](i=1,2,…,N)。對各微粒的目標函數(shù)分析求出t時刻各微粒的個體及群體的最優(yōu)值,再按式(2)更迭各微粒的坐標及速度。
其中i=1,2,…,N;c1、c2為加速常數(shù),一般設(shè)為c1=2,c2=2;r1、r2為0~1之間均勻分布的隨機數(shù);Pi及Pg分別為個體和群體最優(yōu)值;w為慣性權(quán)重因子,按式(3)設(shè)置。
式中wmax和wmin分別代表w的最大值和最小值,本算法設(shè)wmax=0.42,wmin=0.05;f為粒子當前的目標函數(shù)值,favg和fmin分別為微粒的平均和最小目標值。SAPSO算法流程如圖3所示。
1.3.2 設(shè)置SAPSO參數(shù)
本文選取邊長為200 m的正方形區(qū)域仿真,待定位節(jié)點個數(shù)為100,粒子數(shù)為18,迭代次數(shù)為20。
(1)適應(yīng)度函數(shù)
設(shè)每個待定位節(jié)點收集到的移動錨節(jié)點的信號數(shù)量為Mi(i=1,…,N),(x,y)為待定位節(jié)點位置,移動錨節(jié)點與待定位節(jié)點的距離為ci(i=1,2,…,Mi),(xi,yi)為移動錨節(jié)點位置,gi為待定位節(jié)點與移動錨節(jié)點的測距誤差,其計算表達式為:
由于在無線傳感器網(wǎng)絡(luò)中,測距誤差越小,定位的精確度越高,因此本文選用每個未知節(jié)點測距誤差和的絕對值作為適應(yīng)度函數(shù),具體計算公式如下:
(2)性能評價指標
本實驗評判指標選取平均定位誤差來計算,如式(6)所示:
2 SAPSO-SMPMA算法性能仿真
設(shè)仿真區(qū)域為邊界長度為200 m的正方形,待定位節(jié)點數(shù)為100。本文設(shè)定錨節(jié)點誤差分析參數(shù)為envir_
error∈[1,5],gps_error∈[1,5],β∈[0,2π]、β、envir_error、gps_error均為取值區(qū)間內(nèi)的隨機數(shù)。將r4設(shè)為DV-hop算法節(jié)點通信半徑。為了驗證本文算法的性能,將SAPSO-SMPMA算法與DV-hop[8-9]算法進行對比仿真實驗。根據(jù)構(gòu)想搭建的仿真區(qū)域節(jié)點分布如圖4所示,其中:*表示誤差為零的虛擬錨節(jié)點坐標,□表示加了定位誤差的虛擬錨節(jié)點坐標,○表示待定位節(jié)點的坐標。
由圖5可知,隨著節(jié)點數(shù)增多, DV-hop算法的定位誤差逐漸降低,這是由于該算法需要較好的網(wǎng)絡(luò)連通度來進行定位,節(jié)點越多越密集定位精度越高,但是其定位誤差相對另兩種算法仍然較高,而錨節(jié)點按本文虛擬錨節(jié)點分布的DV-hop算法和本文算法的定位誤差曲線變化比較平穩(wěn),同時本文算法的定位誤差明顯較低。
圖6顯示對于DV-hop算法隨著錨節(jié)點誤差的升高定位誤差逐漸增大,錨節(jié)點按照本文虛擬錨節(jié)點分布的DV-hop算法的定位誤差曲線出現(xiàn)了小范圍波動但是整體依然平緩,然而本算法隨著移動錨節(jié)點定位誤差的增大平均定位誤差曲線一直比較平穩(wěn)而且誤差值較低,相比DV-hop算法誤差減少了40.1%~43.2%,相比錨節(jié)點按照本文虛擬錨節(jié)點分布的DV-hop算法誤差減少33.2%~33.7%。
3 結(jié)論
SAPSO-SMPMA算法通過錨節(jié)點移動并發(fā)射多功率信號,待定位節(jié)點通過選擇性接收信標信號,并結(jié)合SAPSO算法快速迭代處理來計算自身坐標。實驗分析表明,本文算法在引入錨節(jié)點誤差分析及不需要硬件測距設(shè)備支持的情況下,能精確地對節(jié)點進行定位,是一種可行的無線定位算法。
參考文獻
[1] Ou Chia-ho.A localization scheme for wireless sensor networks using mobile anchors with directional antennas[J].Sens-ors Journal,IEEE,2011,11(7):1607-1616.
[2] 李光輝,趙軍,王智.基于無線傳感器網(wǎng)絡(luò)的森林火災(zāi)監(jiān)測預(yù)警系統(tǒng)[J].傳感技術(shù)學(xué)報,2006,19(6):2760-2764.
[3] 李洪峻,卜彥龍,薛晗,等.面向無線傳感器網(wǎng)絡(luò)節(jié)點定位的移動錨節(jié)點路徑規(guī)劃[J].計算機研究與發(fā)展,2009,46(1):129-136.
[4] LUO J,SHUKLA H V,HUBAUX J P.Noninteractive location surveying for sensor networks with mobility-differen-tiated TOA[A].Proceedings of 25th IEEE Conference on Computer Communication[C].Barcelaona,Spain,2006:1-12.
[5] 李牧東,熊偉,郭龍.基于最優(yōu)跳距處理策略的無線傳感器網(wǎng)絡(luò)智能定位算法[J].計算機應(yīng)用,2012,32(7):1836-1839.
[6] KENNEDY J,EBERHART R C,SHI Y.Swarm intelligence[M].San Francisco:Mor-gan Kaufman Publishers,2001.
[7] SHI Y,EBERHART R C.A modified particle swarm optimizer[C].In:Proc.of the IEEE CEC.1998:69-73.
[8] NICULESCU D,NATH B.Ad hoc positioning system(APS)[C].Proceedings of the 2001 IEEE Global Telecommunications Conference.New York:IEEE Communications Society,2001:2926-2931.
[9] 肖麗萍,劉曉紅.一種基于跳數(shù)修正的DV-Hop定位算法[J].傳感技術(shù)學(xué)報,2012,25(12):1726-1730.