文獻標識碼: A
文章編號: 0258-7998(2014)09-0108-03
無線傳感器網(wǎng)絡(luò)[1]是由大量無線感知節(jié)點構(gòu)成。LEACH[2]則是針對無線傳感器網(wǎng)絡(luò)而提出的路由算法。該算法將節(jié)點通過定期選舉簇頭節(jié)點分擔無線網(wǎng)絡(luò)通信,均衡網(wǎng)絡(luò)能量消耗,以提高網(wǎng)絡(luò)壽命[3]。但LEACH選舉簇頭節(jié)點存在隨機性,可能導(dǎo)致部分簇頭節(jié)點剩余能量低于某些普通節(jié)點。另外,LEACH采用簇頭與基站直接通信的方式,由于簇頭節(jié)點離基站位置遠近不一,發(fā)送相同數(shù)據(jù)包時,遠離基站的節(jié)點死亡較快。
1 LEACH算法以及不足
LEACH是一種低功耗自適應(yīng)分層路由算法,以“輪”的方式完成無線數(shù)據(jù)傳輸[4]。每輪分成簇建立階段和簇穩(wěn)定階段。在每輪初始階段進行簇頭選舉,簇頭選舉條件[5-6]如式(1)所示。其中,P為簇頭所占比例,r為當前輪數(shù),mod()為求余運算,G為節(jié)點集合。
所有節(jié)點產(chǎn)生一個0~1之間的隨機數(shù),如果這個值小于T(n),則該節(jié)點宣布成為簇頭,并且廣播簇頭消息,其他成員節(jié)點收到廣播消息后加入該簇。簇建立好之后,簇頭為該簇內(nèi)所有成員節(jié)點分配TDMA時間表,所有成員節(jié)點按照TDMA時間表向簇頭節(jié)點發(fā)送數(shù)據(jù)并進入穩(wěn)定階段[7]。在LEACH路由算法中,能量消耗模型是一階無線電模型[8],如圖1所示。
在無線傳輸距離門限d條件下,無線信道分為自由衰落模型和多徑衰落模型。在自由衰落模型下,節(jié)點發(fā)送k bit數(shù)據(jù)所消耗的能量如式(2)所示:
其中:Eelec是發(fā)送電路和接收電路消耗能量,εamp是放大電路放大數(shù)據(jù)所消耗能量。信號在無線信道中傳輸所消耗的能量與距離dr成正比[9]。根據(jù)兩個模型定義,直接傳輸會比多跳傳輸消耗更多能量[10]。簇頭節(jié)點在數(shù)據(jù)融合中需要消耗一定的能量,如式(5)所示:
在每一次選舉過程中,簇頭節(jié)點隨機從普通節(jié)點選舉出[11]。可能存在某些普通節(jié)點與簇頭節(jié)點保持較遠距離的情況。經(jīng)過一輪傳輸后,這些邊沿節(jié)點能量消耗遠遠大于靠近簇頭節(jié)點能量消耗。如果在某一輪簇頭選舉過程中,這些邊沿節(jié)點滿足式(1)中條件而成為簇頭,這樣會出現(xiàn)簇頭節(jié)點能量小于該簇內(nèi)某些其他成員節(jié)點的情況,不利于網(wǎng)絡(luò)通信。將網(wǎng)絡(luò)節(jié)點以基站為中心,按照離基站距離不同劃分到不同區(qū)域中,以多跳的方式轉(zhuǎn)發(fā)數(shù)據(jù)達到降低發(fā)送能耗的目的。本設(shè)計也是基于這兩點對LEACH路由協(xié)議進行改進。
2 LEACH協(xié)議改進及建模
為了選取剩余能量較多的節(jié)點擔任簇頭,在本設(shè)計中,簇頭節(jié)點選舉參考節(jié)點能量剩余因子。其選舉條件如式(6)所示:
其中:Esu為網(wǎng)絡(luò)節(jié)點消耗的能量總和,Eeu為網(wǎng)絡(luò)節(jié)點能量總和。節(jié)點能量剩余因子表征該網(wǎng)絡(luò)節(jié)點平均剩余量大小,范圍為0~1。節(jié)點的能量剩余因子越大,節(jié)點所消耗的能量越小,剩余能量越多。剩余能量越多的節(jié)點成為簇頭,則更有利于無線數(shù)據(jù)傳輸。
為了平衡網(wǎng)絡(luò)中簇頭節(jié)點能量消耗,根據(jù)基站與簇頭節(jié)點相對位置,劃分不同弧線區(qū)域:S3、S2和S1,如圖2所示。
網(wǎng)絡(luò)中所有節(jié)點隨機分布在長度為L的正方形區(qū)域內(nèi),基站位置為通過不同弧線將簇頭節(jié)點劃分到不同的區(qū)域中,每條弧線與基站距離分別為R1、R2和R3。通過多跳的方式避免遠距離傳輸無線數(shù)據(jù),達到降低能量消耗的目的。通過合理分配R1、R2和R3長度,可以平衡整個網(wǎng)絡(luò)簇頭節(jié)點能量消耗。由圖2可計算出第一根弧線所劃分的區(qū)域面積S1為:
其中,N為網(wǎng)絡(luò)中所有節(jié)點數(shù)量總和,k為比例因子。對于網(wǎng)絡(luò)中簇頭節(jié)點n來說,它發(fā)送長度為k時,所消耗的能量為:
其中,c為簇頭節(jié)點n所在弧線區(qū)域。對于每一個區(qū)域內(nèi)簇頭節(jié)點發(fā)送數(shù)據(jù)長度為k時,所消耗能量為:
為了達到網(wǎng)絡(luò)中簇頭節(jié)點能量消耗相互平衡,每一個區(qū)域內(nèi)簇頭節(jié)點所消耗的能量相近,即式(13)成立:
3 實驗結(jié)果與分析
為了分析LEACH改進后的有效性,使用MATLAB進行仿真。環(huán)境為隨機分布在100 m×100 m范圍內(nèi)的200個節(jié)點,如圖3所示。
圖4和圖5是改進前后算法在相同條件下仿真效果圖。圖4表示LEACH算法與改進算法在節(jié)點生命周期上的仿真。
由圖4可看出,LEACH算法與改進算法分別在632輪和806輪出現(xiàn)節(jié)點快速死亡。在節(jié)點剩余數(shù)量為10%時,LEACH算法與改進算法執(zhí)行輪數(shù)分別為974和1 482。充分說明改進算法能有效地延長網(wǎng)絡(luò)節(jié)點生命周期,并且降低節(jié)點死亡速率。
圖5表示在該兩種算法上,每輪網(wǎng)絡(luò)中無線數(shù)據(jù)通信量。
由于部分簇頭節(jié)點需借助其他簇頭節(jié)點轉(zhuǎn)發(fā)無線數(shù)據(jù),因此,改進算法每輪無線通信量約為改進前2倍。由圖4可以看出,在無線網(wǎng)絡(luò)通信量增加的情況下,網(wǎng)絡(luò)生命周期依然得到延長。說明無線網(wǎng)絡(luò)通信量增加所消耗能量小于簇頭節(jié)點采取轉(zhuǎn)發(fā)方式所節(jié)約的能耗??傮w而言減少了能量消耗,延長了網(wǎng)絡(luò)生命周期。
選舉出剩余能量較多的節(jié)點擔任簇頭節(jié)點,可避免簇頭節(jié)點提前死亡現(xiàn)象發(fā)生。簇頭節(jié)點發(fā)送數(shù)據(jù)由直接改為多跳,既降低了發(fā)送能耗,又平衡網(wǎng)絡(luò)中簇頭節(jié)點能量消耗。在提高整個網(wǎng)絡(luò)生命周期的前提下,避免了遠離基站的節(jié)點提前死亡的現(xiàn)象發(fā)生。仿真結(jié)果表明,通過改進簇頭選舉條件和采用多跳路由方式,使無線傳感器網(wǎng)絡(luò)生命周期得以延長。
參考文獻
[1] NAYEBI A,SARBAZI-AZAD H.Performance modeling of the LEACH protocol for mobile wireless sensor networks[J].Journal of Parallel and Distributed Computing,2011,71(6):812-821.
[2] MOHAMMAD B,AHMAD A K,ABDALLAH A E,et al.An energy-efficient threshold-based clustering protocol for wireless sensor networks[J].Wireless Personal Communications,2013,70(1):99-112.
[3] 蔣暢江,石為人,唐賢倫,等.能量均衡的無線傳感器網(wǎng)絡(luò)非均勻分簇路由協(xié)議[J].軟件學(xué)報,2012(5):1222-1232.
[4] Yao Liping,Li Xi,Ji Hong,et al.Systematic energy-balanced cooperative transmission scheme in wireless sensor networks[J].The Journal of China Universities of Posts and Telecommunications,2012(06):14-18.
[5] 李悅,孫力娟,王汝傳,等.一種改進的無線傳感器網(wǎng)絡(luò)LEACH算法[J].計算機研究與發(fā)展,2011,48(z2):131-134.
[6] 游曉黔,李明隆,楊佳,等.無線傳感器網(wǎng)絡(luò)LEACH協(xié)議的研究與改進[J].重慶郵電大學(xué)學(xué)報(自然科學(xué)版),2011,23(6):746-751.
[7] 呂濤,朱清新,張路橋,等.一種基于LEACH協(xié)議的改進算法[J].電子學(xué)報,2011,39(6):1405-1409.
[8] 王翊,范興剛,王萬良,等.基于混合量子進化算法的高效節(jié)能無線傳感器網(wǎng)絡(luò)路由算法[J].傳感技術(shù)學(xué)報,2011,24(2):253-258.
[9] 尚鳳軍,任東海.無線傳感器網(wǎng)絡(luò)中分布式多跳路由算法研究[J].傳感技術(shù)學(xué)報,2012,25(4):529-535.
[10] 尚鳳軍,雷陽.無線傳感器網(wǎng)絡(luò)能量有效成簇算法研究[J].小型微型計算機系統(tǒng),2009,30(5):839-842.
[11] Wu Mingming,Xu Wenbo.The research of multi-hop routing algorithm in the field of distributed wireless sensor network[C].10th International Symposium on Distributed Computing and Applications to Business,Engineering and Science,2011:234-238.