

摘要:為了降低無線傳感器網絡的能耗提出了將仿生算法應用于網絡路由決策,生成節點之間的最優化路由。給出了仿生算法的基本原理與計算最小路徑樹的主要步驟。實驗結果顯示,該算法相對于PVCHI等協議來說,有較好的降低網絡節點工作能耗的效果。
關鍵詞:簇;仿生路由算法;最短路徑樹
中圖分類號:TP393? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)04-0177-02
Abstract:This paper proposes a method to reduce the energy consumption of nodes by applying bionic algorithm to network routing decision to generate the optimal routing between nodes. The basic principle of bionic algorithm and the main steps of calculating the minimum path number are given. The experimental results show that the algorithm can effectively reduce energy consumption.
Key words:cluster; bionic routing algorithm; shortest path tree
1背景
無線傳感器網絡由大量微型傳感器設備(節點)構成。這些節點分布在特定區域內,能夠周期性的從周圍環境中收集相關信息,產生并向遠端的基站(Base station,BS)發送數據報。基站接收、分析并存儲這些數據報,據此掌握該區域的相關情況。無線傳感器網絡基于其網絡節點數靈活可控、拓撲結構冗余度高等優點,在各領域得到了廣泛推廣。微型傳感器節點的物理尺寸決定了其攜帶電池容量是有限的,而且通常情況下電池能量是無法得到補充的。由于無線傳感器網絡節點及基站之間傳輸數據基本采用的是近距離無線通信方式,因此無線通信方式中節點收、發數據的能耗是需要重點關注的,其主要影響因素與節點收發數據的規則、約定有關,即與網絡協議密切相關。本文提出了一種基于仿生算法的網絡協議,對于給定傳感器網絡模型,能使其中節點以節能的方式快速有效地將傳感器收集的數據傳送到基站處理,從而降低在數據傳輸途徑上不必要的能耗。
2網絡協議細節
2.1 網絡環境
本文中對傳感器節點所部署的網絡環境進行了如下約定:1)傳感器節點部署到監測區域時采用飛機或人工隨機投送方式。為了簡化影響條件,約定該區域為一長寬相等的矩形區域。所有傳感器節點的軟硬件配置相同,其配備的電池具有相同的初始電量、具有相同的路由計算能力、數據轉發能力以及有效覆蓋整個檢測區域范圍的無線通信能力。2)假定傳感器節點都具備實時監測所攜帶電池的剩余電量的能力、都具備無線信號強度檢測能力。3)每個節點在每個采樣周期產生一條固定長度數據報,最終將傳送到在監測區域遠端的固定基站(BS),BS接受、處理、存儲和共享這些數據。
2.2 協議基本思想
由于傳感器節點電池電量有限且是純消耗性的,電量用完該節點即宣告失效。當失效節點達到一定數量時,整個網絡的數據收集能力將大大下降甚至完全失去監測作用。因此從降低能耗這一抓手出發,設計能耗優化的網絡工作機制是協議是否具有實際應用價值的關鍵。對此采取以下措施:1)控制通信范圍,對網絡實行分簇管理,通信僅限于簇內節點之間進行,不同簇節點相互不進行直接通信。2)簇內節點只與相鄰節點(一定距離范圍之內的節點)直接通信。采樣數據報在相鄰節點間沿簇內路由樹傳遞最終送達簇核心,指令數據報沿逆方向傳遞。每個接收節點當接收并轉發數據報后,會給前一個節點發送一反饋報文以保證路由的有效性。3)簇核心由于會比普通節點消耗更多能量,因此每隔一段時間重新選舉簇核心,以平衡所有節點的能量消耗。協議經歷分簇、路由形成、正常數據傳輸階段組成,具體細節如下所述:
(1)監測區域劃分為n個簇,在所有節點中隨機選擇n個節點作為簇核心。每個節點擁有一個唯一的整數ID。在一個采樣周期開始的時候,每個節點先隨機生成一個范圍在(ID-1)到(ID+1)內的隨機數,然后用此數mod(ID),得到的值若大于T,則該節點成為核心節點,此時其所在的簇ID就是該節點的ID值。然后該核心節點發送群播消息(BDCV),其余節點收到的群播消息強度如果大于△E1,就選擇加入該簇,△E的大小根據實際情況選擇。T由公式計算得到:T =[nN?(rmodNn)n],r為經歷的輪數,N為節點總數,n為簇核心的個數。超過簇的生存期Tc則重新選擇簇核心,這樣既平衡節點的能量消耗,又防止過于頻繁劃分簇而消耗大量節點能量。
(2)數據傳輸路徑的選擇。為了保存網絡的拓撲信息,每個節點內部會維護一張相鄰節點信息表。每個節點接收簇內其他節點發送的廣播搜索報文BCAB(以恒定功率發送,含有發送節點的ID),如果收到的信號強度大于閾值△E2(由實際情況決定),就將他加入自己的相鄰節點表中,同時將信號強度Ei也存入對應表格中,因此在獲得相鄰節點信息的同時,節點也得到了其相鄰節點間的鏈路(無線信道)權值,即它們之間的距離信息。接下來需要以簇為單位,計算出簇內轉發路由表。該路由表實質就是對應于簇內最短路徑樹,由基于變形蟲算法的計算方法得到。當有節點失效(發送節點接收不到接收節點的發送的反饋報文),則該節點將向全簇節點發送廣播消息通告此情況,并激活更新相鄰節點信息表的進程:簇內節點重新執行(2)中操作以重新獲取全局拓撲信息和計算路由。
(3)數據采集。節點在采樣周期內將進行若干次的數據采集操作,具體次數由實際情況而定。生成的數據報按在每個節點中存儲的由2.3節算法計算出來的路由表進行轉發,直至核心節點。需要注意的是,并不是每個節點都會發起上述的數據傳送,而是只能由葉子節點發起。路由表中的中間節點只是在葉子節點發起數據傳送時,將自己采集得到的數據與前一個節點轉發來的數據進行合并處理,然后再將該數據報轉發出去。因此,每個采樣周期核心節點只會收到等于葉子節點總數的數據報,并將這些數據報發送給BS。這樣,可以有效減少數據報產生和轉發的次數,降低節點的功耗。
2.3 基于仿生算法的通信路由優化
無線信號傳輸距離越遠,數據傳輸所需能量消耗越大。為了最大限度降低數據傳輸時總的能量消耗,數據包應該沿著優化過的路由途徑來傳輸。這要求路由算法計算出來的路由由普通節點到簇核心節點的跳數最小,也就是說,簇內路由應該是一顆最小路徑樹。由于變形蟲對食物獲取路徑的選擇和傳感器網絡中路由的計算形成具有很高的相似度,同時也由于其算法開銷比較大,因此需要對變形蟲算法改進才能用于路由決策。將變形蟲網絡迷宮對應于傳感器網絡中的一個簇,含有食物源的起點與終點分別對應簇中的核心節點和普通節點。網絡中的核心記為C1,普通節點中的終點記為C2,其他節點分別表示為Ci(i= 3,4,5...)。連接節點Ci與節點Cj的管道可以表示為邊Tij,對應可以表示傳感器網絡中兩節點間的鏈路,流經邊Tij的流量表示為Qij,對應傳感器網絡中的數據流量,其滿足泊松定律。在傳感器網絡中,用節點i處的信號強度用Ei替代壓力pi,因此,公式變為:
3 實驗分析及小結
為驗證協議效果,將其同PVCHI協議和文獻[4]中協議進行對比。實驗考察三種協議每個采樣周期所有節點的平均能耗。實驗區域設定為長寬為50/100/300/500米的矩形區域內,N個節點隨機分布在該區域中。PVCHI協議簇內所有節點一個采樣周期的能耗為:[Ec=(Eeleck+εfskM22πn)(Nn?1)+mp.(k+1)d3bs],在文獻[4]中總能耗為:[Efc=(Eeleck+εfsM2k(N?1)2)N2+Eeleck(N2?13NN)],基于仿生算法協議總能耗為:[Enc=2NEeleck+εfs(k?1)M2?NN(N?n)]。實驗中取數據長度為k=2000,n=5。當N=300時,實驗結果見表1。
實驗結果顯示,PVCHI協議一個采樣周期內能耗最多,根本原因之一是每個節點都會產生和轉發數據報,導致有很大一部分能量用于處理、轉發冗余數據。其次,是由于其路由選擇算法計算得到的路由使傳輸數據報時不是最短跳數。本文提出的改進協議由于同時減小了數據傳輸時的通信距離和數據發收次數,因而使節點的能耗降低。無線傳感器網絡的能耗問題是制約和影響其廣泛應用的重要因素之一,實驗證明,本文的解決方案通過平衡節點功耗,用仿生算法優化數據傳輸路徑和降低節點轉發數據的次數,能有效降低節點功耗,延長無線傳感器網絡的工作壽命。
參考文獻:
[1] 梁鳴心.基于多頭絨泡菌仿生模型的圖挖掘研究[D].西南大學,2017.
[2] 張曉革.基于多頭絨泡菌的交通網絡設計算法的研究[D].西南大學,2014.
[3] 王慶.基于多頭絨泡菌的路網優化算法[D].西南大學,2012.
[4] 陳凌平.一種低功耗自組織傳感器網絡協議[J].計算機應用研究,2005(2):209-211.
【通聯編輯:代影】