樊雷松,強 彥,趙涓涓,胡洋洋,格 磊
(太原理工大學 計算機學院,山西 太原030024)
使用多種傳感器檢測森林環境,并通過無線網絡的傳輸,能夠有效地提高森林火災的監測能力。為了減少節點能量的開銷,出現了節點調度和數據融合等技術[1,2],延長了節點的生存時間。在應用了數據融合技術的無線傳感網中,終端節點接受到數據后,先通過閾值剔除噪音數據,然后進行融合判斷。如果終端節點判斷到有火災,那么它將通過中心節點將數據上報給數據中心,并報告火勢[3]。否則,終端節點的通信模塊將處于休眠狀態。從而,減少了節點的電量消耗,很好地解決了無線傳感網中存在大量無效數據的問題[4]。因此,無線傳感網中的數據融合是很有必要性的。然而,這種方法也有很多問題,例如:數據融合算法種類很多,很難挑選一種最優的算法應用于火災監測;無線網絡節點處理能力有限,達不到算法所需要的計算能力;算法的收斂速度慢,消耗了過多的電量。
針對上述的問題,本文提出了一種改進了的基于BP神經網絡的數據融合方法,這種方法能夠快速地收斂,并且描述了使用硬件實現該方法的步驟。最后,將其應用到了森林防火上,減少了無線傳感網絡中的無效數據,延長了節點的生命周期。
無線傳感是具有交叉學科性質的技術,而且可以廣泛應用于國家軍事、智能交通管理、大型災害預測、全民醫療衛生和城市信息化建設等各種領域[5]。
近幾年來引入了無線傳感網絡搭載上各種傳感器的技術來檢測火災,無線傳感網絡可以通過各種傳感器來實時接受數據。然后,將獲取的數據通過ZigBee等協議經路由后傳輸給網絡中心。其中,無線傳感網絡是由功能各異的許多無線傳感器以及微型處理器等節點組成[6]。
在無線傳感網的基礎上進行的數據融合是指利用計算機對按時序獲得的若干觀測信息,在一定準則下加以自動分析、綜合,以完成所需的決策和評估任務而進行的信息處理技術。
數據融合的定義是多方面和多層次的處理數據序列,就是把來自各個傳感器與信息源的數據和信息加以相關、聯合和組合,從而獲得了精確的身份估計和位置估計,然后對整體的情況做出應急判斷。數據融合這種技術在近30年來取得了飛速的發展,在多個先進發達國家,都有學者和技術人員在開展數據融合技術的研究,所以這一領域的研究內容和成果已大量出現在各種學術會議和公開的學術期刊上[7,8]。
經常使用的數據融合的算法有:
經典統計理論:將被測參數作為一個固定值,沒有充分利用其先驗信息,精度和信度是預定的,不依賴于樣本。
Bayes估計理論:Bayes方法具有嚴格的理論基礎,應用廣泛,采用歸推理的方法對多源信息進行有效地融合,充分利用了測量對象的先驗信息[9]。
濾波跟蹤型數據融合算法:利用數字濾波方法根據測量值估計被測量真值,利用當前和歷史測量數據估計目標未來狀態[10]。
神經網絡方法:是一種規則透明的非線性映射方法,信息存儲于網絡結構和連接權值,增強了信息處理的容錯性,具有自組織和自學習能力[11,12]。
陳宜等人提出了一種聯合BP神經網絡和D-S證據理論的方法[13]。該方法能提高數據融合的效果且去噪效果好,但能耗大不易應用于無線節點。凌有利提出了基于模糊神經網絡的數據融合方法[14],這種方法的優勢就是提高神經網絡的學習速度,但是其它方面的效果比較一般。
防火系統的架構如圖1所示。整個架構分為4個層次:應用層、傳輸層、融合判斷層和感應層。在通用的物聯網架構中加入了數據的融合判斷層,這一層與上下兩層相互合作屏蔽掉了無用的信息,進行了多數據的融合。
感應層通過各種傳感器獲取數據,包括森林中的濕度、溫度等值。
圖1 系統網絡層次
傳輸層規定了防火系統所選用的無線協議標準。選擇協議的一個重要指標是電量,由于無線傳感網絡中的節點耗電問題,必須選取省電、節能的協議。ZigBee就是這樣一種已被廣泛應用的無線協議。ZigBee聯盟對網絡協議進行了標準化,同時開發了安全功能,應用已經比較成熟。
應用層目標是軟件應用,當通信層傳輸數據到應用層的云數據庫中,用戶可以通過Web界面監視節點的狀態,獲取火災警告息,并管理歷史數據。用戶可以通過云平臺的計算能力分析數據,對火災、火勢進行預測。
在融合判斷層,多數據融合技術綜合森林中的多個傳感器的數據,收集多個傳感器的信息,應用閾值調節的神經網絡融合數據來判斷火災信息。
在這一層中,將節點采集到的火焰、溫度、濕度、氣體等信息綜合判斷。
首先,通過閾值刪除無效的干擾數據。然后,利用多數據融合技術處理感應層得到的數據。其中用到的融合算法,對獲得的數據進行時序上的排列,然后在數學模型的準則上判斷有效信息。
BP神經網絡的融合方法就是本文所選取的數學模型。它通過權值的調節增加了數據的準確性。經過反復地訓練能夠選取最合適的權值和閾值。權值的大小決定了某種數據的重要程度,從而能夠對多種數據進行綜合判斷。
完成這一工作的硬件設備是中心節點,也就是具有獨立處理能力的節點,由單片機、傳輸模塊和各種傳感器組成。傳輸模塊通過ZigBee協議接受終端節點的數據,然后進行數據的融合。
在融合層處理大量的數據,需要消耗電量,所以這層的算法至關重要,算法的復雜度決定了節點電量的消耗量。算法是否快速的收斂也決定了融合層設計的成敗。
數據融合就是利用計算機對各種信息源進行處理、控制和決策的一體化過程。無線設備采集到的數據經由單片機和服務器進行處理和控制,從而決定了防火系統的決策。
1943年,Warren Mcclloch和Walter Pitts最早提出了一種人工神經元模型,這種模型的主要特點就是把神經元輸入信號的加權和其閾值相比較以確定神經元的輸出。本文就是延續了這一思想然后對閾值進行自動調整形成的神經網絡方法。
算法的改進:通過Levenberg-Marquardt算法優化的BP神經網絡,加快了收斂速度,使得這種融合算法更好地應用于電量很少的無線傳感節點上。
每個節點上安裝3個傳感器,分別用于接收溫度、濕度、氣體 (UEL)數據。先對數據進行閾值設定,從而得到輸入向量。
定義1 輸入向量就是3種傳感器達到預設閾值后的輸出值P(X1,X2,X3)。例如:當溫度感應器的模擬信號是40,濕度模擬信號是60和氣體的模擬信號是100的時候輸入向量為P(40,60,100)。
由于傳感器節點能量的主要消耗在傳輸數據上,因此,減少節點數據傳輸量可以有效的延長網絡的生命周期。由定義可以看出來傳感器接受的數據是多數據,而輸出則是一個單數據。本節點傳輸給網絡中心的數據也就是一個值,所以大大減少的電能的損失。在得到輸入量之后,設計MLP神經網絡的神經元。
其中P表示一個輸入向量,W是表示權值,當傳感器的輸入值與權值相乘的時候,權值指定了數據的重要性,這個是由于某類數據對火災的影響程度是不同的所決定的。S表示中間層的數據流。B是閾值矩陣,前饋層的傳輸函數是Purelin型函數,遞歸層的激勵函數是Poslin型函數。
如圖2所示,MLP神經網絡的神經元在中心節點實現之后,處理接受各種傳感器的數據。首先MLP神經網絡進入學習階段對網絡權值和閾值進行修改。對于多層網絡上一層的輸入等于下一層的輸出,最后的輸出作為觀測火災的特征值來做策論判別。通過MatLab自帶的函數訓練好神經網絡,然后反復地修正網絡權值和閾值后,中心節點下傳給終端節點,從而終端節點有了對火災的判斷能力,不需要進行大量數據的傳播,從而節省了電量。
圖2 神經元
如果節點使用的單片機使得節點的處理能力不足以訓練神經網絡的感知機器,那么學習階段也可以在數據中心進行,學習階段分為四步:
步驟1 數據中心通知中心節點進入學習階段,中心節點通過Zigbee網絡設定終端節點中神經網絡元的閾值和權值。
步驟2 中心節點選取一定時間段內本區域收集到的數據,然后構建神經網絡。
步驟3 中心節點自動檢索數據庫構建輸入向量P(X1,X2,X3),然后應用輸入向量訓練神經網絡得到新的閾值和權值。
步驟4 中心節點下傳給終端節點新的網絡權值和閾值。
當終端節點拿到權值和閾值之后就可以通過神經元對火災進行判斷。通過神經網絡的輸入矢量求輸出的矢量步驟如下所示。
步驟1 使用隨機產生的權值矩陣與輸入向量相乘。然后與閾值B累加從而形成凈輸入n
步驟2 前饋層神經元輸出。通過傳播函數處理凈輸入量得到的就是前饋神經的輸出,用來作為遞歸層的輸入量
步驟3 遞歸層的反復計算直到神經網絡的收斂
由于傳感器節點能量受限,如何將BP神經網絡算法應用到節點上將是一大挑戰。
LMBP算法加快了神經網絡的收斂,在LMBP中最要求出判別矩陣,首先計算誤差的倒數然后得出LMP網絡的判別矩陣。從而計算出最有效權值和閾值,通過Levenberg-Marquardt算法優化的BP神經網絡很好的在節點上實現,使得電量的消耗下降。更快速的收斂減少了信息的傳播時間。
中心節點如圖3所示,包括傳感模塊、處理模塊、通信模塊、數據采集模塊、數據融合模塊。
傳感模塊:通過溫濕度傳感器、氣體傳感器、溫度傳感器采集基礎數據用于數據融合。
處理模塊:通過單片機完成數據融合計算,從而判斷有效的數據再傳遞給無線模塊,同時單片機還有電源管理的功能給整個裝置提供電源策略。
通信模塊:硬件實現的Xbee協議棧。
數據采集模塊:是傳感器的驅動程序,驅動傳感器采集數據,通過數據閾值自動地剔除多余的,無效的,混雜的傳感器數據,從而達到減少功耗的效果。
數據融合模塊:將各種信息聯合起來融合成關鍵信息,報告可能的火勢。融合過程就是上述的利用神經網絡對多種數據進行融合,然后使用了Levenberg-Marquardt算法來提高神經網絡的收斂速度。
中心節點是一個獨特的裝置。本裝置模塊化的設計使節點能夠根據環境安裝各種傳感器,對多種數據進行融合。當節點處于休眠狀態的時候,只開啟數據采集模塊和融合模塊。當融合模塊發現火勢后節點變成激活狀態,同時開啟通信模塊。這種設計應用于森林防火的物聯網后,很好地解決了節點功耗高的問題。
更為難得的是中心節點使用的LMBP算法加快了神經網絡收斂的速度,降低了算法對節點硬件的要求。使用一般的嵌入式單片機就可以實現融合算法。從而,解決了BP神經網絡算法不能移植到節點上的問題。
步驟1 調試ZigBee模塊組建網絡。使用Xbee適配器將ZigBee模塊調試成API模式。
步驟2 開發中心節點,將ZigBee模塊插入到Arduino(一款實用的嵌入式開發單片機)的擴展板上,利用Arduino的IDE開發Zigbee的驅動程序然后嵌入到單片機中。
步驟3 先在計算機上使用MatLab實現神經網絡,然后轉換成C程序,將程序移植到中心節點上。
步驟4 在中心節點上實現數據融合,取得新的權值矩陣和數據閾值。
步驟5 中心節點通過無線網絡將閾值和權值矩陣發送給終端節點。
步驟6 開發終端節點,給終端節點上安裝傳感器,進行采樣,利用中心節點提供的權值和閾值進行數據融合。通過單片機編程將神經網絡生成的有效信息發送到網絡中心。
步驟7 在網絡中心監視收到的數據。
使用了數據融合的節點生命長度將是普通節點的三倍以上,隨著節點的數量增長,在多個節點上傳播數據也會消耗大量的電量,應用了數據融合的節點將越發具有優勢。圖4比較了使用融合算法和沒有使用融合算法的單個節點的平均消耗的電量,圖5比較了使用LMBP算法后多個節點之間的收斂速度。
在第一個數據分析實驗中,選取了普通節點,還有采用常規方法融合的節點,和BP神經網絡進行融合的節點進行對比。隨著節點數目的增加由于數據在多個節點中傳播所以單個節點的平均能量消耗也在不斷的增加??v向地比較發現BP神經網絡的電量消耗至少是普通節點的1/3,而且隨著節點數量的增加單個節點電量的消耗增加幅度也不是很大??梢姳痉椒ㄈ诤虾蠊濣c的生存周期延長。
在第二個數據分析實驗中比較了多個節點的收斂速度,當CPU的速率大于2000hz的時候算法的收斂速度只與節點的個數有關??梢缘贸鼋Y論本算法是行之有效的算法。
分析數據的輸出可知,利用改進到的BP神經網絡數據融合算法,提高了火災預測成功率,而且減少了節點的能耗。有效地同WSN中的ZigBee類型的網絡結合,成功地實現了遠距離無線網低功耗傳輸微量的數據。很好地彌補了WSN中硬件所固有的問題。
本文描述了一種改進BP神經網絡融合算法,實驗數據表明,該方法應用到監測火災的無線傳感網中,能有效提高火災監測的準確程度,同時,能加快無線傳感網中節點的數據監測效率,降低節點的電能消耗。
對于LMBP算法還有一些待完善的地方,如數據融合算法的簡化等。這些工作涉及到了數學統計,模式識別等領域,將在后續的研究工作中繼續改進和完善。
[1]Preti,Federico.Forest protection and protection forest:Tree root degradation over hydrological shallow landslides triggering[J].Ecological Engineering,2012,33 (13):139-145.
[2]Li Li,Li Weijia.The analysis of data fusion energy consumption in WSN[C]//International Conference on System Science,Engineering Design and Manufacturing Informatization.IEEE,2011:310-313.
[3]Izadian,Roshanak,Manzuri,et al.Energy-saving technologies of WSN[J].Advanced Materials Research,2013,605:566-569.
[4]Hussain M A,kyung Sup K.WSN research activities for military application[C]//11th International Conference on Advanced Communication Technology.IEEE,2009:271-274.
[5]Zhang Jiawei,Wang Keqi,Yue Qi.Data fusion algorithm based on functional link artificial neural networks[J].Proceedings of the World Congress on Intelligent Control and Automation,2011:2806-2810.
[6]Ying Qiu,Ding Zhongtan.Greenhouse control system based on WSN[J].Key Engineering Materials,2011,486:254-257.
[7]FU Hua,DU Xiaokun.Multi-sensor optimum fusion based on the bayes estimation[J].Techniques of Automation and Applications,2009,24 (4):10-12.
[8]Zhu Zhongbo,Wang Gang,Zhang Dian.A design of mine WSN layout strategy[J].Procedia Engineering,2011,15(3):5508-5513.
[9]Xu Yia,Liu Jiaojiao.Advanced materials research[J].Materials Science and Information Technology II,2012,3:1606-1610.
[10]Distefano,Salvatore.Reliability evaluation of WSN with dynamic-dependent nodes[J].International Journal of Reliability,Quality and Safety Engineering,2011,18 (6):515-530.
[11]Pei T,Xie D,Li Z,et al.A Heterogeneous-aware cooperative MIMO transmission scheme in WSN[J].Journal of Software,2013,8 (3):639-644.
[12]Ling Youzhu,Xu Xiaoguang,Shen Lina.Multi sensor data fusion method based on fuzzy neural network[C]//IEEE International Conference on Industrial Informatics,2008:153-158.
[13]Zhao X,Wang J.An algorithm of data fusion using neural network[C]//International Conference on Electric Information and Control Engineering.IEEE,2011:2950-2953.
[14]Tian Jingwen,Zhou Hao,Li Kai.Corrosion detection system for oil pipelines based on multi-sensor data fusion by wavelet neural network[C]//IEEE International Conference on Control and Automation,2008:2958-2963.
[15]Jiang Shaofei,Zhang Chunming,Koh C G.Structural damage detection by integrating data fusion and probabilistic neural network[J].Advances in Structural Engineering,2008,9(4):445-457.