劉彤彤 王磊
摘要:為了提高智慧農業無線傳感器網絡路由的生存時間,節點能量消耗相對均衡,采用改進蟻群算法。首先建立無線傳感器網絡模型和約束條件;接著通過消耗能量預測節點傳輸能力,剩余能量、過載區域以及覆蓋冗余度構成適應度函數;然后改進蟻群算法,包括基于最佳路徑的目標函數值信息素分配策略,二點交叉算子對信息素分配策略對應的任意2個網絡節點序列進行優化;最后給出無線傳感器網絡路由優化流程。試驗仿真顯示本研究算法使無線傳感器網絡路由的節點間剩余能量差異性最小,網絡生存時間較長,不同節點數接收數據包平均剩余能量較多。
關鍵詞:無線傳感器網絡;最佳路徑;改進蟻群;剩余能量
中圖分類號: TP212.9;S126文獻標志碼: A
文章編號:1002-1302(2017)15-0199-03
無線傳感器網絡被廣泛應用在農業生產、監測、科研等智能領域,例如溫室大棚環境監測、土壤水分監測等可根據農作物生長需要進行實時智能決策,并自動開啟或者關閉指定的環境調節設備,但是無線傳感器網絡節點受到硬件資源和傳輸節點能量的限制,數據處理和傳輸能力較弱,如何有效利用能量,延長無線傳感器網絡壽命并保證網絡功能成為智慧農業無線傳感器研究的重要方向[1]。
目前關于智慧農業無線傳感器網絡路由能量利用效率和能量均衡優化研究方法有:蟻群算法(Ant Colony,AC),具有較強的全局尋優能力[2],但是需要收發雙向螞蟻大量、反復地更新信息素,若對鏈路穩定性進行考慮,那么最優路徑中有可能包含不穩定鏈路,因此路由生存時間受到影響,導致需要更大的網絡開銷;粒子群算法(Particle Swarm Optimization,PSO),通過睡眠調度機制優化網絡覆蓋性能[3],但是沒有考慮覆蓋率、能量利用效率、節點生存率的均衡性;動態分簇算法(Dynamic Clustering,DC),讓簇內節點把數據發送至簇頭[4],然后簇頭對匯總的數據進行融合,再以多跳方式發送給匯聚節點,這種算法能夠節省能量,但是存在網絡延遲等問題;定向擴散算法(Directed Diffusion,DD),能夠減小數據冗余[5],但是路由開銷增加,效率低。
為了提高智慧農業無線傳感器網絡路由優化性能,本研究采用改進蟻群算法(Improved Ant Colony,IAC)。首先建立無線傳感器網絡能耗模型和剩余能量約束條件;通過消耗能量預測節點傳輸能力,剩余能量、過載區域以及覆蓋冗余度構成適應度函數;改進蟻群算法包括基于最佳路徑的目標函數值信息素分配策略,二點交叉算子對信息素分配策略對應的任意2個網絡節點序列進行優化;試驗仿真顯示本研究算法使無線傳感器網絡路由的節點間剩余能量差異性最小,網絡生存時間較長,不同節點數接收數據包平均剩余能量較多。
1系統模型
1.1網絡模型
無線傳感器網絡路由可抽象成帶權有向圖G(V,E),V={v1,v2,…,vn}為網絡中感知節點的集合[6-7],E={e12,e23,…,eij}為相鄰節點之間通信鏈路的集合,其權值為路徑開銷,用W{vi,vj}表示。假設相鄰2個節點之間最多僅有一條可通信鏈路,如節點i、j∈V連通,且i、j之間不存在其他節點,則稱i、j邊為鏈路且(i、j)∈E。節點序列p(i1,i2,…,im-1,im)是一條長度為m的路徑,其中:il∈V,1≤l≤m,且,(il-1,il)∈E,2≤l≤m。
式中:Q為信息素濃度的常數;L為本次循環中所走路徑的長度;Lworst為最長路徑,如果第k只螞蟻沒有經過邊(r′,s),則Δτkt(r′,s)的值為零。該策略在每一周期結束時,僅對最佳路徑包含的路段增加信息素,更新后每條邊的信息素限制在所經過的最長路徑信息素濃度和最短信息素濃度之間,避免某些邊上的信息素過大,使信息素能夠正確指導螞蟻在下一次迭代的搜索方向,從而避免了大量無效搜索,提高了數據處理效率。
2.2.2局部優化
為了避免蟻群優化算法過早地陷入局部最優,在每次迭代中,當所有螞蟻完成解的構造之后[14],使用隨機函數rand()生成(0,1]之間的隨機數,其個數與螞蟻數量一樣,若該隨機數落在交叉概率[0.75,0.85]的取值范圍內,便應用遺傳算法中的二點交叉算子對信息素分配策略對應的任意2個網絡節點序列進行優化。在2個網絡節點序列編碼串中隨機設置2個交叉點;再交換2個網絡節點序列在所設定的2個交叉點之間的部分編碼串,若交換后的目標函數較小,則用交換后的解替換之前的解。
2.3算法描述
(1)參數初始化,設無線傳感器網絡節點數、螞蟻個數、初始化各個節點的參數及各條邊的信息,同時給出約束限制值;(2)計算每個螞蟻到終點后與初始目標點的距離,通過計算最優化目標函數的值,刪掉能量較小的傳感器節點,記錄并選擇當前迭代次數中的最優解,給予最短路徑較大的信息素增強,對各路徑上的信息素濃度進行更新;(3)使用二點交叉算子對處理節點序列進行優化;(4)重新評價各個螞蟻的適應度值,進行局部優化;(5)滿足適應度函數結束條件f(Xtk)≤f(Xt-1k)或達到最大迭代次數,進行步驟(6),否則進行步驟(2);(6)輸出無線傳感器網絡路由優化結果。
3試驗仿真
本仿真試驗中,網絡覆蓋范圍為150 m×150 m的矩形平面區域,隨機分布100個傳感器節點,統一對節點進行編號,節點的初始能量為0.5 J,節點間的有效傳輸距離20 m,試驗中選取的螞蟻總數120只,α′=1,β′=4,ρ=0.45,Q=50,交叉概率為0.8,每個節點的起始能量為110 J,發送/接收1 bit數據的能耗為0.05 J/bit,最大迭代次數120。仿真試驗對蟻群算法(AC)、粒子群算法(PSO)、動態分簇算法(DC)、定向擴散算法(DD)和本研究算法進行了比較。在試驗環境參數均相同的前提下,每種算法各運行20次蒙特卡羅試驗,取平均值為最終結果。endprint
3.1節能分析
無線傳感器網絡路由節點間剩余能量差異性越小越使各節點剩余能量均衡,有利于網絡生存時間提升。圖1所示為節點間剩余能量差異性比較。
從圖1可以看出,本研究算法的各節點間能量差異最小,因為本研究算法僅對最佳路徑包含的路段增加信息素,沒有頻繁地重建路徑,比較快速地建立了較優路徑,數據傳輸能量消耗少,因而剩余能量最多,這樣簇內節點能量消耗及每輪剩余能量的差異都較小,提高了全網能耗均衡性。
3.2網絡生存時間比較分析
網絡生存時間仿真結果如圖2所示。根據圖2對比結果可知,本研究算法的網絡生存時間遠遠大于AC算法、PSO算法、DC算法、DD算法,隨著感知節點數從逐漸減少,無線傳感器網絡生存時間逐步降低,但是本研究算法降低速度慢于其他算法,能夠有效延長整個無線傳感器網絡的生存時間。
3.3不同匯聚節點數接收數據包平均剩余能量分析
不同匯聚節點數接收數據包平均剩余能量分析結果如圖3所示。
從圖3可以看出,隨著匯聚節點接收數據包增加,節點的平均剩余能量不斷降低,本研究算法的歸一化剩余能量值最大,能夠提供更長的網絡壽命和消耗更少的能量。
4總結
本研究采用改進蟻群算法包括基于最佳路徑的目標函數值信息素分配策略,二點交叉算子對信息素分配策略對應的任意2個網絡節點序列進行優化,試驗仿真顯示本研究算法使無線傳感器網絡路由的節點間剩余能量差異性最小,不同節點數接收數據包平均剩余能量較多,從而有效延長了整個無線傳感器網絡的生存時間,為智慧農業無線傳感器網絡路由優化提供了一種新思路。
參考文獻:
[1]李樹江,佟以鑫,王向東,等. 一種基于無線傳感器網絡安全的能量優化路由算法[J]. 大連理工大學學報,2016,56(2):193-201.
[2]Tiwari P K,Vidyarthi D P. Improved auto control ant colony optimization using lazy ant approach for grid scheduling problem[J]. Future Generation Computer Systems,2016,60(6):78-89.
[3]Azharuddin M,Jana P K. Particle swarm optimization for maximizing lifetime of wireless sensor networks[J]. Computers & Electrical Engineering,2016,51(4):26-42.
[4]Gajjar S,Sarkar M,Dasgupta K. FAMACROW:Fuzzy and ant colony optimization based combined mac,routing,and unequal clustering cross-layer protocol for wireless sensor networks[J]. Applied Soft Computing,2016,43(6):235-247.
[5]Peng S,Low C P. Energy neutral directed diffusion for energy harvesting wireless sensor networks[J]. Computer Communications,2015,63(1):40-52.
[6]侯文哲,陳樂瑞,孔金生. 基于改進的混沌蟻群算法的網絡路由優化研究[J]. 計算機仿真,2016,32(2):307-310.
[7]朱永紅,丁恩杰,胡延軍. PSO優化的能耗均衡WSNs路由算法[J]. 儀器儀表學報,2015,36(1):78-86.
[8]譚德坤,王冠. 基于反向學習粒子群算法的無線傳感器網絡路由優化[J]. 計算機測量與控制,2013,21(10):2885-2887.
[9]賈斌,谷孝東. WSN中基于節點能力的路由選擇方法[J]. 科技創新導報,2015(32):137-138.
[10]王長清,黃靜. 基于協同進化粒子群算法的無線傳感器網絡節能優化覆蓋算法[J]. 河南師范大學學報(自然科學版),2016,41(1):54-58.
[11]趙麗萍. 基于蟻群優化的無線傳感器網絡路由算法[J]. 傳感器與微系統,2014,33(4):112-114.
[12]鄭慧君,陳俞強. 基于改進蟻群的路徑導航算法[J]. 控制工程,2016,23(4):608-612.
[13]倪壯,肖剛,敬忠良,等. 改進蟻群算法的飛機沖突解脫路徑規劃方法[J]. 傳感器與微系統,2016,35(4):130-133.
[14]王靈霞,趙宏. 面向云計算環境任務調度的改進蟻群算法[J]. 工業儀表與自動化裝置,2016(2):3-6,42.endprint