劉功民 朱俊杰
1(柳州鐵道職業(yè)技術學院信息技術學院 廣西 柳州 545616) 2(中南林業(yè)科技大學計算機與信息工程學院 湖南 長沙 410004)
無線傳感器網(wǎng)絡(WSN)具有布線成本低、檢測精度高和可遠程控制等優(yōu)勢,已廣泛應用于環(huán)境科學、智能家居和智能交通等領域[1-2]。同時,WSN由于節(jié)點數(shù)量多且能量有限難以補充等問題,其發(fā)展與應用也受到限制。因此如何降低傳感器節(jié)點的能耗,延長網(wǎng)絡的壽命成為一個重要的研究熱點[3]。
目前,針對WSN中的能耗控制大多通過MAC層協(xié)議和路由技術來實現(xiàn),其中LEACH協(xié)議是最具有代表性的一種層次路由器[4]。文獻[5]提出了前端領先的節(jié)能簇首(FLEECH),用于從多個聚類中選擇簇首。通過在通信網(wǎng)絡中組織傳感器節(jié)點并將數(shù)據(jù)從傳感器節(jié)點路由到遠程接收器以克服聚類和網(wǎng)絡通信方面的困難。孫彥景等[6]提出EBFA路由協(xié)議,采用一種社會福利函數(shù),預先衡量中繼節(jié)點的能量消耗情況。文獻[7]基于NB-IoT窄寬物聯(lián)網(wǎng)技術設計了一種能夠進行數(shù)據(jù)幀轉換和處理的雙模網(wǎng)關,以實現(xiàn)在WSN與NB-IoT間高效的數(shù)據(jù)融合。文獻[8-9]提出了一種基于數(shù)據(jù)聚合的傳感器網(wǎng)絡可調模型,通過該模型降低了能耗,并且延長了網(wǎng)絡的存活時間。Sinha[9]利用無線通道的廣播特性以減少數(shù)據(jù)的傳輸量,并且是在數(shù)據(jù)融合的最后選出簇首。
由于簇首需要實現(xiàn)簇內與簇間通信,因此能耗比一般節(jié)點較高,這導致負載不均衡,甚至影響網(wǎng)絡通信。文獻[10]針對簇間負載不均衡性,結合能耗提出了以種群粒子優(yōu)劣為依據(jù)的自適應慣性權重調整策略的簇首選舉機制。文獻[11]提出了EEUC(Energy Efficient Unequal Clustering)路由協(xié)議,它是一個非均勻分簇路由協(xié)議,其簇成員數(shù)量少,節(jié)約能量用于簇間多跳轉發(fā)數(shù)據(jù)。文獻[12-13]采用不同的聚類算法,如K-means、MRRCE(Multi-hop Routing Reducing Consumed Energy)等,并考慮剩余能量和距離等因素,實現(xiàn)簇首選擇的最優(yōu)化,以提升網(wǎng)絡的生命周期。
此外,在連續(xù)監(jiān)測應用中,移動接收器的使用可能導致延時限制,并且通信所花費的時間更長。因此引入靜態(tài)和移動接收器(稱為雙重接收器)的組合以緩解能量漏洞,減少延時限制[14-15],使用受控移動接收器為無線傳感器網(wǎng)絡引入了節(jié)能競爭聚類算法[16],能夠改善傳感器網(wǎng)絡的性能。
以上關于不等簇首選擇方法以及網(wǎng)絡中使用靜態(tài)和移動接收器的研究側重于解決能耗與延時等問題,但在能量利用率、網(wǎng)絡壽命、網(wǎng)絡密度、聚類通信成本等方面降低了WSN性能。因此,本文提出了基于雙重接收器結合自適應加權數(shù)據(jù)融合的WSN簇首優(yōu)化聚類算法。主要的創(chuàng)新點如下:
(1) 傳統(tǒng)的節(jié)能方法無法有效地延長網(wǎng)絡壽命和能量分配,而所提具有雙重接收器的能量感知不等聚類路由算法增加了基站,能有效地轉發(fā)數(shù)據(jù)、均衡負載的能量分配。
(2) 靜態(tài)接收器附近的聚類耗能較多,靠近靜態(tài)接收器選擇簇首更是如此。因此,本文方法采用靜態(tài)接收器和移動接收器(雙重接收器)進行數(shù)據(jù)收集,以降低能耗。
(3) 大量傳感器節(jié)點會產生海量數(shù)據(jù),因此引入大數(shù)據(jù)技術,利用自適應加權數(shù)據(jù)融合技術減少了數(shù)據(jù)的傳遞數(shù)目,提高數(shù)據(jù)處理速度,降低能耗,提高了WSN的性能。
網(wǎng)絡模型由傳感器節(jié)點組成,且傳感器節(jié)點在網(wǎng)絡中均勻分布,相對于簇首(Cluster Head,CH)聚類?;疚挥诿總€傳感器區(qū)域,簇首和基站在整個過程中保持不變,每個節(jié)點分配唯一ID,根據(jù)傳輸范圍更改屬性。在WSN中這些網(wǎng)絡模型具有以下屬性:
(1) 傳感器節(jié)點始終是靜態(tài)的,它永遠不會改變其位置。這些節(jié)點用于收集周圍數(shù)據(jù)并通過無線通信將數(shù)據(jù)轉發(fā)到基站。
(2) 當發(fā)射功率級別降低時,節(jié)點可能具有動態(tài)調節(jié)其功率級別的能力。
(3) 傳感器區(qū)域的位置搜索中,每個傳感器節(jié)點是基于接收的信號強度而不是基于GPS設備來計算它們的位置。
在LEACH協(xié)議中,僅當傳感器節(jié)點選擇的隨機數(shù)小于閾值Ti時,傳感器節(jié)點才被選為當前旋轉輪的簇首。Ti的計算如下所示:
(1)
(2)
式中:Eelec是電能,是發(fā)送或接收1比特信息的能量消耗;φfs和φmp的比值是常數(shù)。在接收器中實現(xiàn)相同的過程并且為無線電消耗的能量是:
ERx(m)=m×Eelec
(3)
與通信能量相比,計算和存儲過程所消耗的能量要低得多。因此,僅考慮通信的能耗。為了結合數(shù)字s的這些信息,能量消耗可表示為:
EDx=s×k×Emerge
(4)
式中:Emerge是合并1比特信息的能量消耗;k為能量消耗系數(shù),通常取0.95。當距離小于Ti時,使用自由空間信道模型;當距離大于Ti時,使用多徑衰落信道模型。
基于上述系統(tǒng)模型,設計了基于雙重接收器結合數(shù)據(jù)融合技術(Dual Receivers Combined with Data Fusion Technology,DR-DFT)的簇首優(yōu)化聚類算法,以降低通信成本,節(jié)約能量并延長網(wǎng)絡壽命。算法的流程如圖1所示。
圖1 本文方法整體流程
本文系統(tǒng)的網(wǎng)絡模型的聚類構造如圖2所示。該系統(tǒng)由具有簇首的許多聚類組成,簇首在每一輪中形成,具有信號強度和無線電范圍。靜態(tài)和移動接收器位于網(wǎng)絡中心路徑,其功能是從簇首收集數(shù)據(jù)。在網(wǎng)絡中心,靜態(tài)接收器是固定的,移動接收器在網(wǎng)絡區(qū)域中以直線移動。節(jié)點在每一輪中聚類,由靜態(tài)和移動接收器收集數(shù)據(jù)。
圖2 本文方法的網(wǎng)絡模型聚類構造
簇首選擇基于兩個過程,即TCH選擇和FCH選擇?;谀芰康挠嫊r器(EBT)被分配給節(jié)點以選擇TCH,并且基于節(jié)點的整體信任值來計算信任值,選擇擁有最高信任值和能量的節(jié)點作為TCH。TCH根據(jù)競爭范圍、冗余能量、節(jié)點度和簇首數(shù)等參數(shù)競爭成為FCH。
2.1.1臨時簇首選擇
(1) 基于能量計時器(EBT)的TCH選擇。根據(jù)每個節(jié)點的能量,把傳感器節(jié)點分配給定時器,并根據(jù)能量,確定分配給節(jié)點的等待時間。本文方法使用兩個標準來分配等待時間,即具有較高能量的節(jié)點將被分配較短的等待時間,具有較低能量的節(jié)點將被分配較長的等待時間。將計時器值最先到期的節(jié)點選為臨時簇首(TCH)。
(5)
式中:E(in)表示節(jié)點i的第n個近鄰節(jié)點in的能量。對于任意傳感器節(jié)點ID:Si,基于能量的等待時間值為:
(6)
根據(jù)式(6),可知等待時間隨著節(jié)點能量的增加而減小,選擇此節(jié)點作為臨時簇首。
(2) 基于信任值的TCH選擇。使用信任值(TV)檢測節(jié)點行為、節(jié)點質量和節(jié)點服務,也把它用于傳感器節(jié)點的數(shù)據(jù)聚合、重新配置和路由。本文方法使用信任值收集數(shù)據(jù)并監(jiān)視節(jié)點中的不同事件,結合基于能量的計時器(EBT)以尋得臨時簇首。節(jié)點的信任值計算式為:
(7)
式中:NFD是轉發(fā)數(shù)據(jù)包的數(shù)量;NREC是接收數(shù)據(jù)包的數(shù)量。計算單個節(jié)點的信任值,并選擇具有最高信任值的節(jié)點作為臨時簇首。
2.1.2最終簇首選擇
基于傳感器節(jié)點的能量消耗,識別聚類的死節(jié)點和活節(jié)點。附帶在節(jié)點上的邊數(shù)稱為節(jié)點度,通過節(jié)點度這個指標衡量WSN的連通性,而增加節(jié)點度可以通過減少跳數(shù)來節(jié)省能量。通過評估每個節(jié)點的能量消耗來確定最佳節(jié)點度,其目的在于觀察由傳輸范圍控制的節(jié)點度變化引起的影響。
根據(jù)節(jié)點度和能量選擇簇首節(jié)點。N的平均節(jié)點度是:
(8)
式中:d(n)是節(jié)點的度;n是節(jié)點的近鄰數(shù)。網(wǎng)絡的最小節(jié)點度定義為:
(9)
與EEUC相比,dmin和dmean提供了有效的結果。節(jié)點度降低了簇首選擇的總體通信成本,增加了網(wǎng)絡的整體壽命。每個普通節(jié)點只屬于一個聚類,最小化聚類數(shù)可最大化聚類大小平均值。選擇部署在密集區(qū)域的高級節(jié)點作為簇首。
假設S1、S2、S3、S4、S5是被選定的五個臨時簇首,臨時簇首間的競爭范圍如圖3所示。
圖3 臨時簇首之間的競爭范圍
臨時簇首和最終簇首選擇具體步驟如下:
初始化:能量E,臨時簇首Sj,總能量Etotal,轉發(fā)數(shù)據(jù)包NFD,數(shù)據(jù)包總數(shù)NREC,節(jié)點非聚類集G,節(jié)點數(shù)N。
例1 臨時簇首選擇
1. ?節(jié)點i∈[網(wǎng)絡區(qū)域內],E(i)←節(jié)點i的能量級別
2. 初始化定時器(i)←k,近鄰節(jié)點in,傳感器網(wǎng)絡的第n個近鄰節(jié)點Si,選擇簇首為n
3. ifn為簇首
then 檢查聚類距離dmax=max(dmax,距離)且dmin=max(dmin,距離)
4. 根據(jù)式(5)、式(6)分別計算平均能量和等待時間
5. 重復步驟3和步驟4,直至達到高頻率的臨時簇首
6. ifn發(fā)送廣告并結合請求到G
節(jié)點的非聚類檢查并驗證簇首dmax、dmin、總能量Etotal=Etotal+E
else 創(chuàng)建新的聚首,形成剩余節(jié)點的非聚類集
7. 根據(jù)式(7)計算信任值
例2 最終簇首選擇
8. 根據(jù)式(8)、式(9)計算節(jié)點度和平均節(jié)點度
9. 對于所有密集區(qū)域,計算臨時簇首的競爭范圍:
10. if 距離d(Si,靜態(tài)接收器)增大
then 競爭范圍Ri增大
else if 距離d(Si,靜態(tài)接收器)減小
then 競爭范圍Ri減小
11. 選擇CH為FCH
本文算法在每輪中測量的冗余能量(RE),其從當前的Round(輪次)開始,直到達到最終節(jié)點。
在本輪中,CH消耗的能量為:
冗余能量=RE+S(i)×E
(10)
平均冗余能量(ARE):
(11)
則每輪的總能量消耗(TEC):
TEC(Round+1)=E0×n-RE(Round+1)
(12)
如果網(wǎng)絡中有n層可用,節(jié)點平均能耗為:
(13)
TEC由所有傳輸能量、接收能量、空閑能量和睡眠模式能量的平均值組成。結果顯示系統(tǒng)中存在總的死亡和活動節(jié)點,對于這種情況,每個節(jié)點都能夠將2 000位的數(shù)據(jù)包傳輸?shù)浇邮掌鳌4藭r,當傳輸距離較小和/或無線電能量較高時,則使用等量的能量進行發(fā)送和接收。
在連續(xù)監(jiān)測應用中使用雙重接收器可減少能耗問題。所提出的雙重接收器基于靜態(tài)和移動接收器用于聚合數(shù)據(jù)傳輸網(wǎng)絡模型。在網(wǎng)絡的中心,固定靜態(tài)接收器從附近的CH收集數(shù)據(jù),移動接收器在網(wǎng)絡區(qū)域中以直線運動形式朝靜態(tài)接收器移動。
在傳輸m比特信息時,靜態(tài)接收器的網(wǎng)絡坐標表示為:
(14)
移動接收器的線性路徑坐標表示為:
(15)
數(shù)據(jù)包到接收器的傳輸取決于簇首到移動或靜態(tài)接收器之間的最小距離,在聚類間具體的通信流程如圖4所示。
圖4 聚類間通信的流程
在無線傳感器網(wǎng)絡中,由于節(jié)點的部署具有隨機性與高密度性,所感應的信息具有冗余性、實時性、成本低等特點,而數(shù)據(jù)融合便可充分利用數(shù)據(jù)特征,有效減少冗余性,增強互補性。
為了更加客觀地對數(shù)據(jù)權重進行處理,提出一種自適應加權數(shù)據(jù)融合技術,準確度更高,并且能夠減少異常數(shù)據(jù)。提出的自適應加權數(shù)據(jù)融合技術中,當總方差最小時,自適應地尋找最優(yōu)加權因子,從而得到最優(yōu)的融合數(shù)據(jù)。
(16)
總方差σ2為:
(17)
(18)
(19)
對函數(shù)求極值,可得模型所對應的最優(yōu)加權因子以及總方差的最小值:
(20)
在實驗過程中,基于有效的簇首選擇以及基于DR-DFT的簇首優(yōu)化聚類算法使用雙重接收器進行數(shù)據(jù)傳輸,分析了網(wǎng)絡中每個節(jié)點的特性及其性能。使用MATLAB測試所提出的方法。在這項工作中,用100個節(jié)點模擬1 000 m×1 000 m的地形區(qū)域。假定網(wǎng)絡區(qū)域的最大競爭范圍為40 m。
在仿真結果中,討論了本文方法與現(xiàn)有的EEUC技術[11]、MRRCE技術[13]的比較。除此之外,通過實驗以確定活動節(jié)點和死節(jié)點的數(shù)量、冗余能量、平均冗余能量、總能量損耗、平均能量損耗和網(wǎng)絡壽命。仿真所用參數(shù)如表1所示。
表1 WSN仿真參數(shù)
在仿真時,每個節(jié)點都有自己的能量,能量用于與近鄰節(jié)點通信以進行數(shù)據(jù)傳輸?;顒庸?jié)點具有4 250個隨機選擇輪,如圖5所示。本文方法與EEUC技術、MRRCE技術進行比較。本文算法將活動節(jié)點數(shù)保持為較高的值,直到系統(tǒng)達到4 250輪。
圖5 活動節(jié)點數(shù)
圖6顯示了不同輪次的死節(jié)點數(shù),且本文系統(tǒng)的死節(jié)點數(shù)很少。當?shù)谝粋€節(jié)點失去其完整能量時,該輪數(shù)即網(wǎng)絡壽命。可以看出,第一個節(jié)點在1 150輪處死亡,因此網(wǎng)絡壽命為1 150。
圖6 死節(jié)點數(shù)
圖7顯示了本文方法與現(xiàn)有的EEUC技術、MRRCE技術的冗余能量。平均4 200個節(jié)點的聚類節(jié)點的能量損耗是平衡的且接近最小值。
圖7 對應輪次每個節(jié)點的冗余能量
圖8顯示了在不同輪次中的平均冗余能量。
圖8 對應輪次每個節(jié)點的平均冗余能量
圖9顯示了考慮TCH和FCH方案的情況下,三種方法總能耗的比較。當考慮平衡能耗方案時,使用最佳能量配置。本文方法平衡了能耗,增加了每個傳感器節(jié)點的傳輸速率。因為考慮到這一點,所以每個傳感器節(jié)點的能耗都很低。
圖9 對應輪次每個節(jié)點的總能耗
圖10顯示了每個節(jié)點的執(zhí)行時間。將本文方法與EEUC技術和MRRCE技術進行比較,其中EEUC和MRRCE都采用單接收器。
圖10 對應輪次每個節(jié)點的執(zhí)行時間
可以看出,相比其他兩種方法,本文方法執(zhí)行時間較長。分析可知,由于雙向接收器中的靜態(tài)接收器位置相對固定,接收信號范圍有限,而動態(tài)接收器在移動過程中會占用一定的時間,因此,相比基于單接收器的方法,本文方法一定程度上增加了耗時。但總體上看,相比其他2種方法而言,本文方法執(zhí)行時間并未增加太多,仍然在可以接受的范圍內。
將本文方法與現(xiàn)有的EEUC技術、MRRCE技術的網(wǎng)絡壽命進行比較如表2所示??梢杂^察到,本文方法具有更長的網(wǎng)絡壽命。
表2 網(wǎng)絡壽命比較
針對WSN中能量分布不均衡且網(wǎng)絡壽命較短等問題,提出一種利用雙傳感器結合自適應加權數(shù)據(jù)融合技術的WSN簇首優(yōu)化聚類算法,以減少能耗,延長網(wǎng)絡壽命。數(shù)據(jù)采集和傳輸過程中,該方法使用雙重接收器,通過移動接收器減少了節(jié)點的能量消耗,利用自適應加權數(shù)據(jù)融合技術對節(jié)點收集的數(shù)據(jù)進行有效信息提取。實驗結果表明,與EEUC和MRRCE技術相比,本文方法在活動節(jié)點數(shù)量、冗余能量、平均冗余能量、總能耗等方面取得了更好的結果。雖然在執(zhí)行時間上略有增加,但顯著提高了連續(xù)監(jiān)測無線傳感器網(wǎng)絡的網(wǎng)絡壽命以及降低了能量損耗。
未來會在雙重接收器的基礎上,考慮使用多重接收器進行數(shù)據(jù)搜集和傳輸,并利用機器學習優(yōu)化聚類算法降低WSN的能耗,從而進一步提高生命周期。