廖惜春,楊志高,任敬哲
(五邑大學(xué)信息與通信工程學(xué)院,廣東江門529020)
無(wú)線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)是物聯(lián)網(wǎng)應(yīng)用系統(tǒng)中的關(guān)鍵技術(shù)之一。它由部署在監(jiān)測(cè)區(qū)域內(nèi)大量的傳感器節(jié)點(diǎn)組成,所有節(jié)點(diǎn)采用能量同構(gòu)、具有一定計(jì)算能力的模塊組成,采集環(huán)境中的數(shù)據(jù),并通過(guò)無(wú)線的方式將信息傳播給Sink節(jié)點(diǎn)。最早提出的分簇路由算法是LEACH(Low-Energy Adaptive Clustering Hierarchy)[1]。
經(jīng)過(guò)國(guó)內(nèi)外研究人員多年的努力,已經(jīng)在LEACH算法的基礎(chǔ)上做出了多種路由改進(jìn)算法。文獻(xiàn)[2]提出了一種由節(jié)點(diǎn)剩余能量與睡眠控制的改進(jìn)算法,該算法通過(guò)在網(wǎng)絡(luò)成簇階段降低能量低的節(jié)點(diǎn)被選為簇頭的概率,在穩(wěn)定階段使簇頭盡可能多地保持睡眠狀態(tài),從而降低網(wǎng)絡(luò)能耗。但是該算法對(duì)于網(wǎng)絡(luò)聲明周期的延長(zhǎng)不太明顯。文獻(xiàn)[3]中針對(duì)熱區(qū)問(wèn)題進(jìn)行改進(jìn),提出一種非均勻的分簇方式,即離Sink節(jié)點(diǎn)近的簇不斷縮小,該算法可均衡網(wǎng)絡(luò)能耗,但算法過(guò)于復(fù)雜,控制開銷大。文獻(xiàn)[4]中提出一種雙簇頭的路由算法,算法主要由主簇頭收集簇內(nèi)成員信息,再將數(shù)據(jù)發(fā)送給副簇頭,待數(shù)據(jù)融合后將數(shù)據(jù)傳給Sink節(jié)點(diǎn),此算法將接收與融合的步驟分開,避免了單個(gè)簇頭大信息量傳輸?shù)呢?fù)擔(dān),但數(shù)據(jù)從主簇頭到副簇頭的傳輸,造成額外的耗能較大。文獻(xiàn)[5]提出了一種節(jié)點(diǎn)定位的雙Sink節(jié)點(diǎn)算法,算法有效地提高了網(wǎng)絡(luò)的性能,延長(zhǎng)了整個(gè)網(wǎng)絡(luò)的生命周期。但是該算法使用的雙Sink節(jié)點(diǎn),加大了網(wǎng)絡(luò)的硬件開銷,且需實(shí)現(xiàn)網(wǎng)絡(luò)粗定位,增加了算法的復(fù)雜度。最主要的是該算法的檢測(cè)區(qū)域限于正方形區(qū)域,實(shí)用性較低。
綜上所述,LEACH分簇算法目前仍然需要廣大學(xué)者做出相應(yīng)的研究與改進(jìn)。本文在研究和分析LEACH算法以及后續(xù)研究人員的改進(jìn)算法的基礎(chǔ)上提出了基于空間信息與梯度的WSN分簇路由算法。
LEACH分層路由算法的目的是最小化網(wǎng)絡(luò)能耗[3]。該算法通過(guò)隨機(jī)選擇簇頭節(jié)點(diǎn)收集網(wǎng)絡(luò)中的數(shù)據(jù)信息,從而使節(jié)點(diǎn)平均分擔(dān)網(wǎng)絡(luò)中數(shù)據(jù)傳輸和能量消耗,延長(zhǎng)網(wǎng)絡(luò)的生命周期,其網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
LEACH算法分為準(zhǔn)備階段和數(shù)據(jù)傳輸階段,這兩個(gè)階段構(gòu)成一個(gè)輪回。在準(zhǔn)備階段,檢測(cè)區(qū)域中節(jié)點(diǎn)產(chǎn)生一個(gè)0~1之間的隨機(jī)數(shù),并將這個(gè)隨機(jī)數(shù)同每輪的閾值T(n)作比較,如果節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù)小于此閾值T(n),該節(jié)點(diǎn)就被選為簇頭。閾值的大小為
圖1 LEACH算法網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
式中:p是檢測(cè)區(qū)域中簇頭所占的比例;r是指當(dāng)前網(wǎng)絡(luò)進(jìn)行簇頭選舉的輪數(shù);G是指在本輪之前的1/p輪中沒(méi)有被選為簇頭的節(jié)點(diǎn)集合;mod是求模運(yùn)算符號(hào)。這樣就保證了監(jiān)測(cè)區(qū)域中所有節(jié)點(diǎn)都有當(dāng)選簇頭的機(jī)會(huì)。簇頭節(jié)點(diǎn)選定后,簇頭節(jié)點(diǎn)全網(wǎng)廣播,告知網(wǎng)絡(luò)中其他節(jié)點(diǎn)此消息。網(wǎng)絡(luò)中的非簇頭節(jié)點(diǎn)根據(jù)接收到信息的信號(hào)強(qiáng)度來(lái)加入最近的簇頭組成簇。
在數(shù)據(jù)傳輸階段,簇頭節(jié)點(diǎn)采用TDMA方式,為簇內(nèi)的節(jié)點(diǎn)分配時(shí)隙,簇內(nèi)節(jié)點(diǎn)在時(shí)隙到來(lái)時(shí),向簇頭發(fā)送數(shù)據(jù)消息。簇頭節(jié)點(diǎn)將收到的數(shù)據(jù)進(jìn)行融合后,再傳輸給Sink匯聚節(jié)點(diǎn)。一段時(shí)間后,網(wǎng)絡(luò)就進(jìn)入下一輪的簇重構(gòu)過(guò)程,不斷地循環(huán),直到網(wǎng)絡(luò)中的所有節(jié)點(diǎn)能量耗盡。
1.2.1 簇頭分布不均勻
采用LEACH算法產(chǎn)生的簇頭如圖2所示。圖中“○”表示普通節(jié)點(diǎn),“⊙”表示簇頭節(jié)點(diǎn),“×”表示Sink節(jié)點(diǎn)。監(jiān)測(cè)區(qū)域中簇頭分布明顯不均勻。
圖2 LEACH算法產(chǎn)生的簇頭
1.2.2 簇間能量負(fù)載不均衡
從圖2中可見,由于簇頭分布不均勻,對(duì)擁有較多節(jié)點(diǎn)數(shù)的簇頭,收發(fā)數(shù)據(jù)的能耗相對(duì)較大;而對(duì)于擁有較少節(jié)點(diǎn)數(shù)的簇頭,數(shù)據(jù)傳輸過(guò)程中,能耗相對(duì)較少??梢姡捎诖亻g能量負(fù)載不均衡,導(dǎo)致部分簇頭過(guò)早消亡。
1.2.3 監(jiān)測(cè)區(qū)域受限
由于LEACH算法的條件是:假定監(jiān)測(cè)區(qū)域所有的節(jié)點(diǎn)都能與Sink匯聚節(jié)點(diǎn)直接通信。所以該算法難以應(yīng)用于大規(guī)模網(wǎng)絡(luò)。
以上所提及的LEACH算法存在的不足之處,是影響網(wǎng)絡(luò)生命周期以及簇間負(fù)載均衡的主要原因。為了行之有效地解決上述問(wèn)題,本文研究了一種基于空間信息和梯度的分簇路由算法。
2.1.1 網(wǎng)絡(luò)模型
傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)隨機(jī)部署在一個(gè)N×N的正方形區(qū)域內(nèi),節(jié)點(diǎn)周期性地采集區(qū)域內(nèi)的信息。同時(shí)對(duì)無(wú)線傳感器網(wǎng)絡(luò)作如下假設(shè):
1)傳感器網(wǎng)絡(luò)中有固定的Sink節(jié)點(diǎn),能量不受限制;
2)所有節(jié)點(diǎn)同構(gòu),具有相同的初始能量和有限的能源;
3)節(jié)點(diǎn)處于靜止態(tài),等待發(fā)送信息;
4)節(jié)點(diǎn)能感知自身能量,并且可根據(jù)接收者的距離改變數(shù)據(jù)發(fā)送的功率;
5)節(jié)點(diǎn)可以根據(jù)接收的信號(hào)強(qiáng)度,計(jì)算與發(fā)射節(jié)點(diǎn)之間的距離。
2.1.2 能量模型
本文采用無(wú)線傳感器網(wǎng)絡(luò)中常用的一階無(wú)線通信模型[3]。根據(jù)網(wǎng)絡(luò)的實(shí)際情況,模型給出了節(jié)點(diǎn)間的距離閾值d0,d0的大小為
當(dāng)發(fā)送節(jié)點(diǎn)到目標(biāo)節(jié)點(diǎn)間的距離d<d0時(shí),采用自由空間模型;當(dāng)d≥d0時(shí),則采用多徑衰落模型。
節(jié)點(diǎn)i向節(jié)點(diǎn)j發(fā)送kbit數(shù)據(jù)的能耗為
而節(jié)點(diǎn)j接收節(jié)點(diǎn)i發(fā)送的kbit數(shù)據(jù)能耗為
式中:Eelec代表無(wú)線收發(fā)電路的能耗;Eamp代表放大器消耗的能量;εfs和εmp分別為兩種模型中功率放大所消耗的能量。
2.2.1 相關(guān)定義
1)節(jié)點(diǎn)的空間信息:在傳感器網(wǎng)絡(luò)中,節(jié)點(diǎn)根據(jù)RSSI確定節(jié)點(diǎn)自身到鄰近節(jié)點(diǎn)以及Sink節(jié)點(diǎn)的距離,將此距離作為節(jié)點(diǎn)的空間信息。
2)梯度:Sink節(jié)點(diǎn)廣播消息在網(wǎng)絡(luò)傳遞中,記錄經(jīng)歷的跳數(shù),每個(gè)節(jié)點(diǎn)獲得自身到Sink節(jié)點(diǎn)的最少跳數(shù),稱之為高度,而節(jié)點(diǎn)自身與鄰居節(jié)點(diǎn)之間的高度差就定義為梯度。當(dāng)數(shù)據(jù)沿著梯度最大鏈路給Sink節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),就選擇最小跳數(shù),即節(jié)點(diǎn)沿最短路徑進(jìn)行數(shù)據(jù)傳遞[4]。
3)能耗最優(yōu)簇原則:根據(jù)簇內(nèi)成員和簇的數(shù)量以及能耗關(guān)系,簇頭所占檢測(cè)區(qū)域總節(jié)點(diǎn)數(shù)為5%時(shí),傳感器網(wǎng)絡(luò)的能耗最優(yōu)[5]。也就是說(shuō)簇內(nèi)成員數(shù)和簇頭數(shù)的比值是19∶1。每個(gè)簇內(nèi)成員最大數(shù)是Nmax=19(1+α),其中α∈[0,1]。本文假設(shè)在α =0.5時(shí),能夠保證簇內(nèi)節(jié)點(diǎn)數(shù)的整體分布是均勻的,Nmax取30。簇內(nèi)成員最小數(shù)目是Nmin=19(1- β),β∈[0,1]。本文假設(shè)β =0.8時(shí),能夠滿足全網(wǎng)簇頭節(jié)點(diǎn)能耗均衡,則Nmin取4。簇內(nèi)節(jié)點(diǎn)數(shù)滿足以上閾值時(shí),將形成的簇稱為能耗最優(yōu)簇。
2.2.2 算法實(shí)現(xiàn)
1)網(wǎng)絡(luò)初始化階段
將Sink節(jié)點(diǎn)的梯度G(n0)和空間信息P(n0)初始化為0,其余節(jié)點(diǎn)的梯度和空間信息P(ni)初始化為無(wú)窮。從Sink匯聚節(jié)點(diǎn)開始向鄰居節(jié)點(diǎn)廣播自己的梯度值以及空間信息:在廣播過(guò)程中,當(dāng)節(jié)點(diǎn)i收到節(jié)點(diǎn)j廣播梯度和空間信息的消息時(shí),節(jié)點(diǎn)i首先檢查自身的鄰居表中是否已經(jīng)有了節(jié)點(diǎn)j的信息:若沒(méi)有,則將節(jié)點(diǎn)j加入到節(jié)點(diǎn)i的鄰居表NT(ni),鄰居表也同時(shí)保存鄰居節(jié)點(diǎn)的梯度信息;若已經(jīng)有了節(jié)點(diǎn)j的信息,則更新節(jié)點(diǎn)j的梯度。當(dāng)節(jié)點(diǎn)i收到節(jié)點(diǎn)j發(fā)送的信號(hào)時(shí),節(jié)點(diǎn)i根據(jù)收到信號(hào)的強(qiáng)度來(lái)確定節(jié)點(diǎn)j到自身的距離,將信息設(shè)置為某一具體的值P(ni),并將這個(gè)值存儲(chǔ)在節(jié)點(diǎn)i的空間信息表中;如此類推,直到網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都獲得梯度和空間信息。P(ni)表達(dá)式為
式中:xm和ym分別是監(jiān)測(cè)區(qū)域的長(zhǎng)度和寬度;dBi是指節(jié)點(diǎn)i接收到Sink節(jié)點(diǎn)發(fā)出廣播信號(hào)時(shí)的強(qiáng)度;f是指節(jié)點(diǎn)i將此信號(hào)強(qiáng)度值轉(zhuǎn)換為與空間距離同等數(shù)量級(jí)的函數(shù)。
2)簇頭選舉
本文的簇頭選舉采用與LEACH類似的概念“輪”。網(wǎng)絡(luò)初始化完畢后,監(jiān)控區(qū)域的所有傳感器節(jié)點(diǎn),在每輪開始時(shí),根據(jù)
生成初始值。將這個(gè)值代入
生成一個(gè)d-c+1個(gè)元素的數(shù)組,并將自己的空間信息P(ni)與此數(shù)組中的值作比較,相等的節(jié)點(diǎn)標(biāo)記為候選簇頭。
式(6)和式(7)中的參數(shù)根據(jù)網(wǎng)絡(luò)監(jiān)控區(qū)域的大小、形狀、節(jié)點(diǎn)數(shù)量設(shè)置。本文中取d11=30,f=1,e=30,c=1,d=4,r代表當(dāng)前輪數(shù),mod是求余運(yùn)算。式(6)中,當(dāng)di1=d11+e-1時(shí),就將di1的值重新賦為d11。
候選簇頭節(jié)點(diǎn)向鄰居節(jié)點(diǎn)廣播自己成為候選節(jié)點(diǎn)的信息。相鄰的候選簇頭比較梯度信息以及剩余能量值,候選簇頭當(dāng)選簇頭的概率為
式中:pi是候選簇頭節(jié)點(diǎn)i當(dāng)選簇頭的概率;G(ni)和E(ni)分別指候選簇頭的梯度信息值和剩余能量值;a和b根據(jù)具體的網(wǎng)絡(luò)環(huán)境來(lái)設(shè)置不同的值;φ是調(diào)節(jié)梯度在簇頭選舉中的比重;φ調(diào)節(jié)節(jié)點(diǎn)剩余能量在簇頭選舉中占的比重。相鄰的候選簇頭重復(fù)進(jìn)行此淘汰過(guò)程,直到網(wǎng)絡(luò)中的候選簇頭數(shù)目等于能耗最優(yōu)簇原則要求的簇頭數(shù)目,或者候選簇頭的鄰居節(jié)點(diǎn)里沒(méi)有候選簇頭為止。剩下的候選簇頭節(jié)點(diǎn)選為簇頭。
3)簇的規(guī)模控制
為了實(shí)現(xiàn)簇規(guī)模的控制,本文采用分簇規(guī)模約束機(jī)制。根據(jù)能耗最優(yōu)簇原則,控制每個(gè)簇的規(guī)模。將簇的大小控制在Nmax和Nmin之間。當(dāng)簇內(nèi)節(jié)點(diǎn)數(shù)大于Nmax時(shí),有節(jié)點(diǎn)要申請(qǐng)加入簇頭時(shí),簇頭就發(fā)出拒絕消息,節(jié)點(diǎn)收到拒絕消息后,就尋找能量強(qiáng)度次弱的簇頭重新申請(qǐng)加入,以此類推。如果簇內(nèi)節(jié)點(diǎn)數(shù)目小于值Nmin,將放棄這個(gè)簇,這個(gè)簇內(nèi)的節(jié)點(diǎn)選擇能量次弱的簇頭加入,此時(shí),簇頭不考慮最大數(shù)目限制,由于放棄的簇內(nèi)節(jié)點(diǎn)并不多,所以對(duì)其他簇的影響不大。
4)數(shù)據(jù)傳輸階段
簇內(nèi)通信方式采用TDMA的方式,簇頭給每個(gè)簇內(nèi)節(jié)點(diǎn)分配一個(gè)時(shí)隙,簇內(nèi)節(jié)點(diǎn)在時(shí)隙到來(lái)時(shí),發(fā)信息給簇頭,其余時(shí)間處于休眠狀態(tài),降低能耗。簇內(nèi)節(jié)點(diǎn)在向簇頭節(jié)點(diǎn)發(fā)送數(shù)據(jù)之前,先判斷通信距離,如果通信距離大于d0,就采取多跳通信的方式,將信息沿簇內(nèi)梯度最大的方向傳輸。否則采用單跳傳輸信息給簇頭。對(duì)于某些到Sink節(jié)點(diǎn)的距離小于或等于到簇頭距離的特殊節(jié)點(diǎn),則選擇直接傳輸數(shù)據(jù)給Sink節(jié)點(diǎn)。
設(shè)定檢測(cè)區(qū)的范圍是200 m×200 m的正方形區(qū)域,隨機(jī)播撒200個(gè)節(jié)點(diǎn),并且將Sink節(jié)點(diǎn)設(shè)置在監(jiān)控區(qū)域的中心,坐標(biāo)為(100,100)。監(jiān)測(cè)區(qū)域節(jié)點(diǎn)能量值初始化為0.5 J,Eelec設(shè)為50 nJ/bit,數(shù)據(jù)融合消耗能量EEDA設(shè)為5 nJ/(bit·signal),兩種模型中的功率放大能耗根據(jù)距離和環(huán)境因素設(shè)置εfs為10 pJ/(bit·m2),εmp為0.001 3 pJ/(bit·m4),數(shù)據(jù)包的長(zhǎng)度L設(shè)置為4 000 bit。參數(shù) α,β,a,b,φ,φ 分別設(shè)置為 0.5,0.8,0.5,0.5,0.01,0.5。下文分別對(duì)LEACH算法、文獻(xiàn)[5]算法以及本文的算法進(jìn)行了仿真。
圖3和圖4中,虛點(diǎn)線、虛劃線、細(xì)實(shí)線、點(diǎn)劃線分別代表LEACH算法、文獻(xiàn)[5]單Sink算法、本文改進(jìn)算法、文獻(xiàn)[5]雙Sink算法各自的仿真結(jié)果。圖3是每輪的存活節(jié)點(diǎn)數(shù)目,圖4是每輪簇頭數(shù)目。
圖3 各算法每輪存活節(jié)點(diǎn)數(shù)
圖4 各算法每輪簇頭的數(shù)目
圖3中可以看出LEACH算法在第286輪的時(shí)候,網(wǎng)絡(luò)中出現(xiàn)第1個(gè)消亡節(jié)點(diǎn),在1 507輪的時(shí)候,整個(gè)網(wǎng)絡(luò)中節(jié)點(diǎn)全部消亡;文獻(xiàn)[5]算法,在監(jiān)測(cè)區(qū)域含有單個(gè)Sink節(jié)點(diǎn)和兩個(gè)Sink節(jié)點(diǎn)情況時(shí)進(jìn)行仿真,結(jié)果表明:在監(jiān)測(cè)區(qū)域含有單個(gè)Sink節(jié)點(diǎn)時(shí),網(wǎng)絡(luò)中第1個(gè)消亡節(jié)點(diǎn)是在350輪左右出現(xiàn),較LEACH算法有一定的提高;在網(wǎng)絡(luò)中含有2個(gè)Sink節(jié)點(diǎn)時(shí),第1個(gè)消亡節(jié)點(diǎn)在640輪左右出現(xiàn),雖然延長(zhǎng)了網(wǎng)絡(luò)的壽命,但是網(wǎng)絡(luò)的硬件成本較高。本文改進(jìn)后的算法中,網(wǎng)絡(luò)出現(xiàn)第1個(gè)消亡節(jié)點(diǎn)是在560輪左右,直到2 550輪左右節(jié)點(diǎn)才全部消亡。
由于每次實(shí)驗(yàn)節(jié)點(diǎn)分布是隨機(jī)生成的,所以本文進(jìn)行多次仿真,結(jié)果表明:LEACH算法出現(xiàn)第1個(gè)消亡節(jié)點(diǎn)大都是在280輪左右。而在第1 500輪左右,網(wǎng)絡(luò)中節(jié)點(diǎn)能量全部耗盡;采用文獻(xiàn)[5]算法的雙Sink節(jié)點(diǎn)仿真,第1個(gè)消亡節(jié)點(diǎn)在640輪出現(xiàn);采用本文改進(jìn)的算法仿真時(shí),第1個(gè)消亡節(jié)點(diǎn)出現(xiàn)的時(shí)間是在550輪左右,全部節(jié)點(diǎn)能量耗盡的時(shí)間大約在第2 500輪。
在無(wú)線傳感器網(wǎng)絡(luò)中,每增加一個(gè)信標(biāo)節(jié)點(diǎn),網(wǎng)絡(luò)的硬件成本將提高10%。文獻(xiàn)[5]通過(guò)雙Sink節(jié)點(diǎn)和ABC算法獲取區(qū)域中所有節(jié)點(diǎn)坐標(biāo),雖然提高了網(wǎng)絡(luò)性能,但是網(wǎng)絡(luò)的硬件成本卻增加了。雖然本文中的第1個(gè)消亡節(jié)點(diǎn)出現(xiàn)的輪數(shù)較文獻(xiàn)[5]中的雙Sink節(jié)點(diǎn)算法較早,但是本文提出的算法無(wú)需額外的硬件成本,算法較簡(jiǎn)單。且文獻(xiàn)[5]提出的算法限于在正方形網(wǎng)絡(luò)中使用,需要借助多種算法進(jìn)行資源分配。而在實(shí)際應(yīng)用中傳感器網(wǎng)絡(luò)布置區(qū)域很少有此規(guī)則。因此本文算法較文獻(xiàn)[5]算法有更高的實(shí)用性。
同時(shí),本文又對(duì)兩種算法在不同檢測(cè)區(qū)域進(jìn)行多次仿真求均值的方法,驗(yàn)證兩種算法的有效性。
表1 LEACH算法仿真結(jié)果列表
表2 改進(jìn)算法仿真結(jié)果列表
表1和表2分別是采用LEACH算法和本文改進(jìn)算法,在形狀不同、面積近似相等的的檢測(cè)區(qū)域,進(jìn)行20輪仿真求平均值后的結(jié)果。
由表1看出,LEACH算法在不同的檢測(cè)區(qū)域的仿真結(jié)果相近;出現(xiàn)第1個(gè)消亡節(jié)點(diǎn)的輪數(shù)大約為279輪,在1 493輪后,網(wǎng)絡(luò)中的節(jié)點(diǎn)全部消亡。由表2看出,改進(jìn)后的算法在圓形區(qū)域和正方形區(qū)域的網(wǎng)絡(luò)性能明顯優(yōu)于橢圓形區(qū)域和長(zhǎng)方形區(qū)域,但是算法結(jié)果所受監(jiān)測(cè)區(qū)域的形狀影響較小。綜上所述:改進(jìn)后的算法較LEACH算法以及文獻(xiàn)[5]算法有一定的提高且實(shí)用性更好。
本文針對(duì)LEACH算法的簇頭選舉不均勻,導(dǎo)致網(wǎng)絡(luò)能耗不均衡,部分節(jié)點(diǎn)過(guò)早死亡,從而使網(wǎng)絡(luò)性能降低等不足方面進(jìn)行相應(yīng)改進(jìn),提出了將節(jié)點(diǎn)空間信息與梯度、節(jié)點(diǎn)剩余能量等因素綜合考慮到簇頭選舉中,使簇頭分布更加均勻。在網(wǎng)絡(luò)分簇階段又對(duì)簇的大小進(jìn)行限制和調(diào)整,使得網(wǎng)絡(luò)的能耗更加均衡。并在數(shù)據(jù)傳輸階段采用先判斷再傳輸?shù)姆椒?,?shí)現(xiàn)了數(shù)據(jù)傳輸中根據(jù)傳輸?shù)木嚯x而采用多跳或單跳通信的方式,增強(qiáng)了數(shù)據(jù)傳輸?shù)闹悄苄裕纳屏薒EACH算法中節(jié)點(diǎn)由于通信距離遠(yuǎn),造成能耗大的問(wèn)題,不僅節(jié)約了能量,而且實(shí)現(xiàn)了長(zhǎng)距離的多跳通信。從而使算法能夠應(yīng)用于大面積檢測(cè)區(qū)域,克服了LEACH算法在這一點(diǎn)上的不足。且對(duì)文獻(xiàn)中部分算法進(jìn)行仿真,結(jié)果表明本文算法具有更高的實(shí)用價(jià)值。
[1] HEINZELMANW,CHANDRAKASAN A,BALAKRISHNAN H.Energyefficient communication protocol for wirelessmicro sensor networks[C]//Proc.the33rd AnnualHawaii InternationalConferenceon System Sciences.Maui:IEEE Press,2000:3005-3014.
[2]韓媛萍.基于剩余能量和睡眠控制的改進(jìn)LEACH算法[J].現(xiàn)代電子技術(shù),2012,35(22):97-100.
[3]吳振華,尹志軍.基于優(yōu)化簇半徑的WSNs分均勻分簇路由[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(15):3374-3378.
[4]李輝,李臘元,李方云.一種基于低能量的雙簇首WSN路由算法[J].武漢理工大學(xué)學(xué)報(bào),2009,33(3):450-453.
[5] 鄒虹,彭國(guó)龍.一種基于LEACH改進(jìn)的均勻分簇路由算法[J].電視技術(shù),2013,37(3):133-140.