資源描述:
《基于蝙蝠式算法的DV-hop算法改進.docx》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、MATLAB大作業(yè)題目:基于蝙蝠算法的DV-Hop算法改進院(系)信息工程學院專業(yè)班級12級網(wǎng)絡工程本(1)班學號學生姓名倪峰指導教師陸建銀目錄1引言32DV-Hop定位算法及誤差分析32.1DV-Hop定位算法工作步驟32.2DV-Hop定位誤差分析53BADV-Hop算法的節(jié)點定位53.1改進的蝙蝠算法53.2適應值函數(shù)設計63.3BADV-Hop算法的節(jié)點定位步驟73.4BADV-Hop算法的工作流程74仿真實例84.1仿真環(huán)境84.2結(jié)果與分析95結(jié)束語11摘要:為了減少DV-Hop算法對于無線傳感網(wǎng)絡的定位誤差,
2、我利用編蝠算法(BA)和DV-Hop算法相融合的傳感器節(jié)點定位方法(BADV-Hop)。在DV-Hop算法的第三階段,利用編蝠算法代替最小二乘法來計算未知節(jié)點的坐標,以降低定位誤差。相對于DV-Hop算法,BADV-Hop算法提高了傳感器的節(jié)點定位精度,具有較高的應用價值,利用MATLAB仿真工具仿真出的結(jié)果驗證了BADV-Hop的有效性。關鍵詞:DV-Hop算法;編蝠算法;節(jié)點定位1引言無線傳感器網(wǎng)絡的關鍵技術是節(jié)點定位技術,當前傳感器節(jié)點定位算法分為:距離有關和距離無關的定位算法[2]。距離有關定位算法由于受到外界環(huán)境
3、因素的干擾比較大,所以獲得的誤差較大,且成本高[3];距離無關定位算法主要有質(zhì)心算法、DV-Hop算法,這類定位算法無需額外硬件支持,功耗低,成為當前主要研究方向[4-5]。DV-Hop算法實現(xiàn)比較簡單,只需要少量的錨節(jié)點就可以實現(xiàn)對未知節(jié)點的定位,備受關注,但是精度有待提高[6]。為此,學者們提出一些改進的DV-Hop算法,如文獻[7]中將RSSI策略引入到DV-Hop算法節(jié)點距離計算中,減小節(jié)點間誤差,提高定位精度;文獻[8]在DV-Hop算法中引入介質(zhì)訪問機制來調(diào)節(jié)距離誤差;文獻[9]通過引入最佳調(diào)整因子對每個錨節(jié)點
4、計算的距離進行修正,從而減小了平均跳距的計算誤差。采用遺傳算法、模擬退火算法、蛙跳算法、粒子群算法等群智能算法對DV-Hop算法的誤差進行校正,一定程度上提高了DV-Hop算法的定位精度[9-11]。蝙蝠算法(BA)是一種群智能優(yōu)化算法,在準確性和有效性方面相較其他算法有很大優(yōu)勢,且沒有許多參數(shù)要調(diào)整,為DV-Hop算法誤差校正提供了一種新的研究思路[1-2]。為了減少無線傳感器網(wǎng)絡節(jié)點的定位誤差,提出一種改進蝙蝠算法(BA)和DV-Hop算法相融合的傳感器節(jié)點定位方法(BA-DVHop)。在DV-Hop算法的第三階段,利
5、用蝙蝠算法代替最小二乘法來計算未知節(jié)點的坐標,并對蝙蝠算法進行改進避免算法陷入局部最優(yōu),最后在Matlab上對算法性能進行仿真分析。仿真結(jié)果表明,BADV-hop定位算法在不同錨節(jié)點密度、不同通信半徑、不同節(jié)點數(shù)量以及定位精確度等方面表現(xiàn)出良好性能。2DV-Hop定位算法及誤差分析2.1DV-Hop定位算法工作步驟第一階段:計算節(jié)點的最小跳數(shù)。信標節(jié)點向網(wǎng)絡發(fā)送一個廣播信號,鄰居節(jié)點接收到信號后,記錄信標節(jié)點的坐標信息,并保存每個信標節(jié)點的最小跳數(shù),然后向其他的鄰居傳感器節(jié)點傳播,通過該方法,WSN網(wǎng)絡中全部節(jié)點可以得到信
6、標節(jié)點的位置信息和與信標節(jié)點間的跳數(shù)。第二階段:估算到信標節(jié)點的跳段距離。通過第一階段后,每個信標節(jié)點就可以得到其他信標節(jié)點的坐標值和跳數(shù),然后通過式(1)計算平均每跳距離,同時將每跳平均距離廣播至網(wǎng)絡中,未知節(jié)點將平均每跳距離值與最小跳數(shù)值相乘,得到其與信標節(jié)點間的距離:(1)式中,hi是信標節(jié)點i和j之間的跳數(shù),(xi,yi)、(xi,yi)是信標節(jié)點i,j的坐標。第三階段:通過最大似然法計算自身位置。設P1(x1,y1),P2(X2,Y2),…,Pn(Xn,yn)表示n個信標節(jié)點的坐標位置,待定位節(jié)點位置為(x,y)
7、,其與信標節(jié)點估計距離分別為d1,d2,…dn-1,可以建立式(2)的方程:(2)第一個方程組減去最后一個方程后,得到:(3)用線性方程組表示為AL=b,其中:在無線傳感器節(jié)點測距過程中,不可避免會產(chǎn)生一些隨機誤差,這樣線性方程組為AL+N=b,N為誤差向量,最小二乘法的求解方程為:(4)2.2DV-Hop定位誤差分析設信標節(jié)點(xi,yi),i=1,2,…,n,與未知節(jié)點(x,y)的實際距離為ri,i=1,2,???,n測距誤差為εi,那么ri-di<εi,i=1,2,???,n。根據(jù)式(2)可知,(x,y)應該滿足如下
8、約束條件:(5)求解(x,y),使得:(6)由于式(5)代表可行解的區(qū)域,那么該區(qū)域一定存在最優(yōu)解,且當fx,y取最小值時,節(jié)點定位總誤差最小,此時的坐標(x,y)將為最優(yōu)值,這樣無線網(wǎng)絡傳感器節(jié)點定位問題轉(zhuǎn)化成一個約束優(yōu)化問題,然后采用BA算法進行求解,提高傳感器定位精度。3BADV-Hop算法的節(jié)點