何擁軍,曾文權(quán),曾文英
(廣東科學(xué)技術(shù)職業(yè)學(xué)院 計(jì)算機(jī)工程技術(shù)學(xué)院,廣東 珠海519090)
大多數(shù)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)應(yīng)用是由大量傳感器節(jié)點(diǎn)構(gòu)成的,共同完成信息收集、目標(biāo)監(jiān)視和感知環(huán)境的任務(wù)。在信息采集的過(guò)程中,若采用各個(gè)節(jié)點(diǎn)單獨(dú)傳輸數(shù)據(jù)到匯聚節(jié)點(diǎn)的方法,會(huì)產(chǎn)生大量冗余信息,從而浪費(fèi)大量的通信帶寬和寶貴的能量資源,這顯然是不合適的[1]。此外還會(huì)降低信息的收集效率,影響信息的及時(shí)采集。為避免上述問(wèn)題,人們采用了一種稱(chēng)為數(shù)據(jù)融合(或稱(chēng)為數(shù)據(jù)匯聚)的技術(shù)。所謂數(shù)據(jù)融合是指將多份數(shù)據(jù)或信息進(jìn)行處理,組合出更高效、更符合用戶(hù)需求的數(shù)據(jù)的過(guò)程[2]。在大多數(shù)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)應(yīng)用中,許多時(shí)候只關(guān)心監(jiān)測(cè)結(jié)果,并不需要收到大量原始數(shù)據(jù),數(shù)據(jù)融合是處理該類(lèi)問(wèn)題的有效手段。根據(jù)融合操作的級(jí)別劃分為數(shù)據(jù)級(jí)融合[3]、特征級(jí)融合[4]以及決策級(jí)融合[5]。數(shù)據(jù)級(jí)融合是指通過(guò)傳感器采集的數(shù)據(jù)融合,是最底層的融合,通常僅依賴(lài)于傳感器的類(lèi)型。特征級(jí)融合是指通過(guò)一些特征提取手段,將數(shù)據(jù)表示為一系列的特征向量,從而反映事物的屬性,是面向監(jiān)測(cè)對(duì)象的融合。決策級(jí)融合是根據(jù)應(yīng)用需求進(jìn)行較高級(jí)的決策,是最高級(jí)的融合。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的數(shù)據(jù)融合技術(shù)可以結(jié)合網(wǎng)絡(luò)的各個(gè)協(xié)議層來(lái)進(jìn)行。例如在應(yīng)用層,可通過(guò)分布式數(shù)據(jù)庫(kù)技術(shù),對(duì)采集的數(shù)據(jù)進(jìn)行初步篩選,達(dá)到融合效果;在網(wǎng)絡(luò)層,可以結(jié)合路由協(xié)議,減少數(shù)據(jù)的傳輸量;在數(shù)據(jù)鏈路層,可以減少M(fèi)AC層的發(fā)送沖突和頭部開(kāi)銷(xiāo),節(jié)省能量的同時(shí),保證信息的完整性。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的數(shù)據(jù)融合技術(shù)只有面向應(yīng)用需求的設(shè)計(jì)才會(huì)真正得到廣泛的應(yīng)用。
目前許多學(xué)者提出了很多傳感網(wǎng)數(shù)據(jù)融合算法,DS方法[6]和貝葉斯算法[7]作為一種處理不確定性問(wèn)題的重要的數(shù)據(jù)融合方法,已經(jīng)廣泛應(yīng)用于各種數(shù)據(jù)融合系統(tǒng)中,但是該方法主要是依靠自身的傳感器的采集,這種方法融合精度不高,具有一定的不確定性等,BP神經(jīng)網(wǎng)絡(luò)算法是一種監(jiān)督式的學(xué)習(xí)算法,其主要思想是通過(guò)采用梯度搜索技術(shù)對(duì)已知網(wǎng)絡(luò)入侵樣本進(jìn)行學(xué)習(xí),最終實(shí)現(xiàn)網(wǎng)絡(luò)的實(shí)際輸出值與期望輸出值的均方值誤差最小。
本文充分利用了BP神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn),主要研究了傳感網(wǎng)絡(luò)數(shù)據(jù)融合方法,提出了一種改進(jìn)的基于BP神經(jīng)網(wǎng)絡(luò)算法在傳感網(wǎng)絡(luò)數(shù)據(jù)融合中的應(yīng)用,依據(jù)不同的融合目標(biāo)對(duì)傳感器信息進(jìn)行選擇過(guò)濾和優(yōu)化處理,仿真結(jié)果表明了本文算法的有效性和實(shí)用性,節(jié)約了數(shù)據(jù)融合的能量。
BP神經(jīng)網(wǎng)絡(luò)[8]是一種前饋式神經(jīng)網(wǎng)絡(luò),是目前使用最廣泛的一種神經(jīng)網(wǎng)絡(luò),一般包括輸入層、若干隱含層和輸出層三部分,網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型
BP神經(jīng)網(wǎng)絡(luò)算法是一種監(jiān)督式的學(xué)習(xí)算法,其主要思想是通過(guò)采用梯度搜索技術(shù)對(duì)已知網(wǎng)絡(luò)入侵樣本進(jìn)行學(xué)習(xí),最終的目的就是網(wǎng)絡(luò)的實(shí)際輸出值與期望輸出值的均方值誤差最小。在BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程中,輸入信號(hào)從輸入層經(jīng)隱含層單元逐層處理,并傳向BP神經(jīng)網(wǎng)絡(luò)的輸出層,每一層BP神經(jīng)元只影響下一層神經(jīng)元的狀態(tài)。如果在BP神經(jīng)網(wǎng)絡(luò)輸出層得不到期望的輸出,那么就要進(jìn)行BP神經(jīng)網(wǎng)絡(luò)反向傳播,將輸出信號(hào)的誤差沿原來(lái)的連接通路返回,通過(guò)不斷調(diào)整各層神經(jīng)元的權(quán)重,最終使均方值誤差最小。其基本學(xué)習(xí)過(guò)程如下:
(1)初始化BP神經(jīng)網(wǎng)絡(luò)狀態(tài)。對(duì)網(wǎng)絡(luò)的連接權(quán)值wij、vjt和閾值 θj、γt賦初值;
(2)輸入第1個(gè)BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)樣本對(duì);
(3)對(duì)中間層各神經(jīng)元的輸入uj和輸出hj進(jìn)行計(jì)算。采用公式如下[8]:
(4)對(duì)BP神經(jīng)網(wǎng)絡(luò)的輸出層各神經(jīng)元的輸入lt和輸出yt進(jìn)行計(jì)算:
(5)對(duì)BP神經(jīng)網(wǎng)絡(luò)的連接到輸出層神經(jīng)單元t上的權(quán)值誤差δt進(jìn)行計(jì)算,即:
其中,ct表示樣本的期望值。
(6)對(duì)BP神經(jīng)網(wǎng)絡(luò)的計(jì)算連接到中間層神經(jīng)單元j上的權(quán)值誤差δj[9]進(jìn)行計(jì)算,即:
(7)對(duì) BP神經(jīng)網(wǎng)絡(luò)的連接權(quán)值 vjt和閾值 γt進(jìn)行更新,即:
(8)對(duì) BP神經(jīng)網(wǎng)絡(luò)的連接權(quán)值 wjt和閾值 θj進(jìn)行更新,即:
(9)輸入下一個(gè)學(xué)習(xí)樣本對(duì),跳轉(zhuǎn)到步驟(3),不斷重復(fù),直到全部樣本對(duì)訓(xùn)練完畢。
(10)進(jìn)行新一輪BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練,如果滿(mǎn)足下列條件,則學(xué)習(xí)訓(xùn)練完成。
其中,ε表示預(yù)設(shè)精度,Ek表示均方誤差,即:
本文提出基于神經(jīng)網(wǎng)絡(luò)傳感器網(wǎng)絡(luò)數(shù)據(jù)融合方法,充分利用了BP神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn),主要研究了多傳感網(wǎng)絡(luò)數(shù)據(jù)融合方法,提出了一種改進(jìn)的基于BP神經(jīng)網(wǎng)絡(luò)算法在傳感網(wǎng)絡(luò)數(shù)據(jù)融合中的應(yīng)用,依據(jù)不同的融合目標(biāo)對(duì)多傳感器信息進(jìn)行選擇過(guò)濾和優(yōu)化處理。本文數(shù)據(jù)融合算法的具體原理如圖2所示。
圖2 神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)融合原理圖
在網(wǎng)絡(luò)訓(xùn)練之前,首先必須要對(duì)數(shù)據(jù)進(jìn)行歸一化處理,以保證網(wǎng)絡(luò)層輸出不會(huì)太小。這里中心向量的初始值 pi由 訓(xùn) 練 樣 本 確 定 , 其 中 pi=(pi1,pi2,pi3,pi4,pi5),i=1,2,…,10。若其屬于第一類(lèi)數(shù)據(jù)變化的訓(xùn)練樣本集,表示為{S1,S2,…,Sm},中心向量p1中各元素的初始值為這些樣本輸入向量中每個(gè)元素的平均值。 然后采用梯度下降法分別調(diào)整中心向量、寬度和系數(shù)及最后一層的權(quán)值。在訓(xùn)練過(guò)程中,先選取較大的學(xué)習(xí)速率,如果后一步的訓(xùn)練誤差大于前一步的訓(xùn)練誤差,就減小學(xué)習(xí)速率,使得網(wǎng)絡(luò)收斂。 由于加入了每個(gè)類(lèi)別中心向量的先驗(yàn)信息,網(wǎng)絡(luò)權(quán)值的調(diào)整限制在了一定范圍內(nèi),避免陷入局部最小點(diǎn)。本文考慮了數(shù)據(jù)融合的有損融合和無(wú)損融合問(wèn)題,算法的主要描述步驟如下:
(1)用選定的N個(gè)傳感器檢測(cè)系統(tǒng)狀態(tài);
(2)采集N個(gè)傳感器的測(cè)量信號(hào)并進(jìn)行預(yù)處理;
(3)對(duì)預(yù)處理后的N個(gè)傳感器信號(hào)進(jìn)行特征選擇;
(4)對(duì)特征信號(hào)進(jìn)行歸一化處理,為神經(jīng)網(wǎng)絡(luò)的輸入提供標(biāo)準(zhǔn)形式;
(5)將歸一化的特征信息與已知的系統(tǒng)狀態(tài)信息作為訓(xùn)練樣本,送神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,直到滿(mǎn)足要求為止。該訓(xùn)練好的網(wǎng)絡(luò)作為已知網(wǎng)絡(luò),只要將歸一化的多傳感器特征信息作為輸入送人該網(wǎng)絡(luò),則網(wǎng)絡(luò)輸出就是被測(cè)系統(tǒng)的狀態(tài)。
在Windows操作系統(tǒng)下,本文所有的實(shí)驗(yàn)都是在PC P4 T2310 1.86 GHz,2 GB RAM,Inte182865G 顯卡的計(jì)算機(jī)上完成的,實(shí)驗(yàn)環(huán)境為MATLAB7.0。對(duì)本文提出的神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)融合模型進(jìn)行仿真測(cè)試,根據(jù)融合前后數(shù)據(jù)信息含量劃分為無(wú)損融合和有損融合,前者在數(shù)據(jù)融合過(guò)程中所有細(xì)節(jié)信息均被保留,只去除冗余的部分信息,后者通常會(huì)省略一些細(xì)節(jié)信息或降低數(shù)據(jù)的質(zhì)量。
本文對(duì)有損融合、無(wú)損融合與沒(méi)有進(jìn)行數(shù)據(jù)融合的實(shí)驗(yàn)結(jié)果進(jìn)行了比較。在仿真試驗(yàn)中,本文在一定的范圍內(nèi)放置一定參數(shù)的節(jié)點(diǎn),10個(gè)源節(jié)點(diǎn)沿著一條路由路徑在4~6跳的范圍內(nèi)發(fā)出連續(xù)的比特。為了對(duì)數(shù)據(jù)融合的有效性進(jìn)行研究,本文增加了節(jié)點(diǎn)的發(fā)送頻率,數(shù)據(jù)流發(fā)送速度為 1.5~3.7包/s,仿真重復(fù) 30遍,端到端的延時(shí)為1 s。
如圖3所示,在網(wǎng)絡(luò)繁忙的時(shí)候,與不進(jìn)行數(shù)據(jù)融合的結(jié)果相比,無(wú)損融合和有損融合都可以顯著地減少平均的延時(shí)。因?yàn)槿诤霞夹g(shù)可以控制信息傳遞的數(shù)量。這里要注意的是,有損融合在保留延遲的區(qū)域之下總是成功的,而無(wú)損融合僅是點(diǎn)上的成功,在此之后系統(tǒng)將變得過(guò)載。
圖3 端到端數(shù)據(jù)傳遞負(fù)載
當(dāng)產(chǎn)生的信息量超出實(shí)時(shí)容量時(shí),有損融合通過(guò)聚集較小比例的包來(lái)保持端到端延遲。如圖4所示,融合具有非零的損失率。
如圖5所示,在擁塞出現(xiàn)之前,無(wú)損融合和有損融合可以通過(guò)減少控制消息的數(shù)量和傳播的數(shù)量達(dá)到能源的節(jié)約。從圖3、圖4和圖5可以看出,本文提出的神經(jīng)網(wǎng)絡(luò)傳感器網(wǎng)絡(luò)數(shù)據(jù)融合模型是一種有效的數(shù)據(jù)融合處理方法。采用BP神經(jīng)網(wǎng)絡(luò)對(duì)傳感器數(shù)據(jù)進(jìn)行融合處理,輸出輸入穩(wěn)定簡(jiǎn)單。
圖4 無(wú)數(shù)據(jù)融合與有損融合仿真比較
圖5 能量和傳遞負(fù)載
數(shù)據(jù)融合是利用計(jì)算機(jī)技術(shù)將來(lái)自多個(gè)傳感器或多源的觀(guān)測(cè)信息進(jìn)行分析、綜合處理。從而得出決策和估計(jì)任務(wù)所需信息的處理過(guò)程。針對(duì)傳統(tǒng)的傳感器網(wǎng)絡(luò)數(shù)據(jù)融合算法需要獲得對(duì)象比較精確數(shù)學(xué)模型,對(duì)于復(fù)雜難于建立的模型場(chǎng)合無(wú)法適用等問(wèn)題,本文提出了一種基于BP神經(jīng)網(wǎng)絡(luò)的多傳感器數(shù)據(jù)融合方法,算法首先建立三層網(wǎng)絡(luò)結(jié)構(gòu),接著提取數(shù)據(jù)庫(kù)中屬性數(shù)據(jù)的特征值并作為網(wǎng)絡(luò)的輸入,然后通過(guò)調(diào)節(jié)輸入向量與中心向量的距離及中心向量的值確定網(wǎng)絡(luò)權(quán)值,最后對(duì)數(shù)據(jù)進(jìn)行有效融合,仿真實(shí)驗(yàn)結(jié)果表明采用BP神經(jīng)網(wǎng)絡(luò)對(duì)傳感器數(shù)據(jù)進(jìn)行融合處理大大提高了傳感器的穩(wěn)定性及其精度,效果良好。
[1]畢艷忠,孫利民.傳感器網(wǎng)絡(luò)中數(shù)據(jù)融合[J].計(jì)算機(jī)科學(xué),2004,31(7):101-103.
[2]ZHAO J,GOVINDAN R,ESTRIN D.Residual energy scans for monitoring wireless sensor networks[C].Proceedings of the IEEE Wilress Communications and Networking Conference(WCNC’02),2002:17-21.
[3]付劍波,劉衛(wèi)國(guó).無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的一種多層數(shù)據(jù)融合方案[J].傳感器與微系統(tǒng),2007,26(12):15-18.
[4]任豐原,黃海寧,林闖.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)[J].軟件學(xué)報(bào),2003,14(7):1282-1291.
[5]NORDEN W V,JONG J D,BOLDERHEIJ F,et al.Intelligent task scheduling in sensor networks[C].Proceedings of 8th International Conference on Information Fusion,2005.
[6]BARBANCHO J,CarlosLeón,MOLINA F J,et al.Using artificial intelligence in routing schemes for wireless networks[J].Computer Communications,2007(30):2802-2811.
[7]陳斌,萬(wàn)江文,吳銀鋒,等.神經(jīng)網(wǎng)絡(luò)和證據(jù)理論融合的管道泄漏診斷方法[J].北京郵電大學(xué)學(xué)報(bào),2009,32(2):5-9.
[8]俞黎陽(yáng),王能,張衛(wèi).無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中基于神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)融合模型[J].計(jì)算機(jī)科學(xué),2008,35(12):43-47.
[9]SUNG W T.Employed BPN to multi-sensors data fusion for environment Monitoring Services[J].Autonomic and Trusted Computing,2009(6):149-163.