劉瑞興,段中興
(西安建筑科技大學(xué) 信息與控制工程學(xué)院, 西安 710055)
無(wú)線傳感器網(wǎng)絡(luò)(WSN)是當(dāng)今物聯(lián)網(wǎng)領(lǐng)域的研究熱點(diǎn),它由多個(gè)具有數(shù)據(jù)采集、分析和處理能力以及信息發(fā)送和接收能力的微型傳感器節(jié)點(diǎn)組成。由于WSN中傳感器節(jié)點(diǎn)的部署位置可以隨時(shí)改變,靈活的對(duì)某些特定區(qū)域進(jìn)行實(shí)時(shí)監(jiān)測(cè),在實(shí)際中如森林火災(zāi)預(yù)警、天然氣管道泄漏、國(guó)防安全保衛(wèi)工作等諸多領(lǐng)域得到了廣泛應(yīng)用。多數(shù)的WSN應(yīng)用需要獲得節(jié)點(diǎn)的位置信息,不含位置信息的數(shù)據(jù)往往是無(wú)用的。因此,WSN技術(shù)中節(jié)點(diǎn)定位問(wèn)題成為了重點(diǎn)研究?jī)?nèi)容。WSN中傳感器節(jié)點(diǎn)定位技術(shù)分為兩類:第一類基于測(cè)距,定位精度高,目前該類型的方法主要有TOA、TDOA、RSSI等;第二類非測(cè)距,不需要進(jìn)行實(shí)際物理測(cè)量,主要方法有Centroid,Amorphous,DV-Hop等,缺點(diǎn)是定位精度較低。其中,DV-Hop算法作為目前應(yīng)用較廣的定位算法之一,算法功耗小且適應(yīng)性較強(qiáng)等特點(diǎn)可以滿足大部分實(shí)際應(yīng)用的定位需求,得到更多的研究。
傳統(tǒng)的DV-Hop定位算法精度較低,研究學(xué)者對(duì)DV-Hop改進(jìn)思路有2種:修正節(jié)點(diǎn)間的最小跳數(shù)和平均跳距;優(yōu)化未知節(jié)點(diǎn)的位置。文獻(xiàn)[10]引入遺傳算法(GA)對(duì)跳數(shù)信標(biāo)節(jié)點(diǎn)加權(quán)處理優(yōu)化平均跳距,但是定位精度提升不足;文獻(xiàn)[11]引入多通道半徑細(xì)化節(jié)點(diǎn)間的最小跳數(shù),提高定位精度,但是信標(biāo)節(jié)點(diǎn)的多次廣播加劇了傳感器的能量消耗;文獻(xiàn)[12]采用多通信半徑方式和距離誤差和跳數(shù)歸一化優(yōu)化最小跳數(shù)和平均跳距,并利用改進(jìn)蝙蝠算法(BA)定位未知節(jié)點(diǎn),提高了算法定位精度,但是增加了算法的復(fù)雜度,收斂速度變慢;文獻(xiàn)[13]將斯蒂芬森迭代模型與傳統(tǒng)的DV-Hop算法相融合,利用DV-Hop算法粗定位結(jié)果作為初值帶入史蒂芬森模型得到最優(yōu)估計(jì)位置,提高了算法精度,加快收斂速度,但是該算法僅僅針對(duì)DV-Hop的第3階段進(jìn)行改進(jìn),有很大的提升空間。針對(duì)上述研究存在的問(wèn)題,提出一種基于改進(jìn)SSA的DV-Hop傳感器定位算法來(lái)提高定位精度。
DV-Hop算法由Niculescu等提出,具體過(guò)程可以分為3個(gè)階段:
第1階段:信標(biāo)節(jié)點(diǎn)通過(guò)泛洪向WSN網(wǎng)絡(luò)中廣播自身信息如圖1所示,接收節(jié)點(diǎn)將收到的信息自建表格記錄并根據(jù)廣播不斷更新表格,泛洪結(jié)束得到所有節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。
第2階段:利用式(1)計(jì)算出信標(biāo)節(jié)點(diǎn)間的平均跳距。
(1)
式中: (,),(,)是信標(biāo)節(jié)點(diǎn)的坐標(biāo);是信標(biāo)節(jié)點(diǎn),之間的跳數(shù)。未知節(jié)點(diǎn)將接收到第一個(gè)平均跳距信息作為自己的平均跳距,并通過(guò)式(2)計(jì)算其到信標(biāo)節(jié)點(diǎn)的距離。
=×
(2)
第3階段:采用最小二乘法計(jì)算未知節(jié)點(diǎn)的位置坐標(biāo)。
信標(biāo)節(jié)點(diǎn)編碼信標(biāo)節(jié)點(diǎn)坐標(biāo)(x,y)跳數(shù)h
DV-Hop算法誤差主要來(lái)自以下3個(gè)方面:
1) 針對(duì)算法第1階段進(jìn)行分析,發(fā)現(xiàn)跳數(shù)是通過(guò)節(jié)點(diǎn)間的通信來(lái)完成的,相鄰節(jié)點(diǎn)間相互感知到,即跳數(shù)為1,定義1跳的距離為通信半徑。如圖2(a)所示,跳數(shù)為1的實(shí)際距離明顯不是通信半徑,這樣選擇就會(huì)造成引入跳數(shù)誤差。圖中信標(biāo)節(jié)點(diǎn)能與節(jié)點(diǎn)、、、進(jìn)行通信,=1,=1,=1,=2,但是、、的距離相差較大,之間跳數(shù)記作2,對(duì)信標(biāo)節(jié)點(diǎn)平均跳距影響較大,這種計(jì)算跳數(shù)的機(jī)制導(dǎo)致產(chǎn)生誤差。
2) 平均跳距的選擇不能通過(guò)單一的信標(biāo)節(jié)點(diǎn)反應(yīng)實(shí)際現(xiàn)象,這樣選擇忽略了其他信標(biāo)節(jié)點(diǎn)的信息,在異構(gòu)網(wǎng)絡(luò)中,未知節(jié)點(diǎn)的選擇不能反應(yīng)真實(shí)的跳距。
3) 最小二乘法估計(jì)未知節(jié)點(diǎn)的位置會(huì)帶來(lái)累計(jì)誤差。
圖2 多通信半徑跳數(shù)計(jì)算示意圖Fig.2 Multi-communication radius hop calculation
誤差分析可以看出,節(jié)點(diǎn)之間的距離遠(yuǎn)近不同,只有將通信半徑分級(jí)細(xì)化,才能更好地精確跳數(shù)。因此,提出了一種多通信半徑優(yōu)化節(jié)點(diǎn)間的跳數(shù)值。
如圖2(b)所示建立模型,假設(shè)網(wǎng)絡(luò)中信標(biāo)節(jié)點(diǎn)通信半徑為,將節(jié)點(diǎn)間劃分級(jí),網(wǎng)絡(luò)中節(jié)點(diǎn)實(shí)際距離為,跳數(shù)記作,∈[1,]。
如式(3)所示,取=40,=4,如圖2(c)所示=14,=12,=34,=1,=+=54,鄰近信標(biāo)節(jié)點(diǎn)跳數(shù)值是精確的小數(shù),細(xì)化了跳數(shù)值提高跳數(shù)的準(zhǔn)確性,減小定位誤差。
(3)
最小跳數(shù)修正算法流程如下:
輸入:設(shè)定,值,令=1;
輸出:信標(biāo)節(jié)點(diǎn)、未知節(jié)點(diǎn)最小跳數(shù)。
Begin
初始化網(wǎng)絡(luò);
For=1:
利用式(3)更新廣播半徑;
信標(biāo)節(jié)點(diǎn)以()為半徑通過(guò)泛洪向WSN網(wǎng)絡(luò)中廣播自身信息,接收節(jié)點(diǎn)將收到的信息自建表格記錄,若沒(méi)有則接收,但不轉(zhuǎn)發(fā);
=+1;
if>
break;
信標(biāo)節(jié)點(diǎn)以為半徑通過(guò)泛洪向WSN網(wǎng)絡(luò)中廣播自身信息,接收節(jié)點(diǎn)將收到的信息自建表格記錄,最后將跳數(shù)值加1轉(zhuǎn)發(fā)到網(wǎng)絡(luò)中;
end
End
通過(guò)多次仿真實(shí)驗(yàn)得出∈[2,5]之間比較合適。值過(guò)大導(dǎo)致泛洪廣播會(huì)極大消耗節(jié)點(diǎn)的能量,減少網(wǎng)絡(luò)壽命,值過(guò)小導(dǎo)致跳數(shù)誤差大,所以綜合考慮節(jié)點(diǎn)定位精度與壽命,仿真實(shí)驗(yàn)將選用=4作為通信半徑用來(lái)分級(jí)廣播。
誤差分析可以看出,節(jié)點(diǎn)之間距離遠(yuǎn)近不同,只有將通信半徑分級(jí)細(xì)化,才能更好的精確跳數(shù)。
DV-Hop算法的誤差主要是由于信標(biāo)節(jié)點(diǎn)的平均跳距不準(zhǔn)確造成的,提出采用加權(quán)平均值對(duì)信標(biāo)節(jié)點(diǎn)平均跳距誤差進(jìn)行校正。具體流程如下:
Step 1 初始化網(wǎng)絡(luò)中設(shè)定信標(biāo)節(jié)點(diǎn)的數(shù)目;計(jì)算網(wǎng)絡(luò)中所有信標(biāo)節(jié)點(diǎn)的平均跳距記作,計(jì)算方式如式(4)所示:
(4)
Step 2 誤差1通過(guò)第2階段信標(biāo)節(jié)點(diǎn)平均跳距與步驟1中的計(jì)算,如式(5)所示:
1=(-)
(5)
(6)
Step 4 全面考慮信標(biāo)節(jié)點(diǎn)的誤差來(lái)源,將Step 2、Step 3計(jì)算出的誤差系數(shù)利用式(7)計(jì)算作為其余信標(biāo)節(jié)點(diǎn)的權(quán)值。
(7)
Step 5 再次計(jì)算信標(biāo)節(jié)點(diǎn)的平均跳距,計(jì)算信標(biāo)節(jié)點(diǎn)的平均跳距方案如下:
1) 信標(biāo)節(jié)點(diǎn),兩節(jié)點(diǎn)間的平均跳距為如式(8)所示。
(8)
2) 修正信標(biāo)節(jié)點(diǎn)的平均跳距是信標(biāo)節(jié)點(diǎn)與其余個(gè)信標(biāo)節(jié)點(diǎn)的平均跳距加權(quán),=1,2,…,-1,表示信標(biāo)節(jié)點(diǎn)的權(quán)值,具體如式(9)所示。
(9)
根據(jù)第1、2階段得到的估計(jì)距離,將定位問(wèn)題轉(zhuǎn)化為求解坐標(biāo)方程如式(10)所示:
(10)
式中:,,…,表示未知節(jié)點(diǎn)(,)與信標(biāo)節(jié)點(diǎn)(,),(,),…,(,)之間的距離。第1、2階段的測(cè)距誤差為,,…,要求解未知節(jié)點(diǎn)(,),只須使式(11)中的(,)最小,得到的誤差值將最小。(,)可以被看作非線性函數(shù)進(jìn)行求解:
(11)
非線性優(yōu)化問(wèn)題中,首先需要建立一個(gè)目標(biāo)函數(shù)來(lái)求解。本文中目標(biāo)函數(shù)如式(12)所示:
(12)
式中:為麻雀?jìng)€(gè)體的適應(yīng)度值;(,)為未知節(jié)點(diǎn)位置;(,)為信標(biāo)節(jié)點(diǎn)的位置;為兩者之間的距離。
麻雀搜索算法(SSA)是一種模擬麻雀種群覓食、逃避捕食者行為的啟發(fā)式算法,基本思想:初始化種群數(shù)量為存在于維搜索空間的麻雀種群,則=[1,2,…],=1,2,…,=1,2,…,表示第只麻雀在維搜索空間中的位置。
麻雀群體中發(fā)現(xiàn)者起主導(dǎo)作用,引領(lǐng)種群不斷探索尋找食物,位置更新如式(13)所示:
(13)
跟隨者依托發(fā)現(xiàn)者尋找食物,并可能和發(fā)現(xiàn)者爭(zhēng)奪食物,提高自己捕食率,其位置更新如式(14)所示:
(14)
假設(shè)預(yù)警者約占麻雀種群的10~20,初始位置隨機(jī),則位置更新如式(15)所示:
(15)
3.2.1 精英反向?qū)W習(xí)策略
反向?qū)W習(xí)是Tizhoosh等在2005年提出的,通過(guò)研究得到反向解有時(shí)比原始解更能得到種群的最優(yōu)值。精英反向?qū)W習(xí)是針對(duì)反向?qū)W習(xí)策略生成的反向解不一定比原始解更容易搜索到全局最優(yōu)解這一問(wèn)題提出的。
(16)
(17)
使用精英反向解對(duì)麻雀種群進(jìn)行初始化時(shí),對(duì)于原始麻雀目標(biāo)函數(shù)值小于反向解麻雀,若對(duì)其反向區(qū)域進(jìn)行搜索,降低種群的收斂速度。因此,文中將精英反向?qū)W習(xí)策略引入到SSA對(duì)DV-Hop定位算法進(jìn)行優(yōu)化,將原始麻雀與反向解麻雀的適應(yīng)度值相對(duì)比,保留種群較優(yōu)的麻雀?jìng)€(gè)體可以擴(kuò)大種群的搜索范圍,避免盲目搜索也提高了算法的收斂速度。
3.2.2 發(fā)現(xiàn)者-跟隨者自適應(yīng)調(diào)整
原始SSA算法中,發(fā)現(xiàn)者和跟隨者的數(shù)目比例是恒定的,這將導(dǎo)致在種群迭代前期,發(fā)現(xiàn)者的數(shù)目相對(duì)較少,缺乏引導(dǎo)種群全局探索的能力;后期,跟隨者數(shù)目較少,缺少精確局部搜索的能力。因此,文中提出發(fā)現(xiàn)者-跟隨者自適應(yīng)調(diào)整策略,算法在開(kāi)始階段,擁有較多的發(fā)現(xiàn)者,隨著迭代次數(shù)的增加,發(fā)現(xiàn)者的數(shù)目自適應(yīng)減少,跟隨者的數(shù)目增多,逐步從全局搜索轉(zhuǎn)為局部精確搜索,從整體上提高算法的收斂精度。發(fā)現(xiàn)者和跟隨者數(shù)目調(diào)整如式(19)、式(20)所示。
(18)
=·
(19)
=(1-)·
(20)
其中:為發(fā)現(xiàn)者數(shù)目;為跟隨者數(shù)目;為比例系數(shù),用于控制發(fā)現(xiàn)者和跟隨者之間的數(shù)目;為擾動(dòng)偏離因子,對(duì)非線性遞減的值進(jìn)行擾動(dòng);∈(0,1)的隨機(jī)數(shù)。
323 柯西變異擾動(dòng)策略
柯西變異取自連續(xù)型概率的柯西分布,主要特點(diǎn)為零處峰值較小,峰值到零值下降緩慢,使變異范圍更均勻。變異如式(21)所示:
()=(1+tan(π(-05)))·
(21)
式中:為原來(lái)個(gè)體位置,()經(jīng)過(guò)柯西變異后的個(gè)體位置,∈(0,1)隨機(jī)數(shù)。
ISSADV-Hop算法是針對(duì)傳統(tǒng)DV-Hop算法精度不高提出的,引入多通信半徑優(yōu)化節(jié)點(diǎn)間的跳數(shù)值;同時(shí)使用誤差加權(quán)平均值,修正原始跳距;最后使用ISSA對(duì)未知節(jié)點(diǎn)進(jìn)行定位。ISSADV-Hop具體算法實(shí)現(xiàn)流程:
1初始化網(wǎng)絡(luò)區(qū)域,節(jié)點(diǎn)總數(shù)、信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)數(shù)目,隨機(jī)初始化節(jié)點(diǎn)位置,通信半徑,初始跳數(shù)=0,循環(huán)次數(shù);
2利用改進(jìn)后DV-Hop算法得到最小跳數(shù)和平均跳距,然后按照式(2)計(jì)算出未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)之間的距離;
3麻雀種群初始化,確定種群數(shù)量,設(shè)置迭代次數(shù),安全閾值,比例系數(shù),擾動(dòng)偏離因子,以及種群的搜索范圍和維數(shù);
4引入精英反向?qū)W習(xí)策略初始化種群麻雀?jìng)€(gè)體的位置,根據(jù)式(16)、式(17)按照要求對(duì)種群進(jìn)行反向求解,進(jìn)行適應(yīng)度值的比較篩選出精英種群;
5根據(jù)式(19)、式(20)計(jì)算發(fā)現(xiàn)者和跟隨者數(shù)量;
6根據(jù)式(13)~式(15)更新發(fā)現(xiàn)者、跟隨者和警戒者位置;
7位置更新后,對(duì)種群加入柯西變異擾動(dòng),根據(jù)式(21)計(jì)算出擾動(dòng)后麻雀的適應(yīng)度值與前者比較,保留適應(yīng)度值低的麻雀種群,然后記錄當(dāng)前種群的最優(yōu)個(gè)體的位置;
8循環(huán)步驟5、6、7直到達(dá)到,得到麻雀種群中全局最優(yōu)位置,也就是未知節(jié)點(diǎn)的近似位置。
ISSADV-Hop算法流程如圖3所示。
圖3 ISSADV-Hop算法的流程框圖Fig.3 ISSADV-Hop algorithm flow
對(duì)ISSADV-Hop算法進(jìn)行仿真和測(cè)試,實(shí)驗(yàn)環(huán)境在MATLAB2018b上運(yùn)行。應(yīng)用文中算法與傳統(tǒng)DV-Hop算法相互之間進(jìn)行比較,實(shí)驗(yàn)使用系統(tǒng)Window10,CPU:i5-6300U @ 2.40 GHz,RAM:4 GB,實(shí)驗(yàn)網(wǎng)絡(luò)環(huán)境參數(shù)和ISSA參數(shù)初始值的設(shè)置見(jiàn)表1和表2。
表1 實(shí)驗(yàn)網(wǎng)絡(luò)環(huán)境參數(shù)Table 1 Network environment construction
表2 ISSA參數(shù)初始值Table 2 The initial values of the parameters of ISSA
如式(22)所示,實(shí)驗(yàn)本身存在偶然性,為了減小誤差,文中將實(shí)驗(yàn)重復(fù)200次計(jì)算平均值來(lái)得到最終結(jié)果。
(22)
式中:(,),(′,′)分別表示未知節(jié)點(diǎn)原始位置和實(shí)驗(yàn)定位出來(lái)的位置,表示實(shí)驗(yàn)使用的未知節(jié)點(diǎn)的數(shù)目,表示通信半徑。查閱能耗資料,設(shè)定通信半徑為30 m,節(jié)點(diǎn)數(shù)目設(shè)為100個(gè),信標(biāo)節(jié)點(diǎn)設(shè)為30個(gè),與DV-Hop算法進(jìn)行比較,進(jìn)行200次仿真實(shí)驗(yàn)結(jié)果對(duì)比,結(jié)果如圖4所示。
通過(guò)傳統(tǒng)DV-Hop算法與文中提出ISSADV-Hop算法在相同實(shí)驗(yàn)條件下進(jìn)行計(jì)算,圖4(a)為節(jié)點(diǎn)初始化分布圖;圖4(b)為DV-Hop算法誤差圖,可以看出偏差大;圖4(c)為本文中ISSADV-Hop算法定位出實(shí)際位置和估計(jì)未知的數(shù)據(jù),可以清楚的看到改進(jìn)后算法定位精度有大幅度提升;圖4(d)為循環(huán)200次的誤差,可以清楚的看到原始算法定位誤差在0.3019,改進(jìn)后算法精度保持在0.105 5,相比于改進(jìn)前歸一化定位誤差降低了19.64%,定位精度有顯著的提升。
為了進(jìn)一步研究參數(shù)不同對(duì)定位精度的影響,將文中改進(jìn)算法與DV-Hop、SSADV-Hop和IGWODV-Hop三種算法相對(duì)比進(jìn)行仿真,通過(guò)改變通信半徑、節(jié)點(diǎn)數(shù)量和信標(biāo)節(jié)點(diǎn)數(shù)分別進(jìn)行實(shí)驗(yàn)驗(yàn)證。
圖4 節(jié)點(diǎn)初始化ISSADV-Hop、DV-Hop誤差與迭代200次誤差圖Fig.4 ISSADV-Hop and DV-Hop error comparison
實(shí)驗(yàn)中部署節(jié)點(diǎn)數(shù)量為100個(gè),信標(biāo)節(jié)點(diǎn)數(shù)為30個(gè),通信半徑設(shè)置為20~50 m。實(shí)驗(yàn)結(jié)果如圖5所示,隨著網(wǎng)絡(luò)中通信半徑的增大可以提高算法的定位精度,通信半徑的增加一定程度上可以為網(wǎng)絡(luò)中傳感器之間進(jìn)行信息交流,改善網(wǎng)絡(luò)中傳感器的定位精度。與DV-Hop、IGWODV-Hop、SSADV-Hop算法相比,ISSADV-Hop算法歸一化定位誤差分別降低了7.54%、12.77%和5.48%。
圖5 變通信半徑對(duì)定位精度的影響曲線Fig.5 The influence of variable communication radius on positioning accuracy
實(shí)驗(yàn)中保持節(jié)點(diǎn)通信半徑30 m不變,信標(biāo)節(jié)點(diǎn)比例設(shè)為30%,節(jié)點(diǎn)數(shù)量設(shè)置在50~300個(gè)之間。從圖6可以看出,增加節(jié)點(diǎn)數(shù)量可以改善網(wǎng)絡(luò)的連通信,改善網(wǎng)絡(luò)中傳感器的定位精度。與DV-Hop、IGWODV-Hop、SSADV-Hop算法相比,ISSADV-Hop算法歸一化定位誤差分別降低了22.89%、14.46%和8.51%。
圖6 變節(jié)點(diǎn)數(shù)目對(duì)定位誤差的影響曲線Fig.6 The effect of changing the number of nodes on positioning error
實(shí)驗(yàn)中保持節(jié)點(diǎn)通信半徑30 m不變,節(jié)點(diǎn)數(shù)量設(shè)置為100個(gè)之間信標(biāo)節(jié)點(diǎn)數(shù)為10~40個(gè)。實(shí)驗(yàn)結(jié)果如圖7所示,隨著信標(biāo)節(jié)點(diǎn)數(shù)量的不斷增加提高了算法精度,這是由于信標(biāo)節(jié)點(diǎn)數(shù)的增加精確了信標(biāo)節(jié)點(diǎn)平均跳距。與DV-Hop、IGWODV-Hop、SSADV-Hop算法相比,ISSADV-Hop算法歸一化定位誤差分別降低了20.06%、12.95%和6.81%。
圖7 變信標(biāo)節(jié)點(diǎn)對(duì)定位誤差的影響曲線Fig.7 The influence of variable beacon nodes on positioning error
實(shí)驗(yàn)構(gòu)建過(guò)程,先通過(guò)跳數(shù)值和平均跳距的優(yōu)化。然后使用精英反向?qū)W習(xí)構(gòu)建麻雀種群、自適應(yīng)策略以及添加擾動(dòng)優(yōu)化麻雀搜索算法來(lái)定位未知節(jié)點(diǎn)??梢园l(fā)現(xiàn)計(jì)算量的增加主要是由于無(wú)線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)量確定。
選取100 m×100 m的網(wǎng)絡(luò)區(qū)域,通信半徑為30 m,信標(biāo)節(jié)點(diǎn)的比例為30%,節(jié)點(diǎn)數(shù)量設(shè)置在50~200個(gè)之間,迭代100次。本文算法與DV-Hop、SSADV-Hop和IGWODV-Hop三種算法相對(duì)比進(jìn)行仿真,仿真消耗時(shí)間如表3所示。
表3 不同節(jié)點(diǎn)數(shù)量中4種算法的平均定位時(shí)間Table 3 Average positioning time of 4 algorithms in different numbers of nodes
表3中數(shù)據(jù)可以看出,節(jié)點(diǎn)數(shù)量和運(yùn)行時(shí)間基本成比例上升。在物聯(lián)網(wǎng)應(yīng)用領(lǐng)域中,無(wú)線傳感器一般都有較強(qiáng)的壽命更換周期較長(zhǎng),剛安裝完畢也需要調(diào)試,所以文中提供的定位算法消耗的時(shí)間在可以承受范圍內(nèi)。而且,雖然文中提出的算法運(yùn)行時(shí)間較長(zhǎng),但I(xiàn)SSADV-Hop算法極大的提升定位精度,這在定位算法評(píng)價(jià)指標(biāo)中起著決定性的作用。
利用提出的多通信半徑方式優(yōu)化節(jié)點(diǎn)間的跳數(shù)值,使跳數(shù)值更加精確;采用加權(quán)平均值校正平均跳距的誤差。使用改進(jìn)后的麻雀搜索算法對(duì)未知節(jié)點(diǎn)的位置進(jìn)行估計(jì),并優(yōu)化了DV-Hop算法的總體框架,減小位置偏差提升定位精度。采用具體的仿真實(shí)例,與傳統(tǒng)DV-Hop平均值比較精度有較大提高。
通過(guò)改變實(shí)驗(yàn)參數(shù)中不同因素對(duì)實(shí)驗(yàn)精度的影響,比傳統(tǒng)的DV-Hop、SSADV-Hop和IGWODV-Hop算法更有效提升了定位精度。對(duì)比上述4種算法的定位耗時(shí),文中提出的改進(jìn)算法增加了一定的運(yùn)行定位時(shí)間,后期研究工作將重點(diǎn)關(guān)注降低算法計(jì)算量和復(fù)雜度。