方 偉,江金光,謝東鵬
(武漢大學(xué) 衛(wèi)星導(dǎo)航定位技術(shù)研究中心,湖北 武漢 430079)
基于GPS/INS的組合導(dǎo)航方法是為移動載體提供高精度導(dǎo)航和定位信息的主要導(dǎo)航方式[1,2]。GPS/INS組合導(dǎo)航系統(tǒng)利用GPS的速度、位置信息對慣性導(dǎo)航系統(tǒng)的解算誤差進行修正,從而提供連續(xù)可靠的導(dǎo)航定位結(jié)果[3]。但由于隧道、高架等遮擋地帶的影響,致使GPS信號丟失或質(zhì)量變差,無法為卡爾曼濾波提供有效觀測信息[4]。此時,組合導(dǎo)航退化為純慣性導(dǎo)航推算,導(dǎo)航誤差隨著時間推移開始發(fā)散[5]。
為解決上述問題,文獻[6]提出利用多層感知機(MLP)神經(jīng)網(wǎng)絡(luò)來對GPS和INS的位置誤差進行建模;文獻[7]在此基礎(chǔ)上增加了輸入特征的緯度,采用時刻、速度、航向角作為模型輸入來對GPS與INS之間的位置誤差和速度誤差進行建模,取得了更加穩(wěn)定和準(zhǔn)確的結(jié)果;文獻[8]提出利用之前多個時刻的位置誤差作為輸入,當(dāng)前時刻的位置誤差作為輸出對小波神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練;文獻[9-11]在網(wǎng)絡(luò)輸入中進一步增加MEMS(microelectromechanical systems)傳感器測量值,并以卡爾曼濾波的狀態(tài)估計作為輸出訓(xùn)練網(wǎng)絡(luò)。上述方法主要針對輸入特征的不同進行一些改善,但未對網(wǎng)絡(luò)的輸出端準(zhǔn)確性進行分析和優(yōu)化。為提高網(wǎng)絡(luò)輸出值準(zhǔn)確性,本文采用GPS位置增量作為輸出值。在GPS有效時,利用MEMS傳感器測量值、慣性導(dǎo)航系統(tǒng)單獨解算出的速度、姿態(tài)等信息作為輸入,GPS位置增量作為輸出值來訓(xùn)練網(wǎng)絡(luò);在GPS失效時,利用訓(xùn)練好的網(wǎng)絡(luò)估計GPS位置,以此作為新的觀測量來校正INS。
本文采用常用的MEMS+GPS松組合導(dǎo)航系統(tǒng)。松組合模式利用GPS和INS的速度和位置誤差建立如式(1)和式(2)所示的15維狀態(tài)向量和狀態(tài)方程,根據(jù)Kalman濾波的方法得到狀態(tài)變量的最優(yōu)估計
(1)
(2)
式(2)中F為15×15的狀態(tài)轉(zhuǎn)移矩陣,可以根據(jù)慣性導(dǎo)航系統(tǒng)的速度、位置、姿態(tài)誤差方程計算得出[12]。G,W為系統(tǒng)噪聲矩陣和系統(tǒng)噪聲向量。Kalman濾波對應(yīng)的觀測方程如式(3)所示
(3)
式(3)中PGPS和VGPS為GPS的位置、速度觀測量;PINS和VINS為INS的位置、速度觀測量。V為系統(tǒng)噪聲矩陣,H為對應(yīng)的觀測矩陣如式(4)所示,03代表3×3的0矩陣,I3代表3×3的單位矩陣。
(4)
至此已經(jīng)建立好了完整的Kalman濾波狀態(tài)模型。當(dāng)GPS信號有效時利用GPS觀測量修正慣性解算結(jié)果。當(dāng)GPS失鎖后,卡爾曼濾波因失去觀測量而無法工作,松組合系統(tǒng)退化為純慣性解算導(dǎo)航系統(tǒng),導(dǎo)航誤差開始隨時間發(fā)散。
文獻[9-11]均采用RBF神經(jīng)網(wǎng)絡(luò)作為輔助組合導(dǎo)航的算法。RBF神經(jīng)網(wǎng)絡(luò)是一種以徑向基函數(shù)作為隱含層神經(jīng)元激活函數(shù)的單隱層前饋神經(jīng)網(wǎng)絡(luò)[13]。由于單隱含層的神經(jīng)網(wǎng)絡(luò)的泛化能力有限,本文采用MLPNN作為輔助組合導(dǎo)航的模型,通過增加隱含層的數(shù)量來提高網(wǎng)絡(luò)對非線性系統(tǒng)的建模能力。
MLPNN模型如圖1所示。ωhj表示第j層隱含層中的第h個隱單元的權(quán)重,bh表示第h個隱單元的偏置項。中間隱含層神經(jīng)元的激活函數(shù)采用ReLU非線性激活函數(shù),在隱含層使用ReLU激活函數(shù)可以避免在誤差反向傳播過程中導(dǎo)致的梯度消失和梯度爆炸[14]。
圖1 多層感知器前饋神經(jīng)網(wǎng)絡(luò)架構(gòu)
網(wǎng)絡(luò)利用誤差反向傳播算法(backup propagation)更新每個神經(jīng)元的權(quán)重和偏置,訓(xùn)練過程可以表示為式(5)~式(9)所示
(5)
(6)
(7)
ωhj=ωhj+Δωhj
(8)
bh=bh+Δbh
(9)
傳統(tǒng)模型中,以INS和GPS位置誤差作為真值來訓(xùn)練神經(jīng)網(wǎng)絡(luò)存在一定的缺陷。由于INS的誤差會隨著時間發(fā)散不能隨時保證精度,混合GPS和INS的數(shù)據(jù)作為真值會引入額外的INS帶來的誤差,降低網(wǎng)絡(luò)的預(yù)測精度。為了得到更為準(zhǔn)確的標(biāo)簽值來訓(xùn)練網(wǎng)絡(luò),本文采用GPS的位置增量ΔPn作為真值。根據(jù)INS的差分方程可知,載體位置增量可由時間的二次積分得出,如式(10)~式(13)所示
(10)
(11)
(12)
(13)
圖2 神經(jīng)網(wǎng)絡(luò)輔助組合導(dǎo)航架構(gòu)
為驗證上述算法,將實驗系統(tǒng)和參考系統(tǒng)固定在同一個平臺上進行跑車實驗。實驗系統(tǒng)采用IMU200A作為慣性傳感器,Ublox-M8P作為GPS接收模塊;參考系統(tǒng)選擇Novatel公司的SPAN-CPT,內(nèi)含高精度光纖陀螺儀及MEMS加速度計。實驗系統(tǒng)的設(shè)備信息見表1。跑車地點選擇武漢市武昌區(qū),跑車的部分軌跡記錄如圖3所示。在GPS/INS松組合模式下行駛1690 s后,拔掉GPS天線以此來模擬GPS信號失鎖的情況。在GPS信號失鎖前,系統(tǒng)工作在松組合模式,神經(jīng)網(wǎng)絡(luò)處于訓(xùn)練模式;GPS信號失鎖后,系統(tǒng)通過MLPNN輔助慣性導(dǎo)航以提升導(dǎo)航性能。圖3中實線部分為參考系統(tǒng)記錄的真實軌跡,虛線為GPS失鎖后實驗系統(tǒng)在僅由INS解算時記錄的軌跡。
圖3 跑車平面軌跡
表1 傳感器誤差參數(shù)
實驗中選擇的MLP分為輸入層、中間層和輸出層。輸出層固定為兩個神經(jīng)元表示東向、北向的位置增量。在表2中展示了不同的網(wǎng)絡(luò)層數(shù)量、隱含層神經(jīng)元數(shù)量對訓(xùn)練精度
表2 不同網(wǎng)絡(luò)結(jié)構(gòu)的均方根(RMSE)誤差對比
和訓(xùn)練時間的影響。結(jié)果表明,輸入層采用4個神經(jīng)元,中間層采用32個神經(jīng)元的網(wǎng)絡(luò)結(jié)構(gòu)可以取得最好的預(yù)測精度以及相對較少的訓(xùn)練時間。訓(xùn)練中其它的參數(shù)設(shè)置見表3。
表3 神經(jīng)網(wǎng)絡(luò)參數(shù)
圖4表示實驗系統(tǒng)跑車過程中GPS信號失鎖后無MLP神經(jīng)網(wǎng)絡(luò)和有MLP神經(jīng)網(wǎng)絡(luò)輔助時,相對于參考系統(tǒng)的東向、北向位置誤差情況。由圖4可以看出,從1690 s開始系統(tǒng)GPS失鎖時間累積約360 s,純INS推算得出的位置誤差的發(fā)散速度明顯快于有神經(jīng)網(wǎng)絡(luò)輔助的情況。無MLP神經(jīng)網(wǎng)絡(luò)輔助的東向、北向位置最大漂移分別達(dá)到 52.98 m 和34.54 m;有MLP神經(jīng)網(wǎng)絡(luò)輔助的東、北向位置最大漂移分別為33.72 m和19.31 m,相對沒有神經(jīng)網(wǎng)絡(luò)時降低約35%和57.5%。
圖4 實驗系統(tǒng)相對參考系統(tǒng)位置誤差
圖5表示實驗系統(tǒng)跑車過程中,GPS信號失鎖后無MLP神經(jīng)網(wǎng)絡(luò)輔助和有MLP神經(jīng)網(wǎng)絡(luò)輔助時,相對于參考系統(tǒng)的東速、北速漂移情況??梢钥闯鲈贕PS失鎖后,無MLP神經(jīng)網(wǎng)絡(luò)輔助時東速、北速的最大速度漂移分別為7 m/s、5.3 m/s;有MLP神經(jīng)網(wǎng)絡(luò)輔助時東速、北速的最大速度漂移分別為4 m/s、1.7 m/s。相對沒有神經(jīng)網(wǎng)絡(luò)時東、北向最大速度誤差降低約42.8%和32.1%。
圖5 實驗系統(tǒng)相對參考系統(tǒng)速度對比
實驗結(jié)果見表4。失鎖時間360 s左右時,有神經(jīng)網(wǎng)絡(luò)時東、北向平均位置誤差相對無神經(jīng)網(wǎng)絡(luò)降低41.4%和39.4%;東、北向平均速度誤差相對無神經(jīng)網(wǎng)絡(luò)時降低46.9%和48.4%。有神經(jīng)網(wǎng)絡(luò)輔助的算法在GPS失鎖的情況下表現(xiàn)明顯優(yōu)于沒有神經(jīng)網(wǎng)絡(luò)輔助的算法,對于抑制INS誤差的快速發(fā)散具有明顯效果。
表4 實驗誤差對比
針對GPS/INS組合導(dǎo)航系統(tǒng)中GPS信號失鎖后導(dǎo)航結(jié)果誤差增大甚至發(fā)散的問題,本文提出采用MLPNN對載體的姿態(tài)、速度、MEMS傳感器的測量值與載體位置增量之間的關(guān)系進行建模以輔助組合導(dǎo)航的算法。該算法在GPS失鎖后通過神經(jīng)網(wǎng)絡(luò)預(yù)測載體的位置增量,為卡爾曼濾波提供足夠的觀測信息,進而有效抑制誤差的快速發(fā)散。跑車實驗結(jié)果表明,MLPNN模擬的GPS位置信息可以為卡爾曼濾波的量測方程提供足夠的量測信息,在GPS失鎖后抑制了慣性導(dǎo)航誤差的快速發(fā)散,有效改善了組合導(dǎo)航的導(dǎo)航精度。