亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        無線傳感器網(wǎng)絡(luò)質(zhì)心和DV-Hop混合定位算法研究

        2021-05-18 02:17:00梁建國馮魯彬
        儀表技術(shù)與傳感器 2021年4期
        關(guān)鍵詞:質(zhì)心數(shù)據(jù)包距離

        張 悅,梁建國,張 浩,花 嶸,馮魯彬

        (山東科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,山東青島 266590)

        0 引言

        物聯(lián)網(wǎng)技術(shù)使互聯(lián)網(wǎng)領(lǐng)域得到充分?jǐn)U展,改變了人類社會的生活方式[1],而在物聯(lián)網(wǎng)中最重要的組成部分是無線傳感器網(wǎng)絡(luò)(wireless sensor networks,WSN)。節(jié)點(diǎn)定位技術(shù)是無線傳感器網(wǎng)絡(luò)的重要技術(shù)支撐,對無線傳感器網(wǎng)絡(luò)應(yīng)用的有效性起著至關(guān)重要的作用[2]。目前無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位分為基于測距定位和無需測距定位[3]。基于測距的定位精度比較高,但是對于硬件依賴性較高,不適用于功耗和成本較低的無線傳感器網(wǎng)絡(luò)應(yīng)用領(lǐng)域[4-5]。無需測距的定位雖定位精度比較低,但是對于節(jié)點(diǎn)的硬件要求不高,可以滿足大多數(shù)無線傳感器網(wǎng)絡(luò)的定位需求[6],目前此定位方法更受大家青睞。無需測距的定位算法有質(zhì)心定位算法[7]、DV-Hop定位算法[8]等。質(zhì)心定位算法和DV-Hop定位算法在定位過程中完全依靠網(wǎng)絡(luò)連通度來實(shí)現(xiàn)節(jié)點(diǎn)定位,無需外界任何硬件手段[9-11]。然而,這兩種算法定位精確度與錨節(jié)點(diǎn)的個(gè)數(shù)、節(jié)點(diǎn)通信半徑以及節(jié)點(diǎn)總數(shù)等有非常大的關(guān)系。質(zhì)心定位算法在錨節(jié)點(diǎn)分布密度較高的情況下定位性能較高,在錨節(jié)點(diǎn)分布密度較低的情況下,其定位效果比較差,而對于DV-Hop定位算法而言,在稀疏的錨節(jié)點(diǎn)個(gè)數(shù)下仍能對節(jié)點(diǎn)進(jìn)行定位,但其定位效果卻不理想[12-15]。

        綜上所述,本文針對質(zhì)心定位算法和DV-Hop定位算法在定位性能上存在問題,從3個(gè)方面對其進(jìn)行了改進(jìn)。在質(zhì)心定位算法和DV-Hop定位算法實(shí)現(xiàn)有機(jī)結(jié)合、優(yōu)勢互補(bǔ)的基礎(chǔ)上,提出了一種質(zhì)心和DV-Hop混合定位算法(mixed centroid and DV-Hop algorithm,MCDA),以提高定位的性能。

        1 技術(shù)思路

        本文通過引入TTL值設(shè)定限定錨節(jié)點(diǎn)廣播數(shù)據(jù)包的范圍、提高鄰居錨節(jié)點(diǎn)的比例以及改進(jìn)質(zhì)心定位算法3方面對定位性能進(jìn)行改進(jìn)。

        1.1 引入TTL值以改進(jìn)DV-Hop定位算法通信開銷大的問題

        DV-Hop定位算法由2次泛洪組成,第1次泛洪中節(jié)點(diǎn)獲得錨節(jié)點(diǎn)的位置信息和距離錨節(jié)點(diǎn)的最小跳數(shù),在第2次泛洪中將跳數(shù)信息轉(zhuǎn)換為距離信息(數(shù)據(jù)包結(jié)構(gòu)如圖1所示)。

        (a)第1次泛洪

        (b)第2次泛洪圖1 DV-Hop定位算法2次泛洪的數(shù)據(jù)包結(jié)構(gòu)

        在無線傳感器網(wǎng)絡(luò)中,未知節(jié)點(diǎn)和錨節(jié)點(diǎn)隨機(jī)分布,且數(shù)量較大,因此在廣播數(shù)據(jù)包和節(jié)點(diǎn)傳遞過程中,很難避免發(fā)生數(shù)據(jù)包的沖突或碰撞[16]。如若沖突發(fā)生,不僅會導(dǎo)致信息的缺失,從而使得節(jié)點(diǎn)間的最小跳數(shù)產(chǎn)生偏差,進(jìn)而影響正常的節(jié)點(diǎn)定位;還會導(dǎo)致數(shù)據(jù)包的重傳,使網(wǎng)絡(luò)開銷增大,進(jìn)而拖延整個(gè)定位過程,導(dǎo)致網(wǎng)絡(luò)能量消耗過多[17-18]。

        因此,需要找到一種有效的方法,在一定程度上減少節(jié)點(diǎn)間的傳播跳數(shù),從而減小定位誤差,并降低網(wǎng)絡(luò)的整體開銷,以達(dá)到節(jié)約能量的目的。

        本文通過為數(shù)據(jù)包設(shè)置一個(gè)TTL生存周期域來減少通信量(改進(jìn)的數(shù)據(jù)包格式如圖2所示)。

        (a)第1次泛洪

        (b)第2次泛洪圖2 改進(jìn)后2次泛洪的數(shù)據(jù)包結(jié)構(gòu)

        基于TTL值的設(shè)定,可以控制廣播包僅在TTL值規(guī)定的范圍內(nèi)進(jìn)行數(shù)據(jù)傳輸,避免了泛洪數(shù)據(jù)包過程中的沖突或碰撞,降低數(shù)據(jù)傳輸失誤的概率以及數(shù)據(jù)包重傳造成的網(wǎng)絡(luò)負(fù)擔(dān)。還可以降低定位過程中基礎(chǔ)性問題出錯(cuò)的概率,緩解網(wǎng)絡(luò)高速超負(fù)荷數(shù)據(jù)包分組轉(zhuǎn)發(fā)的壓力,使網(wǎng)絡(luò)的整體開銷較小,能量分配更加有效。

        1.2 提高鄰居錨節(jié)點(diǎn)的比例以解決質(zhì)心定位算法中錨節(jié)點(diǎn)少定位率低的問題

        在質(zhì)心定位算法中,若周圍沒有錨節(jié)點(diǎn),未知節(jié)點(diǎn)將無法實(shí)現(xiàn)定位。本文通過提高未知節(jié)點(diǎn)中鄰居錨節(jié)點(diǎn)的比例來提高節(jié)點(diǎn)的定位率。

        在質(zhì)心定位算法中,未知節(jié)點(diǎn)只把節(jié)點(diǎn)通信范圍內(nèi)的錨節(jié)點(diǎn)作為鄰居節(jié)點(diǎn),通過鄰居錨節(jié)點(diǎn)所圍成多邊形的質(zhì)心定位為自己的坐標(biāo)。但在實(shí)驗(yàn)過程中發(fā)現(xiàn),有些節(jié)點(diǎn)雖然不在未知節(jié)點(diǎn)的通信范圍之內(nèi),但它還是可以作為鄰居錨節(jié)點(diǎn)(如圖3所示),錨節(jié)點(diǎn)B在節(jié)點(diǎn)通信半徑r內(nèi)被視作鄰居錨節(jié)點(diǎn),但錨節(jié)點(diǎn)C不在通信范圍內(nèi),故不能視作鄰居錨節(jié)點(diǎn),實(shí)際上錨節(jié)點(diǎn)C與錨節(jié)點(diǎn)B間的距離相差很小,在一定程度上可以升級為未知節(jié)點(diǎn)C的鄰居錨節(jié)點(diǎn)。

        改進(jìn)具體實(shí)現(xiàn)為:在原來的質(zhì)心定位算法中只用1跳范圍內(nèi)的錨節(jié)點(diǎn)進(jìn)行定位,現(xiàn)將節(jié)點(diǎn)通信范圍擴(kuò)大到2跳范圍,使用2跳范圍內(nèi)的錨節(jié)點(diǎn)定位。

        (a)鄰居錨節(jié)點(diǎn)

        (b)錨節(jié)點(diǎn)

        1.3 減小定位誤差

        擴(kuò)大通信范圍在很大程度上可以提高鄰居錨節(jié)點(diǎn)的比例,但其定位誤差也會隨之增大,因此,需要改進(jìn)質(zhì)心定位算法以減小定位誤差,具體改進(jìn)步驟如下。

        步驟1:在用上述方法找到未知節(jié)點(diǎn)鄰居錨節(jié)點(diǎn)的基礎(chǔ)上,對鄰居錨節(jié)點(diǎn)進(jìn)一步選擇,判斷1跳范圍內(nèi)是否存在錨節(jié)點(diǎn),若存在則選擇1跳范圍內(nèi)的鄰居錨節(jié)點(diǎn)進(jìn)行定位,否則選擇大于1跳小于2跳范圍內(nèi)的鄰居錨節(jié)點(diǎn)。選定后,對其范圍內(nèi)的錨節(jié)點(diǎn)進(jìn)一步取舍,首先用DV-Hop定位算法計(jì)算得出錨節(jié)點(diǎn)每跳的平均距離,錨節(jié)點(diǎn)每跳的平均距離再乘以未知節(jié)點(diǎn)到錨節(jié)點(diǎn)的跳數(shù)作為未知節(jié)點(diǎn)到錨節(jié)點(diǎn)的距離,判斷該距離是否在1.5倍通信范圍內(nèi),如果在其范圍內(nèi),則升級為錨節(jié)點(diǎn),否則拋棄。

        (1)

        式中:n是錨節(jié)點(diǎn)的總數(shù);(xi,yi)、(xj,yj)分別為錨節(jié)點(diǎn)i和j的坐標(biāo);hij是錨節(jié)點(diǎn)i和j之間的跳數(shù)。

        如圖3所示,未知節(jié)點(diǎn)A的鄰居錨節(jié)點(diǎn)有B、C、D、E,由于1跳范圍內(nèi)有錨節(jié)點(diǎn)B、C、D,則選擇它們進(jìn)行定位,錨節(jié)點(diǎn)E將被拋棄,若A在1跳范圍內(nèi)無錨節(jié)點(diǎn),則判斷錨節(jié)點(diǎn)E是否在1.5倍通信范圍內(nèi),若在其范圍內(nèi)則選擇,否則拋棄。

        步驟2:用傳統(tǒng)質(zhì)心定位算法對未知節(jié)點(diǎn)定位。

        步驟3:在以上2步的基礎(chǔ)上,進(jìn)行節(jié)點(diǎn)的定位計(jì)算,在圖4中,U、U′分別為未知節(jié)點(diǎn)和傳統(tǒng)質(zhì)心定位算法估算出的U的位置,A、B、C、D、E、F為未知節(jié)點(diǎn)U的鄰居錨節(jié)點(diǎn)。首先分別計(jì)算每個(gè)鄰居錨節(jié)點(diǎn)到U′的距離;其次根據(jù)計(jì)算的距離為每個(gè)鄰居錨節(jié)點(diǎn)賦予不同的權(quán)重,使距離U′遠(yuǎn)的鄰居錨節(jié)點(diǎn)獲得較小的權(quán)重,較近的鄰居錨節(jié)點(diǎn)獲得較大的權(quán)重;最后重新計(jì)算未知節(jié)點(diǎn)U的坐標(biāo),經(jīng)過多次迭代,使未知節(jié)點(diǎn)U的坐標(biāo)更加準(zhǔn)確。

        圖4 改進(jìn)質(zhì)心定位算法示意圖

        計(jì)算錨節(jié)點(diǎn)與其他錨節(jié)點(diǎn)的距離的公式為

        (2)

        式中:dk為錨節(jié)點(diǎn)與其他錨節(jié)點(diǎn)的距離;(xi,yi)、(xk,yk)為錨節(jié)點(diǎn)的坐標(biāo)。

        計(jì)算權(quán)重系數(shù)的公式為

        (3)

        式中:ρk為權(quán)重系數(shù);d0為一個(gè)很小可以忽略不計(jì)的值。

        計(jì)算未知節(jié)點(diǎn)U坐標(biāo)(x,y)的公式:

        (4)

        式中:(x,y)為重新計(jì)算未知節(jié)點(diǎn)U的坐標(biāo);ρk為權(quán)重系數(shù)。

        2 質(zhì)心和DV-Hop混合定位算法的提出

        綜合上述內(nèi)容,本文提出了一種質(zhì)心和DV-Hop混合定位算法,即MCDA定位算法。

        MCDA定位算法分為4個(gè)階段:

        (1)未知節(jié)點(diǎn)計(jì)算與每個(gè)錨節(jié)點(diǎn)的最小跳數(shù)與DV-Hop定位算法類似,不同的是在錨節(jié)點(diǎn)的廣播數(shù)據(jù)包中包含了TTL值來限定廣播包傳輸?shù)奶鴶?shù);

        (2)計(jì)算每個(gè)錨節(jié)點(diǎn)每跳的平均距離,公式如下

        (5)

        式中:ci為計(jì)算所得每個(gè)錨節(jié)點(diǎn)每跳的平均距離;Dij為錨節(jié)點(diǎn)i和j之間的距離;hij為錨節(jié)點(diǎn)i和j之間的跳數(shù)。

        (3)選擇2跳范圍內(nèi)的錨節(jié)點(diǎn)作為未知節(jié)點(diǎn)的鄰居錨節(jié)點(diǎn);

        (4)利用改進(jìn)質(zhì)心定位算法計(jì)算未知節(jié)點(diǎn)位置。

        3 仿真實(shí)驗(yàn)及分析

        為了能夠更客觀、準(zhǔn)確地模擬出MCDA定位算法的真實(shí)性能,在MATLAB平臺實(shí)驗(yàn)仿真時(shí),所有節(jié)點(diǎn)包括錨節(jié)點(diǎn)和未知節(jié)點(diǎn)均在網(wǎng)絡(luò)區(qū)域中隨機(jī)生成。仿真參數(shù)的設(shè)置如表1所示。

        表1 仿真參數(shù)設(shè)置

        由表1可知,所有數(shù)據(jù)的產(chǎn)生都是對網(wǎng)絡(luò)運(yùn)行仿真100次求得結(jié)果的平均值。MCDA定位算法中生存周期TTL值為15,即限制錨節(jié)點(diǎn)數(shù)據(jù)包僅傳播15跳,定位性能仿真過程中,使用平均定位誤差和定位率作為定位算法定位性能的衡量指標(biāo)。

        圖5為WSN網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)圖,網(wǎng)絡(luò)區(qū)域范圍是100 m×100 m,網(wǎng)絡(luò)中所有節(jié)點(diǎn)隨機(jī)分布,圓圈表示未知節(jié)點(diǎn),星型表示錨節(jié)點(diǎn)。

        圖5 WSN網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)圖

        3.1 錨節(jié)點(diǎn)個(gè)數(shù)對定位性能的影響

        圖6為錨節(jié)點(diǎn)數(shù)量從3變化到30時(shí),質(zhì)心定位算法、DV-Hop定位算法以及本文提出的MCDA定位算法定位性能的變化圖,選擇錨節(jié)點(diǎn)總個(gè)數(shù)為100個(gè),節(jié)點(diǎn)通信半徑為25 m。當(dāng)節(jié)點(diǎn)總數(shù)與節(jié)點(diǎn)通信半徑不變時(shí),3種定位算法平均定位誤差都隨著錨節(jié)點(diǎn)數(shù)量的增加而減小,當(dāng)錨節(jié)點(diǎn)的數(shù)量增加到15以上時(shí),3種定位算法的平均定位誤差變化較小。在錨節(jié)點(diǎn)數(shù)量從3變化到10時(shí),MCDA定位算法平均定位誤差比DV-Hop定位算法平均定位誤差低,同時(shí)比質(zhì)心定位算法平均定位誤差高,但是當(dāng)錨節(jié)點(diǎn)數(shù)量從10逐漸開始增加后,MCDA定位算法的定位誤差變得最低,而且它的定位率比質(zhì)心定位算法高,但比DV-Hop定位算法的定位率低。

        圖6 不同錨節(jié)點(diǎn)數(shù)下的平均定位誤差對比

        圖7為錨節(jié)點(diǎn)數(shù)量為從3變化到30,節(jié)點(diǎn)通信半徑分別為20,25,30時(shí),本文提出的MCDA定位算法定位性能的變化圖。可以看出,隨著錨節(jié)點(diǎn)的增加,MCDA定位算法定位誤差不斷減小,定位率不斷增加;但隨著節(jié)點(diǎn)通信半徑的增加,其定位誤差不斷增加,其定位率也在變大,這一特性與質(zhì)心定位算法相似。

        3.2 節(jié)點(diǎn)通信半徑對定位性能的影響

        圖8(a)、圖8(b)和圖8(c)給出了節(jié)點(diǎn)通信半徑從20變化到40,錨節(jié)點(diǎn)數(shù)分別為5、10和20時(shí),3種算法定位性能的比較。

        圖7 不同錨節(jié)點(diǎn)下MCDA算法的定位性能比較

        (a)錨節(jié)點(diǎn)數(shù)為5

        (b)錨節(jié)點(diǎn)數(shù)為10

        (c)錨節(jié)點(diǎn)數(shù)為20圖8 不同節(jié)點(diǎn)通信半徑下定位性能比較

        由圖8可知,當(dāng)DV-Hop定位算法在錨節(jié)點(diǎn)數(shù)量為5,定位誤差非常大,MCDA定位算法定位誤差較小,MCDA的平均定位誤差與DV-Hop相比降低了53.7%,質(zhì)心定位算法誤差最小,但MCDA的定位率也比質(zhì)心定位算法要高;當(dāng)錨節(jié)點(diǎn)數(shù)量變?yōu)?0和20,DV-Hop定位算法的定位誤差迅速減小,質(zhì)心定位算法和MCDA定位算法有所下降,下降幅度不大;隨節(jié)點(diǎn)通信半徑的增加,DV-Hop定位算法的定位誤差先減小后增加,質(zhì)心定位算法和MCDA定位算法的定位誤差均持續(xù)遞增;當(dāng)節(jié)點(diǎn)數(shù)變?yōu)?0和20時(shí),MCDA的平均定位率比質(zhì)心定位算法提高了28.5%和14.2%。MCDA定位率趨近于1的速度比質(zhì)心定位算法快,當(dāng)兩者定位率都達(dá)到1時(shí),前者定位誤差要比后者小,說明改進(jìn)的質(zhì)心定位算法獲得了一定效果。

        綜上所述,MCDA定位算法在錨節(jié)點(diǎn)數(shù)量較低時(shí),其定位誤差比質(zhì)心定位算法高,比DV-Hop定位算法的定位誤差低,但其定位率要高于質(zhì)心定位算法,且低于DV-Hop定位算法的定位率。

        4 結(jié)論

        本文在分析質(zhì)心定位算法和DV-Hop定位算法的基礎(chǔ)上,從3個(gè)方面進(jìn)行改進(jìn):首先通過引入TTL值設(shè)定限定錨節(jié)點(diǎn)廣播數(shù)據(jù)包的范圍以減小DV-Hop定位算法通信開銷的問題;其次提高鄰居錨節(jié)點(diǎn)的比例改進(jìn)了質(zhì)心定位算法錨節(jié)點(diǎn)低時(shí)定位率低的問題;最后改進(jìn)質(zhì)心定位算法減小了定位誤差,進(jìn)而提出了MCDA定位算法。仿真結(jié)果表明,MCDA定位算法在無需額外增加硬件設(shè)施開銷的條件下,較好地解決了在錨節(jié)點(diǎn)較低的情況下質(zhì)心定位算法定位誤差小但定位率低以及DV-Hop定位算法定位率高但定位誤差大的問題。盡管MCDA定位算法與其他兩種算法相比在減少定位誤差和提高定位率方面取得了一定的效果,但隨著錨節(jié)點(diǎn)數(shù)量的增加,仍需研究如何提高定位率的同時(shí)并減少定位誤差。

        猜你喜歡
        質(zhì)心數(shù)據(jù)包距離
        重型半掛汽車質(zhì)量與質(zhì)心位置估計(jì)
        基于GNSS測量的天宮二號質(zhì)心確定
        算距離
        SmartSniff
        每次失敗都會距離成功更近一步
        山東青年(2016年3期)2016-02-28 14:25:55
        愛的距離
        母子健康(2015年1期)2015-02-28 11:21:33
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
        一種海洋測高衛(wèi)星質(zhì)心在軌估計(jì)算法
        航天器工程(2014年5期)2014-03-11 16:35:53
        距離有多遠(yuǎn)
        視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
        亚洲日本在线电影| 中文字幕一区二区av| 女人18片毛片60分钟| 国产精品制服| 亚洲AV无码精品呻吟| 久久九九av久精品日产一区免费| 白白色发布的在线视频| 少妇被粗大的猛烈进出免费视频 | 免费男人下部进女人下部视频| 久久精品国产72国产精福利| 国产一区二区三区中出| 少妇伦子伦情品无吗| 免费看久久妇女高潮a| 国产精品色内内在线播放| 国产成人亚洲系列毛片| 亚州性无码不卡免费视频| 亚洲女人被黑人巨大进入| 亚洲红杏AV无码专区首页| 亚洲一区二区三区地址| 9 9久热re在线精品视频| 另类一区二区三区| 区二区三区亚洲精品无| 日本添下边视频全过程| 老熟妻内射精品一区| 亚洲国产成人资源在线桃色| 日韩精品久久午夜夜伦鲁鲁| 亚洲成a人片在线观看无码3d| 中文无码成人免费视频在线观看| 精品亚洲一区二区视频| 亚洲成人中文字幕在线视频| 国产午夜精品一区二区三区软件| 久久久久久99精品| 中文字幕有码在线人妻| 精品国内在视频线2019| 国产欧美精品一区二区三区–老狼| 亚洲一区二区三区美女av| 中文字幕一区二区三区四区五区 | 午夜高清福利| 日韩亚洲国产中文字幕| 麻豆网神马久久人鬼片| 这里有精品可以观看|