鄭學(xué)偉
(1.遼寧廣播電視大學(xué) 遼寧 沈陽(yáng) 110034;2.遼寧裝備制造職業(yè)技術(shù)學(xué)院 遼寧 沈陽(yáng) 110161)
近年來(lái),隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,無(wú)線傳感器網(wǎng)絡(luò)(Wireless sensor network,WSN)技術(shù)作為溝通物理世界與信息世界的橋梁,正日益引起學(xué)術(shù)界和工業(yè)界的重視。無(wú)線傳感器網(wǎng)絡(luò)監(jiān)測(cè)技術(shù)融合了多個(gè)領(lǐng)域的先進(jìn)技術(shù)[1]。無(wú)線傳感器網(wǎng)絡(luò)的研究與發(fā)展引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。在工業(yè)、農(nóng)業(yè)、軍事和民用等方面都有廣泛的應(yīng)用前景,是當(dāng)前國(guó)際上備受關(guān)注的前沿?zé)狳c(diǎn)研究領(lǐng)域[2]。目前已經(jīng)在軍事監(jiān)控及環(huán)境治理、工業(yè)生產(chǎn)等多個(gè)行業(yè)獲得廣泛應(yīng)用,隨著應(yīng)用的深入,WSN將會(huì)對(duì)社會(huì)的發(fā)展和人類(lèi)的生活產(chǎn)生深遠(yuǎn)的影響。Sensor Network,LC-WSN)的應(yīng)用,提出了能量?jī)?yōu)化路由算法。文獻(xiàn)[4]研究了煤礦中實(shí)時(shí)定位和跟蹤問(wèn)題,表明井下采用RSS解決定位和跟蹤問(wèn)題的可行性。文獻(xiàn)[5]的作者提出了集中式的多維定標(biāo)定位算法,接著又提出了改進(jìn)的分布式定位算法。本文提出了利用多維定標(biāo)和擴(kuò)展卡爾曼濾波相結(jié)合的節(jié)點(diǎn)定位方法,首先利用期望最大化算法獲得初步結(jié)果,然后使用 SMCF算法 (Scaling by Major zing a Complicated Function)獲得更加精確的解并采用矩陣變換將相對(duì)坐標(biāo)轉(zhuǎn)化為絕對(duì)坐標(biāo),最后利用擴(kuò)展卡爾曼濾波對(duì)節(jié)點(diǎn)位置作進(jìn)一步的精化。
無(wú)線傳感器網(wǎng)絡(luò)定位的實(shí)質(zhì)是根據(jù)已知確定位置的節(jié)點(diǎn)來(lái)確定未知節(jié)點(diǎn)的位置。多維定標(biāo)是利用各對(duì)象之間的相異(似)性構(gòu)造多維空間上點(diǎn)的相對(duì)坐標(biāo)的一種技術(shù)。文獻(xiàn)[3]研究了長(zhǎng)鏈型無(wú)線傳感器網(wǎng)絡(luò) (Long Chain-type Wireless
在研究中,選用的傳感器節(jié)點(diǎn)自身具有RSS測(cè)量功能且隨機(jī)部署,考慮一個(gè)由若干傳感器節(jié)點(diǎn)和一個(gè)可移動(dòng)的設(shè)備組成的應(yīng)用場(chǎng)景,傳感器節(jié)點(diǎn)隨機(jī)部署于規(guī)定區(qū)域內(nèi),位置不變,稱(chēng)之為待定位節(jié)點(diǎn)。假設(shè)所有節(jié)點(diǎn)的物理特性相同,信號(hào)在兩個(gè)節(jié)點(diǎn)之間傳播產(chǎn)生的衰減與發(fā)送節(jié)點(diǎn)和接收節(jié)點(diǎn)無(wú)關(guān),只與信號(hào)傳播的距離有關(guān)。具體算法過(guò)程如下:
接收節(jié)點(diǎn)收到的RSS值會(huì)隨著與發(fā)射節(jié)點(diǎn)間的距離逐漸衰減,同時(shí),信號(hào)傳播環(huán)境中的噪音如散射、反射、折射等因素也會(huì)對(duì)信號(hào)產(chǎn)生很大影響。RSS值與距離不是確定關(guān)系,將它看作一個(gè)符合高斯分布的一個(gè)隨機(jī)變量,使用如下對(duì)數(shù)正態(tài)分布模型。
在獲得任意兩個(gè)節(jié)點(diǎn)之間的信號(hào)衰減后,通過(guò)式(1)計(jì)算任意兩點(diǎn)之間距離,設(shè)X=|Xij|n×2表示n個(gè)節(jié)點(diǎn)在2維空間中的真實(shí)坐標(biāo),將任意兩點(diǎn)間的距離用來(lái)dij(X)表示,則
期望最大化算法的目標(biāo)是找到有隱含變量模型的最大似然估計(jì)解,算法由和兩個(gè)步驟組成。在E步,使用當(dāng)前參數(shù)值θold找到隱藏變量的后驗(yàn)分布。在M步,通過(guò)最大化聯(lián)合分布函數(shù)的對(duì)數(shù)來(lái)確定修訂的參數(shù)估計(jì)θnew。
在求得節(jié)點(diǎn)的初步位置后,用多維定標(biāo)技術(shù)來(lái)求解待定位節(jié)點(diǎn)坐標(biāo)。該算法要求任意兩個(gè)節(jié)點(diǎn)之間必須有確定的差異值,剛才求得的解可能不滿(mǎn)足此條件。SMCF優(yōu)化方法能夠處理這種多維定標(biāo)問(wèn)題,SMCF算法通過(guò)優(yōu)化復(fù)雜函數(shù)標(biāo)度來(lái)構(gòu)建收斂算法從而解決多維定標(biāo)問(wèn)題,該算法避免了通常降階方法中需要求解微分和步長(zhǎng),可以解決很多其它求解多維定標(biāo)算法運(yùn)算過(guò)程的局限。將節(jié)點(diǎn)間的距離表示為:
當(dāng)獲得 δij的值時(shí),ωij設(shè)為 1,否則 ωij設(shè)為0。 這樣我們對(duì)的定義范圍是ωij≥0。任何X值,我們都可以對(duì)該表達(dá)式進(jìn)行計(jì)算,稱(chēng)該式為脅強(qiáng)函數(shù),對(duì)表達(dá)式做一些處理,有
脅強(qiáng)函數(shù)(5)是X的二次函數(shù),通過(guò)使用迭代法進(jìn)行求解。
權(quán)值調(diào)整是定位中經(jīng)常采用的方法,不但可以提高最終的定位精度,同時(shí)也可以有效減少運(yùn)算時(shí)間。這里采用文獻(xiàn)[9]建議的權(quán)值調(diào)整方法。
經(jīng)過(guò)以上步驟之后,已經(jīng)獲得了節(jié)點(diǎn)的相對(duì)坐標(biāo),還需要進(jìn)行坐標(biāo)變換,將相對(duì)坐標(biāo)轉(zhuǎn)換成絕對(duì)坐標(biāo),也稱(chēng)為將局部坐標(biāo)轉(zhuǎn)換為全局坐標(biāo)。如果已經(jīng)獲得3個(gè)節(jié)點(diǎn)的相對(duì)坐標(biāo)和絕對(duì)坐標(biāo),則可以通過(guò)平移、旋轉(zhuǎn)和鏡像操作將未知節(jié)點(diǎn)的相對(duì)坐標(biāo)轉(zhuǎn)換為絕對(duì)坐標(biāo)。從相對(duì)坐標(biāo)到絕對(duì)坐標(biāo)的平移變換用U0表示,旋轉(zhuǎn)變換用U1表示,鏡像變換用U2表示,因?yàn)槲覀兛紤]的是二維空間,這三個(gè)變換的表達(dá)式為
設(shè)已知三個(gè)節(jié)點(diǎn)的相對(duì)坐標(biāo)和絕對(duì)坐標(biāo),并設(shè)其為X1,X2,X3,將旋轉(zhuǎn)變換和鏡像變換合并為一個(gè)未知量,令U=U1U2,得到U后,任意位置節(jié)點(diǎn)的絕對(duì)坐標(biāo)都可以使用下面的變換獲得。這樣,所有未知節(jié)點(diǎn)的相對(duì)坐標(biāo)全部轉(zhuǎn)化為絕對(duì)坐標(biāo)。
在獲得了基本的坐標(biāo)之后,我們采用濾波做進(jìn)一步的提純。設(shè)狀態(tài)方程和量測(cè)方程如下
εt是系統(tǒng)模型的噪聲,δt是量測(cè)模型的噪聲。為了使用卡爾曼濾波,需要對(duì)系統(tǒng)模型和量測(cè)模型中的函數(shù)求導(dǎo),對(duì)函數(shù)g求一階偏導(dǎo),有
則擴(kuò)展卡爾曼濾波的輸入是(μt-1,∑t-1,ut,zt),輸出是(μt,∑t),計(jì)算公式:
在獲得導(dǎo)數(shù)之后,可以根據(jù)(15)逐步求解xt的值。在普通定位問(wèn)題中,錨節(jié)點(diǎn)(也稱(chēng)為信標(biāo)節(jié)點(diǎn))位置不變,移動(dòng)設(shè)備在運(yùn)動(dòng)過(guò)程中不斷獲得測(cè)量值,并通過(guò)濾波算法修正其自身的當(dāng)前位置xt,當(dāng)?shù)Y(jié)束后,最終的xt就是所求結(jié)果。在本問(wèn)題中,移動(dòng)節(jié)點(diǎn)位置一直變化,而待定節(jié)點(diǎn)的位置需要逐步修正。所以,需要對(duì)運(yùn)算結(jié)果做一個(gè)調(diào)整,在一次濾波過(guò)程中,移動(dòng)節(jié)點(diǎn)位置變化后,因?yàn)橛^測(cè)位置不變,通過(guò)將觀測(cè)位置調(diào)整,保持它們位置的對(duì)應(yīng)關(guān)系不變。
仿真采用Matlab編程實(shí)現(xiàn),算法比較時(shí)選擇基本的多維定標(biāo)方法算法[6]和修改權(quán)值的改進(jìn)算法[7]進(jìn)行比較,分別稱(chēng)為方法1和方法2。存在多種因素影響定位精度,例如移動(dòng)節(jié)點(diǎn)初始位置估計(jì)、移動(dòng)節(jié)點(diǎn)移動(dòng)誤差、節(jié)點(diǎn)個(gè)數(shù)等,本節(jié)對(duì)各種參數(shù)的影響進(jìn)行分析。
因?yàn)?RSS的測(cè)量值是隨機(jī)變量,為了減少隨機(jī)性的影響,以下運(yùn)行結(jié)果都是運(yùn)行200次的平均值。同時(shí)因?yàn)殡S機(jī)變量的影響,隨機(jī)的初始參數(shù)會(huì)有些差異,因此應(yīng)該在相同的初始情況下,比較算法的定位精度。本文設(shè)置的基本仿真環(huán)境為的方形區(qū)域,節(jié)點(diǎn)采用均勻的隨機(jī)部署方式,考慮3種分布:正方形、C型和L行。在對(duì)結(jié)果進(jìn)行分析過(guò)程中,首先比較方法 1、方法 2和本文方法的直觀定位結(jié)果,然后考慮不同參數(shù)對(duì)精度的影響。節(jié)點(diǎn)的真實(shí)位置和所求的近似位置之差的均方誤差。因?yàn)槊看谓Y(jié)果運(yùn)行200次且均方誤差都大于0,所以最后的評(píng)價(jià)標(biāo)準(zhǔn)是這些RMSE的均值,如(14)(15)所示。
下面考察EM求解初始值對(duì)定位精度的影響,以SVD求解的值為最佳結(jié)果,考慮在初步求解時(shí)存在一定的誤差。如圖1坐標(biāo)表示存在的方差,從圖中可以看出,方法1對(duì)初始值比較敏感,而方法2和本文方法對(duì)此不敏感,且影響都不大。不管方差如何,本文方法一直比法2的測(cè)量精度要高。
圖1 EM迭代精度對(duì)定位的影響Fig.1 Effect ofmeasurement noise
由于沒(méi)有統(tǒng)一的全局坐標(biāo),在進(jìn)行節(jié)點(diǎn)定位時(shí),與移動(dòng)節(jié)點(diǎn)的停留位置有關(guān)。移動(dòng)距離的測(cè)量能力會(huì)影響定位精度,結(jié)果如圖2示,方法1對(duì)定位誤差承受能力不大,在方差從0.1變到2時(shí),都有較大的RSME。而方法2和本文方法也都隨著移動(dòng)節(jié)點(diǎn)的定位精度降低產(chǎn)生了更大的定位誤差,但是RSME變化不大,基本上在1以下,能夠滿(mǎn)足定位要求。
圖2 動(dòng)節(jié)點(diǎn)自身精度對(duì)定位的影響Fig.2 Effectof initial error of EM
下面分析待定位節(jié)點(diǎn)數(shù)量與定位精度的關(guān)系,如圖3示,節(jié)點(diǎn)數(shù)量增加會(huì)大大提高定位精度,方法1的提高尤為明顯,當(dāng)節(jié)點(diǎn)數(shù)從30增加到50時(shí),定位精度提高了4倍。而方法2和本文方法也隨著節(jié)點(diǎn)數(shù)量增加提高定位精度,但是程度并不明顯,本文方法的RSME一直小于0.5,有較好的定位精度,本文方法在40個(gè)節(jié)點(diǎn)處定位精度高于方法2有60個(gè)節(jié)點(diǎn)時(shí)的定位精度,表明本文方法定位精度更高。
圖3 點(diǎn)個(gè)數(shù)對(duì)定位精度的影響Fig.3 Effect of localization ofmobile node
研究首先分析了無(wú)錨節(jié)點(diǎn)定位的基本算法和常見(jiàn)的多維定標(biāo)算法,對(duì)于沒(méi)有錨節(jié)點(diǎn)提供全局坐標(biāo),以移動(dòng)節(jié)點(diǎn)自身為坐標(biāo)系建立絕對(duì)坐標(biāo),并考慮其自身位置誤差;在考慮移動(dòng)節(jié)點(diǎn)有效利用方面,在改進(jìn)的多維定標(biāo)算法的基礎(chǔ)上,增加擴(kuò)展卡爾曼濾波過(guò)程,提高了定位精度。詳細(xì)分析算法的組成結(jié)構(gòu)并給出算法步驟后,討論了正方形場(chǎng)景、C型場(chǎng)景和L型場(chǎng)景的隨機(jī)均勻部署的情況,分析了定位精度以及多種不同的參數(shù)設(shè)置對(duì)算法的影響,并通過(guò)實(shí)際測(cè)量數(shù)據(jù),驗(yàn)證該算法對(duì)定位精度能有效的提高。
[1]高建良,徐勇軍,李曉維.基于加權(quán)中值的分布式傳感器故障檢測(cè)[J].軟件學(xué)報(bào),2007,18 (5):1208-1217.GAO Jian-liang,XU Yong-jun,LI Xiao-wei.Weigh ted median based distributed fault detection for wireless sensor networks[J].Journal of Software,2007,18(5):1208-1217.
[2]閆丹,雷霖.基于免疫神經(jīng)網(wǎng)絡(luò)的無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的故障診斷[J].自動(dòng)化信息,2009,95(3):37-39.YAN Dan,LEILin.Fault diagnosis of nodes in wireless sensor network based on immune neural network[J].Automation Information,2009,95(3):37-39.
[3]蘇金樹(shù),胡喬林,趙寶康.容延容斷網(wǎng)絡(luò)路由技術(shù)[J].軟件學(xué)報(bào),2010,21(1):119-132.SU Jin-shu,HU Qiao-lin,ZHAO Bao-kang.Routing techniques on delay/disruption tolerant networks[J].Journal of Software,2010,21(1):119-132.
[4]劉影,錢(qián)志鴻,劉丹,等.基于幾何學(xué)的無(wú)線傳感器網(wǎng)絡(luò)定位算法[J].光電子激光,2010,10(21):1435-1438.LIU Ying,QIAN Zhi-hong,LIU Dan,et al.A wireless sensor network localization algorithm based on geometry[J].Journal of Optoelectronics.Laser,2010,10(21):1435-1438.
[5]謝濤.無(wú)線傳感器網(wǎng)絡(luò)中DV-Hop算法的改進(jìn)[D].西南大學(xué),2012.
[6]Perspective MLAP.Machine Learning:A Probabilistic Perspective[J].The MITPress,2012:348-352.
[7]Chang C,Lin C,Hsieh C,et al.Patrolling Mechanisms for Disconnected Targets in Wireless Mobile Data Mules Networks: Parallel Processing (ICPP) [C], 2011 International Conference on,2011:3-98.
[8]黃旭紅.無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)節(jié)能管理方式的研究[J].現(xiàn)代電子技術(shù),2011(15):32-34,38.HUANG Xu-hong.Wireless sensor network node power conservation management practices[J].Modern Electronics Technique,2011(15):32-34,38.