無(wú)線傳感器網(wǎng)絡(luò)覆蓋連通性研究
3基于代理的不可達(dá)節(jié)點(diǎn)解決方案
在本節(jié),針對(duì)第2節(jié)中在無(wú)線傳感器網(wǎng)絡(luò)部署區(qū)域內(nèi)節(jié)點(diǎn)對(duì)于基站不可達(dá)的情況,例如,由于障礙物的存在或者位于基站射頻傳輸范圍之外使得一些節(jié)點(diǎn)成為基站不可達(dá)節(jié)點(diǎn),提出了一種在基站可達(dá)的節(jié)點(diǎn)中尋找一個(gè)節(jié)點(diǎn)作為代理來(lái)解決基站與不可達(dá)節(jié)點(diǎn)之間連通性問(wèn)題的方案。
3.1基本思想及定義
首先,給出方案的基本思想以及一些定義。
不失一般性,可以假設(shè)基站至多以2跳的方式
到達(dá)所有的部署節(jié)點(diǎn),對(duì)于所有直接到達(dá)節(jié)點(diǎn)的跳數(shù)為1,其余的都簡(jiǎn)化為2跳,并且認(rèn)為基站可達(dá)的節(jié)點(diǎn)可以作為基站轉(zhuǎn)發(fā)傳感數(shù)據(jù)的中繼節(jié)點(diǎn)。從這些中繼節(jié)點(diǎn)中選出某些節(jié)點(diǎn)作為代理,使其作為基站與不能接收基站信息的不可達(dá)節(jié)點(diǎn)之間的通信中介。我們考慮使代理節(jié)點(diǎn)和其周圍基站不可達(dá)節(jié)點(diǎn)形成組,代理節(jié)點(diǎn)作為該組的“組長(zhǎng)”,負(fù)責(zé)在基站和基站不可達(dá)節(jié)點(diǎn)之間的通信中介。
假設(shè)S為部署在監(jiān)測(cè)區(qū)域的節(jié)點(diǎn)集合,|S|=n,基站(basestation)記為B,同時(shí)又設(shè)SR和SUR分別為部署區(qū)域內(nèi)基站可達(dá)和不可達(dá)節(jié)點(diǎn)的集合,SR和SUR定義如下:
值得注意的是,由于在實(shí)際部署區(qū)域存在某些節(jié)點(diǎn)其傳輸信號(hào)不被其他任何節(jié)點(diǎn)獲悉,如掉入部署區(qū)域深坑的節(jié)點(diǎn),集合SR∪SUR往往并不等于集合S。因此,在節(jié)點(diǎn)部署階段,使基站為每個(gè)傳感器節(jié)點(diǎn)建立以下屬性參數(shù)。
Blink:節(jié)點(diǎn)與基站連接狀態(tài),取值為0或1,而分屬SR和SUR集合;
Nlist:集合SR中節(jié)點(diǎn)的所有鄰居節(jié)點(diǎn);
Hlist:在基站信息傳輸范圍之內(nèi)節(jié)點(diǎn)的跳數(shù)表。
Glist:節(jié)點(diǎn)成組的成員參數(shù)。
3.2基于節(jié)點(diǎn)代理的方案
在方案中,使得選取的代理節(jié)點(diǎn)和不可達(dá)節(jié)點(diǎn)形成相應(yīng)的組的目的是通過(guò)代理使該組中不可達(dá)節(jié)點(diǎn)可以與基站連通,因此,方案主要是在集合SR中設(shè)計(jì)一到多個(gè)代理節(jié)點(diǎn),負(fù)責(zé)轉(zhuǎn)發(fā)基站信息到集合SUR中的相關(guān)節(jié)點(diǎn),同時(shí),負(fù)責(zé)作為SUR中的相關(guān)節(jié)點(diǎn)的采集信息發(fā)送到基站的中轉(zhuǎn)站。
在設(shè)計(jì)代理和不可達(dá)節(jié)點(diǎn)的組時(shí),追求一種平衡代理負(fù)載的算法以延長(zhǎng)代理節(jié)點(diǎn)的壽命,在算法中,基站為每個(gè)節(jié)點(diǎn)增加一個(gè)屬性參數(shù),稱為Aid,在集合SUR中用以標(biāo)識(shí)節(jié)點(diǎn)被分配給哪個(gè)代理節(jié)點(diǎn),而其他屬于集合SR中的節(jié)點(diǎn)的Aid=0,另外,基站為集合SR的每個(gè)候選代理節(jié)點(diǎn)設(shè)置一屬性參數(shù)Glist用以識(shí)別其組成員。組的形成過(guò)程描述如下。
1)對(duì)于每個(gè)節(jié)點(diǎn)
,基站計(jì)算其與集合SR中相鄰節(jié)點(diǎn)的Hlist值,并對(duì)獲得的節(jié)點(diǎn)Hlist值按照升序排列;
2)對(duì)于1)中節(jié)點(diǎn)Hlist排序結(jié)果由低到高(順序),在集合SR中依次為SUR中節(jié)點(diǎn)分配一個(gè)代理節(jié)點(diǎn),此時(shí)存在2種情況,處理如下:
if|Hlist(sj)|=1
標(biāo)記Aid(sj)=si,分配sj到惟一連通的節(jié)點(diǎn)si;加sj到Glist(si)中
else if | Hlist(sj)|>1
為sj計(jì)算分配到SR中的多個(gè)連通節(jié)點(diǎn)的成本Acost
標(biāo)記Aid (sj)=sk,當(dāng)sj分配到集合SR中節(jié)點(diǎn)sk時(shí)Acost最小;加sj到Glist(sk)中
在方案中,對(duì)于節(jié)點(diǎn),如果在集合SR中存在多個(gè)節(jié)點(diǎn)與其連通,將會(huì)選擇與節(jié)點(diǎn)sj具有最小通信代價(jià)(此時(shí)為sj分配到集合SR中節(jié)點(diǎn)sk的通信成本Acost)的節(jié)點(diǎn)作為其代理,衡量Acost的2個(gè)重要因素是監(jiān)測(cè)區(qū)域內(nèi)的組成員和“組長(zhǎng)”即代理節(jié)點(diǎn)。一種理想的情況是對(duì)于SUR中的節(jié)點(diǎn)sj,當(dāng)其分配到一個(gè)組中時(shí),該組的代理節(jié)點(diǎn)應(yīng)滿足在所有的Hlist(sj)中是最小的,即離sj最近的節(jié)點(diǎn),這樣節(jié)點(diǎn)間的通信能量耗費(fèi)最小。另一方面,希望在所有的代理節(jié)點(diǎn)之間實(shí)現(xiàn)負(fù)載均衡以延長(zhǎng)網(wǎng)絡(luò)使用壽命,在傳感器網(wǎng)絡(luò)中,首個(gè)節(jié)點(diǎn)“死亡”時(shí)間是衡量網(wǎng)絡(luò)性能的重要尺度[16,17]。定義節(jié)點(diǎn)sj分配到以節(jié)點(diǎn)sk為代理的相應(yīng)組的代價(jià)為
Acost(k)=r1×(sj到通信成本)+r2×|(Glist(sk)|
其中,sj到si通信成本的計(jì)算基于節(jié)點(diǎn)sj和si的距離,r1+r2=1,參數(shù)r1和r2是動(dòng)態(tài)可調(diào)節(jié)的量,取值與Acost(k)中sj到si通信成本和|(Glist(sk)|在節(jié)點(diǎn)成組過(guò)程中所占的比重成正比。
4無(wú)線傳感器網(wǎng)絡(luò)覆蓋連通性判定算法
正確獲悉覆蓋在部署區(qū)域內(nèi)節(jié)點(diǎn)的連通性相關(guān)信息對(duì)網(wǎng)絡(luò)決策、管理、研究與應(yīng)用具有重要的基礎(chǔ)性作用,針對(duì)上面建立的一般意義上的無(wú)線傳感器網(wǎng)絡(luò)的系統(tǒng)模型,考慮到現(xiàn)實(shí)意義上的基站和智能節(jié)點(diǎn)可以存儲(chǔ)相關(guān)的節(jié)點(diǎn)間路由信息,如基站可以獲悉其他傳感器節(jié)點(diǎn)的能量剩余信息,可以發(fā)送相關(guān)的控制信息與參數(shù)到相應(yīng)節(jié)點(diǎn),節(jié)點(diǎn)可以存儲(chǔ)、轉(zhuǎn)發(fā)網(wǎng)絡(luò)信息并存儲(chǔ)相關(guān)的節(jié)點(diǎn)間路由信息?;诖?,提出了在無(wú)線傳感器網(wǎng)絡(luò)應(yīng)用之前根據(jù)節(jié)點(diǎn)存儲(chǔ)的相關(guān)參數(shù)信息和路由信息進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)連通性判定的算法。
算法中使用結(jié)構(gòu)類型定義節(jié)點(diǎn),具體如下:
節(jié)點(diǎn)結(jié)構(gòu)定義
StructNODE{
NodetypeN;//節(jié)點(diǎn)類型,區(qū)分基站和普通節(jié)點(diǎn)
floatE;//節(jié)點(diǎn)能量值
boolv;//節(jié)點(diǎn)訪問(wèn)標(biāo)志
NODE*n[];//指向下一跳節(jié)點(diǎn)的指針集
}
算法為基于深度探測(cè)的網(wǎng)絡(luò)覆蓋連通性判定算法DBDAFNCJ(depthbaseddetectionalgorithm for network connectivity judgment),下面具體介紹。
評(píng)論