文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2016.06.027
中文引用格式: 劉偉,胡安林. 無線傳感器網(wǎng)絡(luò)覆蓋率與節(jié)能性研究[J].電子技術(shù)應(yīng)用,2016,42(6):98-100,104.
英文引用格式: Liu Wei,Hu Anlin. Reaserch of coverage ratio and energy saving in wireless sensor network[J].Application of Electronic Technique,2016,42(6):98-100,104.
0 引言
目前,隨著無線通信、片上系統(tǒng)、嵌入式技術(shù)和信息處理技術(shù)的迅速發(fā)展,無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)技術(shù)應(yīng)運(yùn)而生。WSN是信息技術(shù)的一個新領(lǐng)域,已經(jīng)廣泛地應(yīng)用于智能交通、醫(yī)療監(jiān)護(hù)、軍事、環(huán)境監(jiān)測等多個領(lǐng)域。
WSN由多個低功耗且能量有限的傳感器節(jié)點組成,每一個傳感器節(jié)點都有感知能力[1]。節(jié)點可以實時監(jiān)測和感知環(huán)境信息,并將其轉(zhuǎn)換為數(shù)據(jù),數(shù)據(jù)處理后再傳輸給用戶。為了能夠從環(huán)境中收集完整的數(shù)據(jù),就必須考慮網(wǎng)絡(luò)覆蓋率的問題。
網(wǎng)絡(luò)覆蓋率問題是指用最少的傳感器節(jié)點最大化地感知區(qū)域。傳感器節(jié)點的覆蓋率決定了該節(jié)點能否對特定的環(huán)境進(jìn)行有效的監(jiān)測。一個WSN能夠成功運(yùn)行,有效的網(wǎng)絡(luò)覆蓋率是必須的。目前區(qū)域覆蓋[2]是無線傳感器網(wǎng)絡(luò)研究的熱點之一,是解決給定區(qū)域內(nèi)的全覆蓋監(jiān)測,該區(qū)域內(nèi)的每一個點都應(yīng)該在至少一個活動節(jié)點的感知范圍內(nèi)。
1 相關(guān)研究
在網(wǎng)絡(luò)生命周期內(nèi),為了節(jié)省能量,活動的傳感器節(jié)點要盡可能少;另外,覆蓋區(qū)域的重疊部分也應(yīng)該盡可能減小。在WSN中,由于需要確定哪些節(jié)點是活動的,覆蓋率問題變得有些復(fù)雜。有很多研究都在著力解決覆蓋率的問題,研究者們?yōu)榇颂岢隽烁鞣N各樣的解決方法。
有文章提出基于魚群算法[3]、遺傳算法[4]、蟻群算法[5]等進(jìn)行覆蓋率的優(yōu)化,這些算法通過搜索的方式對覆蓋率問題進(jìn)行改進(jìn),雖然搜索能力增強(qiáng),但是存在求解過程比較復(fù)雜、收斂速度比較慢、未考慮節(jié)點能量損耗等缺點。也有文獻(xiàn)提出基于概率統(tǒng)計的算法,如ε覆蓋算法[6],根據(jù)兩個相鄰節(jié)點概率統(tǒng)計關(guān)系,將無限點的區(qū)域覆蓋轉(zhuǎn)為有限的點覆蓋,保證任意目標(biāo)點的覆蓋率不低于ε。但是算法沒有均衡節(jié)點間的能量損耗,導(dǎo)致網(wǎng)絡(luò)生命周期短,節(jié)能性差。
2 基于能量感知的覆蓋算法
2.1 問題描述
在WSN中,傳感器節(jié)點需要完成從環(huán)境中感知數(shù)據(jù),處理數(shù)據(jù)并跟其他節(jié)點交換數(shù)據(jù)等多個任務(wù),所有這些任務(wù)都需要消耗節(jié)點能量。因此,傳感器節(jié)點的能量是算法中重點考慮的問題[7]。
該算法將傳感器節(jié)點置于三種不同的模式:活動、偵聽和睡眠。在活動模式,節(jié)點需要執(zhí)行處理、感知和通信三種任務(wù),傳感器節(jié)點進(jìn)入活動模式后,它的感知單元即上電了,然后傳感器節(jié)點開始正常工作。相應(yīng)的,處理單元和通信單元也都處于上電狀態(tài)。偵聽模式是傳感器節(jié)點被布設(shè)后的初始狀態(tài),此時僅通信單元處于上電模式,感知和處理單元都被關(guān)閉,直到從簇頭接收到消息,才會轉(zhuǎn)換為其他模式。在睡眠模式中,不執(zhí)行任何任務(wù),傳感器節(jié)點會關(guān)閉大部分功能單元,只有傳感器的傳輸模塊處于上電狀態(tài),以便對從簇頭接收到的報文及時作出響應(yīng)。
傳感器節(jié)點的大部分能量都是在活動模式下消耗的;偵聽模式對能量的消耗比活動模式要低;睡眠模式最節(jié)省能量。因此,為了使傳感器節(jié)點的生命周期最大化,節(jié)點應(yīng)該在大部分時間里處于睡眠模式。
針對節(jié)點隨機(jī)分布的分簇式無線傳感器網(wǎng)絡(luò),為了保證網(wǎng)絡(luò)覆蓋率并延長網(wǎng)絡(luò)生命周期,提出一種基于能量感知的區(qū)域覆蓋算法。該算法中,簇頭根據(jù)覆蓋區(qū)域和各個傳感器節(jié)點的剩余能量,在本簇中選定活動節(jié)點,優(yōu)化活動節(jié)點的數(shù)目。
2.2 網(wǎng)絡(luò)模型
假設(shè)一個分簇式WSN的監(jiān)測區(qū)域為二維平面,在該區(qū)域內(nèi)隨機(jī)部署M個傳感器節(jié)點。所有傳感器節(jié)點坐標(biāo)已知,都由一個ID進(jìn)行唯一標(biāo)識。
假設(shè)節(jié)點感知域和通信域都是圓形的。以節(jié)點i為圓心,傳感器的感知半徑為r,通信半徑為Rc,此處取Rc=2r。對于傳感器節(jié)點i和j,d(i,j)代表兩節(jié)點間的歐幾里得距離。當(dāng)d(i,j)≤2r時,傳感器節(jié)點i和j為感知鄰節(jié)點。
圖1為傳感器節(jié)點模型,實線圓代表傳感器節(jié)點的感知域,虛線圓代表通信域。對于傳感器節(jié)點i和j,由于d(i,j)=r,滿足d(i,j)≤2r,因此i和j是感知鄰節(jié)點。類似的,k和l也是傳感器節(jié)點i的感知鄰節(jié)點,而m由于不滿足上述條件,不屬于其感知鄰節(jié)點。
在一個簇中,節(jié)點的狀態(tài)是由簇頭確定的[8]。簇中的傳感器節(jié)點記為Cch,其中的活動節(jié)點記為Ach。Ai表示節(jié)點i所覆蓋的區(qū)域面積,ANi表示未被節(jié)點i覆蓋的區(qū)域面積,Aij表示節(jié)點i和j的重復(fù)區(qū)域。Nc表示網(wǎng)絡(luò)中總節(jié)點的個數(shù),Na表示活動節(jié)點的個數(shù)。Ei表示起始能量,Ec表示剩余能量。
定義綜合指標(biāo)P:
2.3 覆蓋算法
圖2為基于能量感知的區(qū)域覆蓋算法流程圖。算法步驟如下:
(1)在起始階段,所有節(jié)點處于偵聽模式,Ach為空。
(2)若傳感器節(jié)點從多個簇頭接收到Hello報文,表明簇頭已經(jīng)可以從其他傳感器節(jié)點接收報文,傳感器節(jié)點就會把自己的坐標(biāo)信息發(fā)給這些簇頭,并且保持當(dāng)前狀態(tài)不變,直到它再次從某個簇頭收到消息,這樣就成為了這個簇的一員。并且會根據(jù)收到的消息把自己的狀態(tài)設(shè)置為活動或者睡眠模式。
(3)接下來,簇頭會根據(jù)剩余能量和重疊區(qū)域來決定激活哪些傳感器節(jié)點。首先,根據(jù)式(1)計算區(qū)域內(nèi)每個節(jié)點的P值。簇頭會從中選擇P值最大的節(jié)點Cch,并檢查此節(jié)點與其它節(jié)點的重疊區(qū)域Aij是否足夠小(小于λ)。如果滿足,這個傳感器節(jié)點就被移入活動集合Ach。如果在第一輪檢測后,區(qū)域內(nèi)所有傳感器節(jié)點都不能完全覆蓋簇頭的通信區(qū)域,就要啟動下一輪的檢測,這時λ值動態(tài)增加。
(4)一旦選定了一個新的活動節(jié)點,簇頭就會檢測它的通信區(qū)域是否已經(jīng)完全覆蓋。如果是,簇頭就會停止運(yùn)行以上算法。如果不是,簇頭會繼續(xù)添加新的活動節(jié)點,直到通信區(qū)域被完全覆蓋。
3 仿真分析
3.1 仿真環(huán)境與參數(shù)設(shè)置
本文所述算法以MATLAB為仿真實驗平臺。本實驗在50 m×50 m的范圍內(nèi)隨機(jī)布設(shè)60到200個傳感器節(jié)點。仿真時間是600 s。將60個傳感器節(jié)點的初始分布圖和算法執(zhí)行后的分布圖進(jìn)行仿真;并在節(jié)點數(shù)目為60、80、100、120、140、160、180、200的8種情況下,分別對算法運(yùn)行10次,取實驗結(jié)果的平均值進(jìn)行對比。各項仿真參數(shù)如表1所示。
3.2 節(jié)點分布情況
圖3為60個傳感器節(jié)點初始隨機(jī)分布圖,圖4為算法執(zhí)行后的節(jié)點分布圖。兩圖比較可以看出節(jié)點數(shù)有所減少,區(qū)域覆蓋率可以明顯提高。
3.3 算法比較
對本算法與改進(jìn)的螢火蟲優(yōu)化算法(Improved Glowworm Swarm Optimizations Algorithm,IGSO)[9]的網(wǎng)絡(luò)覆蓋率和網(wǎng)絡(luò)生命周期進(jìn)行了對比,如圖5和圖6所示。
從圖5可以看出,就感知區(qū)域的覆蓋率來說,算法比IGSO有提高。在IGSO中,每只螢火蟲的位置代表一種節(jié)點的分布方案,每個節(jié)點都是獨立的個體,因此節(jié)點間的協(xié)調(diào)能力較差,導(dǎo)致此算法很難達(dá)到一個最優(yōu)的覆蓋率,其網(wǎng)絡(luò)覆蓋率基本在90%~95%之間。而在本算法中簇頭對節(jié)點進(jìn)行集中管理,通過禁用某些節(jié)點以減少節(jié)點間的重疊區(qū)域,通過激活某些節(jié)點和控制這些節(jié)點的感知方向以達(dá)到最優(yōu)的覆蓋率,覆蓋率均在95%以上。簇頭在匯聚節(jié)點數(shù)據(jù)、協(xié)調(diào)節(jié)點狀態(tài)以保證覆蓋率方面表現(xiàn)出了更好的性能。
兩算法的生命周期如圖6所示。在IGSO中,雖然節(jié)點位置之間有連續(xù)變化的關(guān)系,但是每個節(jié)點都是獨立的個體,活動節(jié)點選擇時沒有考慮節(jié)點的剩余能量;而本算法基于剩余能量選擇活動節(jié)點,在節(jié)點間平衡能量的消耗,因此,與IGSO相比,本算法能夠獲得更長的生命周期。
4 結(jié)論
對于分簇式WSN,提出一種基于能量感知的區(qū)域覆蓋算法。本算法引入能量均衡的思想,綜合考慮節(jié)點間的重疊區(qū)域和節(jié)點的剩余能量,以此為依據(jù)選擇活動節(jié)點,其他節(jié)點處于能量消耗很少的偵聽或睡眠模式,不必同時激活所有傳感器節(jié)點,就可以保持足夠的覆蓋率。算法基于能量信息來選擇活動節(jié)點,可以在節(jié)點間平衡能量消耗,這樣就能夠延長網(wǎng)絡(luò)生命周期。仿真結(jié)果表明,與其他算法相比,新算法能夠在保證高覆蓋率的同時,維持更長的傳感器生命周期,從而使系統(tǒng)獲得良好的性能。
參考文獻(xiàn)
[1] 史明岳.能量有效的無線傳感器網(wǎng)絡(luò)覆蓋優(yōu)化研究[D].鎮(zhèn)江:江蘇科技大學(xué),2012.
[2] 廖先莉.無線傳感器網(wǎng)絡(luò)多重覆蓋調(diào)度算法的研究[D].重慶:重慶大學(xué),2013.
[3] 周利民,楊科華,周攀.基于魚群算法的無線傳感網(wǎng)絡(luò)覆蓋優(yōu)化策略[J].計算機(jī)應(yīng)用研究,2010,27(6):2276-2279.
[4] 殷衛(wèi)莉,陳巍.遺傳算法在無線傳感器網(wǎng)絡(luò)覆蓋中仿真研究[J].計算機(jī)仿真,2010,27(10):120-123.
[5] 彭麗英.改進(jìn)的蟻群算法網(wǎng)格節(jié)點覆蓋優(yōu)化研究[J].計算機(jī)仿真,2011,28(9):151-153,255.
[6] Yang Qianqian,He Shibo,Li Junkun et,al.Energy-efficient probabilistic full-coverage in wireless sensor networks[C].Anaheim:IEEE Global Communications Conference,2012.
[7] Wang Yi,Cao Guohong.Barrier coverage in camera sensor networks[C].In Proceedings of the Twelfth ACM International Symposium on Mobile Ad Hoc Networking and Computing,2011,12(3):1-10.
[8] 陳愛斌,張陸勇,夏新蘭,等.無線傳感器網(wǎng)絡(luò)能量異構(gòu)分簇算法的研究[J].無線電工程,2012(1):7-10.
[9] 劉洲洲,王福豹,張克旺.基于改進(jìn)螢火蟲優(yōu)化算法的WSN覆蓋優(yōu)化分析[J].傳感技術(shù)學(xué)報,2013(5):675-681.