鄧天民,岳云霞,楊其芝,方 芳
(1.重慶交通大學 交通運輸學院,重慶 400074;2.重慶交通大學 山區道路復雜環境 “人-車-路”協同與安全重慶市重點實驗室,重慶 400074)
智能網聯汽車融合了現代通信與網絡技術,在復雜的環境條件下,可以實現快捷舒適的行駛。在網聯汽車的駕駛輔助系統中,運行環境的復雜多變需要高精度定位的支持,因此,定位技術成為了其關鍵技術。目前廣泛民用的全球定位系統雖然能夠在信號良好的情況下達到8 m左右的定位精度,但是在信號失鎖狀態下,定位效果卻差強人意,所以,需要研究新的定位方法解決這個問題[2]。
在智能網聯汽車行駛過程中,組合導航系統GNSS信號中斷導致精度降低的問題以及如何提高信號失鎖的問題,國內外已有大量的研究。在組合導航性能方面,徐愛功等[3]、趙慧青等[4]、孫佳興等[5]分別提出了徑向基神經網絡輔助的組合導航算法、人工蜂ABC算法以及基于此算法的改進,加快了收斂的速度,提高了慣性導航的穩定性和檢測精度,但缺乏對GPS信號失鎖或不穩定狀態的分析。李剛等[6]、付心如等[7]、孟秀云等[8]共同提出了一種組合抗差自適應拓展卡爾曼濾波算法,有效控制觀測異常對組合導航定位精度的影響,但缺乏對高動態和弱信號穩定導航定位分析。在GNSS信號弱方面,劉亞玲[9]、蔡南荊等[10]、燕歡[11]設計基于矢量跟蹤GNSS/SINS相干深組合導航的方法,實現了在高動態和弱信號環境下的穩定導航定位以及加速中斷以后濾波收斂的速度,但缺乏對長時間失效精度的定位分析。在GPS失鎖方面,Adusumilli S等[12]、Bhatt D等[13]分別提出了用于INS和GPS數據融合的主成分回歸和隨機森林回歸的混合方法,人工神經網絡和隨機森林回歸(RFR)方法,模型位置誤差分別提高了45.06%、20%-87%,但缺乏對具體時間失效精度的定位分析。Xu X S等[14]、Tian X C等[15]分別提出并測試了結合強跟蹤卡爾曼濾波(STKF)和小波神經網絡算法,結合強跟蹤卡爾曼濾波器(STKF)和改進的徑向基函數神經網絡(IRBFNN)算法,基于遺傳算法優化的徑向基函數神經網絡(RBFNN)方法,能夠有效地為GPS失鎖期間的獨立INS提供高精度校正,但是曲線振蕩幅度不穩定,收斂速度較慢。
LSTM神經網絡能夠有效的運用于長距離的失效信息,具有極強的動態非線性能力和記憶功能[16]。在模型性能效果方面,王景中等[17]基于張量空間的L-STM模型消除了數據過度擬合的問題,有效降低參數最優解計算期間迭代次數,保證了情感分類的準確率。在非線性系統動態預測方面,Elsaid A E等[18]使用LSTM神經元建立可行的回歸神經網絡(RNN)改善未來發動機振動值的預測,驗證了LSTM網絡較其它神經網絡的有效穩定性。Ordóez F J等[19]提出了一種基于卷積和LSTM循環單元的通用深度活動識別框架,實驗效果較優,具有較強的泛化能力。在失效效果預測方面,Zhao J等[20]提出了一種深層疊雙向和單向LSTM(SBU-LSTM)神經網絡,與其它經典和最先進模型的比較表明在準確性和魯棒性方面為整個交通網絡實現了卓越的預測性能,但是缺乏中長期失效預測分析。
基于傳統卡爾曼濾波和神經網絡所存在的不足以及LSTM神經網絡的優勢,本文提出了基于長短期記憶(LSTM)的誤差反饋校正方法,根據GNSS/INS組合導航濾波輸出信號的特點確定了基于LSTM網絡的GNSS失效預測模型,當有信號時,獲取神經網絡的訓練樣本,進行在線神經網絡訓練。當GNSS信號失鎖時,根據已經訓練好的神經網絡模塊預測出GNSS信號失鎖時載體的不同失效時長的位置誤差。有效提高了智能網聯汽車的定位精度。
長短期記憶(long-short term memory,LSTM)單元是RNN重要的組成部分,其特有的門結構可以解決梯度消失,梯度爆炸以及缺乏長期記憶能力等問題,主要是將隱藏層的RNN細胞替換為 LSTM 細胞重新設置計算節點,使得誤差經反饋機制從輸出層反向傳播后,通過“記憶元”模塊記憶下來。能夠有效運用于長距離的時序信息[21]。為了防止梯度消失,可以將3個門控制器放置在LSTM神經網絡細胞周圍,形成一個新的計算單元則過程可以表示為
輸入門:
it=σ(wi×[ht-1,vt,φt]+bi)
(1)
遺忘門:
ft=σ(wf×[ht-1,vt,φt]+bf)
(2)
神經元:
Ct=ft*Ct-1+it·tanh(wc×[ht-1,vt,φt]+bc)
(3)
輸出門:
Ot=σ(wo×[ht-1,vt,φt]+bo)
(4)
輸出:
ht=Ot·tanh(Ct)
(5)
在t時刻內,it為輸入門,ft為遺忘門,ot為輸出門。ct為LSTM神經網絡細胞的計算規則,ht為該計算單元的輸出,vt,φt表示輸入的參數,由輸出門與雙曲正切激活函數相乘而得。w為參數矩陣,b為偏置項,σ(·) 為激活函數Sigmoid, tanh(·) 為雙曲正切激活函數[22]。
(1)樣本集處理
對樣本數據進行歸一化處理是模型構建之前的關鍵數據處理環節。試驗車在導航系下行駛的二維軌跡,經度、緯度坐標是通過世界大地坐標系統(world geodetic system-1984 coordinate system,WGS84)的通用橫軸墨卡托(universal transverse mercator projection,UTM)投影坐標系統換算而成[23]。為了能夠提升模型的收斂速度以及精度,需要將330 484組訓練數據按照一定比例縮放成[-1,1]之間的小數
(6)
其中,x是訓練某一時刻的數據,x*是歸一化處理的某一時刻的數據,xmax,xmin分別表示訓練數據的最大值和最小值。
設定智能網聯汽車在t時刻的行駛速度、航向角、橫滾角和俯仰角分別為v(t),α(t),β(t),γ(t), 定位緯度、經度、緯度增量和經度增量θ(t),δ(t), Δθ(t), Δδ(t)。 因此,記x(t),y(t) 為第t時刻神經網絡的輸入、輸出量
(7)
其中,r,m分別表示輸入層和輸出層神經元個數。
(2)模型訓練過程
輸入/輸出數據,對LSTM網絡進行訓練,過程如下:
輸入門表示式為
(8)
遺忘門表達式為
(9)
神經元的表達式為

(10)
輸出門表達式為
(11)
輸出
(12)
假設GNSS失效時刻為t0, 前一時刻緯度、經度為θ(t0-1),δ(t0-1), 令T為失效時長,f為數據采集頻率,則預測步數g=T×f, 預測軌跡及誤差為
(13)
(14)
(15)
本定位裝置是在基于GNSS/INS組合導航系統,當GNSS無法接收到信號時,通過加入慣導儀器設備INS(inertial navigation system)且結合機器學習模型來實現車輛全域的高精度定位,其系統結構如圖1所示。

圖1 GNSS/INS高精度定位裝置結構
該系統能夠工作在GNSS衛星接收信號正常和非正常兩種模式,當衛星信號正常是指能夠接收滿足條件的衛星數量,此時,GNSS能夠輸出高精度的三維信息。學習模型的輸入包括GNSS接收機的某歷史時刻的高精度定位數據(設為P0)、速度、航向角、俯仰角、橫滾角,輸出為當前時刻GNSS接收機輸出的經度、緯度、高程數據,同時機器學習模型時刻更新輸入和輸出訓練機器學習模型的參數。
衛星信號非正常模式是指當GNSS天線不能夠與定位衛星信號正常通訊時,無法輸出高精度定位數據,即②處不能輸出高精度定位數據。此時,通過加入慣導儀器設備INS輔助定位,慣導儀器設備傳感器輸出數據通過濾波處理后輸入到機器學習模型中,此時將某歷史時刻的速度、航向角、橫滾角、俯仰角數據帶入已經訓練好的機器學習模型,就能得到高精度定位數據。
然后,INS的預測數據通過GNSS的量測數據修正后,對神經網絡模型進行同步訓練。當車輛在行駛過程中,一旦出現由于遮擋環境或者物體高速運動導致GNSS定位失效的情況,INS由于不受外部環境的影響可以正常工作。失效前一時刻的GNSS數據為濾波的初始值,其相當于準確值,因此可以避免INS精度因導航時間長而導致的發散。在GNSS失效時段,可以采用人工神經網絡算法有效地抑制GNSS中斷期間INS誤差的積累[24,25]。
樣本數據是通過Vbox RTK自建差分基站系統采集,在測試區域距離1 km以內,收集數據時長約2小時,數據頻率為100 Hz,共872 024組,經過后期的數據整理有效數據有330 484組,實驗在某汽車綜合試驗場完成,該實驗區內的數據采集路線衛星如圖2所示。

圖2 數據采集路線衛星
數據集數據含有時間信息、經度、緯度、高程定位數據質量和車輛的參數等,行駛里程約70 km。采集的數據總共有872 064條,可分為訓練集與測試集兩部分,其中訓練數據共有330 484組,占總數據的37.90%。選用其中的33 618組數據作為測試,約占訓練數據的10.17%。其中通過歸一化后數據采集的速度與航向角直方圖如圖3所示。

圖3 速度、航向角分布直方圖
速度范圍在0 km/h~120 km/h,主要集中在15 km/h~40 km/h,約占60%,0 km/h~15 km/h約占25%,40 km/h~120 km/h約占15%。航向角范圍在0~360。范圍之內,主要集中100~150與300~340之間,約占41.8%與34.7%,其它角度約占23.5%。經緯度采用UTM(通用橫墨卡托格網)坐標系統進行投影,所以該系統基于WGS84的 e系。
實驗模型是通過LSTM神經網絡模型進行預測,輸入分別是速度、航向角、橫滾角、俯仰角,輸出是經度增量和緯度增量,隱含層為20個神經元個數。具體參數見表1,模型如圖4所示。

表1 實驗模型參數

圖4 LSTM神經網絡模型
將采集的數據通過LSTM神經網絡模型進行訓練,模型的訓練性能指標及其變化見表2。

表2 LSTM訓練指標對比
由表2可以看到,LSTM神經網絡訓練時長為7.5 h,性能表現從165下降到0.007 12,梯度趨勢從27下降到0.0332,即驗證神經網絡有較強的泛化能力。
基于已經訓練好的LSTM網絡,將33 618組測試數據通過網絡進行測試,得到緯度誤差增量圖和經度誤差增量圖,將模型輸出的經緯度增量圖與樣本數據相比較,LSTM網絡經度,緯度誤差預測如圖5所示;經度,緯度誤差分見表3。

圖5 LSTM經緯度增量誤差曲線
表3 實驗模型誤差分析

誤差指標BP模型LSTM模型緯度經度緯度經度≤0.1 cm60.52%69%70.52%98.56%≤0.2 cm85.93%89.56%95.09%99.89%MAE0.0790.0310.0770.027RMSE0.040.100.010.036MAPE7.8%2.8%3%2.7%
由LSTM網絡輸出的預測圖可知,緯度誤差在-0.5 cm~0.5 cm范圍波動,經度誤差在-0.4 cm~0.4 cm 范圍波動。表3中分別統計了誤差小于0.1 cm,0.2 cm的個數占比以及統計了能夠衡量預測誤差的實際情況—平均絕對誤差(MAE),衡量預測的精度—均方根誤差(RMSE),衡量模型的優良—平均相對誤差(MAPE)3個重要的量化指標,見表3。
由表3可以得知,LSTM遞歸神經網絡經緯度誤差大部分在0.2 cm附近波動。緯度誤差,經度誤差小于0.1 cm分別占據70.52%,98.56%;小于0.2 cm誤差個數占比分別達到95.09%,99.89%。LSTM網絡緯度,經度均方根誤差(RMSE)為0.01,0.036;LSTM網絡緯度,經度平均相對誤差(MAPE)分別為3%,2.7%;LSTM緯度,經度平均絕對誤差(MAE)為0.077,0.027。即訓練后的網絡模型能很高精度地逼近GNSS/INS組合導航系統輸入與輸出間的關系且具有很強的泛化能力,能在GPS信號短時間中斷時使得GNSS/INS利用神經網絡的輸出進行反饋校正后得到較為準確的導航參數,實現連續導航。
以上模型驗證了LSTM網絡的可行性,可以通過LSTM網絡模型對不同的失效時長誤差進行討論。根據LSTM模型輸出的經緯度增量,針對其中在連續時間段內的33 618組數據進行處理,可以得到GPS失效時間分別為1 s、2 s、5 s、10 s、30 s、1 min、2 min以及5 min的預測位置。路徑中的數據量為3618組數據軌跡變化圖。展示了1 s、2 s、5 s、10 s、30 s、1 min、2 min以及5 min的預測軌跡。實際軌跡與預測軌跡對比如圖6所示,不同失效時長軌跡誤差如圖7所示。
從整體上看,失效1 s、2 s、5 s、10 s、30 s、1 min、2 min以及5 min的誤差范圍在0 cm~70 cm之間,隨著失效時間的增加,誤差逐漸增大,呈非線性增長趨勢。從整體上看,預測軌跡與實際軌跡基本重合,偏離程度不大。從局部觀察,預測軌跡在1 s~10 s與實際軌跡十分吻合,即模型對測試樣本有較好的預測能力,十分穩定。隨著失效時間的增加,偏離距離越來越遠,其中2 min中有一定的回升,即在2 min時刻信號較好,5 min達到最大距離。不同失效時長的具體分析見表4。

圖6 實際軌跡與預測軌跡對比

圖7 不同失效時長軌跡誤差

表4 不同失效時長軌跡誤差分析
由表4可以驗證:隨著失效時間的增加,誤差越來越大,但并非呈現線性增長。失效時間在1 s~2 s時誤差距離小于10 cm;失效時間在5 s時,誤差距離小于15 cm;失效時間在10 s時,誤差距離小于20 cm;失效時間在30 s時,誤差距離小于40 cm;失效時間在2 min時,誤差距離小于30 cm;失效時間1 min時,失效距離小于50 cm;失效時間5 min時,失效距離小于70 cm,達到最大。即GNSS失效1 s~10 s短時間內,誤差效果最優;在30 s~2 min 中長時間內,誤差效果次優;在5 min長時間內,誤差值最大。GNSS不同失效誤差指標見表5。
由表5可知,5 min失效距離達到最大值64.02 cm。平均絕對誤差(MAE)在3.67 cm~52.38 cm范圍內波動,1 s~10 s短時間內小于6 cm,30 s~2 min內小于30 cm,5 min達到52.38 cm;均方根誤差(RMSE)在失效1 min

表5 不同失效誤差指標分析
和 5 min 略大,1 s、2 s、5 s、10 s、30 s、2 min均小于4,預測精度高;隨之,方差(STD)在1 min和5 min略大,1 s、2 s、5 s、10 s、30 s、2 min均小于11,即預測軌跡偏離實際軌跡較小,離散程度較小,比較穩定。
本文提出了一種基于LSTM神經網絡預測的GNSS/INS誤差反饋校正方法,根據GNSS/INS組合導航濾波輸出信號的特點確定神經網絡的結構模型,GNSS有信號時根據GNSS/INS組合導航濾波輸入輸出信號獲取神經網絡的訓練樣本,得到最優的神經網絡參數,當GNSS信號中斷時根據已經訓練好的神經網絡模塊預測出GNSS失鎖是載體的位置誤差。
通過地面車載跑車實驗,對預測出的不同失效時間的軌跡進行了精度分析,失效時間為1 min時最大誤差、平均絕對誤差、均方根誤差分別達到46.71 cm、23.89 cm、10.41 cm;失效時間為5 min時最大誤差、平均絕對誤差、均方根誤差分別達到64.02 cm、52.38 cm、9.82 cm。實驗結果表明了LSTM神經網絡能很高精度地逼近GNSS/INS組合導航系統輸入與輸出間的關系且具有很強的泛化能力,能在GNSS信號短時間中斷時使得利用神經網絡的輸出進行反饋校正后得到較為準確的導航參數,實現連續導航,提高了智能網聯汽車的定位精度。