樊雷松,強 彥,趙涓涓,胡洋洋,格 磊
(太原理工大學 計算機學院,山西 太原030024)
使用多種傳感器檢測森林環(huán)境,并通過無線網(wǎng)絡的傳輸,能夠有效地提高森林火災的監(jiān)測能力。為了減少節(jié)點能量的開銷,出現(xiàn)了節(jié)點調(diào)度和數(shù)據(jù)融合等技術[1,2],延長了節(jié)點的生存時間。在應用了數(shù)據(jù)融合技術的無線傳感網(wǎng)中,終端節(jié)點接受到數(shù)據(jù)后,先通過閾值剔除噪音數(shù)據(jù),然后進行融合判斷。如果終端節(jié)點判斷到有火災,那么它將通過中心節(jié)點將數(shù)據(jù)上報給數(shù)據(jù)中心,并報告火勢[3]。否則,終端節(jié)點的通信模塊將處于休眠狀態(tài)。從而,減少了節(jié)點的電量消耗,很好地解決了無線傳感網(wǎng)中存在大量無效數(shù)據(jù)的問題[4]。因此,無線傳感網(wǎng)中的數(shù)據(jù)融合是很有必要性的。然而,這種方法也有很多問題,例如:數(shù)據(jù)融合算法種類很多,很難挑選一種最優(yōu)的算法應用于火災監(jiān)測;無線網(wǎng)絡節(jié)點處理能力有限,達不到算法所需要的計算能力;算法的收斂速度慢,消耗了過多的電量。
針對上述的問題,本文提出了一種改進了的基于BP神經(jīng)網(wǎng)絡的數(shù)據(jù)融合方法,這種方法能夠快速地收斂,并且描述了使用硬件實現(xiàn)該方法的步驟。最后,將其應用到了森林防火上,減少了無線傳感網(wǎng)絡中的無效數(shù)據(jù),延長了節(jié)點的生命周期。
無線傳感是具有交叉學科性質(zhì)的技術,而且可以廣泛應用于國家軍事、智能交通管理、大型災害預測、全民醫(yī)療衛(wèi)生和城市信息化建設等各種領域[5]。
近幾年來引入了無線傳感網(wǎng)絡搭載上各種傳感器的技術來檢測火災,無線傳感網(wǎng)絡可以通過各種傳感器來實時接受數(shù)據(jù)。然后,將獲取的數(shù)據(jù)通過ZigBee等協(xié)議經(jīng)路由后傳輸給網(wǎng)絡中心。其中,無線傳感網(wǎng)絡是由功能各異的許多無線傳感器以及微型處理器等節(jié)點組成[6]。
在無線傳感網(wǎng)的基礎上進行的數(shù)據(jù)融合是指利用計算機對按時序獲得的若干觀測信息,在一定準則下加以自動分析、綜合,以完成所需的決策和評估任務而進行的信息處理技術。
數(shù)據(jù)融合的定義是多方面和多層次的處理數(shù)據(jù)序列,就是把來自各個傳感器與信息源的數(shù)據(jù)和信息加以相關、聯(lián)合和組合,從而獲得了精確的身份估計和位置估計,然后對整體的情況做出應急判斷。數(shù)據(jù)融合這種技術在近30年來取得了飛速的發(fā)展,在多個先進發(fā)達國家,都有學者和技術人員在開展數(shù)據(jù)融合技術的研究,所以這一領域的研究內(nèi)容和成果已大量出現(xiàn)在各種學術會議和公開的學術期刊上[7,8]。
經(jīng)常使用的數(shù)據(jù)融合的算法有:
經(jīng)典統(tǒng)計理論:將被測參數(shù)作為一個固定值,沒有充分利用其先驗信息,精度和信度是預定的,不依賴于樣本。
Bayes估計理論:Bayes方法具有嚴格的理論基礎,應用廣泛,采用歸推理的方法對多源信息進行有效地融合,充分利用了測量對象的先驗信息[9]。
濾波跟蹤型數(shù)據(jù)融合算法:利用數(shù)字濾波方法根據(jù)測量值估計被測量真值,利用當前和歷史測量數(shù)據(jù)估計目標未來狀態(tài)[10]。
神經(jīng)網(wǎng)絡方法:是一種規(guī)則透明的非線性映射方法,信息存儲于網(wǎng)絡結(jié)構(gòu)和連接權值,增強了信息處理的容錯性,具有自組織和自學習能力[11,12]。
陳宜等人提出了一種聯(lián)合BP神經(jīng)網(wǎng)絡和D-S證據(jù)理論的方法[13]。該方法能提高數(shù)據(jù)融合的效果且去噪效果好,但能耗大不易應用于無線節(jié)點。凌有利提出了基于模糊神經(jīng)網(wǎng)絡的數(shù)據(jù)融合方法[14],這種方法的優(yōu)勢就是提高神經(jīng)網(wǎng)絡的學習速度,但是其它方面的效果比較一般。
防火系統(tǒng)的架構(gòu)如圖1所示。整個架構(gòu)分為4個層次:應用層、傳輸層、融合判斷層和感應層。在通用的物聯(lián)網(wǎng)架構(gòu)中加入了數(shù)據(jù)的融合判斷層,這一層與上下兩層相互合作屏蔽掉了無用的信息,進行了多數(shù)據(jù)的融合。
感應層通過各種傳感器獲取數(shù)據(jù),包括森林中的濕度、溫度等值。
圖1 系統(tǒng)網(wǎng)絡層次
傳輸層規(guī)定了防火系統(tǒng)所選用的無線協(xié)議標準。選擇協(xié)議的一個重要指標是電量,由于無線傳感網(wǎng)絡中的節(jié)點耗電問題,必須選取省電、節(jié)能的協(xié)議。ZigBee就是這樣一種已被廣泛應用的無線協(xié)議。ZigBee聯(lián)盟對網(wǎng)絡協(xié)議進行了標準化,同時開發(fā)了安全功能,應用已經(jīng)比較成熟。
應用層目標是軟件應用,當通信層傳輸數(shù)據(jù)到應用層的云數(shù)據(jù)庫中,用戶可以通過Web界面監(jiān)視節(jié)點的狀態(tài),獲取火災警告息,并管理歷史數(shù)據(jù)。用戶可以通過云平臺的計算能力分析數(shù)據(jù),對火災、火勢進行預測。
在融合判斷層,多數(shù)據(jù)融合技術綜合森林中的多個傳感器的數(shù)據(jù),收集多個傳感器的信息,應用閾值調(diào)節(jié)的神經(jīng)網(wǎng)絡融合數(shù)據(jù)來判斷火災信息。
在這一層中,將節(jié)點采集到的火焰、溫度、濕度、氣體等信息綜合判斷。
首先,通過閾值刪除無效的干擾數(shù)據(jù)。然后,利用多數(shù)據(jù)融合技術處理感應層得到的數(shù)據(jù)。其中用到的融合算法,對獲得的數(shù)據(jù)進行時序上的排列,然后在數(shù)學模型的準則上判斷有效信息。
BP神經(jīng)網(wǎng)絡的融合方法就是本文所選取的數(shù)學模型。它通過權值的調(diào)節(jié)增加了數(shù)據(jù)的準確性。經(jīng)過反復地訓練能夠選取最合適的權值和閾值。權值的大小決定了某種數(shù)據(jù)的重要程度,從而能夠?qū)Χ喾N數(shù)據(jù)進行綜合判斷。
完成這一工作的硬件設備是中心節(jié)點,也就是具有獨立處理能力的節(jié)點,由單片機、傳輸模塊和各種傳感器組成。傳輸模塊通過ZigBee協(xié)議接受終端節(jié)點的數(shù)據(jù),然后進行數(shù)據(jù)的融合。
在融合層處理大量的數(shù)據(jù),需要消耗電量,所以這層的算法至關重要,算法的復雜度決定了節(jié)點電量的消耗量。算法是否快速的收斂也決定了融合層設計的成敗。
數(shù)據(jù)融合就是利用計算機對各種信息源進行處理、控制和決策的一體化過程。無線設備采集到的數(shù)據(jù)經(jīng)由單片機和服務器進行處理和控制,從而決定了防火系統(tǒng)的決策。
1943年,Warren Mcclloch和Walter Pitts最早提出了一種人工神經(jīng)元模型,這種模型的主要特點就是把神經(jīng)元輸入信號的加權和其閾值相比較以確定神經(jīng)元的輸出。本文就是延續(xù)了這一思想然后對閾值進行自動調(diào)整形成的神經(jīng)網(wǎng)絡方法。
算法的改進:通過Levenberg-Marquardt算法優(yōu)化的BP神經(jīng)網(wǎng)絡,加快了收斂速度,使得這種融合算法更好地應用于電量很少的無線傳感節(jié)點上。
每個節(jié)點上安裝3個傳感器,分別用于接收溫度、濕度、氣體 (UEL)數(shù)據(jù)。先對數(shù)據(jù)進行閾值設定,從而得到輸入向量。
定義1 輸入向量就是3種傳感器達到預設閾值后的輸出值P(X1,X2,X3)。例如:當溫度感應器的模擬信號是40,濕度模擬信號是60和氣體的模擬信號是100的時候輸入向量為P(40,60,100)。
由于傳感器節(jié)點能量的主要消耗在傳輸數(shù)據(jù)上,因此,減少節(jié)點數(shù)據(jù)傳輸量可以有效的延長網(wǎng)絡的生命周期。由定義可以看出來傳感器接受的數(shù)據(jù)是多數(shù)據(jù),而輸出則是一個單數(shù)據(jù)。本節(jié)點傳輸給網(wǎng)絡中心的數(shù)據(jù)也就是一個值,所以大大減少的電能的損失。在得到輸入量之后,設計MLP神經(jīng)網(wǎng)絡的神經(jīng)元。
其中P表示一個輸入向量,W是表示權值,當傳感器的輸入值與權值相乘的時候,權值指定了數(shù)據(jù)的重要性,這個是由于某類數(shù)據(jù)對火災的影響程度是不同的所決定的。S表示中間層的數(shù)據(jù)流。B是閾值矩陣,前饋層的傳輸函數(shù)是Purelin型函數(shù),遞歸層的激勵函數(shù)是Poslin型函數(shù)。
如圖2所示,MLP神經(jīng)網(wǎng)絡的神經(jīng)元在中心節(jié)點實現(xiàn)之后,處理接受各種傳感器的數(shù)據(jù)。首先MLP神經(jīng)網(wǎng)絡進入學習階段對網(wǎng)絡權值和閾值進行修改。對于多層網(wǎng)絡上一層的輸入等于下一層的輸出,最后的輸出作為觀測火災的特征值來做策論判別。通過MatLab自帶的函數(shù)訓練好神經(jīng)網(wǎng)絡,然后反復地修正網(wǎng)絡權值和閾值后,中心節(jié)點下傳給終端節(jié)點,從而終端節(jié)點有了對火災的判斷能力,不需要進行大量數(shù)據(jù)的傳播,從而節(jié)省了電量。
圖2 神經(jīng)元
如果節(jié)點使用的單片機使得節(jié)點的處理能力不足以訓練神經(jīng)網(wǎng)絡的感知機器,那么學習階段也可以在數(shù)據(jù)中心進行,學習階段分為四步:
步驟1 數(shù)據(jù)中心通知中心節(jié)點進入學習階段,中心節(jié)點通過Zigbee網(wǎng)絡設定終端節(jié)點中神經(jīng)網(wǎng)絡元的閾值和權值。
步驟2 中心節(jié)點選取一定時間段內(nèi)本區(qū)域收集到的數(shù)據(jù),然后構(gòu)建神經(jīng)網(wǎng)絡。
步驟3 中心節(jié)點自動檢索數(shù)據(jù)庫構(gòu)建輸入向量P(X1,X2,X3),然后應用輸入向量訓練神經(jīng)網(wǎng)絡得到新的閾值和權值。
步驟4 中心節(jié)點下傳給終端節(jié)點新的網(wǎng)絡權值和閾值。
當終端節(jié)點拿到權值和閾值之后就可以通過神經(jīng)元對火災進行判斷。通過神經(jīng)網(wǎng)絡的輸入矢量求輸出的矢量步驟如下所示。
步驟1 使用隨機產(chǎn)生的權值矩陣與輸入向量相乘。然后與閾值B累加從而形成凈輸入n
步驟2 前饋層神經(jīng)元輸出。通過傳播函數(shù)處理凈輸入量得到的就是前饋神經(jīng)的輸出,用來作為遞歸層的輸入量
步驟3 遞歸層的反復計算直到神經(jīng)網(wǎng)絡的收斂
由于傳感器節(jié)點能量受限,如何將BP神經(jīng)網(wǎng)絡算法應用到節(jié)點上將是一大挑戰(zhàn)。
LMBP算法加快了神經(jīng)網(wǎng)絡的收斂,在LMBP中最要求出判別矩陣,首先計算誤差的倒數(shù)然后得出LMP網(wǎng)絡的判別矩陣。從而計算出最有效權值和閾值,通過Levenberg-Marquardt算法優(yōu)化的BP神經(jīng)網(wǎng)絡很好的在節(jié)點上實現(xiàn),使得電量的消耗下降。更快速的收斂減少了信息的傳播時間。
中心節(jié)點如圖3所示,包括傳感模塊、處理模塊、通信模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)融合模塊。
傳感模塊:通過溫濕度傳感器、氣體傳感器、溫度傳感器采集基礎數(shù)據(jù)用于數(shù)據(jù)融合。
處理模塊:通過單片機完成數(shù)據(jù)融合計算,從而判斷有效的數(shù)據(jù)再傳遞給無線模塊,同時單片機還有電源管理的功能給整個裝置提供電源策略。
通信模塊:硬件實現(xiàn)的Xbee協(xié)議棧。
數(shù)據(jù)采集模塊:是傳感器的驅(qū)動程序,驅(qū)動傳感器采集數(shù)據(jù),通過數(shù)據(jù)閾值自動地剔除多余的,無效的,混雜的傳感器數(shù)據(jù),從而達到減少功耗的效果。
數(shù)據(jù)融合模塊:將各種信息聯(lián)合起來融合成關鍵信息,報告可能的火勢。融合過程就是上述的利用神經(jīng)網(wǎng)絡對多種數(shù)據(jù)進行融合,然后使用了Levenberg-Marquardt算法來提高神經(jīng)網(wǎng)絡的收斂速度。
中心節(jié)點是一個獨特的裝置。本裝置模塊化的設計使節(jié)點能夠根據(jù)環(huán)境安裝各種傳感器,對多種數(shù)據(jù)進行融合。當節(jié)點處于休眠狀態(tài)的時候,只開啟數(shù)據(jù)采集模塊和融合模塊。當融合模塊發(fā)現(xiàn)火勢后節(jié)點變成激活狀態(tài),同時開啟通信模塊。這種設計應用于森林防火的物聯(lián)網(wǎng)后,很好地解決了節(jié)點功耗高的問題。
更為難得的是中心節(jié)點使用的LMBP算法加快了神經(jīng)網(wǎng)絡收斂的速度,降低了算法對節(jié)點硬件的要求。使用一般的嵌入式單片機就可以實現(xiàn)融合算法。從而,解決了BP神經(jīng)網(wǎng)絡算法不能移植到節(jié)點上的問題。
步驟1 調(diào)試ZigBee模塊組建網(wǎng)絡。使用Xbee適配器將ZigBee模塊調(diào)試成API模式。
步驟2 開發(fā)中心節(jié)點,將ZigBee模塊插入到Arduino(一款實用的嵌入式開發(fā)單片機)的擴展板上,利用Arduino的IDE開發(fā)Zigbee的驅(qū)動程序然后嵌入到單片機中。
步驟3 先在計算機上使用MatLab實現(xiàn)神經(jīng)網(wǎng)絡,然后轉(zhuǎn)換成C程序,將程序移植到中心節(jié)點上。
步驟4 在中心節(jié)點上實現(xiàn)數(shù)據(jù)融合,取得新的權值矩陣和數(shù)據(jù)閾值。
步驟5 中心節(jié)點通過無線網(wǎng)絡將閾值和權值矩陣發(fā)送給終端節(jié)點。
步驟6 開發(fā)終端節(jié)點,給終端節(jié)點上安裝傳感器,進行采樣,利用中心節(jié)點提供的權值和閾值進行數(shù)據(jù)融合。通過單片機編程將神經(jīng)網(wǎng)絡生成的有效信息發(fā)送到網(wǎng)絡中心。
步驟7 在網(wǎng)絡中心監(jiān)視收到的數(shù)據(jù)。
使用了數(shù)據(jù)融合的節(jié)點生命長度將是普通節(jié)點的三倍以上,隨著節(jié)點的數(shù)量增長,在多個節(jié)點上傳播數(shù)據(jù)也會消耗大量的電量,應用了數(shù)據(jù)融合的節(jié)點將越發(fā)具有優(yōu)勢。圖4比較了使用融合算法和沒有使用融合算法的單個節(jié)點的平均消耗的電量,圖5比較了使用LMBP算法后多個節(jié)點之間的收斂速度。
在第一個數(shù)據(jù)分析實驗中,選取了普通節(jié)點,還有采用常規(guī)方法融合的節(jié)點,和BP神經(jīng)網(wǎng)絡進行融合的節(jié)點進行對比。隨著節(jié)點數(shù)目的增加由于數(shù)據(jù)在多個節(jié)點中傳播所以單個節(jié)點的平均能量消耗也在不斷的增加??v向地比較發(fā)現(xiàn)BP神經(jīng)網(wǎng)絡的電量消耗至少是普通節(jié)點的1/3,而且隨著節(jié)點數(shù)量的增加單個節(jié)點電量的消耗增加幅度也不是很大。可見本方法融合后節(jié)點的生存周期延長。
在第二個數(shù)據(jù)分析實驗中比較了多個節(jié)點的收斂速度,當CPU的速率大于2000hz的時候算法的收斂速度只與節(jié)點的個數(shù)有關??梢缘贸鼋Y(jié)論本算法是行之有效的算法。
分析數(shù)據(jù)的輸出可知,利用改進到的BP神經(jīng)網(wǎng)絡數(shù)據(jù)融合算法,提高了火災預測成功率,而且減少了節(jié)點的能耗。有效地同WSN中的ZigBee類型的網(wǎng)絡結(jié)合,成功地實現(xiàn)了遠距離無線網(wǎng)低功耗傳輸微量的數(shù)據(jù)。很好地彌補了WSN中硬件所固有的問題。
本文描述了一種改進BP神經(jīng)網(wǎng)絡融合算法,實驗數(shù)據(jù)表明,該方法應用到監(jiān)測火災的無線傳感網(wǎng)中,能有效提高火災監(jiān)測的準確程度,同時,能加快無線傳感網(wǎng)中節(jié)點的數(shù)據(jù)監(jiān)測效率,降低節(jié)點的電能消耗。
對于LMBP算法還有一些待完善的地方,如數(shù)據(jù)融合算法的簡化等。這些工作涉及到了數(shù)學統(tǒng)計,模式識別等領域,將在后續(xù)的研究工作中繼續(xù)改進和完善。
[1]Preti,F(xiàn)ederico.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.