分布式無(wú)線傳感器網(wǎng)絡(luò)邊界節(jié)點(diǎn)識(shí)別方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種分布式無(wú)線傳感器網(wǎng)絡(luò)邊界節(jié)點(diǎn)識(shí)別方法,屬于無(wú)線傳感器網(wǎng)絡(luò)
技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 無(wú)線傳感器網(wǎng)絡(luò)被廣泛的應(yīng)用于戰(zhàn)斗區(qū)域監(jiān)測(cè),環(huán)境監(jiān)測(cè)、危險(xiǎn)事件/區(qū)域檢測(cè) 和健康監(jiān)測(cè)應(yīng)用中。無(wú)線傳感器網(wǎng)絡(luò)是由眾多價(jià)格低廉、功能多樣,能夠進(jìn)行短距離無(wú)線通 信的傳感器節(jié)點(diǎn)構(gòu)成的,由于無(wú)線傳感器可以執(zhí)行危險(xiǎn)區(qū)域或人跡難以到達(dá)區(qū)域的監(jiān)測(cè)任 務(wù)因而成為當(dāng)前國(guó)內(nèi)外研究的熱點(diǎn)。無(wú)線傳感器能夠通過(guò)機(jī)載平臺(tái)或炮射等方式進(jìn)行隨機(jī) 部署是其區(qū)別于傳統(tǒng)網(wǎng)絡(luò)的最大優(yōu)點(diǎn)之一,然而其缺點(diǎn)也顯而易見(jiàn),無(wú)線傳感器節(jié)點(diǎn)在部 署后容易遭受節(jié)點(diǎn)外力破壞,節(jié)點(diǎn)部署后電池很難被更換使其生命周期受到節(jié)點(diǎn)本身所攜 帶電池的影響,同時(shí),節(jié)點(diǎn)由于受外力影響和電池能量耗竭而失效容易使無(wú)線傳感器網(wǎng)絡(luò) 產(chǎn)生覆蓋空洞,因而覆蓋空洞是無(wú)線傳感器網(wǎng)絡(luò)研究和應(yīng)用中不可回避的問(wèn)題。
[0003] 針對(duì)覆蓋空洞問(wèn)題,目前的無(wú)線傳感器網(wǎng)絡(luò)研究中提出一些相應(yīng)的解決方法,然 而目前存在的覆蓋空洞識(shí)別方法存在著對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)度要求高,識(shí)別過(guò)程能耗高,識(shí)別精度 低的問(wèn)題。大多數(shù)方法通過(guò)識(shí)別環(huán)繞在覆蓋空洞周圍的邊界節(jié)點(diǎn)實(shí)現(xiàn)覆蓋空洞的識(shí)別,現(xiàn) 有的邊界節(jié)點(diǎn)檢測(cè)識(shí)別技術(shù),分為三類:基于計(jì)算幾何、基于統(tǒng)計(jì)和基于拓?fù)涞姆椒?。目?存在的邊界節(jié)點(diǎn)識(shí)別方法存在算法復(fù)雜度高、易受傳感器部署區(qū)域限制而失效,同時(shí)存在 著邊界節(jié)點(diǎn)識(shí)別精度低、能耗高和魯棒性差等問(wèn)題。
【發(fā)明內(nèi)容】
[0004] 為了解決現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種分布式無(wú)線傳感器網(wǎng)絡(luò)邊界節(jié)點(diǎn)識(shí) 別方法,利用DSCS(DistributedSectorCoverScanning,分布式傳感扇區(qū)邊緣覆蓋掃描 技術(shù))思想能夠精確識(shí)別無(wú)線傳感器網(wǎng)絡(luò)中的邊界節(jié)點(diǎn),識(shí)別精度達(dá)到90%以上。
[0005]本發(fā)明為解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:提供了一種分布式無(wú)線傳感器網(wǎng) 絡(luò)邊界節(jié)點(diǎn)識(shí)別方法,包括以下步驟:
[0006] (1)設(shè)分布式無(wú)線傳感器網(wǎng)絡(luò)中的各節(jié)點(diǎn)的通信模型為以該節(jié)點(diǎn)所在位置為圓 心、以通信覆蓋半徑CR為半徑的圓盤,并且節(jié)點(diǎn)存儲(chǔ)有其通信范圍內(nèi)的1跳鄰居節(jié)點(diǎn)的鄰 居信息;各節(jié)點(diǎn)通過(guò)向其1跳鄰居節(jié)點(diǎn)發(fā)送請(qǐng)求并交換1跳鄰居信息,以收集s跳以內(nèi)鄰 居節(jié)點(diǎn)的鄰居信息,所述s為2~3 ;依次對(duì)無(wú)線傳感器網(wǎng)絡(luò)中的每一個(gè)節(jié)點(diǎn)執(zhí)行步驟(2) 至步驟(5)以判斷該節(jié)點(diǎn)是否是邊界節(jié)點(diǎn);
[0007] (2)以當(dāng)前節(jié)點(diǎn)Vi為圓心、以節(jié)點(diǎn)v丨的傳感覆蓋半徑SR為半徑建立笛卡爾坐 標(biāo)系,計(jì)算節(jié)點(diǎn)^的s跳以內(nèi)的鄰居節(jié)點(diǎn)在該坐標(biāo)系內(nèi)的絕對(duì)角,絕對(duì)角的范圍為[0°, 360° ],所述絕對(duì)角的定義為:在以節(jié)點(diǎn)¥:為圓心建立的笛卡爾坐標(biāo)系中,節(jié)點(diǎn)v:和鄰居 節(jié)點(diǎn)的連線沿逆時(shí)針?lè)较蚺cx軸的正向夾角為Vi的鄰居節(jié)點(diǎn)在以節(jié)點(diǎn)v圓心的坐標(biāo)系 內(nèi)的絕對(duì)角;
[0008] (3)如果出現(xiàn)2個(gè)以上鄰居節(jié)點(diǎn)的絕對(duì)角相同,則僅保留距離節(jié)點(diǎn)Vl最近的鄰居 節(jié)點(diǎn);
[0009] (4)將鄰居節(jié)點(diǎn)按照其絕對(duì)角從小到大排序;
[0010] (5)依次判斷節(jié)點(diǎn)Vi的每一個(gè)傳感扇區(qū)的邊緣是否被該傳感扇區(qū)的相鄰節(jié)點(diǎn)的傳 感區(qū)域完全覆蓋,其中,在以當(dāng)前節(jié)點(diǎn)Vl為圓心、以節(jié)點(diǎn)v:的傳感覆蓋半徑SR為半徑的圓 中,由節(jié)點(diǎn)Vl和鄰居節(jié)點(diǎn)^的連線所在的半徑、節(jié)點(diǎn)vi和鄰居節(jié)點(diǎn)vk的連線所在的半徑、 以及它們所夾的圓弧所圍成的區(qū)域?yàn)閭鞲猩葏^(qū)VjViVk,該圓弧為該傳感扇區(qū)VjViVk的邊緣, 節(jié)點(diǎn)Vj和節(jié)點(diǎn)Vk為傳感扇區(qū)V的相鄰節(jié)點(diǎn),若該邊緣同時(shí)被鄰居節(jié)點(diǎn)V_j和Vk的傳感 區(qū)域完全覆蓋,則傳感扇區(qū)V]VlVk的邊緣被其相鄰節(jié)點(diǎn)完全覆蓋;若存在一個(gè)傳感扇區(qū)的 邊緣不能被其相鄰節(jié)點(diǎn)完全覆蓋,則節(jié)點(diǎn)Vl是邊界節(jié)點(diǎn),否則節(jié)點(diǎn)V:不是邊界節(jié)點(diǎn)。
[0011] 步驟(1)中,各節(jié)點(diǎn)通過(guò)以下公式計(jì)算其S跳以內(nèi)鄰居節(jié)點(diǎn)的鄰居信息:
[0012]
[0013] 其中,¥;表示當(dāng)前節(jié)點(diǎn),vu表示v;的k-1跳鄰居,< 表示 '的k跳鄰居節(jié)點(diǎn)集, 表示\的k-1跳鄰居節(jié)點(diǎn)集,職表示\的i跳鄰居節(jié)點(diǎn)集,k= 2, . . .,s。
[0014] 步驟⑴中,收集2跳以內(nèi)鄰居節(jié)點(diǎn)的鄰居信息。
[0015] 本發(fā)明基于其技術(shù)方案所具有的有益效果在于:
[0016] (1)本發(fā)明將無(wú)線傳感器網(wǎng)絡(luò)的邊界節(jié)點(diǎn)識(shí)別問(wèn)題分解為一個(gè)節(jié)點(diǎn)的傳感扇區(qū)邊 緣覆蓋問(wèn)題,有效降低了算法復(fù)雜度,節(jié)省了運(yùn)行時(shí)間,傳統(tǒng)的幾何和拓?fù)涞确椒ㄐ枰暾?考慮節(jié)點(diǎn)的多跳鄰居關(guān)系,部分算法甚至達(dá)到8跳才能準(zhǔn)確判斷,該方法在理想情況下甚 至僅需其2個(gè)鄰居節(jié)點(diǎn)即可識(shí)別是否為邊界節(jié)點(diǎn),最壞情況下需要考慮其2跳鄰居信息, 此外,將整個(gè)節(jié)點(diǎn)的傳感區(qū)域分割為不同的傳感扇區(qū)有效降低了計(jì)算復(fù)雜度;
[0017](2)邊界節(jié)點(diǎn)識(shí)別依賴于節(jié)點(diǎn)自身所存儲(chǔ)的鄰居信息,本發(fā)明的設(shè)計(jì)方法降低了 算法復(fù)雜度和運(yùn)行時(shí)間,基于鄰居信息存儲(chǔ)和鄰居表交換計(jì)算的鄰居信息收集方式有效降 低了節(jié)點(diǎn)間的通信消耗,實(shí)驗(yàn)表明該方法能顯著降低邊界節(jié)點(diǎn)和覆蓋空洞識(shí)別過(guò)程中的 能量消耗,在500*500M2規(guī)模的監(jiān)測(cè)區(qū)域部署2000個(gè)傳感器節(jié)點(diǎn),節(jié)點(diǎn)平均剩余能量達(dá)到 99. 8%以上;
[0018] (3)本發(fā)明復(fù)雜度低,總的復(fù)雜度為〇((k+2+log(n))n+m)。
【附圖說(shuō)明】
[0019] 圖1是笛卡爾坐標(biāo)系示意圖。
[0020] 圖2是判斷傳感扇區(qū)覆蓋示意圖。
[0021] 圖3是2000個(gè)節(jié)點(diǎn)部署示意圖。
[0022] 圖4是邊界節(jié)點(diǎn)識(shí)別結(jié)果示意圖。
[0023] 圖5是本發(fā)明在不同規(guī)模的無(wú)線傳感器網(wǎng)絡(luò)中進(jìn)行邊界節(jié)點(diǎn)識(shí)別的正確率對(duì)比 示意圖。
[0024] 圖6是本發(fā)明在不同規(guī)模的無(wú)線傳感器網(wǎng)絡(luò)中進(jìn)行邊界節(jié)點(diǎn)識(shí)別的錯(cuò)誤率對(duì)比 示意圖。
[0025] 圖7是本發(fā)明在不同規(guī)模的無(wú)線傳感器網(wǎng)絡(luò)中進(jìn)行邊界節(jié)點(diǎn)識(shí)別的能量剩余對(duì) 比示意圖。 圖8是本發(fā)明的運(yùn)行時(shí)間分析圖。
【具體實(shí)施方式】
[0026] 下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0027] 本發(fā)明提供了一種分布式無(wú)線傳感器網(wǎng)絡(luò)邊界節(jié)點(diǎn)識(shí)別方法,包括以下步驟:
[0028] (1)設(shè)分布式無(wú)線傳感器網(wǎng)絡(luò)中的各節(jié)點(diǎn)的通信模型為以該節(jié)點(diǎn)所在位置為圓 心、以通信覆蓋半徑CR為半徑的圓盤,并且節(jié)點(diǎn)存儲(chǔ)有其通信范圍內(nèi)的1跳鄰居節(jié)點(diǎn)的鄰 居信息;各節(jié)點(diǎn)通過(guò)向其1跳鄰居節(jié)點(diǎn)發(fā)送請(qǐng)求并交換1跳鄰居信息,以收集s跳以內(nèi)鄰居 節(jié)點(diǎn)的鄰居信息,所述s為2~3 ;本實(shí)施例以收集2跳以內(nèi)鄰居節(jié)點(diǎn)的鄰居信息為例進(jìn)行 說(shuō)明。
[0029] 其中各節(jié)點(diǎn)通過(guò)以下公式計(jì)算其2跳鄰居節(jié)點(diǎn)的鄰居信息:
[0030]
[0031] 其中,V;表示當(dāng)前節(jié)點(diǎn),vu表示v;的k-1跳鄰居,< 表示 '的k跳鄰居節(jié)點(diǎn)集, 表示 '的k-1跳鄰居節(jié)點(diǎn)集,< 表示\的1跳鄰居節(jié)點(diǎn)集,k= 2 ;
[0032] 依次對(duì)無(wú)線傳感器網(wǎng)絡(luò)中的每一個(gè)節(jié)點(diǎn)執(zhí)行步驟(2)至步驟(5)以判斷該節(jié)點(diǎn)是 否是邊界節(jié)點(diǎn);
[0033] (2)以當(dāng)前節(jié)點(diǎn)Vi為圓心、以節(jié)點(diǎn)v:的傳感覆蓋半徑SR為半徑建立笛卡爾坐 標(biāo)系,計(jì)算節(jié)點(diǎn)^的s跳以內(nèi)的鄰居節(jié)點(diǎn)在該坐標(biāo)系內(nèi)的絕對(duì)角,絕對(duì)角的范圍為[0°,