《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于能量?jī)?yōu)化的LEACH路由協(xié)議改進(jìn)
基于能量?jī)?yōu)化的LEACH路由協(xié)議改進(jìn)
2014年電子技術(shù)應(yīng)用第9期
曾 閔1,江 虹1,,陳 帥2,,周英平2
1.西南科技大學(xué) 信息工程學(xué)院,四川 綿陽(yáng)621010,; 2.第二炮兵裝備部駐重慶地區(qū)軍事代表局,,重慶400039
摘要: 針對(duì)LEACH路由算法中簇頭選舉隨機(jī)性和簇頭與基站直接通信導(dǎo)致能量消耗過(guò)快且不平衡的特點(diǎn),提出新的改進(jìn)算法,,以達(dá)到降低能耗目的,。在改進(jìn)算法中,簇頭剩余能量高于網(wǎng)絡(luò)平均能量,。根據(jù)簇頭節(jié)點(diǎn)與基站的相對(duì)位置劃分不同區(qū)域,簇頭節(jié)點(diǎn)發(fā)送數(shù)據(jù)采用多跳方式,,避免簇頭節(jié)點(diǎn)能量消耗過(guò)快,,達(dá)到平衡網(wǎng)絡(luò)能量消耗的目的。仿真表明,,通過(guò)改進(jìn)簇頭選舉條件和采用多跳路由的方式,,即使在數(shù)據(jù)通信量增加的情況下,依然能夠延長(zhǎng)網(wǎng)絡(luò)通信時(shí)間,。
中圖分類(lèi)號(hào): TP393
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)09-0108-03
An improvement of LEACH for energy optimization
Zeng Min1,,Jiang Hong1,Chen Shuai2,,Zhou Yingping2
1.School of Information Engineering,,Southwest University of Science and Technology,Mianyang 621010,,China,;2.Chongqing Agent of Second Artillery Corps,Chongqing 400039,,China
Abstract: In the LEACH routing algorithm, cluster head nodes are elected randomly and communicate with the base station directly. This mechanism leads to energy consumption of nodes too fast and unequal. We propose an improved cluster head nodes election method and multi-hop routing algorithm. In our improved protocol, the cluster head nodes have more residual energy than the average energy of the network. Cluster head nodes are divided into different areas according to different position relationship with the base station. The cluster head nodes are far away from the base station transmit data by multi-hop in order to avoid transmitting with high power consumption. Simulation results show that the cluster nodes can extend wireless sensor network lifetime, even though the wireless network data traffic increases.
Key words : wireless sensor network,;LEACH,;cluster selector;multi-hop routing

    無(wú)線(xiàn)傳感器網(wǎng)絡(luò)[1]是由大量無(wú)線(xiàn)感知節(jié)點(diǎn)構(gòu)成,。LEACH[2]則是針對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)而提出的路由算法,。該算法將節(jié)點(diǎn)通過(guò)定期選舉簇頭節(jié)點(diǎn)分擔(dān)無(wú)線(xiàn)網(wǎng)絡(luò)通信,均衡網(wǎng)絡(luò)能量消耗,,以提高網(wǎng)絡(luò)壽命[3],。但LEACH選舉簇頭節(jié)點(diǎn)存在隨機(jī)性,可能導(dǎo)致部分簇頭節(jié)點(diǎn)剩余能量低于某些普通節(jié)點(diǎn),。另外,,LEACH采用簇頭與基站直接通信的方式,由于簇頭節(jié)點(diǎn)離基站位置遠(yuǎn)近不一,,發(fā)送相同數(shù)據(jù)包時(shí),,遠(yuǎn)離基站的節(jié)點(diǎn)死亡較快。

1 LEACH算法以及不足

    LEACH是一種低功耗自適應(yīng)分層路由算法,,以“輪”的方式完成無(wú)線(xiàn)數(shù)據(jù)傳輸[4],。每輪分成簇建立階段和簇穩(wěn)定階段。在每輪初始階段進(jìn)行簇頭選舉,,簇頭選舉條件[5-6]如式(1)所示,。其中,P為簇頭所占比例,,r為當(dāng)前輪數(shù),,mod()為求余運(yùn)算,G為節(jié)點(diǎn)集合,。

    tx7-gs1.gif

    所有節(jié)點(diǎn)產(chǎn)生一個(gè)0~1之間的隨機(jī)數(shù),,如果這個(gè)值小于T(n),則該節(jié)點(diǎn)宣布成為簇頭,,并且廣播簇頭消息,,其他成員節(jié)點(diǎn)收到廣播消息后加入該簇。簇建立好之后,,簇頭為該簇內(nèi)所有成員節(jié)點(diǎn)分配TDMA時(shí)間表,,所有成員節(jié)點(diǎn)按照TDMA時(shí)間表向簇頭節(jié)點(diǎn)發(fā)送數(shù)據(jù)并進(jìn)入穩(wěn)定階段[7]。在LEACH路由算法中,,能量消耗模型是一階無(wú)線(xiàn)電模型[8],,如圖1所示。

tx7-t1.gif

    在無(wú)線(xiàn)傳輸距離門(mén)限d條件下,,無(wú)線(xiàn)信道分為自由衰落模型和多徑衰落模型,。在自由衰落模型下,節(jié)點(diǎn)發(fā)送k bit數(shù)據(jù)所消耗的能量如式(2)所示:

tx7-gs2-4.gif

其中:Eelec是發(fā)送電路和接收電路消耗能量,,εamp是放大電路放大數(shù)據(jù)所消耗能量,。信號(hào)在無(wú)線(xiàn)信道中傳輸所消耗的能量與距離dr成正比[9],。根據(jù)兩個(gè)模型定義,直接傳輸會(huì)比多跳傳輸消耗更多能量[10],。簇頭節(jié)點(diǎn)在數(shù)據(jù)融合中需要消耗一定的能量,,如式(5)所示:

    tx7-gs5.gif

    在每一次選舉過(guò)程中,簇頭節(jié)點(diǎn)隨機(jī)從普通節(jié)點(diǎn)選舉出[11],??赡艽嬖谀承┢胀ü?jié)點(diǎn)與簇頭節(jié)點(diǎn)保持較遠(yuǎn)距離的情況。經(jīng)過(guò)一輪傳輸后,,這些邊沿節(jié)點(diǎn)能量消耗遠(yuǎn)遠(yuǎn)大于靠近簇頭節(jié)點(diǎn)能量消耗,。如果在某一輪簇頭選舉過(guò)程中,這些邊沿節(jié)點(diǎn)滿(mǎn)足式(1)中條件而成為簇頭,,這樣會(huì)出現(xiàn)簇頭節(jié)點(diǎn)能量小于該簇內(nèi)某些其他成員節(jié)點(diǎn)的情況,不利于網(wǎng)絡(luò)通信,。將網(wǎng)絡(luò)節(jié)點(diǎn)以基站為中心,,按照離基站距離不同劃分到不同區(qū)域中,以多跳的方式轉(zhuǎn)發(fā)數(shù)據(jù)達(dá)到降低發(fā)送能耗的目的,。本設(shè)計(jì)也是基于這兩點(diǎn)對(duì)LEACH路由協(xié)議進(jìn)行改進(jìn),。

2 LEACH協(xié)議改進(jìn)及建模

    為了選取剩余能量較多的節(jié)點(diǎn)擔(dān)任簇頭,在本設(shè)計(jì)中,,簇頭節(jié)點(diǎn)選舉參考節(jié)點(diǎn)能量剩余因子,。其選舉條件如式(6)所示:

    tx7-gs6.gif

其中:Esu為網(wǎng)絡(luò)節(jié)點(diǎn)消耗的能量總和,Eeu為網(wǎng)絡(luò)節(jié)點(diǎn)能量總和,。節(jié)點(diǎn)能量剩余因子tx7-gs6-1.gif表征該網(wǎng)絡(luò)節(jié)點(diǎn)平均剩余量大小,,范圍為0~1。節(jié)點(diǎn)的能量剩余因子越大,,節(jié)點(diǎn)所消耗的能量越小,,剩余能量越多。剩余能量越多的節(jié)點(diǎn)成為簇頭,,則更有利于無(wú)線(xiàn)數(shù)據(jù)傳輸,。

    為了平衡網(wǎng)絡(luò)中簇頭節(jié)點(diǎn)能量消耗,根據(jù)基站與簇頭節(jié)點(diǎn)相對(duì)位置,,劃分不同弧線(xiàn)區(qū)域:S3,、S2和S1,如圖2所示,。

tx7-t2.gif

    網(wǎng)絡(luò)中所有節(jié)點(diǎn)隨機(jī)分布在長(zhǎng)度為L(zhǎng)的正方形區(qū)域內(nèi),,基站位置為tx7-gs6-2.gif通過(guò)不同弧線(xiàn)將簇頭節(jié)點(diǎn)劃分到不同的區(qū)域中,每條弧線(xiàn)與基站距離分別為R1,、R2和R3,。通過(guò)多跳的方式避免遠(yuǎn)距離傳輸無(wú)線(xiàn)數(shù)據(jù),,達(dá)到降低能量消耗的目的。通過(guò)合理分配R1,、R2和R3長(zhǎng)度,,可以平衡整個(gè)網(wǎng)絡(luò)簇頭節(jié)點(diǎn)能量消耗。由圖2可計(jì)算出第一根弧線(xiàn)所劃分的區(qū)域面積S1為:

tx7-gs7-10.gif

其中,,N為網(wǎng)絡(luò)中所有節(jié)點(diǎn)數(shù)量總和,,k為比例因子。對(duì)于網(wǎng)絡(luò)中簇頭節(jié)點(diǎn)n來(lái)說(shuō),,它發(fā)送長(zhǎng)度為k時(shí),,所消耗的能量為:

tx7-gs11.gif

其中,c為簇頭節(jié)點(diǎn)n所在弧線(xiàn)區(qū)域,。對(duì)于每一個(gè)區(qū)域內(nèi)簇頭節(jié)點(diǎn)發(fā)送數(shù)據(jù)長(zhǎng)度為k時(shí),,所消耗能量為:

tx7-gs12.gif

    為了達(dá)到網(wǎng)絡(luò)中簇頭節(jié)點(diǎn)能量消耗相互平衡,每一個(gè)區(qū)域內(nèi)簇頭節(jié)點(diǎn)所消耗的能量相近,,即式(13)成立:

    tx7-gs13.gif

3 實(shí)驗(yàn)結(jié)果與分析

    為了分析LEACH改進(jìn)后的有效性,,使用MATLAB進(jìn)行仿真。環(huán)境為隨機(jī)分布在100 m×100 m范圍內(nèi)的200個(gè)節(jié)點(diǎn),,如圖3所示,。

tx7-t3.gif

    圖4和圖5是改進(jìn)前后算法在相同條件下仿真效果圖。圖4表示LEACH算法與改進(jìn)算法在節(jié)點(diǎn)生命周期上的仿真,。

tx7-t4.gif

tx7-t5.gif

    由圖4可看出,,LEACH算法與改進(jìn)算法分別在632輪和806輪出現(xiàn)節(jié)點(diǎn)快速死亡。在節(jié)點(diǎn)剩余數(shù)量為10%時(shí),,LEACH算法與改進(jìn)算法執(zhí)行輪數(shù)分別為974和1 482,。充分說(shuō)明改進(jìn)算法能有效地延長(zhǎng)網(wǎng)絡(luò)節(jié)點(diǎn)生命周期,并且降低節(jié)點(diǎn)死亡速率,。

    圖5表示在該兩種算法上,,每輪網(wǎng)絡(luò)中無(wú)線(xiàn)數(shù)據(jù)通信量。

    由于部分簇頭節(jié)點(diǎn)需借助其他簇頭節(jié)點(diǎn)轉(zhuǎn)發(fā)無(wú)線(xiàn)數(shù)據(jù),,因此,,改進(jìn)算法每輪無(wú)線(xiàn)通信量約為改進(jìn)前2倍。由圖4可以看出,,在無(wú)線(xiàn)網(wǎng)絡(luò)通信量增加的情況下,,網(wǎng)絡(luò)生命周期依然得到延長(zhǎng)。說(shuō)明無(wú)線(xiàn)網(wǎng)絡(luò)通信量增加所消耗能量小于簇頭節(jié)點(diǎn)采取轉(zhuǎn)發(fā)方式所節(jié)約的能耗,??傮w而言減少了能量消耗,延長(zhǎng)了網(wǎng)絡(luò)生命周期,。

    選舉出剩余能量較多的節(jié)點(diǎn)擔(dān)任簇頭節(jié)點(diǎn),,可避免簇頭節(jié)點(diǎn)提前死亡現(xiàn)象發(fā)生,。簇頭節(jié)點(diǎn)發(fā)送數(shù)據(jù)由直接改為多跳,既降低了發(fā)送能耗,,又平衡網(wǎng)絡(luò)中簇頭節(jié)點(diǎn)能量消耗,。在提高整個(gè)網(wǎng)絡(luò)生命周期的前提下,避免了遠(yuǎn)離基站的節(jié)點(diǎn)提前死亡的現(xiàn)象發(fā)生,。仿真結(jié)果表明,,通過(guò)改進(jìn)簇頭選舉條件和采用多跳路由方式,使無(wú)線(xiàn)傳感器網(wǎng)絡(luò)生命周期得以延長(zhǎng),。

參考文獻(xiàn)

[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ú)線(xiàn)傳感器網(wǎng)絡(luò)非均勻分簇路由協(xié)議[J].軟件學(xué)報(bào),,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] 李?lèi)?,孫力娟,,王汝傳,等.一種改進(jìn)的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)LEACH算法[J].計(jì)算機(jī)研究與發(fā)展,,2011,,48(z2):131-134.

[6] 游曉黔,李明隆,,楊佳,,等.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)LEACH協(xié)議的研究與改進(jìn)[J].重慶郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,,23(6):746-751.

[7] 呂濤,,朱清新,張路橋,,等.一種基于LEACH協(xié)議的改進(jìn)算法[J].電子學(xué)報(bào),,2011,,39(6):1405-1409.

[8] 王翊,范興剛,,王萬(wàn)良,,等.基于混合量子進(jìn)化算法的高效節(jié)能無(wú)線(xiàn)傳感器網(wǎng)絡(luò)路由算法[J].傳感技術(shù)學(xué)報(bào),2011,,24(2):253-258.

[9] 尚鳳軍,,任東海.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中分布式多跳路由算法研究[J].傳感技術(shù)學(xué)報(bào),2012,,25(4):529-535.

[10] 尚鳳軍,,雷陽(yáng).無(wú)線(xiàn)傳感器網(wǎng)絡(luò)能量有效成簇算法研究[J].小型微型計(jì)算機(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.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。