劉秋菊,王仲英
(1.鄭州工程技術(shù)學(xué)院信息工程學(xué)院,河南 鄭州 450000;2.河南經(jīng)貿(mào)職業(yè)學(xué)院工程經(jīng)濟(jì)學(xué)院,河南 鄭州 450018)
智能電網(wǎng)是利用高速雙向通信網(wǎng)絡(luò),把先進(jìn)的傳感技術(shù)、測控技術(shù)集成的綠色的清潔工程,容許各種不同發(fā)電形式的接入,實(shí)現(xiàn)電網(wǎng)的高效、可靠、安全傳輸[1].無線傳感器網(wǎng)絡(luò)(wireless sensor network, WSN)是把信息采集、傳輸、處理為一體的智能化綜合系統(tǒng),作為通信領(lǐng)域的新興技術(shù),具有自組織、多跳路由等優(yōu)點(diǎn),可以部署在智能電網(wǎng)中的條件要求苛刻的險(xiǎn)惡區(qū)域,在智能計(jì)量、故障定位、設(shè)備維修等方面得到了廣泛應(yīng)用[2-3].無線傳感器網(wǎng)絡(luò)在智能電網(wǎng)的建設(shè)中扮演著非常重要的角色.
面向智能電網(wǎng)的無線傳感器網(wǎng)絡(luò)針對電網(wǎng)的特點(diǎn)進(jìn)行設(shè)計(jì),同普通的傳感器網(wǎng)絡(luò)一樣,它也存在著一些關(guān)鍵技術(shù)問題需要深入研究,如路由協(xié)議、定位方法、功率分配等.高毓峰等研究了無線傳感器網(wǎng)絡(luò)中的經(jīng)典路由協(xié)議LEACH協(xié)議[4],根據(jù)電力通信的特點(diǎn),設(shè)置部分高級節(jié)點(diǎn),并對LEACH協(xié)議進(jìn)行了改進(jìn),可減輕普通傳感器節(jié)點(diǎn)的負(fù)擔(dān),實(shí)現(xiàn)了普通傳感器網(wǎng)絡(luò)到面向智能電網(wǎng)的無線傳感器網(wǎng)絡(luò)路由算法的移植.黃蓉等研究了適用于智能電網(wǎng)中的節(jié)點(diǎn)檢測和定位方法[5],設(shè)計(jì)了通過能量感知使簇頭和簇內(nèi)傳感器之間兩步通信算法,以此延長系統(tǒng)壽命.文獻(xiàn)[6~8]的作者從不同的角度提出了連通整個(gè)網(wǎng)絡(luò)的各節(jié)點(diǎn)最低發(fā)射功率的計(jì)算方法,并把它作為全網(wǎng)的發(fā)射功率.這種功率分配策略雖然簡便,但存在大量節(jié)點(diǎn)能量浪費(fèi)的情況.文獻(xiàn)[9]將節(jié)點(diǎn)的發(fā)射功率設(shè)置問題看做是網(wǎng)絡(luò)中的博弈問題,利用博弈求解過程確定節(jié)點(diǎn)發(fā)射功率,但在設(shè)計(jì)模型中并未考慮節(jié)點(diǎn)的多跳路由過程.文獻(xiàn)[10~12]從不同的角度提出網(wǎng)絡(luò)節(jié)點(diǎn)的功率分配以實(shí)現(xiàn)網(wǎng)絡(luò)效用最大化的方法.文獻(xiàn)[13]研究了結(jié)合路由找到了一條鏈路使得每個(gè)節(jié)點(diǎn)功率之和最小的方法,但只針對網(wǎng)絡(luò)中只有一個(gè)源節(jié)點(diǎn)和目的節(jié)點(diǎn)傳輸信息的情況.文獻(xiàn)[14]設(shè)計(jì)了一種支持并行傳輸?shù)男诺婪峙渑c功率控制聯(lián)合優(yōu)化博弈算法,但上述文獻(xiàn)中的算法都沒有考慮網(wǎng)絡(luò)能耗的均衡性,其節(jié)點(diǎn)選擇發(fā)射功率之后不再更改,容易造成傳感器網(wǎng)絡(luò)部分節(jié)點(diǎn)過早能量耗盡,造成網(wǎng)絡(luò)覆蓋空洞和網(wǎng)絡(luò)連通度的降低.
本文根據(jù)智能電網(wǎng)中的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)特點(diǎn),提出一種基于能耗均衡考慮的分布式動(dòng)態(tài)功率分配策略,通過局部的信息交換,綜合考慮節(jié)點(diǎn)的發(fā)射功率和下一跳節(jié)點(diǎn)的能量情況,選取情況更優(yōu)的節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù),并根據(jù)節(jié)點(diǎn)能量逐漸降低的情況,動(dòng)態(tài)調(diào)整下一跳節(jié)點(diǎn)和相應(yīng)的功率,充分利用了智能電網(wǎng)中傳感器節(jié)點(diǎn)的特點(diǎn),使網(wǎng)絡(luò)的整體能耗更加均衡.
物聯(lián)網(wǎng)技術(shù)通過智能感知與識別信息,再把信息通過互聯(lián)網(wǎng)技術(shù)傳播出去,如圖1所示.
圖1 面向智能電網(wǎng)的物聯(lián)網(wǎng)分層式網(wǎng)絡(luò)架構(gòu)
從圖中可以看到,無線傳感器網(wǎng)絡(luò)作為一種通信對象或通信技術(shù),主要功能就是把物聯(lián)網(wǎng)底層的感知對象通過傳感網(wǎng)絡(luò)感知,并利用感知終端通過物聯(lián)網(wǎng)發(fā)送出去或把物聯(lián)網(wǎng)傳輸?shù)目刂泼钔ㄟ^感知終端控制感知對象.傳感器網(wǎng)絡(luò)的自組織性、低功耗的特點(diǎn)使其服務(wù)于物聯(lián)網(wǎng)時(shí)顯示其優(yōu)勢[15].
針對周期性匯報(bào)的傳感器網(wǎng)絡(luò),假設(shè)每個(gè)節(jié)點(diǎn)每隔一段時(shí)間將收集到的數(shù)據(jù)發(fā)送至SINK節(jié)點(diǎn),并參與其他節(jié)點(diǎn)數(shù)據(jù)的轉(zhuǎn)發(fā),并假設(shè)網(wǎng)絡(luò)具備如下性質(zhì):
1) 所有節(jié)點(diǎn)隨機(jī)均勻分布在監(jiān)測區(qū)域內(nèi),節(jié)點(diǎn)靜止不動(dòng);
2) 所有節(jié)點(diǎn)同構(gòu),初始攜帶能量相同;
3) 假設(shè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)的路由已由相關(guān)路由算法事先確定,且中繼節(jié)點(diǎn)不會(huì)對數(shù)據(jù)進(jìn)行聚合,直接發(fā)送給下一跳節(jié)點(diǎn);
4) 傳感器節(jié)點(diǎn)的無線發(fā)射功率可控,可以根據(jù)需要來調(diào)節(jié)自身的發(fā)射功率;
5) 假設(shè)每個(gè)節(jié)點(diǎn)數(shù)據(jù)產(chǎn)生的周期足夠長,節(jié)點(diǎn)間的互相干擾已經(jīng)通過FDMA或TDMA等的方式解決,節(jié)點(diǎn)只考慮背景噪聲.
根據(jù)電磁波在自由空間的傳播損耗模型,如公式(1):
(1)
式中Pr為節(jié)點(diǎn)接收功率,Pt為節(jié)點(diǎn)發(fā)射功率,δ為使用電磁波波長,d為傳播距離,η為傳播損耗系數(shù),Gr和Gt分別為發(fā)送端與接收端的天線增益.
為了使發(fā)送數(shù)據(jù)能被轉(zhuǎn)發(fā)節(jié)點(diǎn)成功接收,設(shè)置每個(gè)節(jié)點(diǎn)接收的信號功率必須滿足一定的閾值Pth和信噪比閾值SNRth,設(shè)噪聲功率為σ2,則接收信號功率需滿足:
(2)
結(jié)合式(1),則節(jié)點(diǎn)i發(fā)送數(shù)據(jù)到節(jié)點(diǎn)j的發(fā)送功率需滿足:
(3)
式中d(i,j)為節(jié)點(diǎn)i到節(jié)點(diǎn)j之間的距離.
同時(shí),為了考慮節(jié)點(diǎn)能量消耗的均衡性,構(gòu)造一個(gè)反應(yīng)節(jié)點(diǎn)i能量情況的函數(shù):
(4)
式中Ei為節(jié)點(diǎn)i當(dāng)前剩余能量,ci為節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)的集合,E0為節(jié)點(diǎn)初始攜帶能量,α為調(diào)節(jié)參數(shù),取值范圍為α≥1.此函數(shù)實(shí)際上反映了局部范圍內(nèi)節(jié)點(diǎn)能量的均衡性,函數(shù)值越大說明該節(jié)點(diǎn)當(dāng)前能量相對富裕,函數(shù)值越小說明該節(jié)點(diǎn)當(dāng)前能量相對匱乏.
現(xiàn)根據(jù)節(jié)點(diǎn)要選擇的發(fā)射功率和能量情況構(gòu)造一個(gè)收益函數(shù):
Ui,j=C1·(βi+βj)·Pi,j+Vi
(5)
式中C1為權(quán)值系數(shù),βi為節(jié)點(diǎn)i當(dāng)前需幫助轉(zhuǎn)發(fā)的節(jié)點(diǎn)數(shù)量,其約束條件如式(3).
節(jié)點(diǎn)根據(jù)此函數(shù)在不同的發(fā)射功率和下一跳不同能量情況的節(jié)點(diǎn)中,選擇收益最大的策略,不僅考慮到節(jié)點(diǎn)的發(fā)射功率大小,而且還考慮到節(jié)點(diǎn)的能量情況.
在目前大多數(shù)的傳感器網(wǎng)絡(luò)功率控制機(jī)制中,節(jié)點(diǎn)找到合適的發(fā)射功率后不再變動(dòng),這就導(dǎo)致發(fā)射功率較大的節(jié)點(diǎn)率先能量耗盡,造成網(wǎng)絡(luò)連通度降低、出現(xiàn)覆蓋空洞等問題,使網(wǎng)絡(luò)性能下降.為了避免部分節(jié)點(diǎn)過早死亡,提出一種基于能耗均衡的分布式動(dòng)態(tài)功率分配算法(EBDPA),通過動(dòng)態(tài)調(diào)整節(jié)點(diǎn)的發(fā)射功率,提高網(wǎng)絡(luò)的整體生存時(shí)間,具體算法描述如下:
步驟1:所有節(jié)點(diǎn)初始化;
步驟2:每個(gè)節(jié)點(diǎn)向一跳范圍內(nèi)的節(jié)點(diǎn)(鄰居節(jié)點(diǎn))廣播自己當(dāng)前的能量信息Ei,并記錄接收到的鄰居節(jié)點(diǎn)的能量情況Ek,k∈ci;
步驟3:節(jié)點(diǎn)i根據(jù)式(4)計(jì)算自己的Vi值;
步驟4:若Vi=0,則跳至步驟8,若Vi≠0,則跳至下一步;
步驟5:節(jié)點(diǎn)i向鄰居節(jié)點(diǎn)廣播自己需轉(zhuǎn)發(fā)的數(shù)據(jù)量βi,并記錄接收到的鄰居節(jié)點(diǎn)的轉(zhuǎn)發(fā)數(shù)據(jù)量βk,k∈ci;
步驟6:計(jì)算選擇每個(gè)鄰居節(jié)點(diǎn)時(shí)的轉(zhuǎn)發(fā)數(shù)據(jù)量βi,k=βi+βk和發(fā)射功率Pi,j,并計(jì)算收益Ui,j(式5);
步驟7:節(jié)點(diǎn)i選擇收益值最大的鄰居節(jié)點(diǎn)k作為自己的下一跳節(jié)點(diǎn),節(jié)點(diǎn)i更新自己的Pi=Pi,k,節(jié)點(diǎn)k更新βk=βi,k;
步驟 8:節(jié)點(diǎn)i以已選擇節(jié)點(diǎn)為下一跳節(jié)點(diǎn),發(fā)射功率為Pi運(yùn)行一個(gè)周期;
步驟 9:跳至步驟2.
仿真實(shí)驗(yàn)中,所有節(jié)點(diǎn)均勻分布在100 m×100 m的區(qū)域內(nèi),Sink節(jié)點(diǎn)位于區(qū)域的中心,所有節(jié)點(diǎn)需周期性地將數(shù)據(jù)通過一跳或多跳的方式發(fā)送至Sink節(jié)點(diǎn).如無特別指定,實(shí)驗(yàn)中的參數(shù)設(shè)置如下:節(jié)點(diǎn)功率范圍為[-60 dbm, 0 dbm],各節(jié)點(diǎn)噪聲功率相等,為σ2=10-10mW,路徑損耗指數(shù)為η=2,電磁波長δ=0.3 m,天線增益GtGr=1,參數(shù)α=5,接收信噪比閾值為SNRth=5 dB,節(jié)點(diǎn)初始攜帶能量為E0=50 J,節(jié)點(diǎn)每個(gè)數(shù)據(jù)產(chǎn)生周期的能耗為0.1 J,節(jié)點(diǎn)一個(gè)數(shù)據(jù)產(chǎn)生周期為1輪次.
1)網(wǎng)絡(luò)節(jié)點(diǎn)功率節(jié)省情況
首先將所提出的EBDPA算法與CPC協(xié)議和尋找距離最近節(jié)點(diǎn)作為下一跳節(jié)點(diǎn)的D-SRPA算法進(jìn)行比較,定義網(wǎng)絡(luò)的功率節(jié)省率為:
(6)
圖2 網(wǎng)絡(luò)節(jié)點(diǎn)功率節(jié)省情況對比
由圖2可以看出,與統(tǒng)一發(fā)射功率的CPC協(xié)議相比,本文所提出的EBDPA機(jī)制能夠大幅提高節(jié)點(diǎn)節(jié)省的功率;但與尋找最近下一跳節(jié)點(diǎn)的D-SRPA算法相比,節(jié)省的功率還有很大差距,這是因?yàn)楸疚奶岢龅墓β史峙錂C(jī)制,在后期需要提高部分節(jié)點(diǎn)的發(fā)射功率,以減輕剩余能量少的節(jié)點(diǎn)的負(fù)擔(dān).
2)網(wǎng)絡(luò)生存時(shí)間
網(wǎng)絡(luò)生存時(shí)間是指網(wǎng)絡(luò)大部分節(jié)點(diǎn)的存活時(shí)間,而并不是指所有節(jié)點(diǎn)中存活時(shí)間的最大值.在網(wǎng)絡(luò)運(yùn)行的后期,部分節(jié)點(diǎn)的死亡會(huì)導(dǎo)致網(wǎng)絡(luò)性能的急劇下降,因此還需要考慮網(wǎng)絡(luò)能耗的均衡性,以防止某些節(jié)點(diǎn)因高負(fù)荷過早將能量耗盡.50個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)生存時(shí)間的仿真結(jié)果對比情況如圖3和圖4所示.
圖3 網(wǎng)絡(luò)存活節(jié)點(diǎn)數(shù)量隨時(shí)間的變化
圖4 網(wǎng)絡(luò)不同存活節(jié)點(diǎn)比例對應(yīng)的運(yùn)行時(shí)間
由圖3 可以看出D-SRPA算法中的節(jié)點(diǎn)死亡是逐漸出現(xiàn)的,而EBDPA機(jī)制的節(jié)點(diǎn)死亡是急劇發(fā)生的,但其發(fā)生時(shí)間要晚于前者.這一現(xiàn)象的好處就是延長了網(wǎng)絡(luò)大部分節(jié)點(diǎn)同時(shí)存活的時(shí)間,具體情況如圖4所示,在當(dāng)前情景下,EBDPA機(jī)制所有節(jié)點(diǎn)同時(shí)存活的時(shí)間要比D-SRPA算法多出16%左右,80%的節(jié)點(diǎn)同時(shí)存活的時(shí)間要多出5%左右,說明EBDPA機(jī)制能夠有效延長大部分節(jié)點(diǎn)同時(shí)存活的時(shí)間,提高了網(wǎng)絡(luò)的運(yùn)行壽命.
無線傳感器網(wǎng)絡(luò)中的能耗是很不均衡的,路由協(xié)議、定位算法、通信等都需要消耗能量,再加上智能電網(wǎng)中傳感器節(jié)點(diǎn)能量的異構(gòu)性,其能量消耗情況更為復(fù)雜,很難預(yù)測.本文針對智能電網(wǎng)的無線傳感器網(wǎng)絡(luò)的特點(diǎn),從能耗均衡的角度考慮,提出一種基于收益函數(shù)的分布式功率分配算法,綜合考慮節(jié)點(diǎn)的發(fā)射功率和下一跳節(jié)點(diǎn)的能量情況,動(dòng)態(tài)選擇發(fā)射功率和轉(zhuǎn)發(fā)節(jié)點(diǎn),使網(wǎng)絡(luò)的整體能耗更加均衡,提高了網(wǎng)絡(luò)生存時(shí)間.在構(gòu)造的反應(yīng)節(jié)點(diǎn)能量情況的函數(shù)中,選取參數(shù)α=5,α的取值越大可以使節(jié)點(diǎn)功率調(diào)節(jié)的次數(shù)越多,進(jìn)而使網(wǎng)絡(luò)的能耗更均衡;但更多的功率調(diào)整需要更多的信息交換,就需要消耗更多的能量,同時(shí),頻繁的功率調(diào)整也會(huì)對網(wǎng)絡(luò)的其他性能造成影響,所以下一步仍需對α的取值對網(wǎng)絡(luò)的綜合影響進(jìn)行研究.