陳家璘 周正 馮偉東 賀易 李靜茹 趙世文



摘 要:在無線傳感器網絡(WSN)中,容易因為故障節點存在冗余的故障屬性、噪聲數據以及數據可靠性等問題,從而產生傳輸錯誤數據,這將極大地消耗WSN節點中能量和帶寬,向用戶形成錯誤的決策。為此,提出了基于蟻群算法和BP神經網絡模型的WSN節點故障檢測方法。通過使用蟻群算法,使用戶通過尋找優化路徑來定位WSN節點的位置,通過這種隨機搜索算法以及蟻群算法的搜索策略使用戶對WSN故障節點的位置進行總體把握。然后又基于BP神經網絡模型對獲取的WSN故障節點信息進一步學習,在數據訓練過程中,依據WSN故障節點預測誤差,并進一步調整網絡的權值和閾值,增加了故障診斷的精度。采用的算法對檢測WSN故障節點具有較好的性能,使無線傳感器網絡的服務質量大大提高,增強了系統的穩定性,實驗結果驗證了算法的可行性和有效性。
關鍵詞:WSN節點;故障檢測;蟻群算法;BP神經網絡模型; 定位
中圖分類號:TP393?????? 文獻標識碼:A
A Fault Detection Algorithm for Wireless Sensor Network Nodes
CHEN Jia-lin1, ZHOU Zheng1, FENG Wei-dong1,HE Yi1,LI Jing-ru1,ZHAO Shi-wen2
(1.State Grid Hubei Information & Telecommunication Co. Ltd., Wuhan, Hubei 430077,China;
2.Nanjing Nari Information & Telecommunication Technology Co. Ltd., Nanjing, Jiangsu 210000,China )
Abstract:In the wireless sensor network (WSN), it is easy to generate and transmit erroneous data due to redundant fault attributes, noise data, and data reliability of the faulty node. Thereby generating and transmitting erroneous data, which will greatly consume energy and bandwidth in the WSN node, and form an erroneous decision to the user. Aiming at this problem, this paper proposes a WSN node fault detection method based on ant colony algorithm and BP neural network model. By using the ant colony algorithm, the user locates the location of the WSN node by searching for an optimized path. The random search algorithm and the ant colony algorithm search strategy enable the user to grasp the overall location of the WSN fault node. Then, based on the BP neural network model, the WSN fault node information is further learned. In the data training process, the WSN fault node prediction error is further adjusted, and the weight and threshold of the network are further adjusted to increase the accuracy of fault diagnosis. The algorithm used? has better performance for detecting WSN fault nodes, which greatly improves the service quality of wireless sensor networks and enhances the stability of the system. The experimental results verify the feasibility and effectiveness of the algorithm.
Key words:WSN node; fault detection; ant colony algorithm; BP neural network model; localization
無線傳感器網絡(Wireless Sensor Network,WSN) 是由大量的傳感器節點以自組織方式組成的一個監控系統[1-2],其主要功能是實時地監控與處理目標區域的信息。在WSN中,通常布局綜合傳感器來監測、感知、采集、處理某個區域的網絡信息,使得信息被完整地反饋給用戶[3-4]。在WSN傳輸和處理數據時,大部分的WSN節點是隨機拋撒的,WSN節點常常部署在不可控制的惡劣環境中,用戶對部署后的節點不易實施維修處理[5-6]。致使個別節點發生崩潰、包損失、路由故障時,用戶難以處理,使傳輸數據出錯,這將大大消耗節點的能量和網絡寬帶,網絡癱瘓出現的頻率就大大提高。因此,研究有效適用的節點模塊故障診斷算法顯得尤為重要[7-8] ,它對延長WSN工作時間,維持系統穩定運行具有重要的現實意義。
為此,針對WSN故障節點檢測方法進行了深入地研究。通過提出蟻群算法,尋求最優路徑定位WSN故障節點,又應用了BP神經網絡模型更進一步地提高了學習精度,增加了檢測準確率,為增強網絡的運行提供必要的支撐。
1 WSN節點故障檢測系統
提出了一種將蟻群算法與BP神經網絡相結合的WSN節點故障檢測技術,能夠全面檢測WSN節點的故障信息,大大提高了WSN節點信息檢測的準確性和可靠性。在本方案構架中,主要包括數據層、信息檢測層和系統應用層,其系統構架如圖1所示。
在本系統設計中,在WSN中布局了大量的傳感器節點,在每個傳感器節點,都存在故障的可能性,因此,在檢測前,需要對傳感器節點信息進故障融合,通過融合故障信息,使用戶更全面地把握WSN節點信息情況,然后將融合的WSN節點信息通過本設計的算法進行計算、處理。通過蟻群算法估計、定位傳感器節點的位置,通過BP神經網絡對無線傳感器節點進一步的學習。BP神經網絡(Back-Propagation Network)又稱反向傳播神經網絡模型,能夠實現WSN故障節點的精確估計和檢測,通過對WSN故障節點的樣本數據進行訓練,使的網絡權值和閾值不斷地修正,得出更精確的數據[9-10]。在本系統設計中,得到的數據可在數據管理中心供用戶診斷并進行數據顯示。也可以通過工業CAN總線遠程傳遞到遠程數據監控中心,供更高一層監控中心進行管理。
2 故障檢測方法
如圖2所示,圖2是WSN節點故障檢測方法示意圖。在該方法中,蟻群算法在離散組合優化問題上具有突出的優勢。因此,選用蟻群算法搜索WSN節點,然后又使用BP神經網絡模型,使故障檢測精度大大提高。
2.1 蟻群算法模型
蟻群算法(Ant Colony Optimization,ACO)是由意大利學者M.Dorigo等人提出的一種全局優化的算法[1-4]。在該算法中,假設WSN節點的個數為N,未知節點個數為M,則函數表達式為:
然后根據上述公式建立BP神經網絡模型,通常建立模型時,采用三層 BP 網絡模型,將隱層結點數確定在7-11之間, 輸入層到隱層的數值介于0.2-0. 6之間,隱層到輸出層之間的數值介于0.1- 0. 5之間,由此建立BP 網絡模型。輸出參數信息通過BP神經網絡模型進行數據訓練,最終得出的WSN故障節點的各個參數的故障識別、故障診斷。
3 實驗及分析
采用MATLAB技術來仿真試驗,假設節點總個數為100,將其分布在10L*10 L的正方形區域內,其中L為區域邊長,本實驗L =5 m。錨節點的比例為10%,設定未知節點的個數為90,錨節點的個數則為10。錨節和未知節點隨機分布在正方形區域內。節點的仿真分布圖如圖4所示,在網絡中,節點的通訊半徑R=15 m,網絡連通度Connectivity=10.2。然后設置相關參數,假設螞蟻數目N=20,移動方向(S+1)=9,初始步長λ=1,步長衰減系數ζ=0.96,信息素持久度ρ=0.9,目標函數最小的螞蟻對信息素的貢獻Q=5,最大迭代次數設為150。
首先采用上述算法進行以下操作,步驟如下:
(1)對未知節點坐標矩陣進行初始化,設置各個參數初始值,假設T為迭代次數,設置各個參數初始值。
(2)設置信息素濃度矩陣(τivs) M*(S+1)中所有元素τivs=C,其中C為常數,C為信息素濃度初始值。
(3)將螞蟻元素遍歷所有未知節點。根據公式7為每個未知節點選擇下一步移動的方向。
(4)計算每個螞蟻得到的目標函數值,選擇最小的螞蟻的估計矩陣作為未知節點的估計矩陣。
(5)根據公式8更新信息素濃度,然后根據公式5對λ進行更新;
(6)判斷是否滿足結束條件(即T是否大于最大迭代次數,或者螞蟻找到的解都是相同解),若滿足則結束迭代;否則跳轉到Step3。
(7)輸出解的結果。
通過上述計算,作為第一實驗;然后采用上述方法,單獨采用BP神經網絡模型進行實驗,其得出的誤差數據為第二實驗;單獨采用蟻群算法進行實驗,作為第三試驗。下面通過曲線圖表示三種不同形式的誤差數據表示。
在圖7中,橫坐標X表示時間t,縱坐標Y表示計算誤差數據。上圖表示在t時間內,采用三種不同的方式進行實驗。其中▲表示采用蟻算法得出的誤差數據曲線圖,●表示采用BP神經網絡模型得出的誤差數據,■表示采用蟻群算法和BP神經網絡模型得出的誤差數據。通過上述曲線對比,可以發現,本設計的算法方法得出的誤差數據準確度更高。因此使用本設計的方法具有較小的誤差,大大提高了判斷WSN故障節點的準確度。
4 結 論
將蟻群算法應用在無線傳感器節點定位中,并提出了基于蟻群算法的WSN故障節點定位算法,其能夠實現WSN故障節點的最優化搜索。通過迭代運算,使得搜索路徑上螞蟻元素可以均勻地聚集,標準、動態地調整螞蟻元素的路徑,實現對所選擇路徑的估計,并對信息素進行更新,快速得出路徑的局部最優解。然后用戶使用BP神經網絡模型對WSN故障節點信息進一步學習、計算,通過將誤差數據反向計算、傳播,從而獲取更高的學習效率,使得對WSN故障節點信息的估計更加精確。大大提高了WSN故障節點檢測的精確性、可靠性,有助于用戶進一步研究、分析WSN故障節點事件。
參考文獻
[1] 劉云璐, 蒲菊華, 方維維, 等. 一種無線傳感器網絡MAC協議優化算法[J/O].計算機學報, 2012, 35(3):529-539.
[2] 李建坡, 穆寶春.計算機應用研究[J]. 電力自動化設備, 2017, 34(1): 186-188.
[3] 魯義寬, 李波.無線傳感器網絡故障診斷研究[J]. 激光雜志, 2016, 37(1): 71-74.
[4] 王麗紅, 于光華, 夏魁良.鄰域搜索蟻群算法在無線傳感器網絡數據融合中的應用[J].計算機測量與控制, 2017, 25(6):298-301.
[5] 袁圃, 毛劍琳, 向鳳紅, 等.改進的基于遺傳優化BP神經網絡的電網故障診斷[J/O].電力系統及其自動化學報, 2017, 29(1): 118-122.
[6] 孫慧影, 林中鵬, 黃燦, 等. 基于改進BP神經網絡的礦用通風機故障診斷[J]. 工礦自動化, 2017, 43(4): 37-41.
[7] 雷靜, 余斌. 基于信息融合和神經網絡的煤巖識別方法[J].工礦自動化, 2017, 43(9): 102-105.
[8] 馬天兵, 王孝東, 杜菲, 等. 基于小波包和BP神經網絡的剛性罐道故障診斷[J]. 工礦自動化,2018, 44(8):76-80.
[9] 戴天虹, 李昊.基于改進蟻群算法的無線傳感器網絡路由的優化[J]. 計算機測量與控制, 2016, 24(2):321-324.
[10]余光華, 余成. WSN中利用蟻群路徑優化的時隙選擇重排算法[J]. 計算機應用研究, 2018, 35(10):3069-3074.