文獻標識碼: A
文章編號: 0258-7998(2014)09-0108-03
無線傳感器網絡[1]是由大量無線感知節點構成。LEACH[2]則是針對無線傳感器網絡而提出的路由算法。該算法將節點通過定期選舉簇頭節點分擔無線網絡通信,均衡網絡能量消耗,以提高網絡壽命[3]。但LEACH選舉簇頭節點存在隨機性,可能導致部分簇頭節點剩余能量低于某些普通節點。另外,LEACH采用簇頭與基站直接通信的方式,由于簇頭節點離基站位置遠近不一,發送相同數據包時,遠離基站的節點死亡較快。
1 LEACH算法以及不足
LEACH是一種低功耗自適應分層路由算法,以“輪”的方式完成無線數據傳輸[4]。每輪分成簇建立階段和簇穩定階段。在每輪初始階段進行簇頭選舉,簇頭選舉條件[5-6]如式(1)所示。其中,P為簇頭所占比例,r為當前輪數,mod()為求余運算,G為節點集合。
所有節點產生一個0~1之間的隨機數,如果這個值小于T(n),則該節點宣布成為簇頭,并且廣播簇頭消息,其他成員節點收到廣播消息后加入該簇。簇建立好之后,簇頭為該簇內所有成員節點分配TDMA時間表,所有成員節點按照TDMA時間表向簇頭節點發送數據并進入穩定階段[7]。在LEACH路由算法中,能量消耗模型是一階無線電模型[8],如圖1所示。
在無線傳輸距離門限d條件下,無線信道分為自由衰落模型和多徑衰落模型。在自由衰落模型下,節點發送k bit數據所消耗的能量如式(2)所示:
其中:Eelec是發送電路和接收電路消耗能量,εamp是放大電路放大數據所消耗能量。信號在無線信道中傳輸所消耗的能量與距離dr成正比[9]。根據兩個模型定義,直接傳輸會比多跳傳輸消耗更多能量[10]。簇頭節點在數據融合中需要消耗一定的能量,如式(5)所示:
在每一次選舉過程中,簇頭節點隨機從普通節點選舉出[11]。可能存在某些普通節點與簇頭節點保持較遠距離的情況。經過一輪傳輸后,這些邊沿節點能量消耗遠遠大于靠近簇頭節點能量消耗。如果在某一輪簇頭選舉過程中,這些邊沿節點滿足式(1)中條件而成為簇頭,這樣會出現簇頭節點能量小于該簇內某些其他成員節點的情況,不利于網絡通信。將網絡節點以基站為中心,按照離基站距離不同劃分到不同區域中,以多跳的方式轉發數據達到降低發送能耗的目的。本設計也是基于這兩點對LEACH路由協議進行改進。
2 LEACH協議改進及建模
為了選取剩余能量較多的節點擔任簇頭,在本設計中,簇頭節點選舉參考節點能量剩余因子。其選舉條件如式(6)所示:
其中:Esu為網絡節點消耗的能量總和,Eeu為網絡節點能量總和。節點能量剩余因子表征該網絡節點平均剩余量大小,范圍為0~1。節點的能量剩余因子越大,節點所消耗的能量越小,剩余能量越多。剩余能量越多的節點成為簇頭,則更有利于無線數據傳輸。
為了平衡網絡中簇頭節點能量消耗,根據基站與簇頭節點相對位置,劃分不同弧線區域:S3、S2和S1,如圖2所示。
網絡中所有節點隨機分布在長度為L的正方形區域內,基站位置為通過不同弧線將簇頭節點劃分到不同的區域中,每條弧線與基站距離分別為R1、R2和R3。通過多跳的方式避免遠距離傳輸無線數據,達到降低能量消耗的目的。通過合理分配R1、R2和R3長度,可以平衡整個網絡簇頭節點能量消耗。由圖2可計算出第一根弧線所劃分的區域面積S1為:
其中,N為網絡中所有節點數量總和,k為比例因子。對于網絡中簇頭節點n來說,它發送長度為k時,所消耗的能量為:
其中,c為簇頭節點n所在弧線區域。對于每一個區域內簇頭節點發送數據長度為k時,所消耗能量為:
為了達到網絡中簇頭節點能量消耗相互平衡,每一個區域內簇頭節點所消耗的能量相近,即式(13)成立:
3 實驗結果與分析
為了分析LEACH改進后的有效性,使用MATLAB進行仿真。環境為隨機分布在100 m×100 m范圍內的200個節點,如圖3所示。
圖4和圖5是改進前后算法在相同條件下仿真效果圖。圖4表示LEACH算法與改進算法在節點生命周期上的仿真。
由圖4可看出,LEACH算法與改進算法分別在632輪和806輪出現節點快速死亡。在節點剩余數量為10%時,LEACH算法與改進算法執行輪數分別為974和1 482。充分說明改進算法能有效地延長網絡節點生命周期,并且降低節點死亡速率。
圖5表示在該兩種算法上,每輪網絡中無線數據通信量。
由于部分簇頭節點需借助其他簇頭節點轉發無線數據,因此,改進算法每輪無線通信量約為改進前2倍。由圖4可以看出,在無線網絡通信量增加的情況下,網絡生命周期依然得到延長。說明無線網絡通信量增加所消耗能量小于簇頭節點采取轉發方式所節約的能耗。總體而言減少了能量消耗,延長了網絡生命周期。
選舉出剩余能量較多的節點擔任簇頭節點,可避免簇頭節點提前死亡現象發生。簇頭節點發送數據由直接改為多跳,既降低了發送能耗,又平衡網絡中簇頭節點能量消耗。在提高整個網絡生命周期的前提下,避免了遠離基站的節點提前死亡的現象發生。仿真結果表明,通過改進簇頭選舉條件和采用多跳路由方式,使無線傳感器網絡生命周期得以延長。
參考文獻
[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] 蔣暢江,石為人,唐賢倫,等.能量均衡的無線傳感器網絡非均勻分簇路由協議[J].軟件學報,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] 李悅,孫力娟,王汝傳,等.一種改進的無線傳感器網絡LEACH算法[J].計算機研究與發展,2011,48(z2):131-134.
[6] 游曉黔,李明隆,楊佳,等.無線傳感器網絡LEACH協議的研究與改進[J].重慶郵電大學學報(自然科學版),2011,23(6):746-751.
[7] 呂濤,朱清新,張路橋,等.一種基于LEACH協議的改進算法[J].電子學報,2011,39(6):1405-1409.
[8] 王翊,范興剛,王萬良,等.基于混合量子進化算法的高效節能無線傳感器網絡路由算法[J].傳感技術學報,2011,24(2):253-258.
[9] 尚鳳軍,任東海.無線傳感器網絡中分布式多跳路由算法研究[J].傳感技術學報,2012,25(4):529-535.
[10] 尚鳳軍,雷陽.無線傳感器網絡能量有效成簇算法研究[J].小型微型計算機系統,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.