本發(fā)明屬于無線傳感器網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法。
背景技術(shù):
目前,由大量的傳感器節(jié)點(diǎn)通過自組織形成的無線傳感器網(wǎng)絡(luò)已廣泛應(yīng)用于軍事感知、物理安全、空中交通控制、交通監(jiān)控、環(huán)境監(jiān)測和建筑結(jié)構(gòu)監(jiān)測等領(lǐng)域。而且隨著WSNs的不斷發(fā)展,低能耗、低成本、多功能的無線傳感器節(jié)點(diǎn)也已逐步應(yīng)用到高效無線通信和電子工業(yè)中。在WSNs中,傳感器節(jié)點(diǎn)的主要任務(wù)就是合作地監(jiān)測所在區(qū)域的環(huán)境信息,進(jìn)行數(shù)據(jù)的收集和傳輸,而在數(shù)據(jù)的手機(jī)和傳輸過程中會(huì)消耗大量的能量。但是數(shù)以千計(jì)物理內(nèi)嵌的傳感器節(jié)點(diǎn)分布在嚴(yán)酷的地形和多數(shù)的應(yīng)用程序中,不可能通過更換電池來補(bǔ)充能量。因此,為了提高傳輸數(shù)據(jù)的能源效率,很多節(jié)能路由協(xié)議都是通過尋找源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的最小能源路徑來實(shí)現(xiàn)能耗的優(yōu)化。在傳感器網(wǎng)絡(luò)中,設(shè)計(jì)節(jié)能路由協(xié)議的任務(wù)是多樣的,因?yàn)槠洳粌H包含尋找單傳感器節(jié)點(diǎn)到目的節(jié)點(diǎn)的最小能源路徑,而且要平衡整個(gè)網(wǎng)絡(luò)的剩余能量分布。同時(shí),節(jié)點(diǎn)的狀態(tài)對(duì)能量消耗有很大的影響。事實(shí)上,網(wǎng)絡(luò)在進(jìn)行數(shù)據(jù)傳輸時(shí),只有少量的節(jié)點(diǎn)參與到中繼工作中,而大部分節(jié)點(diǎn)都處于休眠或者監(jiān)測狀態(tài)。算法針對(duì)多源節(jié)點(diǎn)1-D隊(duì)列網(wǎng)絡(luò),同時(shí)考慮節(jié)點(diǎn)的傳輸距離和節(jié)點(diǎn)的剩余能量,對(duì)傳輸過程中節(jié)點(diǎn)的鄰居節(jié)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,選擇最優(yōu)的節(jié)點(diǎn)作為下一跳節(jié)點(diǎn)進(jìn)行傳輸。即一個(gè)簡單基于1-D隊(duì)列網(wǎng)絡(luò)平臺(tái)的信息采集系統(tǒng),節(jié)點(diǎn)呈線性部署。當(dāng)一個(gè)傳感器節(jié)點(diǎn)在其感知范圍內(nèi)檢測到目標(biāo),它會(huì)采集相關(guān)信息,如方位,速度,和目標(biāo)個(gè)數(shù)等。傳感器節(jié)點(diǎn)將把收集的數(shù)據(jù)發(fā)送到中繼傳感節(jié)點(diǎn);然后中繼節(jié)點(diǎn)沿節(jié)能路徑通過一跳或多跳轉(zhuǎn)發(fā)的方式將目標(biāo)信息傳送到目的節(jié)點(diǎn);最后,目的節(jié)點(diǎn)確定綜合的信息并發(fā)送到信息管理中心,同時(shí),信息管理中心選擇合適的信息并通過網(wǎng)絡(luò)提供給管理員。近幾年,有關(guān)1-D網(wǎng)絡(luò)路由的研究有很多,而且相關(guān)研究都基于單源節(jié)點(diǎn),而這只是網(wǎng)絡(luò)傳輸過程中的一部分,在一定程度上不符合實(shí)際的網(wǎng)絡(luò)需求,有必要研究多源節(jié)點(diǎn)的路由傳輸方案。通過最優(yōu)功率控制和最優(yōu)轉(zhuǎn)發(fā)距離的理論分析,當(dāng)節(jié)點(diǎn)部署在最優(yōu)距離的時(shí)候,能夠?qū)崿F(xiàn)最小的能量消耗;而距離優(yōu)先路由方案考慮1-D隊(duì)列網(wǎng)絡(luò),選擇最遠(yuǎn)的鄰居節(jié)點(diǎn)作為轉(zhuǎn)發(fā)節(jié)點(diǎn),使得多跳延時(shí)減小,進(jìn)而降低能量消耗。這二者都未考慮節(jié)點(diǎn)能量的平均消耗問題,導(dǎo)致在大部分節(jié)點(diǎn)還有很多能量的情況下有些節(jié)點(diǎn)能耗過快而造成網(wǎng)絡(luò)分割,降低了整個(gè)網(wǎng)絡(luò)的節(jié)點(diǎn)利用率。而有的方案考慮網(wǎng)絡(luò)的能量優(yōu)先,平衡整個(gè)網(wǎng)絡(luò)的能量消耗,提高了網(wǎng)絡(luò)節(jié)點(diǎn)的利用率,造成的卻是整個(gè)數(shù)據(jù)傳輸過程跳數(shù)增加,在輪數(shù)據(jù)傳輸過程中浪費(fèi)了更多的能量,造成的代價(jià)是數(shù)據(jù)傳輸時(shí)延變長,整個(gè)網(wǎng)絡(luò)剩余能量變低。很多方案只是解決了如何提高單個(gè)節(jié)點(diǎn)的能量效率,或最小化整個(gè)網(wǎng)絡(luò)的能量消耗,并未對(duì)節(jié)點(diǎn)工作狀態(tài)以及其平均能耗進(jìn)行分析和研究。在數(shù)據(jù)傳輸?shù)倪^程中,中繼節(jié)點(diǎn)的剩余能量會(huì)直接影響到網(wǎng)絡(luò)的壽命,因此,優(yōu)化網(wǎng)絡(luò)的能耗是設(shè)計(jì)網(wǎng)絡(luò)路由協(xié)議的重要方面。
綜上所述,無線傳感器網(wǎng)絡(luò)中的傳感器節(jié)點(diǎn)具有有限的能量,一些節(jié)點(diǎn)通常因自身能量耗盡而導(dǎo)致網(wǎng)絡(luò)整體無法高效運(yùn)行,因此網(wǎng)絡(luò)的節(jié)能優(yōu)化成為了無線傳感器網(wǎng)絡(luò)路由算法設(shè)計(jì)的一個(gè)重要方面。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法,旨在解決無線傳感器網(wǎng)絡(luò)中的傳感器節(jié)點(diǎn)具有有限的能量,一些節(jié)點(diǎn)通常因自身能量耗盡而導(dǎo)致網(wǎng)絡(luò)整體無法高效運(yùn)行的問題。
本發(fā)明是這樣實(shí)現(xiàn)的,一種基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法,所述基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法利用節(jié)點(diǎn)有多個(gè)鄰居節(jié)點(diǎn)的特點(diǎn),采用最遠(yuǎn)跳距減少能耗,同時(shí)考慮節(jié)點(diǎn)的剩余能量,根據(jù)距離與能耗對(duì)鄰居節(jié)點(diǎn)的優(yōu)先級(jí)進(jìn)行排序,選擇最優(yōu)節(jié)點(diǎn)進(jìn)行傳輸;節(jié)點(diǎn)處于監(jiān)測狀態(tài),當(dāng)被選擇為中繼節(jié)點(diǎn)時(shí),執(zhí)行傳輸工作。
進(jìn)一步,傳輸狀態(tài)節(jié)點(diǎn)的選擇,根據(jù)候選節(jié)點(diǎn)P值的排序,從N(h)中確定用于數(shù)據(jù)中繼的節(jié)點(diǎn),節(jié)點(diǎn)執(zhí)行數(shù)據(jù)的傳輸工作并消耗一定的能量;即:
for每個(gè)節(jié)點(diǎn)i∈N(h)do;
end for;
P(i)最大的節(jié)點(diǎn)執(zhí)行數(shù)據(jù)傳輸。
進(jìn)一步,轉(zhuǎn)發(fā)節(jié)點(diǎn)位置的確定方法包括:
N(h)為節(jié)點(diǎn)h的轉(zhuǎn)發(fā)鄰居節(jié)點(diǎn)組;
利用最優(yōu)能量策略對(duì)轉(zhuǎn)發(fā)節(jié)點(diǎn)組進(jìn)行排序;
for每個(gè)節(jié)點(diǎn)i∈N(h)do;
end for;
P(i)最大的節(jié)點(diǎn)n執(zhí)行數(shù)據(jù)的傳輸工作,其余保持監(jiān)測狀態(tài);
Ifn成功收到數(shù)據(jù)包then;
給發(fā)送者回復(fù)一個(gè)響應(yīng);
for每個(gè)節(jié)點(diǎn)i∈N(h)/n do;
丟棄數(shù)據(jù)包;
end for;
else;
令n=n′,n′為次優(yōu)先級(jí)節(jié)點(diǎn);
goto2;
end if;
return。
進(jìn)一步,轉(zhuǎn)發(fā)節(jié)點(diǎn)組的選擇,節(jié)點(diǎn)h發(fā)送數(shù)據(jù)包給目的節(jié)點(diǎn),h+i是節(jié)點(diǎn)h的一個(gè)鄰居節(jié)點(diǎn),如果其靠近最遠(yuǎn)鄰居節(jié)點(diǎn)并且有更多的剩余能量,則鄰居節(jié)點(diǎn)h+i可作為候選轉(zhuǎn)發(fā)節(jié)點(diǎn);對(duì)候選節(jié)點(diǎn)依據(jù)到能量等效節(jié)點(diǎn)的距離和每個(gè)節(jié)點(diǎn)的剩余能量排序:
dh+i-dh為節(jié)點(diǎn)h和其鄰居節(jié)點(diǎn)h+i之間的距離;Eh+i代表節(jié)點(diǎn)h+i的剩余能量;N(h)為選出的節(jié)點(diǎn)h的候選轉(zhuǎn)發(fā)節(jié)點(diǎn);P(h+i)的值越大,節(jié)點(diǎn)優(yōu)先級(jí)越高;最高優(yōu)先級(jí)的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)作為下一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)。
本發(fā)明的另一目的在于提供一種利用所述基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法無線傳感器網(wǎng)絡(luò)。
本發(fā)明提供的基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法,針對(duì)一維(1-D)隊(duì)列網(wǎng)絡(luò)中的數(shù)據(jù)中繼問題,提出了基于動(dòng)態(tài)可達(dá)域的路由算法,以達(dá)到能量消耗最小化和網(wǎng)絡(luò)壽命最大化;同時(shí)考慮了節(jié)點(diǎn)之間的距離和節(jié)點(diǎn)的剩余能量,保護(hù)能量較低的節(jié)點(diǎn)。仿真結(jié)果表明,基于動(dòng)態(tài)可達(dá)域的算法能更好的延長網(wǎng)絡(luò)壽命(見表3及圖7),提高網(wǎng)絡(luò)的性能(見圖5,圖6);因此本發(fā)明提出了基于動(dòng)態(tài)可達(dá)域的路由算法,通過考慮節(jié)點(diǎn)的傳輸距離與節(jié)點(diǎn)的剩余能量,保持網(wǎng)絡(luò)的節(jié)點(diǎn)能量消耗平均,從而能夠在最小化能耗的同時(shí),最大化網(wǎng)絡(luò)壽命。本發(fā)明利用節(jié)點(diǎn)有多個(gè)鄰居節(jié)點(diǎn)的特點(diǎn),采用最遠(yuǎn)跳距減少能耗,同時(shí)考慮節(jié)點(diǎn)的剩余能量,根據(jù)距離與能耗對(duì)鄰居節(jié)點(diǎn)的優(yōu)先級(jí)進(jìn)行排序,從而選擇最優(yōu)節(jié)點(diǎn)進(jìn)行傳輸;節(jié)點(diǎn)一般處于監(jiān)測狀態(tài),當(dāng)被選擇為中繼節(jié)點(diǎn)時(shí),執(zhí)行傳輸工作;仿真實(shí)驗(yàn)也表明,本發(fā)明的動(dòng)態(tài)可達(dá)路由策略不僅保證了最小的能量消耗,還保護(hù)了剩余能量相對(duì)較低的節(jié)點(diǎn),在提高能量效率和防止網(wǎng)絡(luò)發(fā)生分割方面都有一定的優(yōu)勢。
附圖說明
圖1是本發(fā)明實(shí)施例提供的基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法流程圖。
圖2是本發(fā)明實(shí)施例提供的一維隊(duì)列中繼模型示意圖。
圖3是本發(fā)明實(shí)施例提供的傳輸節(jié)點(diǎn)選擇流程圖。
圖4是本發(fā)明實(shí)施例提供的Square-X網(wǎng)絡(luò)示意圖;
圖中:a Square-1網(wǎng)絡(luò);b Square-2網(wǎng)絡(luò);c Square-4網(wǎng)絡(luò)。
圖5是本發(fā)明實(shí)施例提供的平均剩余能量示意圖。
圖6是本發(fā)明實(shí)施例提供的剩余能量標(biāo)準(zhǔn)差示意圖。
圖7是本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)壽命差值(f(T)為周期為Tmin時(shí)對(duì)應(yīng)的傳輸頻率)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
下面結(jié)合附圖對(duì)本發(fā)明的應(yīng)用原理作詳細(xì)的描述。
如圖1所示,本發(fā)明實(shí)施例提供的基于動(dòng)態(tài)可達(dá)域的無線傳感器網(wǎng)絡(luò)路由方法包括以下步驟:
S101:傳輸狀態(tài)節(jié)點(diǎn)的選擇,根據(jù)候選節(jié)點(diǎn)p值的排序,從N(h)中確定用于數(shù)據(jù)中繼的節(jié)點(diǎn),該節(jié)點(diǎn)執(zhí)行數(shù)據(jù)的傳輸工作并消耗一定的能量;
S102:轉(zhuǎn)發(fā)節(jié)點(diǎn)位置的確定,節(jié)點(diǎn)h需轉(zhuǎn)發(fā)消息時(shí)如何尋找其下一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)位置。
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的應(yīng)用原理作進(jìn)一步的描述。
1相關(guān)模型
1.1基礎(chǔ)網(wǎng)絡(luò)模型
本發(fā)明考慮多源節(jié)點(diǎn)1-D隊(duì)列多跳WSN模型,并假設(shè)的方案針對(duì)相對(duì)密集的網(wǎng)絡(luò),每個(gè)中繼節(jié)點(diǎn)有多個(gè)鄰居節(jié)點(diǎn)。之所以稱之為多源節(jié)點(diǎn)是因?yàn)槊總€(gè)傳輸數(shù)據(jù)的過程中,數(shù)據(jù)的出發(fā)點(diǎn)是隨機(jī)的,即,在某一周期內(nèi),任意一個(gè)節(jié)點(diǎn)都可能是源節(jié)點(diǎn)。如圖2可見,并且都有他們直接鄰居節(jié)點(diǎn)的位置信息和源節(jié)點(diǎn)及目的節(jié)點(diǎn)的位置信息。每個(gè)無線傳感器節(jié)點(diǎn)有其最大傳輸范圍R,R范圍內(nèi)的節(jié)點(diǎn)都是該節(jié)點(diǎn)的鄰居節(jié)點(diǎn)。1-D隊(duì)列網(wǎng)絡(luò)由一個(gè)連通圖G(V,E)構(gòu)造,V為一組對(duì)齊在一行的傳感器節(jié)點(diǎn),E為通信節(jié)點(diǎn)之間的直接鏈接。將節(jié)點(diǎn)從左到右標(biāo)記為{0,1,2,...,h,n,...,M-1,M},其中,M節(jié)點(diǎn)為目的節(jié)點(diǎn),{0,1,2,...,h,n,...,M-1}任意一點(diǎn)為源節(jié)點(diǎn)。令N(h)為節(jié)點(diǎn)h的鄰居節(jié)點(diǎn)組,即n∈N(h)。每個(gè)直接鏈路(h,n)有一個(gè)非負(fù)權(quán)值w(h,n),表示節(jié)點(diǎn)h與其鄰居節(jié)點(diǎn)傳輸和接收數(shù)據(jù)時(shí)需要的總能量消耗。
1.2能量模型
傳感器節(jié)點(diǎn)在保持傳輸,監(jiān)測狀態(tài)時(shí),都要消耗相應(yīng)的能量。傳輸狀態(tài)的能量消耗一方面是節(jié)點(diǎn)發(fā)送數(shù)據(jù)消耗的能量,另一方面是接收數(shù)據(jù)時(shí)消耗的能量。而監(jiān)測狀態(tài)的能量消耗主要用于對(duì)事件進(jìn)行相應(yīng)的監(jiān)測,在收到數(shù)據(jù)時(shí)觸發(fā)節(jié)點(diǎn)的傳輸工作。節(jié)點(diǎn)進(jìn)行傳輸?shù)哪芰肯暮捅3直O(jiān)測的能量消耗本發(fā)明采用真實(shí)的測試參數(shù),即節(jié)點(diǎn)的總能量為790mAh,傳輸?shù)钠骄芎臑?.3mA,而保持監(jiān)測狀態(tài)的平均能耗為1.4mA。將節(jié)點(diǎn)的工作周期分為設(shè)置為1min-10min,由此可得到節(jié)點(diǎn)每個(gè)周期的能耗如下表。
表1節(jié)點(diǎn)能耗參數(shù)
1.3傳輸方案
本發(fā)明針對(duì)多源節(jié)點(diǎn)1-D隊(duì)列多跳WSN模型,提出了基于動(dòng)態(tài)可達(dá)域的路由傳輸方案,并與以下兩種路由方案進(jìn)行對(duì)比。
(1)基于距離優(yōu)先的路由傳輸方案
網(wǎng)絡(luò)中的節(jié)點(diǎn)在傳輸數(shù)據(jù)的過程當(dāng)中,每次參與傳輸工作的節(jié)點(diǎn)越多,網(wǎng)絡(luò)總能量消耗的越快,因此,在傳輸數(shù)據(jù)時(shí),根據(jù)節(jié)點(diǎn)的傳輸距離選擇最大跳距的鄰居節(jié)點(diǎn)進(jìn)行傳輸,減少了參與傳輸?shù)墓?jié)點(diǎn)數(shù),從而節(jié)約了網(wǎng)絡(luò)總能量。但未考慮每個(gè)節(jié)點(diǎn)的剩余能量,在傳輸?shù)倪^程中,可能有部分節(jié)點(diǎn)頻繁參與到傳輸過程中,導(dǎo)致這些節(jié)點(diǎn)能量消耗過快,降低了網(wǎng)絡(luò)節(jié)點(diǎn)的利用率,導(dǎo)致在大部分節(jié)點(diǎn)還有很多能量的時(shí)候就形成網(wǎng)絡(luò)分割。
(2)基于剩余能量優(yōu)先的路由傳輸方案
考慮到節(jié)點(diǎn)的剩余能量,節(jié)點(diǎn)在傳輸數(shù)據(jù)的過程中,每次都選擇自己鄰居節(jié)點(diǎn)中能量最高的節(jié)點(diǎn)進(jìn)行數(shù)據(jù)的傳輸,從而在一定程度上平衡了節(jié)點(diǎn)的能量消耗速率,有利于網(wǎng)絡(luò)壽命的延長。但是另一方面導(dǎo)致了傳輸過程中參與工作的節(jié)點(diǎn)變多,反而使得整個(gè)網(wǎng)絡(luò)的能量消耗變大。
結(jié)合以上兩種方案在節(jié)能和平衡能耗方面的優(yōu)勢,本發(fā)明給出了節(jié)點(diǎn)均勻獨(dú)立分布的大規(guī)模多源節(jié)點(diǎn)1-D隊(duì)列模型無線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)的最優(yōu)傳輸方案。通過對(duì)每個(gè)節(jié)點(diǎn)設(shè)計(jì)動(dòng)態(tài)可達(dá)的節(jié)能策略以保證最小功耗,平衡整個(gè)網(wǎng)絡(luò)的能量消耗進(jìn)而保護(hù)剩余能量相對(duì)較低的節(jié)點(diǎn)。該算法選擇傳輸節(jié)點(diǎn)的過程是在節(jié)點(diǎn)傳輸范圍內(nèi)動(dòng)態(tài)選擇最優(yōu)的節(jié)點(diǎn),稱之為基于動(dòng)態(tài)可達(dá)域的路由算法。
2基于動(dòng)態(tài)可達(dá)域的路由算法
(1)最優(yōu)能量策略問題
網(wǎng)絡(luò)在傳輸數(shù)據(jù)期間,當(dāng)數(shù)據(jù)逐跳傳輸?shù)侥康墓?jié)點(diǎn)時(shí),若每次都選擇最遠(yuǎn)鄰居節(jié)點(diǎn)進(jìn)行傳輸,則這些中繼節(jié)點(diǎn)將比其他節(jié)點(diǎn)耗能更快。這種不均勻的能量消耗快速耗盡了中繼節(jié)點(diǎn)的能量,也顯著降低了網(wǎng)絡(luò)生命時(shí)間,很可能當(dāng)有些節(jié)點(diǎn)的能量還很高的時(shí)候,網(wǎng)路已經(jīng)由于部分節(jié)點(diǎn)失效造成了分割。因此,本發(fā)明算法在考慮距離優(yōu)先的同時(shí)還要考慮中繼節(jié)點(diǎn)的剩余能量。
(2)轉(zhuǎn)發(fā)節(jié)點(diǎn)組的選擇
假設(shè)節(jié)點(diǎn)h發(fā)送數(shù)據(jù)包給目的節(jié)點(diǎn),h+i是節(jié)點(diǎn)h的一個(gè)鄰居節(jié)點(diǎn),如果其靠近最遠(yuǎn)鄰居節(jié)點(diǎn)并且有更多的剩余能量,則鄰居節(jié)點(diǎn)h+i可作為候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。對(duì)這些合適的候選節(jié)點(diǎn)依據(jù)到能量等效節(jié)點(diǎn)的距離和每個(gè)節(jié)點(diǎn)的剩余能量排序:
dh+i-dh為節(jié)點(diǎn)h和其鄰居節(jié)點(diǎn)h+i之間的距離。Eh+i代表節(jié)點(diǎn)h+i的剩余能量。N(h)為選出的節(jié)點(diǎn)h的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。P(h+i)的值越大,節(jié)點(diǎn)優(yōu)先級(jí)越高。最高優(yōu)先級(jí)的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)作為下一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)。
(3)基于動(dòng)態(tài)可達(dá)域的路由算法
節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)主要是自身收集的數(shù)據(jù)與其他節(jié)點(diǎn)的中繼數(shù)據(jù),在此只考慮后者?;趧?dòng)態(tài)可達(dá)域的路由算法將路由過程中的節(jié)點(diǎn)狀態(tài)分為監(jiān)測狀態(tài)和傳輸狀態(tài),周期性的進(jìn)行傳輸可以進(jìn)一步節(jié)約并平衡節(jié)點(diǎn)能量的消耗,延長網(wǎng)絡(luò)壽命。該算法描述如下。
1)傳輸狀態(tài)節(jié)點(diǎn)的選擇
根據(jù)候選節(jié)點(diǎn)P值的排序,從N(h)中確定用于數(shù)據(jù)中繼的節(jié)點(diǎn),該節(jié)點(diǎn)執(zhí)行數(shù)據(jù)的傳輸工作并消耗一定的能量;即
選擇傳輸節(jié)點(diǎn)的過程如圖3。
2)轉(zhuǎn)發(fā)節(jié)點(diǎn)位置的確定
算法1描述了節(jié)點(diǎn)h需轉(zhuǎn)發(fā)消息時(shí)如何尋找其下一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)位置的過程:
下面結(jié)合仿真對(duì)本發(fā)明的應(yīng)用效果作詳細(xì)的描述。
1性能仿真評(píng)估
1)仿真環(huán)境
本發(fā)明使用OMnet++對(duì)算法進(jìn)行仿真實(shí)現(xiàn)?;A(chǔ)網(wǎng)絡(luò)為400個(gè)均勻獨(dú)立分布在正方形每條邊上的節(jié)點(diǎn)組成的1-D隊(duì)列網(wǎng)絡(luò),單跳最大傳輸距離為30m,節(jié)點(diǎn)的初始能量為790mAh。其他仿真參數(shù)如表2。
本發(fā)明不考慮節(jié)點(diǎn)之間的信號(hào)干擾,通過與兩種路由算法的性能進(jìn)行比較,驗(yàn)證了本發(fā)明算法的優(yōu)越性。
表2仿真參數(shù)
2)評(píng)價(jià)指標(biāo)
a)平均剩余能量:中繼節(jié)點(diǎn)的平均剩余能量越多,表示所有節(jié)點(diǎn)存活時(shí)間越長,從而延長網(wǎng)絡(luò)壽命。
b)剩余能量標(biāo)準(zhǔn)差:使用SRE量化路由協(xié)議的能量平均程度,標(biāo)準(zhǔn)差越高,則節(jié)點(diǎn)消耗能量越不平均,因此低的SRE對(duì)路由協(xié)議而言是很重要的。
c)網(wǎng)絡(luò)壽命:1-D隊(duì)列網(wǎng)絡(luò)的壽命定義為目的節(jié)點(diǎn)無法從源節(jié)點(diǎn)接收包的時(shí)間。網(wǎng)絡(luò)壽命與能量消耗和網(wǎng)絡(luò)分割密切相關(guān),網(wǎng)絡(luò)壽命越長,能量消耗越平均,網(wǎng)絡(luò)分割出現(xiàn)的越晚。
3)算法評(píng)估
下面將本發(fā)明算法同以下兩種基本算法進(jìn)行了仿真比較:
a)距離優(yōu)先路由算法——即路由過程中每次選擇最大傳輸距離傳輸以減少傳輸節(jié)點(diǎn)的個(gè)數(shù)以節(jié)約能量;
b)能量優(yōu)先路由算法——即路由過程中,節(jié)點(diǎn)選擇能量最高的鄰居節(jié)點(diǎn)傳輸以平衡節(jié)點(diǎn)的利用率,從而節(jié)約能量。
4)Square-X仿真描述
5)本發(fā)明仿真針對(duì)實(shí)際網(wǎng)絡(luò)環(huán)境中紅外傳感器監(jiān)測某一區(qū)域并周期性的發(fā)送數(shù)據(jù)到目的節(jié)點(diǎn)的過程,稱之為Square-X網(wǎng)絡(luò),X為網(wǎng)絡(luò)中目的節(jié)點(diǎn)的個(gè)數(shù)。以下為Square-1,Square-2,Square-4網(wǎng)絡(luò)示意圖,如圖4。
6)Square-1網(wǎng)絡(luò)可以簡化為兩個(gè)1-D線性隊(duì)列多跳模型,一個(gè)目的節(jié)點(diǎn)部署在左上角。所有節(jié)點(diǎn)在一個(gè)周期內(nèi)處于監(jiān)測狀態(tài),保證網(wǎng)絡(luò)區(qū)域不被侵犯,當(dāng)有異?,F(xiàn)象在某時(shí)刻任一節(jié)點(diǎn)附近發(fā)生時(shí),該節(jié)點(diǎn)將相關(guān)信息及時(shí)傳送到目的節(jié)點(diǎn)。
相應(yīng)的,Square-2網(wǎng)絡(luò)可以簡化為2*2個(gè)1-D線性隊(duì)列多跳模型,Square-4網(wǎng)絡(luò)可以簡化為2*4個(gè)1-D線性隊(duì)列多跳模型,并執(zhí)行相應(yīng)的操作。
Square-X網(wǎng)絡(luò)假設(shè)目的節(jié)點(diǎn)的能量是無限的,或其電源可以人工更換,不考慮能量耗盡的問題。
7)仿真過程
在仿真過程中,分別對(duì)Square-X(X=1,2,4)網(wǎng)絡(luò)進(jìn)行了仿真實(shí)現(xiàn)。并將節(jié)點(diǎn)的工作周期分為1-10min。
假設(shè)在一個(gè)周期內(nèi),所有的傳感器節(jié)點(diǎn)保持監(jiān)測狀態(tài),并且一個(gè)周期內(nèi)只有一個(gè)數(shù)據(jù)在任意節(jié)點(diǎn)產(chǎn)生并通過路由算法發(fā)送到目的節(jié)點(diǎn),每個(gè)參與路由的節(jié)點(diǎn)工作時(shí)間設(shè)為2.5s。
基于以上假設(shè),將提出的基于動(dòng)態(tài)可達(dá)域的路由算法和基于距離優(yōu)先與能量優(yōu)先算法進(jìn)行仿真比較。仿真結(jié)果描述如圖5:
圖5描述了Square-X(X=1,2,4)網(wǎng)絡(luò)三種算法的平均剩余能量隨周期的變化情況??梢?,隨著周期的變長(1min-10min),網(wǎng)絡(luò)總的剩余能量都在減少,這是符合實(shí)際情況的。因?yàn)橹芷谠介L,整個(gè)網(wǎng)絡(luò)運(yùn)行過程中傳輸?shù)目倳r(shí)間不變,但是監(jiān)測的時(shí)間變長,導(dǎo)致了能量消耗變大,因此剩余能量相應(yīng)會(huì)變低。在各周期內(nèi),距離優(yōu)先算法貪婪地選擇最遠(yuǎn)距離進(jìn)行傳輸,由于跳數(shù)減少,減少了傳輸過程中的總能量消耗,顯然能量消耗是最少的;而能量優(yōu)先算法過于考慮節(jié)點(diǎn)的剩余能量,每次選擇剩余能量最高的節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸,大大增加了一次傳輸過程中參與工作的節(jié)點(diǎn)個(gè)數(shù),相應(yīng)的消耗了更多的能量,因此該算法使得整個(gè)網(wǎng)絡(luò)最終剩余能量普遍比較低;本發(fā)明算法同時(shí)考慮節(jié)點(diǎn)每跳的距離與鄰居節(jié)點(diǎn)的剩余能量,在盡可能減少傳輸跳數(shù)的同時(shí)加入了對(duì)剩余能量的權(quán)衡,動(dòng)態(tài)的選擇每一跳參與傳輸?shù)墓?jié)點(diǎn),因此算法運(yùn)行結(jié)束網(wǎng)絡(luò)的平均剩余能量較高,并且遠(yuǎn)遠(yuǎn)高于能量優(yōu)先算法。因此,基于動(dòng)態(tài)可達(dá)域的算法在網(wǎng)絡(luò)剩余能量方面有一定的優(yōu)勢。
圖6對(duì)比了Square-X(X=1,2,4)網(wǎng)絡(luò)每種周期下三種算法剩余能量標(biāo)準(zhǔn)差的變化情況。動(dòng)態(tài)可達(dá)域路由機(jī)制的使用,平衡了各個(gè)節(jié)點(diǎn)的能量消耗速度,本發(fā)明算法的剩余能量標(biāo)準(zhǔn)差與距離優(yōu)先算法相差不大,但是的算法與距離優(yōu)先路由算法相比在一定程度上提高了網(wǎng)絡(luò)節(jié)點(diǎn)的利用率。動(dòng)態(tài)可達(dá)域路由的剩余能量標(biāo)準(zhǔn)差略高于能量優(yōu)先算法的原因是該算法還考慮了傳輸距離的關(guān)系,一定程度上影響了能量的平均,但是結(jié)合圖5可知,的算法在平均剩余能量方面遠(yuǎn)遠(yuǎn)好于能量優(yōu)先的算法,因此略高的標(biāo)準(zhǔn)差可以接受。平均剩余能量較高和節(jié)點(diǎn)利用率的提高都證明了本發(fā)明算法的必要性,對(duì)網(wǎng)絡(luò)壽命和網(wǎng)絡(luò)性能都有一定的影響。
表3網(wǎng)絡(luò)壽命統(tǒng)計(jì)
表3描述了Square-X(X=1,2,4)網(wǎng)絡(luò)三種算法的網(wǎng)絡(luò)壽命隨周期的變化情況。隨著周期變長,網(wǎng)絡(luò)傳輸能量消耗變少,因此各種算法的壽命都相應(yīng)的變長。而且,基于動(dòng)態(tài)可達(dá)域的算法網(wǎng)絡(luò)壽命顯然比其他兩種算法都要長。圖7描述了基于動(dòng)態(tài)可達(dá)域的路由算法與距離優(yōu)先和能量優(yōu)先算法網(wǎng)絡(luò)壽命的差值。表3與圖7結(jié)合都說明了基于動(dòng)態(tài)可達(dá)域算法在網(wǎng)絡(luò)壽命上的優(yōu)越性。而且,由圖7可以看出,隨著網(wǎng)絡(luò)傳輸頻率的升高,基于動(dòng)態(tài)可達(dá)域的路由算法在網(wǎng)絡(luò)壽命上的優(yōu)勢愈加明顯,也為網(wǎng)絡(luò)更好更頻繁的對(duì)環(huán)境監(jiān)測提供了支持。結(jié)合網(wǎng)絡(luò)平均剩余能量和剩余能量標(biāo)準(zhǔn)差的比較,動(dòng)態(tài)可達(dá)域路由算法的平均剩余能量遠(yuǎn)遠(yuǎn)好于能量優(yōu)先算法,而且其壽命也較其他兩種算法有一定的優(yōu)勢。因此,這也充分驗(yàn)證了引入動(dòng)態(tài)可達(dá)機(jī)制的正確性和有效性,更好地保證了網(wǎng)絡(luò)的高效運(yùn)行。
本發(fā)明針對(duì)1-D隊(duì)列網(wǎng)絡(luò)的最小化能耗和最大化網(wǎng)絡(luò)生命壽命,提出了基于動(dòng)態(tài)可達(dá)域的路由算法;算法利用節(jié)點(diǎn)有多個(gè)鄰居節(jié)點(diǎn)的特點(diǎn),采用最遠(yuǎn)跳距減少能耗,同時(shí)考慮節(jié)點(diǎn)的剩余能量,根據(jù)距離與能耗對(duì)鄰居節(jié)點(diǎn)的優(yōu)先級(jí)進(jìn)行排序,從而選擇最優(yōu)節(jié)點(diǎn)進(jìn)行傳輸;節(jié)點(diǎn)一般處于監(jiān)測狀態(tài),當(dāng)被選擇為中繼節(jié)點(diǎn)時(shí),執(zhí)行傳輸工作;仿真實(shí)驗(yàn)也表明,本發(fā)明的動(dòng)態(tài)可達(dá)路由策略不僅保證了最小的能量消耗,還保護(hù)了剩余能量相對(duì)較低的節(jié)點(diǎn),在提高能量效率和防止網(wǎng)絡(luò)發(fā)生分割方面都有一定的優(yōu)勢。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。