?

基于SRUKF-WN的傳感器系統偏差估計算法

2020-11-05 08:53孫辰辰胡振濤
探測與控制學報 2020年5期
關鍵詞:估計值網絡連接協方差

周 林,孫辰辰,魏 倩,劉 英,胡振濤

(河南大學計算機與信息工程學院,河南 開封 475000)

0 引言

在多傳感器多目標融合系統以及多傳感器監控系統中,傳感器系統偏差配準的目的是準確估計并校正傳感器的固有系統偏差,為其后續的融合以及監控過程提供技術保障,其處理好壞將直接影響多傳感器信息融合系統融合以及監控的性能與可靠性。

傳統的系統偏差配準算法:基于最小二乘配準算法,它忽略了測量誤差,把存在的誤差完全歸于系統誤差,且隨著數據增大計算量也劇增[1];基于極大似然算法,該算法只解決了二維模型,采用的是地球投影,避免不了配準模型不準確的問題[2]。為了解決配準模型難以確定的問題,H. Karniely[3]提出了用神經網絡(NN)算法進行系統偏差配準,但是此方法存在收斂速度慢、易陷入局部最小值問題[4-6]。研究學者不斷探索新的有效的網絡訓練方法,文獻[7]提出了基于無跡卡爾曼濾波(UKF)的神經網絡算法(UKF-NN),其優點是省去了求解雅克比矩陣的過程,減少了計算量,但是它難以保證系統狀態協方差的半正定性從而導致系統無法收斂的問題,不能保證數值的穩定性[8-9]。本文針對上述問題,提出了一種基于平方根無跡卡爾曼濾波(SRUKF)和權值網絡(WN)相結合的系統偏差估計算法(SRUKF-WN算法)。

1 權值網絡(WN)的系統偏差估計模型

本文構建了包含開始層、中間層以及結束層的權值網絡(WN),如圖1所示。該WN的主要作用是將網絡輸入值輸入到開始層,將信息層層向后傳遞,在WN的結束層將網絡輸出值輸出。其中,每一層均由若干個端點組成,層與層之間由網絡連接權值進行連接。

圖1 WN模型結構圖Fig.1 Structure of WN model

假設有兩類傳感器A和B,A和B類傳感器量測的點跡分別為Z和ZT,其表達式為:

Zi=T+bi+nii=1,…,M

(1)

ZT=T+bT+nT

(2)

式(1)、式(2)中:T代表目標真實的點跡,b和bT代表系統偏差,n和nT代表隨機噪聲,i代表第i個A類傳感器,Zi代表第i個A類傳感器的量測值,ZT代表B類傳感器的量測值。

A類傳感器的精度較低,B類傳感器的精度較高(bT和nT的值極小),將B類傳感器的量測作為目標的真實狀態,A類傳感器的量測數據就作為待配準的目標量測。權值網絡的系統偏差配準的實質也就是將A的量測映射到B上。當隨機誤差遠遠小于系統偏差時(也即ni,nT?bi,bT),隨機誤差可以被忽略,也就是要求網絡實現Zi=T+bi逼近ZT=T+bT,如果將A類傳感器的量測Zi作為網絡的輸入,則系統偏差Bi也就是Zi-ZT作為網絡的輸出。用數學公式表達為:

網絡的輸入值為:

Zi=(xi(k),yi(k))k=1,2,…,N;i=1,2,…,M

(3)

網絡的輸出值為:

Bi=Zi-ZT=(xi(k),yi(k))-(x(k),y(k))

(4)

WN的模型結構圖如圖1所示,其數學描述為:

(5)

(6)

(7)

(8)

?

(9)

(10)

綜上所述,最終的網絡輸出值可以表示為:

(11)

2 SRUKF-WN算法

UKF對任意非線性問題具有較高的濾波精度,但它對數值計算誤差比較敏感,一些舍入誤差就會產生負定的狀態協方差矩陣,從而導致UKF濾波器不再適用。SRUKF是UKF的平方根濾波形式,在SRUKF算法中,使用狀態協方差的平方根矩陣代替狀態協方差矩陣參與迭代運算,從而確保狀態協方差矩陣的半正定性,保證了濾波的數值穩定性[10-11]。

2.1 狀態空間模型及算法框架

若要得到最優的系統偏差估計值,也就是要對權值網絡(WN)的網絡連接權值進行最優估計,尋找最優的網絡連接權值。因此,可將網絡連接權值作為狀態量,將網絡輸出作為網絡的測量方程。這樣就變成了對WN的網絡連接權值進行尋優的過程。故SRUKF-WN算法的狀態空間模型為[10]:

W(k+1)=W(k)+η(k)

(12)

BZ(k)=B(k)+σ(k)

(13)

B(k)=ST(W(k),Z(k))

(14)

式(12)—式(14)中:W(k)為系統狀態向量也即網絡連接權值,W=[W1W2WL]T;BZ(k)和B(k)分別為對應于網絡輸入Z(k)的期望輸出系統偏差值與實際輸出系統偏差值;ST(·)為WN各層的轉移函數的非線性組合;η(k)和σ(k)分別為網絡系統的過程噪聲和量測噪聲,其均值為0,方差分別為Rη(k)和Rσ(k)。

給定初始的W(0|0)和S(0|0),SRUKF-WN算法流程框圖如圖2所示。Z代表的是目標的量測值,B代表的是傳感器的系統偏差值,W代表的是WN的網絡連接權值也即狀態量,S為狀態協方差的平方根矩陣。該算法是將傳感器對目標的量測值輸入到WN,來計算系統偏差值并將其輸出,其中WN的網絡連接權值優化過程是通過SRUKF估計系統來實現的。

圖2 SRUKF-WN系統偏差估計算法框圖Fig.2 Block diagram of SRUKF-WN algorithm on systematic biases estimation

2.2 算法實現

本節主要描述的是如何采用SRUKF算法來估計WN的網絡連接權值,SRUKF-WN算法主要分為以下幾個主要步驟:WN網絡連接權值及其協方差矩陣的初始化,網絡連接權值sigma點的構建,時間更新,濾波增益的計算以及量測更新,系統偏差估計值的計算。算法的重要描述如下所示:

1) 初始化

(15)

式(15)中,定義矩陣S為方差P的平方根矩陣,通過cholesky分解獲得,即P=SST,S是下三角矩陣。

2) 計算W的(2n+1)個sigma點

(16)

3) 時間更新

更新的sigma點:

Wj(k|k-1)=Wj(k-1|k-1)

(17)

對sigma點進行加權融合:

(18)

更新的狀態協方差平方根:

(19)

(20)

4) 量測更新

由式(14)得每個sigma點的量測預測值:

(21)

對量測預測值進行加權融合:

(22)

(23)

更新的量測協方差平方根:

(24)

(25)

狀態與量測的協方差:

(26)

估計增益為:

K(k)=PWkBk(SB(k|k-1)SBT(k|k-1))-1

(27)

更新的狀態變量為:

(28)

更新的狀態協方差平方根:

U(k)=K(k)SB(k|k-1)

(29)

S(k|k)=cholupdate(S(k|k-1),U(k),-1)

(30)

5) 系統偏差估計值的計算

(31)

運用SRUKF算法對WN的網絡連接權值進行估計,得到系統偏差估計值。其算法流程圖如圖3所示,圖中的K為最大仿真步長。

圖3 SRUKF-WN算法流程圖Fig.3 Flow chart of SRUKF-WN algorithm

3 仿真實驗結果及分析

為了說明上述所提SRUKF-WN算法在目標不同運動軌跡上的可行性以及有效性,分別選取了作非機動運動和機動運動的目標進行了如下仿真實驗。

3.1 參數設置

1) WN部分

2) SRUKF部分

由于目標的真實運動軌跡難以獲得,故分別用兩個不同的傳感器1和2來觀測該目標,傳感器1的量測值作為待配準的目標量測,傳感器2的量測作為目標的參考真實軌跡。X方向系統偏差設定為-6 m,Y方向系統偏差設定為8 m。由WN的結構可知狀態量W的維數n=2×8+8×2=32,α=0.1,β=2,r=0。因為SRUKF是一個不斷更新迭代的過程,隨著時間的推移,初始值的設置對結果的影響越來越小,所以,這里狀態量W的初始值設置為0~1之間的隨機數向量。

為了減弱隨機噪聲以及設置的隨機初始值對仿真結果造成的影響,仿真實驗采用蒙特卡洛仿真形式,仿真次數為50。采用的仿真環境為Intel i5,主頻為3.30 GHz,內存為4.00 GB。仿真軟件為Matlab R2014a。

3.2 結果及分析

通過上述所設置參數,并以均方根誤差(RMSE)作為算法精度衡量指標,用UKF-NN算法和NN算法作為對比算法,得出目標機動運動和非機動運動下的仿真效果圖如圖4—圖13。

目標的運動方程以及量測方程一般如下表示:

Xmea(k+1)=FXmea(k)+μ(k)

(32)

Zmea(k)=HXmea(k)+Bmea+φ(k)

(33)

1) 仿真場景一

假設目標在二維平面內作非機動運動。X方向上的速度為3 m/s,Y方向上的速度為4 m/s。Xmea(k)的Xmea初始值設置為[100 m 3 m/s 200 m 4 m/s]T。X和Y方向上的系統偏差值分別設為-6 m和8 m。T為采樣間隔,取為2 s。量測矩陣H=[1 0 0 0;0 0 1 0],狀態轉移矩陣F=[1T0 0;0 1 0 0;0 0 1T;0 0 0 1]。

將作非機動運動的目標的量測值輸入到SRUKF-WN算法及其對比算法中,估計出系統偏差值。仿真結果如圖4—圖8所示。

圖4和圖5分別為三種算法在X和Y方向的系統偏差估計值(實際輸出值)與參考真實系統偏差(期望輸出值)的變化。從圖中可以看出,SRUKF-WN算法、NN算法以及UKF-NN算法在X和Y方向的系統偏差估計值均趨于參考真實系統偏差-6 m和8 m。NN算法的系統偏差估計值在1~80 s持續下降,80 s之后基本收斂于參考真實系統偏差值。這是由于傳統NN算法本質是梯度下降算法,其學習率是固定不變的,必定會造成收斂速度慢的情況。UKF-NN算法由于迭代過程中傳遞的是狀態方差,會出現狀態方差負定,從而導致是系統偏差估計值有這樣一個過程,即在1~4 s之間下降,4~75 s穩定于真實值,在75 s之后出現劇烈波動。SRUKF-WN算法在迭代過程中傳遞的是狀態方差的平方根矩陣,不會出現狀態協方差負定而導致估計值波動的情況。從圖中也可以看出,SRUKF-WN算法的系統偏差估計值在0~10 s之間迅速下降,10 s之后收斂于參考真實系統偏差值。

圖4 三種算法X方向系統偏差估計值Fig.4 Comparison of the systematic biases estimation in X-axes

圖5 三種算法Y方向系統偏差估計值Fig.5 Comparison of the systematic biases estimation in Y-axes

三種算法在X和Y方向上的系統偏差估計的均方根誤差值(RMSE)變化分別如圖6以及圖7所示。從圖6和圖7可以看出,SRUKF-WN算法、NN算法、UKF-NN算法的系統偏差的RMSE最終均基本趨于零;但是,UKF-NN算法由于狀態協方差負定的原因,在仿真步長大約為75 s之后出現了劇烈波動。

圖6 三種算法在X方向上系統偏差估計的RMSEFig.6 RMSE of the systematic biases estimation in X-axes

圖7 三種算法在Y方向上系統偏差估計的RMSEFig.7 RMSE of the systematic biases estimation in Y-axes

為了能更直觀地分析三種算法的性能,在蒙特卡洛仿真次數為50次,仿真步長為200 s的仿真條件下,分別給出三種算法系統偏差估計的平均均方根誤差值以及耗時,如表1和表2所示。

表1 三種算法系統偏差估計的平均RMSETab.1 Average RMSE of systematic biases estimation

表2 三種算法的耗時Tab.2 Running time of three algorithms

由表1可以看出,SRUKF-WN算法在X方向上以及Y方向上系統偏差估計的平均RMSE值分別為0.201 4 m和0.195 2 m,均小于UKF-NN算法和NN算法。很明顯地說明了SRUKF-WN算法的精度要高于UKF-NN算法。同時,從表2可以看出SRUKF-WN算法的運行時間為78.9 s,也遠遠比UKF-NN以及NN算法短。

本文所提SRUKF-WN算法及其對比算法均得出了傳感器的系統偏差估計值,然后利用系統偏差估計值對傳感器的量測值進行系統偏差配準。非機動運動下三種算法配準前后的軌跡圖如圖8所示。

從圖8可以看出,三種算法在非機動運動下配準后的軌跡均接近于參考真實軌跡,同時說明了所提SRUKF-WN算法的可行性。從圖8截取區間214~214.1 m的小圖中可以看出,SRUKF-WN算法與UKF-NN算法配準后的軌跡很接近,與NN算法相比更接近于參考真實軌跡;從圖8截取區間689.2~689.23 m之間的小圖中可以看出,SRUKF-WN算法與NN算法配準后的軌跡很接近,與UKF-NN算法相比更接近于參考真實軌跡。無論仿真開始階段還是仿真結束階段,SRUKF-WN算法配準后的軌跡均更接近于目標參考真實軌跡,同時也說明了SRUKF-WN算法的有效性。

圖8 配準前后軌跡Fig.8 Comparison of trajectories before and after registration

2) 仿真場景二

假設目標在二維平面內作機動運動。在上述目標狀態方程與量測方程下,機動運動的狀態轉移矩陣為:

量測矩陣為:

狀態轉移矩陣中的w表示轉彎因子,T為采樣間隔。Xmea(k)的初始值Xmea(0)設置為[200 m 8 m/s 100 m 2 m/s]T,X和Y方向上的系統偏差值分別設為-6 m和8 m。在1~100 s,目標右轉彎運動,w取值為0.18 rad/s,在101~200 s,目標左轉彎運動,w取值為-0.2 rad/s,T取值為0.1 s。

同樣地,將作機動運動的目標量測值輸入到SRUKF-WN算法及其對比算法中,估計出系統偏差值。仿真結果如圖9—圖13所示。

圖9和圖10分別為三種算法在X和Y方向的系統偏差估計值(實際輸出值)與參考真實系統偏差(期望輸出值)的變化。從圖中可以看出,SRUKF-WN算法、NN算法以及UKF-NN算法在X和Y方向的系統偏差估計值均趨于參考真實系統偏差-6 m和8 m。NN算法的系統偏差估計值在1~70 s持續下降,70 s之后基本收斂于真實系統偏差值。這是由于傳統NN算法本質是梯度下降算法,其學習率是固定不變的,必定會造成收斂速度慢的情況。UKF-NN算法由于迭代過程中傳遞的是狀態方差,會出現狀態方差負定,從而導致系統偏差估計值有這樣一個過程,即在1~50 s之間波動,50~160 s穩定于真實值,在160 s之后出現劇烈波動。SRUKF-WN算法在迭代過程中傳遞的是狀態方差的平方根矩陣,不會出現狀態協方差負定而導致估計值波動的情況??梢钥闯?,SRUKF-WN算法的系統偏差估計值在0~18 s之間迅速下降,18 s之后收斂于參考真實系統偏差值,沒有出現系統偏差估計值波動的情況。

圖9 三種算法在X方向上系統偏差估計值Fig.9 Comparison of the systematic biases estimation in X-axes

圖10 三種算法在Y方向上系統偏差估計值Fig.10 Comparison of the systematic biases estimation in Y-axes

圖11和圖12分別為三種算法在X和Y方向上的系統偏差估計的均方根誤差值(RMSE)變化圖。從兩幅圖中可以看出,SRUKF-WN算法、NN算法、UKF-NN算法的系統偏差估計的RMSE最終均基本趨于零。但是,UKF-NN算法由于狀態協方差負定的原因,在仿真步長大約為160 s之后出現了劇烈波動。

圖11 三種算法在X方向上系統偏差估計的RMSEFig.11 RMSE of the systematic biases estimation in X-axes

圖12 三種算法在Y方向上系統偏差估計的RMSEFig.12 RMSE of the systematic biases estimation in Y-axes

為了更直觀地分析這三種算法的性能結果,表3給出了三種算法系統偏差估計的平均RMSE值。

表3 三種算法系統偏差估計的平均RMSETab.3 Average RMSE of systematic biases estimation

由表3可以更直觀地看出,SRUKF-WN算法在X、Y方向上系統偏差估計的平均RMSE值分別為0.200 5 m和0.183 2 m,均小于UKF-NN算法和NN算法。很明顯地說明了SRUKF-WN算法的精度要高于UKF-NN算法和NN算法。

利用上述所提SRUKF-WN算法估計出的系統偏差值對傳感器的量測值進行系統偏差配準。機動運動下三種算法配準前后的軌跡圖如圖13所示。

從圖13中可以看出,三種算法在機動運動下配準后的軌跡均接近于參考真實軌跡,同時說明了所提SRUKF-WN算法的可行性。從區間211~211.4 m以及256~264 m之間的子圖中可以看出,SRUKF-WN算法配準后的軌跡更接近于目標參考真實軌跡,即無論是在仿真開始時還是在結束時,SRUKF-WN算法配準后的軌跡均更接近于目標參考真實軌跡,說明了本文所提SRUKF-WN算法的有效性。

圖13 配準前后軌跡Fig.13 Comparison of trajectories before and after registration

4 結論

本文提出了基于SRUKF-WN的傳感器系統偏差估計算法,解決了系統偏差模型難以構建和難以保證狀態協方差半正定性的問題。該SRUKF-WN算法構造了用于計算系統偏差值的WN;建立了包含WN網絡連接權值、系統偏差值以及目標量測值在內的系統偏差估計模型,將網絡連接權值作為狀態量,系統偏差作為量測,構建SRUKF-WN算法的狀態空間模型,通過SRUKF算法估計WN網絡連接權值;將網絡連接權值估計值輸入到WN,從而估計系統偏差,并用其來配準傳感器對目標的量測值,為后續的目標跟蹤提供可靠的量測數據。仿真結果表明,該算法不僅大大減少了算法耗時,收斂速度更快,而且保證了狀態協方差的半正定性使得算法精度更高。

猜你喜歡
估計值網絡連接協方差
云上黑山羊生長曲線擬合的多模型比較
地震動非參數化譜反演可靠性分析
個性化設置 Win10 的網絡連接信息
如何快速判讀指針式壓力表
概率論中有關協方差計算的教學探討
二維隨機變量邊緣分布函數的教學探索
基于關節信息和極限學習機的人體動作識別
中小型網絡組建技術
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合