專利名稱:一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于無線傳感器網(wǎng)絡(luò)技術(shù)領(lǐng)域,涉及一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)的路由協(xié)議分為平面路由協(xié)議和分簇路由協(xié)議。平面路由協(xié)議的特點是算法簡單,易于實現(xiàn),節(jié)點間是對等的,原則上不存在瓶頸,健壯性較好,但一般需要犧牲存儲空間維持大量的路由表,還需要有控制信息維護(hù)路由,并且可擴(kuò)充性差,大量增加通信負(fù)擔(dān),造成信息冗余及擁塞,使得能量損耗大、延遲長,不適合大規(guī)模傳感器網(wǎng)絡(luò)的應(yīng)用。分簇路由的基本思想是通過簇頭對簇內(nèi)節(jié)點間的相關(guān)信息融合及轉(zhuǎn)發(fā)機(jī)制減少數(shù)據(jù)的傳輸量和距離,進(jìn)而降低通信能量,達(dá)到網(wǎng)絡(luò)節(jié)能的目的。低能量自適應(yīng)分群分層(Low Energy Adaptive Clustering Hierarchy, LEACH)算法是比較成熟且常用的分簇路由算法。它是第一個在無線傳感器網(wǎng)絡(luò)中提出的層次式路由協(xié)議,其后的大部分層次式路由協(xié)議都是在它的基礎(chǔ)上發(fā)展而來的。在LEACH算法中,更多的通信都是局限在簇的內(nèi)部,只有少數(shù)簇頭節(jié)點才和遠(yuǎn)處的基站進(jìn)行遠(yuǎn)距離通信,而且簇頭節(jié)點是隨機(jī)選擇并且定期更換,在一定程序上實現(xiàn)了節(jié)點的負(fù)載平衡,延長了網(wǎng)絡(luò)的生命周期,由于計算所需能耗要遠(yuǎn)遠(yuǎn)小于通信能耗,因此這項技術(shù)可以大大節(jié)約能量。但是LEACH算法也有它的不足之處,主要體現(xiàn)在(I)每輪都要先確定簇頭節(jié)點,然后建立簇,期間用于建立簇的通信開銷較大,而且LEACH算法的簇頭選舉機(jī)制沒有考慮到具體地理位置,這使得簇頭節(jié)點不能保證均勻地分布在整個網(wǎng)絡(luò)中,無法做到最優(yōu)。(2)簇頭的選舉是等概率產(chǎn)生的,沒有考慮到不同節(jié)點之間能量的差異。如果能量低的節(jié)點被選作簇頭,很容易導(dǎo)致能量耗盡而死亡,那么在這一輪中,整個簇?zé)o法通信,既不利于整個網(wǎng)絡(luò)的健壯性,也不利于網(wǎng)絡(luò)整體生命的延長。(3) LEACH的傳輸距離較遠(yuǎn),并且數(shù)據(jù)融合相對較少,這就要求傳輸更多的數(shù)據(jù)到更遠(yuǎn)的距離,從而加大了能量消耗。某些離基站很遠(yuǎn)的簇頭節(jié)點能量消耗更快,這將影響網(wǎng)絡(luò)的覆蓋范圍和生存時間。
發(fā)明內(nèi)容
針對LEACH算法的不足,提出了一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法,主要從以下兩個方面對LEACH算法進(jìn)行優(yōu)化和改進(jìn)通過選擇優(yōu)化簇頭節(jié)點的個數(shù)n2和選擇最優(yōu)節(jié)點作為簇頭來改善網(wǎng)絡(luò)質(zhì)量,降低網(wǎng)絡(luò)能量消耗,提高網(wǎng)絡(luò)的生命周期。所述簇頭節(jié)點個數(shù)n2的選擇依據(jù)發(fā)送數(shù)據(jù)消耗的能量、接收數(shù)據(jù)消耗的能量、簇頭節(jié)點消耗的能量,以及發(fā)送ADV消息所消耗的能量,用公式表示為Μ2χΝχεTI2 = \-α!~—(8)
\2π X (N X Eelec+samp xdaJ其中,M表示區(qū)域的寬度,N表示該區(qū)域均勻放置的節(jié)點數(shù)目,ε amp表示向單位面積發(fā)送Ibit數(shù)據(jù)時發(fā)射放大電路所消耗的能量,Eelec表示收發(fā)電路處理Ibit數(shù)據(jù)所消耗的能量,dadv表示簇頭節(jié)點的最遠(yuǎn)覆蓋距離。所述選擇最優(yōu)節(jié)點作為簇頭依據(jù)節(jié)點剩余能量、網(wǎng)絡(luò)平均剩余能量、節(jié)點上一輪消耗能量和網(wǎng)絡(luò)上一輪平均消耗能量,一個節(jié)點當(dāng)選為簇頭節(jié)點的概率用公式表示 為P'it) =-—(10)
l-Px[i modl/P] Eave Ecomume其中,P表示節(jié)點當(dāng)選為簇頭節(jié)點的初始概率,R表示之前節(jié)點沒有當(dāng)選為簇頭節(jié)點的輪數(shù),Eremain表示節(jié)點剩余的能量,Eave表示網(wǎng)絡(luò)平均剩余的能量,Econsume表示節(jié)點上一輪消耗的能量,Eave cons表示網(wǎng)絡(luò)上一輪平均消耗的能量。本發(fā)明的一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法,在一定程度上實現(xiàn)了簇頭節(jié)點分布平衡,能夠有效降低節(jié)點的能量消耗,延長網(wǎng)絡(luò)的生命周期,可廣泛適用于無線傳感器網(wǎng)絡(luò)。
下面結(jié)合附圖和實施例對本發(fā)明進(jìn)一步說明。圖I表示LEACH算法簇頭節(jié)點選取流程圖。圖2表示通信功耗模型。圖3表示P取不同值時LEACH算法的仿真結(jié)果。圖4是傳統(tǒng)LEACH算法和優(yōu)化后的ILEACH算法網(wǎng)絡(luò)生命周期的仿真結(jié)果比較。圖5是LEACH算法和ILEACH算法的網(wǎng)絡(luò)能耗的仿真結(jié)果比較。
具體實施例方式下面利用附圖和具體實施方式
對本發(fā)明作進(jìn)一步說明。參照圖1,本發(fā)明的一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法,按以下步驟進(jìn)行,新一輪開始時,判斷節(jié)點i是否已做過簇頭節(jié)點,若做過,則該節(jié)點成為普通節(jié)點,若沒有做過,查詢節(jié)點i的剩余能量、統(tǒng)計網(wǎng)絡(luò)的平均剩余能量、計算節(jié)點i的能量消耗速度、統(tǒng)計網(wǎng)絡(luò)的平均能量消耗速度,根據(jù)節(jié)點i的剩余能量、網(wǎng)絡(luò)的平均剩余能量、節(jié)點i的能量消耗速度和網(wǎng)絡(luò)的平均能量消耗速度確定閾值τα),生成一個大于ο小于I的隨機(jī)數(shù),判斷隨機(jī)數(shù)是否大于閾值T⑴,若是,則該節(jié)點成為普通節(jié)點,若否,則成為簇頭節(jié)點。在研究低功耗的無線通信時,不同的假設(shè)模型,不同的通信特征,對算法整體性能的影響很大。在LEACH算法的仿真過程中,使用的硬件能耗模型如附圖2所示。假設(shè)收發(fā)電路處理Ibit數(shù)據(jù)所消耗的能量Eele。= 50nJ/bit,向單位面積發(fā)送Ibit數(shù)據(jù)時發(fā)射放大電路所消耗的能量ε amp = 100pJ/bit/m2,則在發(fā)射節(jié)點和接收節(jié)點的距離為d時處理k比特的信號,發(fā)送消耗的總能量為Etx (k,d)。
ETx(k,d) = EelecXk+ ε ^pXkXd2(I)接收時消耗的總能量為EKX(k)。ERx(k) = EelecXk (2)從上面的公式可以看出,能量的消耗不僅與數(shù)據(jù)量的多少有關(guān),還與通信距離的長短有關(guān),因此為了減少能量的消耗,我們需要從兩個方面入手,既要通過數(shù)據(jù)融合減少所要傳輸?shù)臄?shù)據(jù)量,還要在設(shè)計算法時盡量減少傳輸?shù)木嚯x。由于ε amp << E+。,近似可認(rèn)為能量的消耗跟距離成正比,跟傳輸?shù)臄?shù)據(jù)量關(guān)系不太大,可以忽略。在選擇簇頭個數(shù)時,我們既希望在每一次的通信中消耗的總的能量最少,還想在整個網(wǎng)絡(luò)中均勻的分布所消耗的總能量?;诖?,假設(shè)有一個MXM的區(qū)域,在該區(qū)域內(nèi)較均勻地放置N個節(jié)點,在這N個節(jié)點中有η個簇頭節(jié)點,每個簇都將有一個簇頭節(jié)點和Ν/η-1個成員節(jié)點。一個簇頭節(jié)點一次接收和發(fā)送k比特的數(shù)據(jù)能量Eqi可表示為
eCH =kx Eeiec x (N/ η ~\) + k X EDA X N/ η + k X Eglec +kx εαιηρ X dl smk(3)其中,k表示每次傳輸?shù)臄?shù)據(jù)量,Eda表示簇頭節(jié)點進(jìn)行數(shù)據(jù)融合及數(shù)據(jù)壓縮所需要消耗的能量,dt0 sink表示簇頭節(jié)點到基站的距離,一個成員節(jié)點在每一次發(fā)送數(shù)據(jù)消耗的能量Emem可表示為Emem= k XEelec+k xsamp xdf0 CH(4)其中,dt0 是成員節(jié)點和簇頭節(jié)點的距離。在我們的假設(shè)前提下,簇是平均分布的,每個簇的面積大約為M2/n,那么節(jié)點在這個區(qū)域的分布密度為P =n/M2,假定每個簇所覆蓋的區(qū)域近似為一個圓形區(qū)域,圓的半徑為r = ^M2Zm,于是,整個網(wǎng)絡(luò)的總能量消耗
Etotal
可表示為Etotal =nx[ECH+(N/n-\)x Emem ]
-2kxEelecxN + kxNxEDA +nxkxsamp xdfosmk +NxkxsampxM2/2m(5)為了使網(wǎng)絡(luò)消耗的能量最小,可解得簇頭節(jié)點數(shù)量的最優(yōu)值為W1 = ^Ν/2π X M/dto smk(6)在上面選擇最優(yōu)簇頭節(jié)點數(shù)目時,并沒有將簇頭節(jié)點發(fā)送ADV消息的能耗考慮進(jìn)去,是不全面的。為此需要對上面提到的算法進(jìn)行一定的改進(jìn)。仍和上述假定的網(wǎng)絡(luò)環(huán)境一樣,那么簇頭節(jié)點在傳輸k比特數(shù)據(jù)所消耗的能量除了上述三種能量外還應(yīng)該包括發(fā)送ADV消息所消耗的能量,網(wǎng)絡(luò)總能量消耗Ettrtal表示為
Etotal-kx{nsamp X心 + iVX[( + 3)XEdec + εαηιρ xdl smt + Eda + Samp xM2/2皿]}(7)其中,dadv是簇頭節(jié)點的最遠(yuǎn)覆蓋距離。為了使網(wǎng)絡(luò)消耗的能量最小,解得改進(jìn)后的模型簇頭節(jié)點數(shù)量的最優(yōu)值為
I M2XNXSTi2 = \-,~—(8)
\2π X (N X Eelec+samp xdaJ改進(jìn)后的最優(yōu)簇頭節(jié)點個數(shù)既考慮了數(shù)據(jù)融合的能量消耗,又考慮到距離的遠(yuǎn)近對能量的消耗,因而比原有的簇頭數(shù)目更能夠降低整體網(wǎng)絡(luò)的能耗,延長網(wǎng)絡(luò)的生命周期。在LEACH協(xié)議中,節(jié)點能否當(dāng)選為簇頭節(jié)點主要跟兩個因素有關(guān),第一該節(jié)點在過去的R輪中是否當(dāng)過簇頭節(jié)點;第二該節(jié)點隨機(jī)產(chǎn)生的(0,1)之間的數(shù)是否小于閾值T (i)。在第R+1輪中假設(shè)節(jié)點i被選定為簇頭節(jié)點的概率為Pi (t),通過設(shè)定Pi (t)的值來保證本輪產(chǎn)生的簇頭節(jié)點數(shù)為k,當(dāng)選的概率表示為
~ P.eG
P^t) = < l-i5x[i modl/JP](9)
[ο其他其中,P表示節(jié)點當(dāng)選為簇頭節(jié)點的初始概率,G表示在過去Rmod (N/k)輪中沒有 擔(dān)任過簇頭節(jié)點的節(jié)點集合。在原來的LEACH算法中,簇頭節(jié)點的選擇方法并不能保證能量消耗均勻地分布在整個網(wǎng)絡(luò)中,所以對LEACH的簇頭選擇方式進(jìn)行改進(jìn),將節(jié)點剩余能量、網(wǎng)絡(luò)平均剩余能量、節(jié)點上一輪消耗能量、網(wǎng)絡(luò)上一輪平均消耗能量四個參數(shù)加入到簇頭選取的過程中。這樣就能將剩余能量比較低的節(jié)點去掉,不讓那些節(jié)點當(dāng)簇頭節(jié)點。那么一個節(jié)點當(dāng)選為簇頭節(jié)點的概率為P'(t) =-廠^——(10)
1 I-P X iimod 1/i5 E E
L/ Javeconsume其中,Eremain表示節(jié)點剩余的能量,Eave表示網(wǎng)絡(luò)平均剩余的能量,Econsume表示節(jié)點上一輪消耗的能量,Eave cons表示網(wǎng)絡(luò)上一輪平均消耗的能量。改進(jìn)后的最終方案引入了節(jié)點剩余能量、網(wǎng)絡(luò)平均剩余能量、節(jié)點上一輪消耗能量、網(wǎng)絡(luò)上一輪平均消耗能量四個參數(shù)。如果網(wǎng)絡(luò)的平均能量比一個節(jié)點的剩余能量高,那么它被選為簇頭節(jié)點的的概率也將大大降低,反之則大大提高。同時,如果網(wǎng)絡(luò)平均消耗的能量比一個節(jié)點在一輪消耗的能量比要多,那么該節(jié)點能成為簇頭節(jié)點的概率會增大。而且,這個方案還能保證每一輪中選出的簇頭節(jié)點數(shù)符合要求的期望值。為了驗證改進(jìn)算法的可行性,本文用MATLAB仿真平臺,把改進(jìn)的ILEACH算法和LEACH算法做比較。在仿真環(huán)境中,無線傳感器網(wǎng)絡(luò)包括I個基站和100個節(jié)點,節(jié)點隨機(jī)分布在100X100的范圍內(nèi),仿真網(wǎng)絡(luò)中的主要參數(shù)值如表I所示。表I網(wǎng)絡(luò)主要參數(shù)
參數(shù)描述數(shù)值
P群首所占比例Sll~
E0節(jié)點初始能量0.25J
Eelec收發(fā)電路處理Ibit數(shù)據(jù)所消耗的能量50nJ/bit
Eba進(jìn)行數(shù)據(jù)融合及數(shù)據(jù)壓縮所需要的能量SnJ/lnt
發(fā)射放大電路向單位面積發(fā)送Ibk數(shù)據(jù)所消耗的能 in T/U.w 2
famp量10pJ/bit/m圖3表示P取不同值時算法的仿真結(jié)果,其中橫坐標(biāo)表示整個網(wǎng)絡(luò)工作的輪數(shù),縱坐標(biāo)表示每輪結(jié)束后,網(wǎng)絡(luò)中處于存活狀態(tài)的傳感器節(jié)點數(shù)。從圖中可以看出,當(dāng)P = O. 05時,網(wǎng)絡(luò)大概在工作600輪時開始出現(xiàn)死亡節(jié)點,工作1200輪時,所有節(jié)點死亡,網(wǎng)絡(luò)癱瘓由于其他情況,故本仿真模型中P取O. 05。圖4是兩種算法網(wǎng)絡(luò)生命周期的仿真結(jié)果。標(biāo)識為ILEACH的曲線為改進(jìn)后的LEACH算法。橫坐標(biāo)表示網(wǎng)絡(luò)工作的輪數(shù),縱坐標(biāo)表示每一輪結(jié)束后,網(wǎng)絡(luò)中處于死亡狀態(tài)(即剩余能量等于零)的節(jié)點個數(shù)。從圖中可以看出,采用LEACH算法在第520輪開始出現(xiàn)節(jié)點死亡,采用改進(jìn)后的LEACH算法在610輪出現(xiàn)節(jié)點死亡;LEACH算法在1204輪節(jié)點全部死亡,ILEACH在1400輪節(jié)點全部死亡??梢姡倪M(jìn)后的LEACH算法由于考慮了分群數(shù)量均衡和簇頭節(jié)點位置信息,從而使整個網(wǎng)絡(luò)分簇更加合理,節(jié)省了能量有效地延長整個網(wǎng)絡(luò)的生命周期。圖5給出了 LEACH和ILEACH的網(wǎng)絡(luò)能耗的仿真比較結(jié)果。橫坐標(biāo)表示網(wǎng)絡(luò)工作的輪數(shù),縱坐標(biāo)表示當(dāng)前輪總共消耗的能量。采用LEACH算法在第610輪開始出現(xiàn)節(jié)點死亡,消耗的能量為19. 7J,而對應(yīng)的ILEACH算法,此時的能耗只有16. 8J,在這一階段能耗降低了 14. 7%,可見,改進(jìn)的LEACH算法,在能量節(jié)省方面顯示出極大的優(yōu)越性。
權(quán)利要求
1.一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法,其特征是通過優(yōu)化簇頭節(jié)點的個數(shù)H2和優(yōu)化節(jié)點作為簇頭節(jié)點的概率<(0來改善網(wǎng)絡(luò)質(zhì)量,降低網(wǎng)絡(luò)能量消耗,提高網(wǎng)絡(luò)的生命周期,所述簇頭節(jié)點個數(shù)n2的選擇依據(jù)發(fā)送數(shù)據(jù)消耗的能量、接收數(shù)據(jù)消耗的能量、簇頭節(jié)點消耗的能量,以及發(fā)送ADV消息所消耗的能量,用公式表示為
全文摘要
本發(fā)明是一種基于能量消耗的無線傳感器網(wǎng)絡(luò)路由優(yōu)化算法,其特點是通過選擇優(yōu)化簇頭節(jié)點的個數(shù)和選擇最優(yōu)節(jié)點作為簇頭來改善網(wǎng)絡(luò)質(zhì)量,降低網(wǎng)絡(luò)能量消耗,提高網(wǎng)絡(luò)的生命周期,所述簇頭節(jié)點個數(shù)的選擇依據(jù)發(fā)送數(shù)據(jù)消耗的能量、接收數(shù)據(jù)消耗的能量、簇頭節(jié)點消耗的能量,以及發(fā)送ADV消息所消耗的能量,所述選擇最優(yōu)節(jié)點作為簇頭依據(jù)節(jié)點剩余能量、網(wǎng)絡(luò)平均剩余能量、節(jié)點上一輪消耗能量和網(wǎng)絡(luò)上一輪平均消耗能量。本發(fā)明在一定程度上實現(xiàn)了簇頭節(jié)點分布平衡,能夠有效降低節(jié)點的能量消耗,延長網(wǎng)絡(luò)的生命周期,可廣泛適用于無線傳感器網(wǎng)絡(luò)。
文檔編號H04W84/18GK102802175SQ20121004319
公開日2012年11月28日 申請日期2012年2月24日 優(yōu)先權(quán)日2012年2月24日
發(fā)明者李建坡, 陳曉娟, 曲朝陽, 鄔春明, 趙立權(quán), 王青竹, 朱緒寧 申請人:東北電力大學(xué)