白 帆 孫 寧
(1.92941部隊95分隊 葫蘆島 125000)(2.遼寧工程技術大學 興城 125105)
以全球定位系統(GPS)和慣性導航系(INS)構造的組合導航系統是艦船導航中最主要的組合方式。它有效利用了GPS和INS各自的優點進行系統間的取長補短,這種組合能有效減小系統誤差,提高系統的精度,而且還可以降低導航的成本。在GPS信號接收正常時,組合導航系統能夠提供良好的導航性能。但是載體在惡劣環境下GPS信號會失鎖甚至有時會完全丟失,濾波器輸出就會發散,系統模型誤差會變大使導航性能嚴重惡化[1]。本文提出用BP神經網絡來輔助GPS/INS組合導航系統,既能像模糊系統那樣表達近似定性知識,又有神經網絡的學習和非線性表達能力。

圖1 INS/GPS組合導航原理圖
組合導航系統是把兩種或兩種以上不同的導航設備或系統以適當的方式組合在一起的導航系統。組合導航系統利用不同導航系統性能上的互補性以獲得更好的導航性能,以及更低的系統成本。其中相應的組合方式有,GPS/INS組合導航系統、地形輔助/慣性導航系統、景象匹配/慣性組合導航系統、天文/慣性組合導航系統、羅蘭/慣性組合導航系統、多普勒/慣性組合導航系統有關等等。組合導航系統能夠克服單個導航系統的不足,提高整個導航系統的導航精度、實時性、提高抗干擾的能力、降低整個系統的造價。所以組合導航系統是導航技術發展的主要方向[3]。
本文采用慣導誤差傳播模型建立卡爾曼濾波狀態方程,組合方式為開環式。濾波器模型如下:

其中:Xu= [Δλ,Δφ,Δh,ΔVe,Vn,Vu,φe,φn,φu,Δt,δ]為狀態向量,分別為運動載體的經度誤差、緯度誤差、高度誤差、東向速度誤差、北向速度誤差、天向姿態誤差角、北斗接收機鐘差和頻漂。A為系統矩陣,階數等于狀態向量Xu的維數,H為觀測矩陣。
BP(Back Propagation)神經網絡是一種神經網絡學習算法,全稱基于誤差反向傳播算法的人工神經網絡,由信息的正向傳播和誤差的反向傳播兩個過程組成[4]。BP神經網絡的拓撲結構是神經網絡最為基礎的一部分,圖2顯示了一個典型的三層BP神經網絡結構[5],其中:
輸入層:輸入向量x=(x1,x2,…,xn)T;隱含層:輸出向量y=(y1,y2,…,ym)T;
輸出層:輸出向量o=(o1,o2,…,ol)T;期望輸出向量d=(d1,d2,…,dl)T;
輸入層到隱含層之間的權值v=(v1,v2,…,vm)T;

圖2 三層BP神經網絡結構圖
隱含層到輸出層之間的權值矩陣w=(w1,w2,…,wl)T。
BP神經網絡的學習過程主要由信息的正向傳播與誤差的反向傳播兩個過程組成[6]:
第一階段:正向傳播時,輸入樣本從輸入層傳入,經各隱含層逐層處理后,傳向輸出層,得到網絡的輸出結果。



第二階段:若輸出層的實際輸出O與期望輸出d不符,則轉入誤差的反向傳播階段,通過誤差調節權值。梯度下降法的目的就是使實際輸出和期望輸出的誤差E沿下降速度最快的方向(負梯度方向)減小,所以采用負梯度方向調整權值:

其推導過程如下:

那么,新的權值分別是(η為學習因子):

在新的權值下,再次輸入樣本進入正向傳播階段,計算誤差為E或δ,若誤差沒有達到容許范圍,那么進入誤差反向傳播階段,繼續調整權值[7]。這樣第一階段和第二階段一直構成一個有機的循環,此過程一直進行到網絡輸出的誤差減少到可以接受的程度,或者預先設定的學習次數為止。
結合神經網絡和卡爾曼濾波,主要是從補償的角度,利用神經網絡的映射逼近能力和自學習能力修正了卡爾曼濾波的結果,提高濾波精度。BP神經網絡考慮了現實環境的動態變化對系統模型造成的隨機的干擾影響,通過預先確定的神經網絡結構和初始參數,根據足夠精度的樣本對前向神經網絡進行訓練,以確定神經網絡的各個參數[8]。在卡爾曼濾波器執行導航估計時,將確定的能直接影響導航估計誤差的參數作為神經網絡的輸入,通過實時執行神經網絡輸出卡爾曼濾波估計的誤差來校正卡爾曼估計[9]。
針對慣性/GPS導航系統設計濾波器,將GPS接收機的輸出位置和速度信息與慣導輸出的相應信息作差得到測量方程。

BP神經網絡的組合導航定位的算法如下:
1)創建兩個BP神經網絡,在時間更新預測部分使用一個BP神經網絡學習前一個狀態和下一個預測狀態之間的關系,網絡的輸入為預測狀態與前一個的卡爾曼濾波增益,輸出為期望預測狀態與預測狀態的差[10]。在測量更新部分,使用另一個BP神經網絡學習卡爾曼濾波結果與真實結果的誤差,網絡的輸入為卡爾曼濾波的狀態參量和卡爾曼濾波增益,輸出結果和真實值之間的誤差。
2)分別對這兩個BP神經網絡進行初始化,設定初始的權值和閾值,并通過網絡進行訓練。
3)開始執行卡爾曼濾波。
4)開始執行兩個BP神經網絡,實時地分別在時間更新預測部分及測量更新部分修正預測結果。
5)計算誤差函數,然后計算反傳的誤差變化以及各層的權值與新權值結合卡爾曼濾波結果及其由第二個BP神經網絡給出的誤差,就可以得到BP神經網絡修正卡爾曼濾波之后的改進結果。
6)將訓練后的值取代卡爾曼濾波的估計值。

圖3 基于BP神經網絡動態濾波算法圖
模擬海上航行的船舶,對其速度數據進行跟蹤,截取一段運動數據進行分析。其導航系統的方程因機動運動有所變化引起測量方程有誤差。選取線性神經網絡輸出結構,將兩個BP神經網絡嵌入到濾波器中,采用LMS算法進行調整[11],仿真結果如圖5所示。

圖4 速度測量值與估計值的比較曲線

圖5 組合濾波后誤差信號
從圖5中可以看出用神經網絡輔助的卡爾曼濾波對速度的估計與實際運動的曲線基本一致,經過長時間的運動也不會產生巨大偏差,證明濾波器沒有產生發散現象,使組合導航的精度大大提高。
通過仿真可知,該算法既考慮了現實環境的動態變化對系統模型的影響,又融合了神經網絡的自學習性和自適應性,使其具有自適應能力以應付動態環境的擾動。仿真結果表明,提出的BP神經網絡的組合導航算法,可以顯著改善卡爾曼濾波器的性能,提高組合導航的精度。
[1]徐紹銓,張華海,楊志強,等.GPS測量原理及應用[M].武漢測繪科技大學出版社,1998:96-101.
[2]秦永元,汪叔平.卡爾曼濾波與組合導航原理[M].西安:西北工業大學出版社,2004:71-78.
[3]干國強,邱致和.導航與定位[M].北京:國防工業出版社,2000.
[4]徐麗娜.神經網絡控制[M].北京:電子工業出版社,2003:117-125.
[5]張劍湖,葉峰.人工神經網絡的模型、特征及其發展方向[J].現代電子技術,2004(12):57-60.
[6]徐麗娜.神經網絡控制[M].北京:電子工業出版社,2003:228-241.
[7]劉增良.模糊技術與神經網絡技術選編[M].北京:北京航空航天大學出版社,2001:117-125.
[8]王新龍,申功勛,唐德麟.基于最優估計神經網絡的慣導系統初始對準研究[J].宇航學報,2002,23(3):34-38.
[9]楊元喜.動態Kalman濾波模型誤差的影響[J].測繪科學,2006(1):17-18.
[10]董曉馬,張為公.基于改進BP神經網絡的車輪定位參數動態測量[J].試驗·測試學報,2003(12):31-33.
[11]張守信.航天測量數據處理[M].北京:解放軍出版社,1999:52-57.
[12]楊金寶,張昌宏,陳平.基于改進BP神經網絡的網絡故障診斷研究[J].計算機與數字工程,2012,40(2).
[13]張守信.航天測量數據處理[M].北京:解放軍出版社,1999:208-215.