王領(lǐng),申曉紅,康玉柱,花飛,王海燕,2
(1.西北工業(yè)大學(xué) 航海學(xué)院,陜西 西安 710072;2.陜西科技大學(xué) 電子信息與人工智能學(xué)院,陜西 西安 710021)
在海洋環(huán)境監(jiān)測(cè)中,分布式水聲傳感器網(wǎng)絡(luò)是一種方便靈活的監(jiān)測(cè)手段,目標(biāo)定位是海洋環(huán)境監(jiān)測(cè)的一個(gè)基本功能。國(guó)內(nèi)外學(xué)者對(duì)基于多傳感器節(jié)點(diǎn)的協(xié)同目標(biāo)定位方法已開(kāi)展了廣泛研究[1-8]。常用協(xié)同目標(biāo)定位方法的基本思想是:假設(shè)傳感器網(wǎng)絡(luò)各節(jié)點(diǎn)位置準(zhǔn)確已知,每個(gè)節(jié)點(diǎn)獲取觀測(cè)值后,依據(jù)一定的定位算法提取其相關(guān)信息并傳輸至中心節(jié)點(diǎn),中心節(jié)點(diǎn)依據(jù)獲得的信息對(duì)聲源位置進(jìn)行估計(jì)[1-8]。其中,常用的基于測(cè)距的目標(biāo)定位算法有基于信號(hào)到達(dá)時(shí)間算法、基于信號(hào)到達(dá)時(shí)間差(TDOA)算法、基于信號(hào)到達(dá)角度算法、基于到達(dá)頻差算法、基于信號(hào)到達(dá)強(qiáng)度算法,以及以上算法的組合。由于基于TDOA的目標(biāo)定位算法具有硬件要求低(每個(gè)節(jié)點(diǎn)僅需要有一個(gè)接收通道)、計(jì)算復(fù)雜度低、定位精度高等優(yōu)點(diǎn),是基于傳感器網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)目標(biāo)被動(dòng)定位的首選算法[9-12]。在TDOA目標(biāo)定位算法中,以Chan算法[13]、泰勒級(jí)數(shù)展開(kāi)算法[14]和近似最大似然估計(jì)算法[15]的精度最高。特別是Chan算法采用基于兩步加權(quán)最小二乘(WLS)算法給出了定位算法的解析解,并從理論和仿真兩個(gè)角度證明當(dāng)噪聲較小且服從高斯分布時(shí),其均方誤差能達(dá)到克拉美羅下界(CRLB)[13]。由于性能優(yōu)越,Chan算法得到了廣泛應(yīng)用。
目前研究的協(xié)同目標(biāo)定位算法大多是針對(duì)陸地電磁波傳感器節(jié)點(diǎn)的[1-13]。由于陸地傳感器節(jié)點(diǎn)可借助于衛(wèi)星使節(jié)點(diǎn)本身的位置誤差較小,這些算法均假設(shè)傳感器節(jié)點(diǎn)的位置準(zhǔn)確已知,僅考慮對(duì)目標(biāo)到達(dá)時(shí)間差的測(cè)量誤差。水聲傳感器網(wǎng)絡(luò)是以水聲為通信介質(zhì),以海洋環(huán)境監(jiān)測(cè)為目的,工作于水下,無(wú)法用衛(wèi)星進(jìn)行自定位,通常采用基于距離的傳感器節(jié)點(diǎn)自定位。由于水聲的非直線及長(zhǎng)時(shí)延多徑傳播,使得水聲節(jié)點(diǎn)的自定位誤差遠(yuǎn)比基于衛(wèi)星的自定位誤差大(1個(gè)數(shù)量級(jí)以上)。此外,由于水中的浮標(biāo)或潛標(biāo)會(huì)隨洋流飄動(dòng),在水聲傳感器網(wǎng)絡(luò)對(duì)目標(biāo)定位的算法中不能忽略節(jié)點(diǎn)的自定位誤差,在這種情況下研究如何提高水聲網(wǎng)絡(luò)傳感器節(jié)點(diǎn)對(duì)目標(biāo)的協(xié)同定位精度,是十分迫切的。
本文針對(duì)水聲傳感器網(wǎng)絡(luò)目標(biāo)定位中節(jié)點(diǎn)位置誤差和測(cè)距誤差同時(shí)存在條件下的目標(biāo)定位性能問(wèn)題,建立雙誤差條件下的TDOA目標(biāo)定位模型;提出一種基于加權(quán)整體最小二乘(WTLS)算法的TDOA目標(biāo)定位算法,將測(cè)距誤差和傳感器節(jié)點(diǎn)位置誤差的先驗(yàn)信息融入算法中。仿真結(jié)果表明,WTLS算法與常用的兩步WLS算法相比,有很好的定位性能。
圖1 基于TDOA的目標(biāo)估計(jì)示意圖Fig.1 Target estimation based on TDOA
基于傳感器節(jié)點(diǎn)的目標(biāo)定位示意圖如圖1所示。假設(shè)M個(gè)傳感器節(jié)點(diǎn)的位置坐標(biāo)分別為sk=[xk,yk,zk]T,k=1,2,…,M,xk、yk、zk表示第k個(gè)節(jié)點(diǎn)位置坐標(biāo)的3個(gè)分量;單獨(dú)將另一個(gè)傳感器節(jié)點(diǎn)作為參考節(jié)點(diǎn),用于計(jì)算目標(biāo)到其他節(jié)點(diǎn)和到參考節(jié)點(diǎn)的距離差,參考節(jié)點(diǎn)位置坐標(biāo)為sr=[xr,yr,zr]T,xr、yr、zr表示參考節(jié)點(diǎn)位置坐標(biāo)的3個(gè)分量;目標(biāo)位置坐標(biāo)為u=[x,y,z]T。則第k個(gè)節(jié)點(diǎn)接收到目標(biāo)u信號(hào)的到達(dá)時(shí)刻tk為
(1)
式中:c為水中聲速,c≈1 500 m/s;t0為目標(biāo)發(fā)射信號(hào)的時(shí)刻;nk為目標(biāo)信號(hào)到達(dá)第k個(gè)傳感器節(jié)點(diǎn)的時(shí)間估計(jì)誤差,且獨(dú)立同高斯分布。圖1中,t1、t2、tk、tr分別表示第1個(gè)、第2個(gè)、第k個(gè)節(jié)點(diǎn)和參考節(jié)點(diǎn)接收到目標(biāo)u信號(hào)的到達(dá)時(shí)刻。
當(dāng)目標(biāo)為非協(xié)作目標(biāo)或異步網(wǎng)絡(luò)時(shí),目標(biāo)的發(fā)射信號(hào)時(shí)刻t0無(wú)法獲得,TDOA采用目標(biāo)到節(jié)點(diǎn)與參考節(jié)點(diǎn)時(shí)間差的方法,無(wú)需知道目標(biāo)發(fā)射信號(hào)的時(shí)刻t0.目標(biāo)信號(hào)到第k個(gè)節(jié)點(diǎn)與參考節(jié)點(diǎn)的時(shí)間差為
(2)
式中:nk、nr分別表示目標(biāo)信號(hào)到達(dá)第k個(gè)傳感器節(jié)點(diǎn)和參考節(jié)點(diǎn)的時(shí)間估計(jì)誤差。對(duì)于三維目標(biāo)定位,(2)式中的未知數(shù)u=[x,y,z]T的維數(shù)等于3,當(dāng)M≥3時(shí)可得雙曲方程(2)式的解;對(duì)于二維目標(biāo)定位,(2)式中的未知數(shù)u=[x,y]T的維數(shù)等于2,當(dāng)M≥2時(shí)可得雙曲方程(2)式的解。此即基于TDOA的傳感器節(jié)點(diǎn)目標(biāo)定位思想。
(2)式的本質(zhì)是求解由多個(gè)TDOA構(gòu)成的雙曲線的交點(diǎn),當(dāng)M取等號(hào)時(shí)得到三元二次方程(三維)或二元二次方程(二維),可直接求解;當(dāng)傳感器節(jié)點(diǎn)較多時(shí),(2)式為超定非線性方程,不能直接應(yīng)用線性方法求解,若采用迭代搜索法則存在收斂性問(wèn)題。文獻(xiàn)[16]提出一種參數(shù)變換的方法,通過(guò)二維坐標(biāo)中目標(biāo)、傳感器節(jié)點(diǎn)之間的距離及其幾何關(guān)系,利用一個(gè)中間未知量,將非線性方程轉(zhuǎn)化為偽線性方程。文獻(xiàn)[13]給出了含有目標(biāo)位置坐標(biāo)以及目標(biāo)到參考節(jié)點(diǎn)距離的超定偽線性方程組,并采用兩步WLS法給出該方程組的解析解。文獻(xiàn)[13]采用二維坐標(biāo)給出的結(jié)果也適用于三維坐標(biāo)。本文借鑒文獻(xiàn)[13]的思路,以二維坐標(biāo)為例,所得結(jié)果同樣也適用于三維坐標(biāo)。
在二維平面中,目標(biāo)到參考節(jié)點(diǎn)sr=[xr,yr]T的距離為
(3)
(4)
(4)式減去(3)式,得
(5)
式中:xkr=xk-xr;ykr=yk-yr.
(6)
(Ga+ΔG)z=ha+Δh,
(7)
高斯- 馬爾可夫定理研究表明:在線性回歸模型中,如果誤差滿足零均值、同方差且互不相關(guān),則最小二乘法估計(jì)是回歸系數(shù)的最佳線性無(wú)偏估計(jì)。本文研究誤差不滿足高斯- 馬爾可夫定理要求時(shí),用最小二乘方法對(duì)雙誤差條件下TDOA目標(biāo)定位模型((7)式)求解的性能。限于篇幅,本文僅分析目標(biāo)距離估計(jì)網(wǎng)絡(luò)較遠(yuǎn)的情況。
為了方便對(duì)比,在2.1節(jié)給出Chan算法的兩步加權(quán)最小二乘方法的求解步驟;在2.2節(jié)給出本文所提基于WTLS,包括推導(dǎo)協(xié)方差矩陣的表達(dá)式并給出定權(quán)方法,建立約束優(yōu)化模型,基于Lagrange乘數(shù)法推導(dǎo)迭代表示式,最后給出求解步驟。
WLS方法忽略了模型(7)式中的節(jié)點(diǎn)自定位誤差包括乘性誤差,僅考慮距離差估計(jì)的測(cè)量誤差,則模型(7)式可表示為
Gaz=h,
(8)
式中:h=ha+Δh=
(8)式的求解問(wèn)題可表示為如下優(yōu)化問(wèn)題:
(9)
由于模型(8)式中的誤差僅是由距離估計(jì)誤差引起,則誤差可表示為
(10)
式中:B=diag(d1r+dr,d2r+dr,…,dMr+dr),且BT=B;n=[n1r,n2r,…,nMr]T服從均值為0、協(xié)方差矩陣為Q的高斯分布;符號(hào)⊙表示Hadamard乘積。
由于dkr+dr?cnkr,忽略其高階項(xiàng),e≈cBn也服從均值為0的高斯分布,其協(xié)方差矩陣可表示為
Σ=Cov(e,e)=E[eeT]≈
c2BE[nnT]BT=c2BQB,
(11)
式中:Cov(e,e)表示求e的協(xié)方差矩陣;E[·]表示·的數(shù)學(xué)期望。
(12)
式中:z取決于Σ(或Q)的矩陣結(jié)構(gòu),而與其縮放比例無(wú)關(guān)。考慮到z中dr與[x,y]T的相關(guān)性,Chan給出了兩步WLS的算法[13]。該算法的具體步驟如下:
步驟1利用WLS對(duì)模型(8)式計(jì)算,得到初始解
式中:za為z的估計(jì)值。由于目標(biāo)距離較遠(yuǎn),可用Q代替Σ,得
步驟2利用步驟1的估計(jì)值重新構(gòu)造一組誤差方程組進(jìn)行第2次估計(jì)。重構(gòu)的方程組為
由此得到優(yōu)化函數(shù)為
再次使用加權(quán)最小二乘法,得
z′≈(G′TB′-1GQ-1GB′-1G′)-1G′TB′-1GQ-1GB′-1h,
其中B′=diag[(za1-xr),(za2-yr),za3]。
步驟3Chan算法得到的最終目標(biāo)位置估計(jì)值為
(7)式表示的雙誤差條件下TDOA目標(biāo)定位模型是變量(因變量和自變量)包含誤差(EIV)模型[17],進(jìn)一步可表示為
(13)
為了方便推導(dǎo),忽略Δh中的高階項(xiàng),得
由假設(shè)條件及(13)式可知,加性噪聲矩陣和乘性噪聲矩陣服從如下分布:
(14)
式中:vec(·)表示矩陣按列向量拉直;Σh和ΣG分別為Δh和ΔG的協(xié)方差矩陣,
(15)
(16)
G1、G2、G3為ΔG的3個(gè)列向量,其對(duì)應(yīng)的協(xié)方差矩陣分別為ΣG1、ΣG2、ΣG3,G1、G2、G3之間是相互獨(dú)立的,因此ΣG中除ΣG1、ΣG2、ΣG3外的元素都為M階零矩陣0.
由此可推導(dǎo)出
分別為協(xié)方差矩陣ΣG的3個(gè)分塊矩陣。
EIV模型的TDOA目標(biāo)定位問(wèn)題可轉(zhuǎn)化為如下條件優(yōu)化問(wèn)題:
(17)
本文使用Schaffrin[18]等提出的方法進(jìn)行定權(quán),即要求協(xié)方差矩陣ΣG被分解為(18)式的形式:
ΣG=Qx?Q0,
(18)
式中:
(17)式所示的優(yōu)化問(wèn)題可轉(zhuǎn)化為下列約束優(yōu)化問(wèn)題:
(19)
本文按Lagrange乘數(shù)法求解,于是構(gòu)造目標(biāo)函數(shù)如下:
(20)
式中:拉格朗日因子λ∈RM×1.
對(duì)(20)式中的Δh、vec(ΔG)、λ和z分別求偏導(dǎo)數(shù),并使其等于0,可以得到
(21)
(22)
(23)
(24)
(21)式、(22)式代入(23)式,得
=[Σh+(TQ0)Qx]-1(ha-Ga).
(25)
(25)式代入(21)式及(22)式,得
Δ=-Σh[Σh+(TQ0)Qx]-1(ha-Ga),
Δ=Qx[Σh+(TQ0)Qx]-1(ha-Ga)TQ0.
(26)
(25)式、(26)式代入(24)式,得
=(ha-Ga)T(Σh+(TQ0)Qx)-1·
Qx(Σh+(TQ0)Qx)-1(ha-Ga),
(27)
(28)
通過(guò)推導(dǎo)可知,本文所提基于WTLS的方法充分利用了誤差的先驗(yàn)信息得到估計(jì)值,但是WTLS問(wèn)題目前無(wú)法得出解析解,只能通過(guò)迭代的方法進(jìn)行數(shù)值求解。若得到測(cè)量值G=Ga+ΔG,h=ha+Δh,則算法迭代過(guò)程如下:
圖2 傳感器節(jié)點(diǎn)無(wú)誤差時(shí)測(cè)量誤差對(duì)估計(jì)性能的影響Fig.2 Influence of measured error on estimation performance when sensor node has no error
步驟1未知量的初次迭代值
(1)=(GT(Σh+((0)TQ0(0))Qx)-1G)-1·
GT(Σh+((0)TQ0(0))Qx)-1h.
步驟2給出迭代過(guò)程中要求解的兩個(gè)迭代量(i)和(i),i表示迭代次數(shù),
(i)=(h-G(i))T(Σh+((i)TQ0(i))Qx)-1·
Qx(Σh+((i)TQ0(i))Qx)-1(h-Ga(i)),
(i+1)=(GT(Σh+((i)TQ0(i))Qx)-1G-(i)Q0)-1·
GT(Σh+((i)TQ0(i))Qx)-1h.
步驟3重復(fù)步驟2,給出一個(gè)閾值ε,當(dāng)‖z(i+1)-z(i)‖<ε時(shí),計(jì)算結(jié)束。
步驟4輸出結(jié)果z(i+1)的前兩項(xiàng),即為u目標(biāo)真實(shí)位置的值。
評(píng)價(jià)定位方法性能的指標(biāo)通常用均方根誤差(RMSE)和偏差(bias),其定義分別為
(29)
(30)
不同誤差大小對(duì)定位性能影響的仿真結(jié)果如下:
1)節(jié)點(diǎn)位置無(wú)誤差時(shí),測(cè)量誤差對(duì)目標(biāo)定位性能的影響如圖2所示。
2)節(jié)點(diǎn)位置誤差的方差分別為0.01 m2、0.50 m2和3.00 m2時(shí)仿真結(jié)果如圖3所示。
圖3 傳感器節(jié)點(diǎn)位置誤差方差一定時(shí)測(cè)量誤差對(duì)估計(jì)性能的影響(左為RMSE性能,右為bias性能)Fig.3 Influence of measured error on the estimation performance when the position error variance of sensor node is constant (left:performance of RMSE;right:performance of bias)
3)測(cè)量誤差分別為0.01 m2、0.50 m2和3.00 m2時(shí)的仿真結(jié)果如圖4所示。
圖4 測(cè)量誤差方差一定時(shí)傳感器節(jié)點(diǎn)位置誤差對(duì)估計(jì)性能的影響(左為RMSE性能,右為bias性能)Fig.4 Influence of position error of sensor node on estimation performance when the measurement error variance is constant (left:performance of RMSE;right:performance of bias)
從圖2~圖4中可看出:隨著誤差的增大,兩種方法對(duì)節(jié)點(diǎn)估計(jì)的均方根誤差也隨著增大,WTLS方法的均方根誤差略小于WLS方法;WTLS方法的偏差比WLS方法的偏差小很多。究其原因,是因?yàn)閃TLS方法的模型更準(zhǔn)確。
從圖2中可看出,當(dāng)節(jié)點(diǎn)位置準(zhǔn)確時(shí),WTLS方法和WLS方法的均方誤差基本相當(dāng),而WTLS方法的偏差比WLS方法小。這是因?yàn)閃TLS方法的模型考慮了乘性誤差,而WLS方法的模型未考慮乘性誤差,即使Chan算法兩次運(yùn)用最小二乘法,對(duì)估計(jì)偏差性能的提高有限。
對(duì)比圖3和圖4可以看出:節(jié)點(diǎn)位置誤差和測(cè)量誤差的大小對(duì)兩種方法的目標(biāo)估計(jì)均方根誤差影響基本相同,這是因?yàn)樵陔p誤差模型(7)式中的乘性矩陣和加性矩陣中均包含有節(jié)點(diǎn)位置誤差和測(cè)量誤差;當(dāng)測(cè)量誤差一定時(shí),節(jié)點(diǎn)位置誤差的大小對(duì)WTLS方法的偏差影響較小,這是因?yàn)閃TLS方法的模型更精確。
節(jié)點(diǎn)位置誤差和測(cè)量誤差的方差均為0.50 m2,節(jié)點(diǎn)個(gè)數(shù)從3~12變化,3.2節(jié)中其他仿真條件不變時(shí)的仿真結(jié)果如圖5所示。
圖5 傳感器節(jié)點(diǎn)個(gè)數(shù)對(duì)估計(jì)性能的影響Fig.5 Influence of the number of sensor nodes on the estimation performance
由圖5可知,節(jié)點(diǎn)個(gè)數(shù)的多少對(duì)兩種方法性能的影響基本相當(dāng)。當(dāng)節(jié)點(diǎn)個(gè)數(shù)由3增加到4時(shí),兩種估計(jì)方法的性能均有很大提升,但當(dāng)節(jié)點(diǎn)個(gè)數(shù)繼續(xù)增大時(shí),估計(jì)性能提升值很小。這是因?yàn)殡m然節(jié)點(diǎn)個(gè)數(shù)的提升可提高估計(jì)性能,但是每個(gè)節(jié)點(diǎn)都是有誤差的,節(jié)點(diǎn)的誤差又影響了估計(jì)的性能。
對(duì)于WLS和WTLS兩種定位方法的復(fù)雜度,本文采用相對(duì)計(jì)算時(shí)間來(lái)衡量,在i5-6500處理器的Win7_64位臺(tái)式計(jì)算機(jī)上,用MATLAB2014b軟件完成復(fù)雜度比較的仿真。
表1 WLS和WTLS的相對(duì)計(jì)算時(shí)間比較Tab.1 Comparison of relative computation times of WLS and WTLS
表1中,對(duì)WLS和WTLS中ε取不同值時(shí)的相對(duì)計(jì)算時(shí)間進(jìn)行了比較,將WLS的計(jì)算時(shí)間作為1.00,WTLS中ε=10、ε=5、ε=1、ε=10-11時(shí)的相對(duì)計(jì)算時(shí)間分別為1.33、1.43、1.50、1.98.從表1中的數(shù)據(jù)可以看出,WTLS的計(jì)算時(shí)間要多于WLS的計(jì)算時(shí)間,隨著閾值ε減小,WTLS的計(jì)算時(shí)間在增加,但同時(shí)定位性能也在改善。因此,算法定位性能和計(jì)算時(shí)間要統(tǒng)籌分析,根據(jù)需求選擇算法對(duì)應(yīng)的ε值。
為了驗(yàn)證本文所提WTLS法的定位效果,在西北工業(yè)大學(xué)消聲水池進(jìn)行試驗(yàn)驗(yàn)證。水池試驗(yàn)現(xiàn)場(chǎng)和節(jié)點(diǎn)如圖6所示,其中:圖6(a)是水池試驗(yàn)現(xiàn)場(chǎng),水池長(zhǎng)20 m、寬8 m、深7 m、水深6.8 m;圖6(b)是試驗(yàn)用的節(jié)點(diǎn),布放在水深3 m處,共有5個(gè)節(jié)點(diǎn),將其中1個(gè)節(jié)點(diǎn)作為待定位的目標(biāo),其他節(jié)點(diǎn)作為網(wǎng)絡(luò)節(jié)點(diǎn)。
圖6 水池試驗(yàn)現(xiàn)場(chǎng)和節(jié)點(diǎn)Fig.6 Experimental site and node
表2 WLS和WTLS試驗(yàn)效果比較Tab.2 Comparison of experimental results of WLS and WTLS m
從表2中可以看出,WLS、WTLS方法的性能都比較好。除算法本身之外,本文設(shè)計(jì)的試驗(yàn)節(jié)點(diǎn)具有偏差補(bǔ)償?shù)墓δ?。?中,對(duì)比來(lái)看,在RMSE、bias方面,本文提出的WTLS定位效果都要比WLS定位效果好。
針對(duì)水聲傳感器網(wǎng)絡(luò)目標(biāo)定位中傳感器節(jié)點(diǎn)位置誤差大不能忽略的情況,同時(shí)考慮測(cè)量誤差及傳感器節(jié)點(diǎn)位置誤差,本文構(gòu)造了雙誤差條件下的TDOA目標(biāo)定位模型。采用該模型,提出一種基于WTLS的求解算法,推導(dǎo)出協(xié)方差矩陣的表達(dá)式并給出定權(quán)方法?;贚agrange乘數(shù)法,推導(dǎo)出迭代表達(dá)式,給出求解步驟。
本文所提方法在模型上同時(shí)考慮了兩種誤差,在求解方法上利用了誤差的先驗(yàn)信息,仿真和水池試驗(yàn)結(jié)果均表明:雙誤差條件下WTLS目標(biāo)定位方法的RMSE和bias均小于WLS方法的RMSE和bias.