1、引言
集成傳感器技術(shù)、微機電系統(tǒng)(MEMS)技術(shù)、無線通信技術(shù)和分布式信息處理技術(shù)的無線傳感器網(wǎng)絡(luò)(WSN,wirelesssensornetworks)是當(dāng)前信息技術(shù)的前沿之一,也是當(dāng)今的研究熱點,受到了廣泛的關(guān)注。目前,無線傳感器網(wǎng)絡(luò)逐漸成為一種廉價、方便的信息采集方法,尤其是在敵對和惡劣的網(wǎng)絡(luò)應(yīng)用環(huán)境下,傳統(tǒng)的方法代價高昂而幾乎無法使用。如文獻(xiàn)[1~3]中的戰(zhàn)場生存性應(yīng)用、一些安全相關(guān)的應(yīng)用以及災(zāi)難管理等應(yīng)用,無線傳感器網(wǎng)絡(luò)都顯示了巨大的應(yīng)用價值。在上述應(yīng)用中,傳感器節(jié)點往往是隨機地部署在監(jiān)測區(qū)域,一直工作到能量耗盡為止。
無線傳感器網(wǎng)絡(luò)部署之后,傳感器節(jié)點采集現(xiàn)實生活中諸如熱、光或者某個監(jiān)測對象的相關(guān)物理信息,對于傳感器網(wǎng)絡(luò)中各個節(jié)點,都通過自身的傳感電路感知監(jiān)測對象的相關(guān)信息,獲取原始數(shù)據(jù),然后通過一類稱為基站的特殊節(jié)點經(jīng)過相應(yīng)處理并傳送到外界的控制中心。在傳感器網(wǎng)絡(luò)中,基站的能量和處理能力都較普通節(jié)點強,基站在網(wǎng)絡(luò)部署時基本部署在其他傳感器節(jié)點的附近,其功能是在傳感數(shù)據(jù)傳送到外界控制中心之前對其進(jìn)行相應(yīng)的處理,如通過數(shù)據(jù)匯聚和融合,基站過濾掉原始傳感數(shù)據(jù)中一些錯誤和無效的數(shù)據(jù),并消除冗余數(shù)據(jù),同時,基站也會定期對傳感數(shù)據(jù)進(jìn)行匯總處理。在文獻(xiàn)[4]的傳感器網(wǎng)絡(luò)應(yīng)用中,經(jīng)過基站融合后的傳感數(shù)據(jù)可以有效地用來追蹤和識別監(jiān)測目標(biāo);在一些災(zāi)難急救的傳感器網(wǎng)絡(luò)應(yīng)用中,融合后的傳感數(shù)據(jù)可以有效地預(yù)測幸存者的健康狀況以及遇難者的準(zhǔn)確位置信息等。
傳感器網(wǎng)絡(luò)節(jié)點部署之后,如何保證網(wǎng)絡(luò)的連通性一直是研究界非常關(guān)注的問題,國內(nèi)外研究界提出了一些相關(guān)的算法和協(xié)議,比較有代表性的有:文獻(xiàn)[5]集中討論了傳感器感知模型非圓時網(wǎng)絡(luò)覆蓋和連通性之間的關(guān)系;文獻(xiàn)[6,7]針對網(wǎng)絡(luò)的使用壽命問題,研究了如何在部署的網(wǎng)絡(luò)節(jié)點中選擇足夠的節(jié)點以構(gòu)成網(wǎng)絡(luò)的覆蓋連通集;文獻(xiàn)[8]討論了在對部署節(jié)點位置信息未知的情況下,如何能有效地保證網(wǎng)絡(luò)連通性覆蓋的問題;在文獻(xiàn)[9]中,詳細(xì)研究了不同情況下的傳感器網(wǎng)絡(luò)覆蓋連通性的分析方法;文獻(xiàn)[10]給出了一種改進(jìn)的傳感器節(jié)點覆蓋優(yōu)化方法。
針對傳感器網(wǎng)絡(luò)的覆蓋連通性問題,本文將在第2節(jié)討論無線傳感器網(wǎng)絡(luò)覆蓋連通性理論及網(wǎng)絡(luò)模型。第3節(jié)采用了一種節(jié)點代理基站來解決網(wǎng)絡(luò)中不可達(dá)節(jié)點的連通性方案。第4節(jié)將給出在第2節(jié)中所給模型的基礎(chǔ)上進(jìn)行網(wǎng)絡(luò)覆蓋連通性判定的算法。第5節(jié)對提出的基站代理方案和節(jié)點連通性判定算法進(jìn)行實驗。第6節(jié)是結(jié)束語。
2、網(wǎng)絡(luò)覆蓋連通性理論及網(wǎng)絡(luò)模型
傳感器網(wǎng)絡(luò)節(jié)點連通性的要求與adhoc網(wǎng)絡(luò)大致一致:1)信息必須有一條或足夠多的路徑從信息源轉(zhuǎn)發(fā)到目的節(jié)點(基站);2)信息在轉(zhuǎn)發(fā)過程中延遲盡量小。信息的轉(zhuǎn)發(fā)路徑越多,系統(tǒng)越可靠,但由于需要多個中間節(jié)點同時處于工作狀態(tài),節(jié)點能耗增加,系統(tǒng)壽命降低。無線發(fā)射器件的能耗隨著收發(fā)距離長度的變大呈指數(shù)增長,采用多跳方式信息轉(zhuǎn)發(fā)代替點對點通信,可以節(jié)約大量的能量。但過多的跳數(shù)會增加信息接收轉(zhuǎn)發(fā)的次數(shù),同樣會帶來額外的能耗。因此,將上述2個矛盾的因素折衷,適當(dāng)控制轉(zhuǎn)發(fā)節(jié)點的個數(shù)是降低能耗的關(guān)鍵。
通常,理想狀態(tài)下具有節(jié)點連通性優(yōu)化作用的密度控制所要解決的核心問題同覆蓋優(yōu)化類似,但節(jié)點的約束條件更多。將所有傳感節(jié)點組成的集合分為{h1,h2,…,hm}等m個子集,即,設(shè)hi為組成主干連接網(wǎng)絡(luò)的傳感節(jié)點的一個集合,si是傳感器節(jié)點。每個處于傳感狀態(tài)的非主干節(jié)點能夠與至少一個主干節(jié)點通信,主干節(jié)點之間必須有一條且至少一條直接或間接的路徑實現(xiàn)二者相連。
基于上述理論,給出一個一般意義上的無線傳感器網(wǎng)絡(luò)模型,描述如下。
設(shè)N個傳感器節(jié)點隨機地部署在某一區(qū)域,節(jié)點擁有有限的電池能量和數(shù)據(jù)處理能力,在網(wǎng)絡(luò)應(yīng)用中節(jié)點的任務(wù)是按照外界控制中心的需要進(jìn)行動態(tài)的工作,基站部署在其他傳感器節(jié)點附近。假設(shè)傳感器節(jié)點和基站都處于靜止?fàn)顟B(tài),且基站可以獲悉其他節(jié)點的位置信息。基站采用文獻(xiàn)[11,12]中的beacons信號在網(wǎng)絡(luò)觸發(fā)階段發(fā)現(xiàn)活動節(jié)點,基站負(fù)責(zé)組織協(xié)調(diào)傳感器節(jié)點采集相關(guān)監(jiān)測數(shù)據(jù),匯聚融合原始傳感數(shù)據(jù)并與外界控制中心進(jìn)行聯(lián)系,最后由控制中心把處理完的有用信息傳遞給用戶。
在系統(tǒng)模型中,設(shè)傳感器節(jié)點能夠向基站報告其剩余能量信息,并能智能地切換開啟和休眠狀態(tài),且傳感電路和數(shù)據(jù)處理電路可以智能開關(guān),另外,節(jié)點傳輸距離可以通過編程進(jìn)行調(diào)節(jié)控制。值得注意的是,SenTech公司開發(fā)的聲覺通道模塊[13]傳感器節(jié)點具有上述功能。設(shè)傳感器節(jié)點可以作為數(shù)據(jù)轉(zhuǎn)發(fā)的中繼?;緭碛锌梢愿鶕?jù)實際任務(wù)和環(huán)境的需要智能地選取部分傳感器節(jié)點進(jìn)行工作、選擇數(shù)據(jù)路由以及媒體訪問仲裁的網(wǎng)絡(luò)管理功能。在網(wǎng)絡(luò)系統(tǒng)模型中,網(wǎng)絡(luò)的組織和管理都是基于能量意識的,依賴于每個傳感器節(jié)點的能量知識,網(wǎng)絡(luò)的控制參照傳感器節(jié)點的工作狀況和能量剩余情況。
在系統(tǒng)中,參考文獻(xiàn)[14,15]中節(jié)點通信時的能量消耗模型,模型中定義的節(jié)點發(fā)送信息和接受信息的能量消耗公式如下。
發(fā)送信息能量消耗: 接收信息能量消耗:其中,Es表示節(jié)點發(fā)送消息的能量消耗;β1和β2分別表示節(jié)點在發(fā)送和接收信息過程中單位信息所耗損的能量,其值均取為50nJ/bit;β’表示單位信息在傳送過程中由于信號保持而在單位面積(m2)耗損的能量,其值取為100pJ/bit/ m2;m表示信息位數(shù);d表示信息傳輸距離。
基于以上無線傳感器網(wǎng)絡(luò)的系統(tǒng)模型,給出以下一些定義。
定義1傳感器節(jié)點間的連通性。若在無線傳感器網(wǎng)絡(luò)部署區(qū)域內(nèi),節(jié)點之間總可以某種路由方式相互傳送信息,則稱在網(wǎng)絡(luò)覆蓋區(qū)域內(nèi)節(jié)點之間是連通的。
定義2無線傳感器網(wǎng)絡(luò)的連通性。若在無線傳感器網(wǎng)絡(luò)部署區(qū)域內(nèi),對于所有節(jié)點的極大子集,基站總是可以某種路由方式傳送相關(guān)控制信息到該節(jié)點集合中的任何節(jié)點,且該節(jié)點集合中的任意節(jié)點間也是連通的,則稱在該網(wǎng)絡(luò)覆蓋區(qū)域內(nèi)由此極大節(jié)點子集組成的無線傳感器網(wǎng)絡(luò)是連通的。
在無線傳感器網(wǎng)絡(luò)中,傳感器節(jié)點的能量主要花費在對外界信號的轉(zhuǎn)換處理和進(jìn)行數(shù)據(jù)通信的開銷方面。由于節(jié)點的能量是由有限的電池提供,如果在網(wǎng)絡(luò)工作時一直讓節(jié)點在任何情況下都處于開啟狀態(tài)則會降低節(jié)點的使用壽命,從而影響整個網(wǎng)絡(luò)的使用壽命。因此,如何有效地利用基站優(yōu)化組織和管理無線傳感器網(wǎng)絡(luò)節(jié)點對于網(wǎng)絡(luò)的優(yōu)化應(yīng)用具有重要的意義。一類面向任務(wù)的傳感器網(wǎng)絡(luò)應(yīng)用可以選擇性地開啟覆蓋區(qū)域內(nèi)的傳感器節(jié)點并平衡節(jié)點的負(fù)載,對于任務(wù)無關(guān)的節(jié)點使其處于休眠狀態(tài),這樣可以節(jié)約寶貴的傳感器節(jié)點能量,達(dá)到延長節(jié)點乃至整個網(wǎng)絡(luò)壽命的目的。
上述網(wǎng)絡(luò)優(yōu)化過程的前提是基站必須獲悉網(wǎng)絡(luò)中節(jié)點情況,只有確保覆蓋區(qū)域內(nèi)網(wǎng)絡(luò)節(jié)點的連通性基站才能有效地對節(jié)點進(jìn)行組織和管理。在傳感器網(wǎng)絡(luò)通信中,節(jié)點與基站之間理想通信模式是使用短距離的通信方式,這種方式假設(shè)基站對于網(wǎng)絡(luò)中的節(jié)點在任何情況下都是可達(dá)的,然而,這并不符合實際。因為在部署傳感器網(wǎng)絡(luò)時沒有統(tǒng)一的模式,且網(wǎng)絡(luò)部署環(huán)境有很大差別。在許多實際應(yīng)用場景中存在各種障礙物(如建筑物、樹木以及其他一些干擾信號等)會阻礙節(jié)點和基站之間的正常通信,有時這些障礙物甚至?xí)构?jié)點處于不可用狀態(tài)。
圖1描述的是當(dāng)基站和傳感器節(jié)點都處于彼此的通信范圍內(nèi)時,由于障礙物的存在使得基站不能夠與被阻礙節(jié)點進(jìn)行直接通信的情況。
對于基站和傳感器節(jié)點不能直接通信的另一種情況如圖2所示,在傳感器網(wǎng)絡(luò)部署區(qū)域內(nèi),有部分節(jié)點處于基站的傳輸范圍之外,此時基站和這部分節(jié)點就不能進(jìn)行直接通信。
3、基于代理的不可達(dá)節(jié)點解決方案
在本節(jié),針對第2節(jié)中在無線傳感器網(wǎng)絡(luò)部署區(qū)域內(nèi)節(jié)點對于基站不可達(dá)的情況,例如,由于障礙物的存在或者位于基站射頻傳輸范圍之外使得一些節(jié)點成為基站不可達(dá)節(jié)點,提出了一種在基站可達(dá)的節(jié)點中尋找一個節(jié)點作為代理來解決基站與不可達(dá)節(jié)點之間連通性問題的方案。
3.1基本思想及定義
首先,給出方案的基本思想以及一些定義。
不失一般性,可以假設(shè)基站至多以2跳的方式
到達(dá)所有的部署節(jié)點,對于所有直接到達(dá)節(jié)點的跳數(shù)為1,其余的都簡化為2跳,并且認(rèn)為基站可達(dá)的節(jié)點可以作為基站轉(zhuǎn)發(fā)傳感數(shù)據(jù)的中繼節(jié)點。從這些中繼節(jié)點中選出某些節(jié)點作為代理,使其作為基站與不能接收基站信息的不可達(dá)節(jié)點之間的通信中介。我們考慮使代理節(jié)點和其周圍基站不可達(dá)節(jié)點形成組,代理節(jié)點作為該組的“組長”,負(fù)責(zé)在基站和基站不可達(dá)節(jié)點之間的通信中介。
假設(shè)S為部署在監(jiān)測區(qū)域的節(jié)點集合,|S|=n,基站(basestation)記為B,同時又設(shè)SR和SUR分別為部署區(qū)域內(nèi)基站可達(dá)和不可達(dá)節(jié)點的集合,SR和SUR定義如下:
值得注意的是,由于在實際部署區(qū)域存在某些節(jié)點其傳輸信號不被其他任何節(jié)點獲悉,如掉入部署區(qū)域深坑的節(jié)點,集合SR∪SUR往往并不等于集合S。因此,在節(jié)點部署階段,使基站為每個傳感器節(jié)點建立以下屬性參數(shù)。
Blink:節(jié)點與基站連接狀態(tài),取值為0或1,而分屬SR和SUR集合;
Nlist:集合SR中節(jié)點的所有鄰居節(jié)點;
Hlist:在基站信息傳輸范圍之內(nèi)節(jié)點的跳數(shù)表。
Glist:節(jié)點成組的成員參數(shù)。
3.2基于節(jié)點代理的方案
在方案中,使得選取的代理節(jié)點和不可達(dá)節(jié)點形成相應(yīng)的組的目的是通過代理使該組中不可達(dá)節(jié)點可以與基站連通,因此,方案主要是在集合SR中設(shè)計一到多個代理節(jié)點,負(fù)責(zé)轉(zhuǎn)發(fā)基站信息到集合SUR中的相關(guān)節(jié)點,同時,負(fù)責(zé)作為SUR中的相關(guān)節(jié)點的采集信息發(fā)送到基站的中轉(zhuǎn)站。
在設(shè)計代理和不可達(dá)節(jié)點的組時,追求一種平衡代理負(fù)載的算法以延長代理節(jié)點的壽命,在算法中,基站為每個節(jié)點增加一個屬性參數(shù),稱為Aid,在集合SUR中用以標(biāo)識節(jié)點被分配給哪個代理節(jié)點,而其他屬于集合SR中的節(jié)點的Aid=0,另外,基站為集合SR的每個候選代理節(jié)點設(shè)置一屬性參數(shù)Glist用以識別其組成員。組的形成過程描述如下。
1)對于每個節(jié)點
,基站計算其與集合SR中相鄰節(jié)點的Hlist值,并對獲得的節(jié)點Hlist值按照升序排列;
2)對于1)中節(jié)點Hlist排序結(jié)果由低到高(順序),在集合SR中依次為SUR中節(jié)點分配一個代理節(jié)點,此時存在2種情況,處理如下:
if|Hlist(sj)|=1
標(biāo)記Aid(sj)=si,分配sj到惟一連通的節(jié)點si;加sj到Glist(si)中
else if | Hlist(sj)|》1
為sj計算分配到SR中的多個連通節(jié)點的成本Acost
標(biāo)記Aid (sj)=sk,當(dāng)sj分配到集合SR中節(jié)點sk時Acost最小;加sj到Glist(sk)中
在方案中,對于節(jié)點,如果在集合SR中存在多個節(jié)點與其連通,將會選擇與節(jié)點sj具有最小通信代價(此時為sj分配到集合SR中節(jié)點sk的通信成本Acost)的節(jié)點作為其代理,衡量Acost的2個重要因素是監(jiān)測區(qū)域內(nèi)的組成員和“組長”即代理節(jié)點。一種理想的情況是對于SUR中的節(jié)點sj,當(dāng)其分配到一個組中時,該組的代理節(jié)點應(yīng)滿足在所有的Hlist(sj)中是最小的,即離sj最近的節(jié)點,這樣節(jié)點間的通信能量耗費最小。另一方面,希望在所有的代理節(jié)點之間實現(xiàn)負(fù)載均衡以延長網(wǎng)絡(luò)使用壽命,在傳感器網(wǎng)絡(luò)中,首個節(jié)點“死亡”時間是衡量網(wǎng)絡(luò)性能的重要尺度[16,17]。定義節(jié)點sj分配到以節(jié)點sk為代理的相應(yīng)組的代價為Acost(k)=r1×(sj到通信成本)+r2×|(Glist(sk)|
其中,sj到si通信成本的計算基于節(jié)點sj和si的距離,r1+r2=1,參數(shù)r1和r2是動態(tài)可調(diào)節(jié)的量,取值與Acost(k)中sj到si通信成本和|(Glist(sk)|在節(jié)點成組過程中所占的比重成正比。
4、無線傳感器網(wǎng)絡(luò)覆蓋連通性判定算法
正確獲悉覆蓋在部署區(qū)域內(nèi)節(jié)點的連通性相關(guān)信息對網(wǎng)絡(luò)決策、管理、研究與應(yīng)用具有重要的基礎(chǔ)性作用,針對上面建立的一般意義上的無線傳感器網(wǎng)絡(luò)的系統(tǒng)模型,考慮到現(xiàn)實意義上的基站和智能節(jié)點可以存儲相關(guān)的節(jié)點間路由信息,如基站可以獲悉其他傳感器節(jié)點的能量剩余信息,可以發(fā)送相關(guān)的控制信息與參數(shù)到相應(yīng)節(jié)點,節(jié)點可以存儲、轉(zhuǎn)發(fā)網(wǎng)絡(luò)信息并存儲相關(guān)的節(jié)點間路由信息?;诖?,提出了在無線傳感器網(wǎng)絡(luò)應(yīng)用之前根據(jù)節(jié)點存儲的相關(guān)參數(shù)信息和路由信息進(jìn)行網(wǎng)絡(luò)節(jié)點連通性判定的算法。
算法中使用結(jié)構(gòu)類型定義節(jié)點,具體如下:
節(jié)點結(jié)構(gòu)定義
StructNODE{
NodetypeN;//節(jié)點類型,區(qū)分基站和普通節(jié)點
floatE;//節(jié)點能量值
boolv;//節(jié)點訪問標(biāo)志
NODE*n[];//指向下一跳節(jié)點的指針集
}
算法為基于深度探測的網(wǎng)絡(luò)覆蓋連通性判定算法DBDAFNCJ(depthbaseddetectionalgorithm for network connectivity judgment),下面具體介紹。
無線傳感器網(wǎng)絡(luò)一般都是隨機部署在監(jiān)測區(qū)域內(nèi),一旦傳感器節(jié)點分布完畢,網(wǎng)絡(luò)管理者和用戶基本上就很難對節(jié)點進(jìn)行直接管理。此時,往往通過智能基站對具有信息存儲和有限計算能力和能量的節(jié)點進(jìn)行全局管理。因此,正確獲悉部署區(qū)域內(nèi)傳感器節(jié)點的工作情況是高效、合理地對網(wǎng)絡(luò)進(jìn)行管理和應(yīng)用的重要前提。首先,使用節(jié)點代理方案對監(jiān)測區(qū)域內(nèi)的節(jié)點進(jìn)行處理,設(shè)處理結(jié)果產(chǎn)生n-1個代理,這樣整個部署區(qū)域就被劃分成n個組(包括基站),DBDAFNCJ算法分別對n個組進(jìn)行處理,處理每個組時都是以基站或代理節(jié)點(注:統(tǒng)稱為組長節(jié)點)為起點,然后獲取相關(guān)存儲信息按照逐跳路由的方式對某一方向的節(jié)點進(jìn)行探測,算法中設(shè)置一空集,每次將探測到的節(jié)點加入空集,直到碰到不可達(dá)情況的節(jié)點,此時回溯到上一個節(jié)點繼續(xù)探測未被訪問的可達(dá)節(jié)點,當(dāng)n個組都處理完畢以后,每組節(jié)點的并集即是部署區(qū)域內(nèi)可以正常工作的節(jié)點。圖3描述了使用DBDAFNCJ算法探測各組內(nèi)節(jié)點連通性的方法。
算法DBDAFNCJ
AlgorithmDBDAFNCJ()
Begin
Si=f
//設(shè)置組內(nèi)連通的節(jié)點初始集Si為空
Si←grouphead
If(Gi≠f)
//判斷與組長連通的相鄰節(jié)點初始集Gi為是否非空
{Si←在Gi集中任選一個節(jié)點記為k并標(biāo)志為已訪問;
Repeat{if(ki≠f)&&存在未被訪問的節(jié)點
//判斷與k節(jié)點連通的相鄰節(jié)點初始集ki存在未被訪問的節(jié)點
{Si←在ki集中任選一個未被訪問過的節(jié)點j,并標(biāo)志為已訪問;
ki=ji;}
ji為與j節(jié)點連通的相鄰節(jié)點集
Else
{回溯到上一個節(jié)點t
ki=ti;
}
Endif;
}
Until 整個節(jié)點集合的連通子集都處理完畢
}
Endif
End
DBDAFNCJ算法最后輸出的結(jié)果是在網(wǎng)絡(luò)覆蓋區(qū)域內(nèi)連通的傳感器節(jié)點集,由上述算法可知,DBDAFNCJ算法的時間復(fù)雜度為О(H);空間復(fù)雜度為О(N)。其中H為算法探測的節(jié)點間路徑數(shù),N為覆蓋區(qū)域內(nèi)的節(jié)點數(shù)。
提出的DBDAFNCJ算法具有的優(yōu)點為:充分利用了基站對傳感器節(jié)點的所存儲的記憶信息和節(jié)點間相關(guān)路由信息,為部署區(qū)域內(nèi)無線傳感器網(wǎng)絡(luò)后續(xù)研究和使用提供了有效的決策信息;算法的時間和空間復(fù)雜度比較低,易于實現(xiàn)。
5、仿真實
通過仿真實驗對提出的節(jié)點代理方案和DBDAFNCJ算法進(jìn)行性能評估,下面依次給出實驗方法、環(huán)境和結(jié)果。
5.1實驗環(huán)境
在廣泛使用的網(wǎng)絡(luò)仿真器ns-2的環(huán)境下用C++和TCL實現(xiàn)了節(jié)點代理方案和DBDAFNCJ算法,實驗設(shè)備是一臺運行RedhatLinux9.0,具有P42.8GHz處理器,512MB DDR內(nèi)存的PC.實驗中,假設(shè)傳感器節(jié)點隨機部署在1 000m×1 000m監(jiān)測區(qū)域內(nèi),基站被隨機地部署在監(jiān)測區(qū)域的邊界內(nèi)部,基站的傳輸半徑設(shè)為500m,節(jié)點的傳輸半徑設(shè)為50m,成組節(jié)點分配代價Acost中的a1和a2的取值各設(shè)定為0.4和0.6,主要考慮到在仿真中由于節(jié)點代理方案中節(jié)點成組代價比例稍重一些。為模擬第3節(jié)討論的實際部署區(qū)域中節(jié)點處于基站傳輸范圍之外和存在諸如建筑物等障礙物使得節(jié)點處于孤立狀態(tài),在各種節(jié)點規(guī)模的仿真中,設(shè)置某一百分比的節(jié)點隨機部署在基站的傳輸半徑之外,在算法DBDAFNCJ的實現(xiàn)中,為簡化起見,且不影響仿真結(jié)果的可靠性,除基站外,其余節(jié)點均只存儲與其只有1跳路由關(guān)系的相鄰節(jié)點,為了快速得到實驗結(jié)果并且不影響仿真結(jié)果的可靠性,把節(jié)點的初始能量設(shè)置為20J,采用模型中節(jié)點能量消耗模型,此時能量足以滿足實驗條件,選擇一個簡化了的定向擴(kuò)散協(xié)議[18]作為網(wǎng)絡(luò)層的路由協(xié)議,修改協(xié)議使節(jié)點間以逐跳的方式進(jìn)行路由。
5.2實驗設(shè)計及結(jié)果
仿真實驗中,主要考慮部署區(qū)域內(nèi)節(jié)點可達(dá)率NRR(nodereachabilityratio)作為測試指標(biāo),計算如下:
NRR=部署區(qū)域內(nèi)可達(dá)節(jié)點的數(shù)目/部署區(qū)域內(nèi)節(jié)點總數(shù)
在上述仿真實驗環(huán)境下,設(shè)計了兩類實驗方案對節(jié)點代理方案和DBDAFNCJ算法進(jìn)行評估。
1)在部署區(qū)域內(nèi),改變部署節(jié)點的數(shù)量,固定處于基站傳輸范圍之外的節(jié)點為總節(jié)點20%,把節(jié)點數(shù)目分為100、150、200、250、300、350、400 7種情況進(jìn)行仿真。
2)在部署區(qū)域內(nèi),固定部署節(jié)點的數(shù)量為300,變化部署處于基站傳輸范圍之外的節(jié)點百分比,把百分比分為5%、10%、15%、20%、25%、30% 6種情況進(jìn)行仿真。
針對兩類實驗方案,使用DBDAFNCJ算法分別對使用節(jié)點代理方案部署區(qū)域節(jié)點預(yù)處理前后的節(jié)點連通性進(jìn)行判定,分別記為PRE_DBDAFNCJ和POST_DBDAFNCJ,下面給出實驗結(jié)果。方案1)、2)的實驗結(jié)果分別如圖4、圖5所示。
5.3結(jié)果分析
從圖4和圖5的結(jié)果可以看出,一方面,DBDAFNCJ算法對于初始部署區(qū)域節(jié)點的連通性比例的判定基本與設(shè)定的節(jié)點連通性比例一致,說明了DBDAFNCJ算法可以很好地對部署區(qū)域內(nèi)節(jié)點的連通性實際情況進(jìn)行判定。另一方面,對于用節(jié)點代理方案處理后的部署區(qū)域使用DBDAFNCJ算法進(jìn)行節(jié)點連通性判定的結(jié)果表明,節(jié)點代理方案較好地改善了部署區(qū)域內(nèi)節(jié)點的連通性情況,方案1)中12%~15%的不可達(dá)節(jié)點實現(xiàn)了與基站的間接連通;方案2)中3%~12%的不可達(dá)節(jié)點實現(xiàn)了與基站的間接連通。那些最終還處于不可達(dá)狀態(tài)的節(jié)點是因為其1跳范圍內(nèi)沒有基站直接可達(dá)節(jié)點。在現(xiàn)實情況下,如部署區(qū)域中掉入深坑的節(jié)點、部署完畢即出故障的節(jié)點均可認(rèn)為是此種情況。
6、結(jié)束語
對于隨機部署在監(jiān)測區(qū)域的無線傳感器網(wǎng)絡(luò)節(jié)點連通性的研究是其后續(xù)研究、管理和應(yīng)用的基礎(chǔ),針對在實際應(yīng)用中,節(jié)點隨機部署而可能出現(xiàn)與基站不能正常通信的問題,提出了一種使用與基站連通的節(jié)點作為代理解決基站不可達(dá)節(jié)點的方案,并基于節(jié)點存儲的路由信息給出了一種節(jié)點連通性的判定算法,仿真實驗中,在改變仿真節(jié)點數(shù)目而固定不可達(dá)節(jié)點比例以及固定仿真節(jié)點數(shù)目而改變不可達(dá)節(jié)點比例2種情況下,結(jié)果均表明所提出的節(jié)點代理方案可以有效地改善部署區(qū)域的節(jié)點不可達(dá)問題,同時表明,所提出的節(jié)點連通性判定算法能夠高效地探測部署區(qū)域內(nèi)節(jié)點的連通性狀況。
責(zé)任編輯:gt
評論
查看更多