郭宏巖
(沈陽職業(yè)技術(shù)學(xué)院,沈陽 110045)
無線傳感器網(wǎng)絡(luò)具有網(wǎng)絡(luò)靈活性強(qiáng)、網(wǎng)絡(luò)規(guī)??勺兊葍?yōu)點(diǎn),廣泛應(yīng)用于軍事、工業(yè)等領(lǐng)域。無線傳感器網(wǎng)絡(luò)的基本網(wǎng)絡(luò)路由協(xié)議可以分為平面路由協(xié)議和層次路由協(xié)議。由于平面路由協(xié)議需要維護(hù)大的路由表和占用更多的存儲(chǔ)空間,因此它們不適合于大規(guī)模網(wǎng)絡(luò),因此分層路由協(xié)議試圖通過將節(jié)點(diǎn)安排在簇或樹結(jié)構(gòu)中,使一些節(jié)點(diǎn)在很近的距離內(nèi)傳輸?shù)揭粋€(gè)節(jié)點(diǎn),并將其用于讓這些節(jié)點(diǎn)將此信息轉(zhuǎn)發(fā)到基站。LEACH是一種比較成熟的具有代表性的經(jīng)典分層路由算法。其他分層路由協(xié)議如pegasis、teen等在LEACH上得到了改進(jìn),因此LEACH更具代表性。本文主要研究LEACH算法,在降低功耗的基礎(chǔ)上進(jìn)行了改進(jìn)[1-2]。
LEACH協(xié)議是麻省理工學(xué)院Heinzelman等人為無線傳感器網(wǎng)絡(luò)提出的一種低功耗自適應(yīng)分簇路由協(xié)議。LEACH協(xié)議的操作是輪詢進(jìn)行的,每輪包含兩個(gè)階段,即集群的建立和穩(wěn)定運(yùn)行[3]。
LEACH協(xié)議是一種基于簇的路由協(xié)議,它采用隨機(jī)的、自組織的自適應(yīng)聚類方法和局部控制進(jìn)行數(shù)據(jù)傳輸。同時(shí)采用低功耗MAC協(xié)議及相關(guān)信息處理技術(shù),達(dá)到節(jié)能的目的。同時(shí),它也有一些缺點(diǎn):一是LEACH協(xié)議每輪隨機(jī)選擇簇頭。因此,一些節(jié)點(diǎn)由于多次被選為簇頭而導(dǎo)致能量消耗過快。本文改進(jìn)后的協(xié)議使得剩余能量較大的節(jié)點(diǎn)有更多的機(jī)會(huì)作為簇頭,避免了整個(gè)網(wǎng)絡(luò)過早死亡。二是LEACH協(xié)議中每輪的簇頭數(shù)目是不確定的,因此簇頭數(shù)目可能不是最優(yōu)的。隨機(jī)數(shù)只能取相似簇的個(gè)數(shù)在最佳且期望的個(gè)數(shù)相等,但事實(shí)上每輪的簇個(gè)數(shù)和最優(yōu)值都存在一定的偏差,導(dǎo)致LEACH協(xié)議性能下降。
針對(duì)上述不足,本文提出了一種改進(jìn)的LEACH協(xié)議I-LEACH(改進(jìn)LEACH)算法,主要是對(duì)其集群的進(jìn)程進(jìn)行優(yōu)化。選擇一個(gè)簇頭節(jié)點(diǎn)考慮能量狀態(tài),即所有傳感器節(jié)點(diǎn)必須監(jiān)測(cè)能量的變化,如果能量低于平均能量水平,則降低其成為第一個(gè)簇的概率。同時(shí)優(yōu)化簇的形成,使初始簇從基站進(jìn)入簇頭較高,降低簇頭的能耗。
在我們的LEACH閾值t(n)中,通過添加能量因子來改進(jìn),改進(jìn)的t(n)重置為等式1:
在選擇簇頭時(shí),除了使用LEACH的不同閾值外,還選擇節(jié)點(diǎn)作為初始簇頭,此時(shí)初始簇開始以半徑d0廣播自己的簇頭開始正式競(jìng)爭(zhēng),信號(hào)傳輸距離越短,能量越小消費(fèi)。這里使用了自由空間信道模型和多徑衰落信道模型無線信道模型。如果發(fā)射機(jī)之間的接收距離小于,則使用自由空間模型,該模型從能量損耗中發(fā)送數(shù)據(jù)并與平方成正比;否則,使用多徑衰落信道模型即雙徑模型,此時(shí)發(fā)射機(jī)發(fā)送數(shù)據(jù)的能量損耗與距離成正比,與四次方成正比。為了使這里的能量消耗最小,所以取r值為半徑d0,其中為功率放大器的自由空間損耗,為多徑衰落下的功率放大器損耗。
當(dāng)節(jié)點(diǎn)接收到廣播時(shí),如果選擇了初始簇頭,則要比較權(quán)重w(w是基站節(jié)點(diǎn)之間的距離)以選擇最小w作為簇頭節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)。其他初始節(jié)點(diǎn)變?yōu)榉谴仡^節(jié)點(diǎn)。這樣減少了簇頭到基站的距離,節(jié)約了能源。確定簇頭后,簇頭節(jié)點(diǎn)開始在簇內(nèi)廣播其形式狀態(tài)。非簇首節(jié)點(diǎn)的集群開始發(fā)送加入消息,當(dāng)簇首接收到所有添加的消息時(shí),根據(jù)成員節(jié)點(diǎn)的個(gè)數(shù),以TDMA方式為每個(gè)非簇成員分配一個(gè)時(shí)隙,并用廣播方式發(fā)送給所有簇內(nèi)節(jié)點(diǎn),這將確保集群內(nèi)的每個(gè)節(jié)點(diǎn)在相應(yīng)的數(shù)據(jù)傳輸時(shí),在其他時(shí)間進(jìn)入冬眠狀態(tài),減少能量消耗。節(jié)點(diǎn)知道數(shù)據(jù)的時(shí)隙后開始傳輸數(shù)據(jù),而簇頭的能量則需要一直開啟。
仿真參數(shù)設(shè)置開始時(shí),利用100個(gè)節(jié)點(diǎn)隨機(jī)分布在(100,100)空間中,基站位置(50,175)中所有節(jié)點(diǎn)都是靜態(tài)的,帶寬設(shè)置為1Mb/s,數(shù)據(jù)長(zhǎng)度為500字節(jié),每個(gè)節(jié)點(diǎn)的初始功率為2J。
仿真研究主要結(jié)果為:一是在250s后,I-LEACH路由協(xié)議比LEACH路由協(xié)議具有更低的能耗,同具有更好的整體能量利用率。二是LEACH協(xié)議在400s時(shí)出現(xiàn)第一個(gè)節(jié)點(diǎn)死亡,而I-LEACH協(xié)議在420s時(shí)出現(xiàn)第一個(gè)節(jié)點(diǎn)死亡,改進(jìn)后的協(xié)議節(jié)省了能量,縮短了節(jié)點(diǎn)的死亡時(shí)間。因此延長(zhǎng)了整個(gè)網(wǎng)絡(luò)的生命周期。
本文改進(jìn)了傳統(tǒng)的LEACH算法,優(yōu)化簇頭節(jié)點(diǎn),減少簇頭節(jié)點(diǎn)的多余能耗。通過仿真,改進(jìn)后的算法在一定程度上提高了網(wǎng)絡(luò)節(jié)點(diǎn)的生存率,延長(zhǎng)了網(wǎng)絡(luò)的生存期,減少了網(wǎng)絡(luò)的能源消耗。