楊 一,高社生,吳佳鵬,趙 巖
(1.西北工業(yè)大學(xué) 自動(dòng)化學(xué)院,西安 710072;2.航天恒星科技有限公司,北京 100086)
模型預(yù)測(cè)前向神經(jīng)網(wǎng)絡(luò)算法及其在組合導(dǎo)航中的應(yīng)用
楊 一1,高社生1,吳佳鵬2,趙 巖1
(1.西北工業(yè)大學(xué) 自動(dòng)化學(xué)院,西安 710072;2.航天恒星科技有限公司,北京 100086)
針對(duì)系統(tǒng)誤差的不確定性可能會(huì)引起濾波精度降低或發(fā)散的問題,提出一種新的基于模型預(yù)測(cè)濾波的前向神經(jīng)網(wǎng)絡(luò)算法。首先,采用模型預(yù)測(cè)濾波估計(jì)網(wǎng)絡(luò)在正向傳遞過程中的模型誤差,并對(duì)其進(jìn)行修正,以彌補(bǔ)模型誤差對(duì)隱含層權(quán)值更新的影響;然后,利用模型預(yù)測(cè)濾波為神經(jīng)網(wǎng)絡(luò)提供精確的訓(xùn)練樣本,學(xué)習(xí)待估計(jì)系統(tǒng)的非線性關(guān)系。將提出的算法應(yīng)用于SINS/CNS/BDS組合導(dǎo)航系統(tǒng),并與擴(kuò)展卡爾曼濾波進(jìn)行比較,仿真結(jié)果表明,提出的算法得到的姿態(tài)誤差、速度誤差和位置誤差分別在[-0.25′,+0.25′]、[-0.05 m/s,+0.05 m/s]和[-5 m,+5 m]以內(nèi),濾波性能明顯優(yōu)于擴(kuò)展卡爾曼濾波算法,表明該算法能提高組合導(dǎo)航定位的解算精度。
前向神經(jīng)網(wǎng)絡(luò);模型預(yù)測(cè)濾波;權(quán)值修正;SINS/CNS/BDS組合導(dǎo)航
捷聯(lián)慣導(dǎo)(SINS)/天文導(dǎo)航(CNS)/北斗衛(wèi)星導(dǎo)航(BDS)組合導(dǎo)航系統(tǒng)兼?zhèn)淞薙INS、CNS和BDS三者的優(yōu)點(diǎn),取長(zhǎng)補(bǔ)短,不僅能夠克服各導(dǎo)航子系統(tǒng)的缺陷,增強(qiáng)系統(tǒng)的完整性;而且可靠性好,定位精度高,是當(dāng)前組合導(dǎo)航領(lǐng)域研究的熱點(diǎn)之一。
在組合導(dǎo)航系統(tǒng)中,高精度濾波算法對(duì)導(dǎo)航定位的解算精度有重要影響。擴(kuò)展卡爾曼濾波(Extended Kalman Filtering,EKF)是目前使用較廣泛的非線性濾波算法之一,EKF算法通過Taylor展開來近似非線性系統(tǒng)模型,較好地解決了弱非線性系統(tǒng)的濾波問題,但由于忽略二階以上誤差項(xiàng),在系統(tǒng)模型非線性較強(qiáng)時(shí),EKF的濾波精度嚴(yán)重降低。要得到較精確的導(dǎo)航信息,需要高階的卡爾曼濾波器,但這樣會(huì)影響算法的實(shí)時(shí)性[1-2]。
近年來,神經(jīng)網(wǎng)絡(luò)技術(shù)已成功應(yīng)用于系統(tǒng)狀態(tài)的估計(jì),神經(jīng)網(wǎng)絡(luò)算法無需對(duì)所求解的問題建模,通過學(xué)習(xí)所求解問題的樣本關(guān)系可以很好地逼近其非線性特征[3-4]。由于神經(jīng)網(wǎng)絡(luò)的計(jì)算過程穩(wěn)定,不涉及矩陣求逆,所以其計(jì)算耗時(shí)較少,有利于對(duì)導(dǎo)航數(shù)據(jù)處理的實(shí)時(shí)性。神經(jīng)網(wǎng)絡(luò)方法也存在一些缺點(diǎn),對(duì)于組合導(dǎo)航這樣復(fù)雜的時(shí)變系統(tǒng),傳統(tǒng)的前向神經(jīng)網(wǎng)絡(luò)算法無法直接得到輸入與輸出之間的映射關(guān)系[5]。針對(duì)這一問題,文獻(xiàn)[6]提出基于卡爾曼濾波(Kalman Filtering,KF)的神經(jīng)網(wǎng)絡(luò)權(quán)值更新算法,并將提出的算法應(yīng)用于慣導(dǎo)系統(tǒng)初始對(duì)準(zhǔn);仿真結(jié)果顯示,在濾波精度相同的情況下,神經(jīng)網(wǎng)絡(luò)的實(shí)時(shí)性優(yōu)于KF算法。但提出的算法只適用于線性系統(tǒng),需要對(duì)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行線性化。文獻(xiàn)[7]將輸入狀態(tài)穩(wěn)定(ISS)理論與神經(jīng)網(wǎng)絡(luò)算法相結(jié)合,應(yīng)用于含有未知死區(qū)的非線性系統(tǒng)識(shí)別,并證明該算法的有效性。但是該算法僅適用于離散系統(tǒng)且計(jì)算量大。文獻(xiàn)[8]利用H∞濾波在線調(diào)整神經(jīng)網(wǎng)絡(luò)的權(quán)值,并將改進(jìn)的神經(jīng)網(wǎng)絡(luò)算法用于SINS初始對(duì)準(zhǔn),仿真結(jié)果顯示該算法具有較好的魯棒性和實(shí)時(shí)性,但濾波精度有待提高。
模型預(yù)測(cè)濾波(Model Predictive Filtering,MPF)是一種基于非線性系統(tǒng)模型的實(shí)時(shí)濾波方法,其工作原理是利用預(yù)測(cè)輸出跟蹤測(cè)量輸出,從而估計(jì)出系統(tǒng)的模型誤差[9-10]。相比其他非線性濾波方法,預(yù)測(cè)濾波能夠在線估計(jì)出任何形式的模型誤差并對(duì)其進(jìn)行有效修正。
本文在研究模型預(yù)測(cè)濾波和前向神經(jīng)網(wǎng)絡(luò)算法的基礎(chǔ)上,提出一種新的基于模型預(yù)測(cè)濾波的前向神經(jīng)網(wǎng)絡(luò)權(quán)值修正算法。該算法利用模型預(yù)測(cè)濾波實(shí)時(shí)估計(jì)網(wǎng)絡(luò)的模型誤差,并對(duì)其進(jìn)行修正,以彌補(bǔ)模型誤差對(duì)權(quán)值更新的影響;利用學(xué)習(xí)后的神經(jīng)網(wǎng)絡(luò)算法控制系統(tǒng)噪聲對(duì)導(dǎo)航解的影響,提高了導(dǎo)航系統(tǒng)的定位精度。將該算法應(yīng)用于SINS/CNS/BDS組合導(dǎo)航系統(tǒng)進(jìn)行仿真驗(yàn)證。結(jié)果表明,提出的算法濾波性能明顯優(yōu)于EKF算法。
1.1 模型預(yù)測(cè)濾波
模型預(yù)測(cè)濾波是一種適用于非線性系統(tǒng)模型的濾波算法,其原理是用濾波器的預(yù)測(cè)輸出實(shí)時(shí)跟蹤實(shí)際觀測(cè)輸出,從而估計(jì)出系統(tǒng)的模型誤差。
設(shè)非線性系統(tǒng)方程為[10]:
式中,R是正定協(xié)方差陣。
系統(tǒng)狀態(tài)估計(jì)和輸出估計(jì)的關(guān)系如下:
觀測(cè)估計(jì)的泰勒展開式為:
式中,
定義預(yù)測(cè)濾波性能指標(biāo)函數(shù)如下[10]:
在[tk,tk+1]時(shí)間內(nèi)滿足式(8)性能指標(biāo)的模型誤差估計(jì)為:
1.2 預(yù)測(cè)濾波-神經(jīng)網(wǎng)絡(luò)權(quán)值修正算法
前向神經(jīng)網(wǎng)絡(luò)由輸入層、若干隱含層和輸出層組成,各層由若干神經(jīng)元組成。由Hecht-Nielsen定理[3]可知,任意一個(gè)三層前向神經(jīng)網(wǎng)絡(luò),只要隱含層節(jié)點(diǎn)個(gè)數(shù)足夠,就可以無限逼近任意非線性函數(shù)。三層前向神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 前向神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Structure of feed-forward neural networks
由圖1可以看出,三層前向網(wǎng)絡(luò)的傳遞關(guān)系為[3]:
式中,wji為輸入層的第i個(gè)神經(jīng)元到隱含層第j個(gè)神經(jīng)元的連接權(quán);jθ為隱含層第j個(gè)神經(jīng)元的閾值;wkj為隱含層的第j個(gè)神經(jīng)元到輸出層的第k個(gè)神經(jīng)元的連接權(quán);kθ是輸出層第k個(gè)神經(jīng)元的閾值;p(·)為S型激活函數(shù),滿足:
設(shè)第k個(gè)輸出神經(jīng)元的期望輸出為yd,實(shí)際輸出為yk,則系統(tǒng)均方誤差為:
權(quán)值的更新是神經(jīng)網(wǎng)絡(luò)根據(jù)給定的學(xué)習(xí)樣本進(jìn)行訓(xùn)練的過程。在前向神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)中,非線性特性的學(xué)習(xí)主要由隱含層完成,因此本文提出的權(quán)值更新算法針對(duì)隱含層,輸出層權(quán)值仍由BP算法進(jìn)行更新。
對(duì)于任意前向神經(jīng)網(wǎng)絡(luò),假設(shè)隱含層每個(gè)神經(jīng)元的輸出為狀態(tài)變量,輸出層每個(gè)神經(jīng)元的凈輸入為量測(cè)量。則前向網(wǎng)絡(luò)的時(shí)變特性可用如下的狀態(tài)方程和量測(cè)方程表示:
式中,w(t)是輸出層的權(quán)值矩陣,為:
式中,n和m分別為輸出層和隱含層的神經(jīng)元個(gè)數(shù)。
在式(14)的狀態(tài)方程中,ξ(t)為神經(jīng)網(wǎng)絡(luò)模型誤差,由式(9)模型誤差估計(jì)求得。神經(jīng)網(wǎng)絡(luò)中模型誤差估計(jì)為:
由式(14)(19)可得到基于MPF的神經(jīng)網(wǎng)絡(luò)隱含層輸出量的估計(jì)表達(dá)式,再由式(10)逆向推出隱含層權(quán)值矩陣。隱含層權(quán)值修正算法的步驟可歸納如下
① 初始化
置各層權(quán)值和閾值的初值為小的隨機(jī)數(shù);賦值誤差函數(shù)e;設(shè)置循環(huán)次數(shù)R。
② 提供訓(xùn)練用的學(xué)習(xí)樣本
輸入矩陣x和經(jīng)過模型預(yù)測(cè)濾波計(jì)算得到的目標(biāo)輸出yd;經(jīng)過神經(jīng)網(wǎng)絡(luò)計(jì)算可得到真實(shí)輸出yk。
⑦ 重復(fù)③~⑥進(jìn)行隱含層權(quán)值更新,直至網(wǎng)絡(luò)輸出的均方誤差滿足給定的精度或者達(dá)到訓(xùn)練次數(shù)R,網(wǎng)絡(luò)訓(xùn)練結(jié)束。
2.1 組合導(dǎo)航系統(tǒng)的狀態(tài)方程
選東北天地理坐標(biāo)系(E-N-U)為導(dǎo)航坐標(biāo)系,在考慮系統(tǒng)模型誤差和系統(tǒng)噪聲的條件下,組合導(dǎo)航系統(tǒng)狀態(tài)方程為:
式中,組合導(dǎo)航系統(tǒng)的狀態(tài)向量選為
系統(tǒng)模型誤差向量D(t)為:
式中,q為方程強(qiáng)度矩陣。
2.2 系統(tǒng)量測(cè)方程
1) SINS/CNS子系統(tǒng)量測(cè)方程
SINS誤差方程解算出來的是實(shí)際建立的導(dǎo)航坐標(biāo)系n與理想導(dǎo)航坐標(biāo)系n′之間的平臺(tái)誤差角,建立平臺(tái)誤差角與姿態(tài)角誤差的關(guān)系為:
則SINS/CNS組合導(dǎo)航系統(tǒng)量測(cè)方程為[1]:
由式(25)(26)可得系統(tǒng)量測(cè)矩陣H1為:
2) SINS/BDS子系統(tǒng)量測(cè)方程
將SINS輸出的速度、位置信息和BDS輸出的速度、位置信息的差作為量測(cè)值,可得導(dǎo)航系統(tǒng)的量測(cè)方程為:
式中,LI、Iλ和hI分別為SINS的緯度、經(jīng)度和高度信息,hB、LB和Bλ分別為BDS的高度、緯度和經(jīng)度信息,δ·表示各項(xiàng)對(duì)應(yīng)的誤差,H2(t)為系統(tǒng)量測(cè)矩陣,V2(t)為系統(tǒng)量測(cè)噪聲。
由式(21)(28)可得系統(tǒng)量測(cè)矩陣H2為:
根據(jù)系統(tǒng)狀態(tài)方程(20)和量測(cè)方程(26)(28)利用MPF算法估計(jì)系統(tǒng)狀態(tài),為神經(jīng)網(wǎng)絡(luò)模型提供精確的學(xué)習(xí)樣本。
2.3 基于MPF的神經(jīng)網(wǎng)絡(luò)算法在組合導(dǎo)航中的應(yīng)用
神經(jīng)網(wǎng)絡(luò)模型類似于“黑匣子”,只有輸入和輸出與外界發(fā)生聯(lián)系。利用MPF為網(wǎng)絡(luò)提供學(xué)習(xí)樣本,并采用基于MPF的權(quán)值更新算法訓(xùn)練網(wǎng)絡(luò)模型,當(dāng)網(wǎng)絡(luò)輸出與樣本值間的誤差在允許范圍內(nèi)時(shí),訓(xùn)練結(jié)束。網(wǎng)絡(luò)的權(quán)值也隨之確定,此時(shí)輸入一組新的變量,可用此神經(jīng)網(wǎng)絡(luò)對(duì)系統(tǒng)進(jìn)行精確估計(jì)。原理如圖2所示。
由圖2確定神經(jīng)網(wǎng)絡(luò)模型的非線性函數(shù)形式為:
圖2 基于預(yù)測(cè)濾波的神經(jīng)網(wǎng)絡(luò)算法應(yīng)用于組合導(dǎo)航原理圖Fig.2 Schematic diagram of neural networks based on MPF for integrated navigation system
隱含層神經(jīng)元個(gè)數(shù)根據(jù)系統(tǒng)復(fù)雜程度,網(wǎng)絡(luò)訓(xùn)練目標(biāo)的精度以及訓(xùn)練速度等因素綜合確定。如果節(jié)點(diǎn)太少,神經(jīng)網(wǎng)絡(luò)的收斂速度會(huì)變慢,甚至不易收斂;反之,節(jié)點(diǎn)選擇過多,會(huì)引起神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)復(fù)雜,迭代計(jì)算量過大等問題。根據(jù)組合導(dǎo)航模型的復(fù)雜度,神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點(diǎn)數(shù)可確定為:
式中,i為輸入層節(jié)點(diǎn)數(shù),k為輸出層節(jié)點(diǎn)數(shù),β是0~10之間的隨機(jī)數(shù)。
設(shè)飛行器的初始位置為東經(jīng)109°,北緯34°,高度1200 m。陀螺的隨機(jī)漂移為0.01(°)/h,隨機(jī)游走為。加速度常值誤差為 10-4g,隨機(jī)游走為。SINS初始速度誤差0.5 m/s,初始位置誤差15 m;星敏感器的量測(cè)精度為20′,安裝誤差為20′;BD位置誤差均方根為10 m,速度誤差均方根為0.3 m/s;仿真時(shí)間為1000 s。誤差統(tǒng)計(jì)結(jié)果如表1所示。仿真結(jié)果如圖3~5所示。
表1 組合導(dǎo)航系統(tǒng)誤差統(tǒng)計(jì)Tab.1 Integrated navigation systems error statistics
圖3 位置誤差估計(jì)Fig.3 Position error estimation
圖3中虛線表示采用擴(kuò)展卡爾曼濾波(EKF)計(jì)算得到的位置誤差曲線,實(shí)線表示采用模型預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)(MPNN)計(jì)算得到的位置誤差曲線。通過對(duì)圖3中誤差曲線的分析和比較可以看出,EKF算法得到的東向、北向以及天向位置誤差均在[-10 m,+10 m]之內(nèi);模型預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)濾波算法計(jì)算得到的東向位置誤差在[-5 m,+5 m]之內(nèi),北向位置誤差和天向位置誤差在[-4 m,+4 m]之內(nèi)。
對(duì)圖5中誤差曲線的分析和比較可以看到,EKF算法計(jì)算得到的航向角、俯仰角和橫滾角誤差均為[-0 .5′,+0 .5′];MPNN計(jì)算得到的航向角誤差為[-0 .2′,+0 .2′],俯仰角和航向角誤差為。
圖4 速度誤差估計(jì)Fig.4 Velocity error estimation
圖4中虛線表示采用擴(kuò)展卡爾曼濾波(EKF)計(jì)算得到的速度誤差曲線,實(shí)線表示采用模型預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)(MPNN)計(jì)算得到的速度誤差曲線。由圖4可以看出,EKF算法計(jì)算得到的東向、北向和天向的速度誤差均為[-0.1m/s,+0.1m/s];MPNN計(jì)算得到的東向速度誤差為[-0.05 m/s,+0.05 m/s],北向速度誤差和天向速度誤差為[-0.06 m/s,+0.06 m/s]。
圖5中虛線表示采用擴(kuò)展卡爾曼濾波(EKF)得到的姿態(tài)誤差曲線,實(shí)線表示采用模型預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)(MPNN)計(jì)算得到的姿態(tài)誤差曲線。
圖5 姿態(tài)誤差估計(jì)Fig.5 Attitude error estimation
針對(duì)系統(tǒng)誤差的不確定性引起的非線性濾波精度降低或發(fā)散的問題,提出一種基于模型預(yù)測(cè)濾波的前向神經(jīng)網(wǎng)絡(luò)算法。將該算法應(yīng)用于SINS/CNS/BDS組合導(dǎo)航系統(tǒng)進(jìn)行仿真驗(yàn)證,并與擴(kuò)展卡爾曼濾波進(jìn)行比較。結(jié)果表明,提出的模型預(yù)測(cè)前向神經(jīng)網(wǎng)絡(luò)算法,濾波性能明顯優(yōu)于擴(kuò)展卡爾曼濾波算法,不但算法的實(shí)時(shí)性好,而且能提高組合導(dǎo)航系統(tǒng)的解算精度。
(References):
[1]趙巖,高社生,馮鵬程.臨近空間偽衛(wèi)星抗風(fēng)場(chǎng)干擾自主導(dǎo)航[J].中國(guó)慣性技術(shù)學(xué)報(bào),2013,21(3):359-364.ZHAO Yan,GAO She-sheng,FENG Peng-cheng.Autonomous navigation of near space pseudolite under wind field disturbance[J].Journal of Chinese Inertial Technology,2013,21(3): 359-364.
[2]Wu Xiaojuan,Wang Xinlong.A SINS/CNS deep integrated navigation method based on mathematical horizon reference[J].Aircraft Engineering and Aerospace Technology,2011,83(1): 26-34.
[3]Yang Yi,Gao Shesheng,Zhao Yan.A novel stock decision model based on BP neural network[C]//2012 3rd International Conference on Intelligent Control and Information Processing: 317-321.
[4]Aboelmagd N,Ahmed E,Mohamed B.GPS/INS integration utilizing dynamic neural networks for vehicular navigation[J].Information Fusion,2011,12(1):48-57.
[5]Hamid M,Nitin K.T.Cascading artificial neural networks optimized by genetic algorithm and integrated with global navigation satellite system to offer accurate ubiquitous in urban environment[J].Computers,Environment and Urban Systems,2013,37(1): 35-44.
[6]王新龍,申功勛,唐德麟.基于最優(yōu)估計(jì)神經(jīng)網(wǎng)絡(luò)的慣導(dǎo)系統(tǒng)初始對(duì)準(zhǔn)研究[J].宇航學(xué)報(bào),2002,23(3):34-38.WANG Xin-long,SHEN Gong-xun,TANG De-lin.Initial alignment of the inertial navigation system based on a neural network suitable for the best estimation[J].Journal of Astronautics,2002,23(3): 34-38.
[7]Wen Yu.Nonlinear system identification using discretetime recurrent neural networks with stable learning algorithms[J].Information Sciences,2004,158: 131-147.
[8]劉國(guó)燕,徐曉蘇,白宇駿.基于H∞濾波算法的前向神經(jīng)網(wǎng)絡(luò)在SINS初始對(duì)準(zhǔn)中的應(yīng)用[J].東南大學(xué)學(xué)報(bào)(自然科學(xué)版),2003,33(3):331-334.LIU Guo-yan,XU Xiao-su,BAI Yu-jun.Application of feedforward neural networks based onH∞filter in SINS[J].Journal of Southeast University (Natural Science Edition),2003,33(3): 331-334.
[9]Sanaz M,Javad P,Mohammad R J,et al.Nonlinear model predictive control of a pH neutralization process based on Wiener-Laguerre model[J].Chemical Engineering Journal,2009,146(3): 328-337.
[10]高社生,宋飛彪,姜微微.抗差自適應(yīng)模型預(yù)測(cè)濾波及其在組合導(dǎo)航中的應(yīng)用[J].中國(guó)慣性技術(shù)學(xué)報(bào),2011,19(6):701-705.GAO She-sheng,SONG Fei-biao,JIANG Wei-wei.Robust adaptive model predictive filtering algorithm and application to integrated navigation[J].Journal of Chinese Inertial Technology,2011,19(6): 701-705.
Feed-forward neural network algorithm based on model predictive filtering and its application in integrated navigation
YANG Yi1,GAO She-sheng1,WU Jia-peng2,ZHAO Yan1
(1.School of Automation,Northwestern Polytechnical University,Xi’an 710072,China;2.Space Star Technology Co.,LTD.,Beijing 100086,China)
In view that the uncertainty of system errors may reduce the filtering precision or cause the problem of filter divergence,this paper proposes a novel feed-forward neural network algorithm based on model predictive filtering.First,a model predictive filtering(MPF) is used to estimate the neural network model errors in the forward transfer process and revise it to resist the impact on weights updating.Then,the MPF is used to provide accurate learning samples to neural network for approximating the nonlinear relationship.Finally,the proposed algorithm is applied to the SINS/CNS/BDS(SINS/celestial navigation system/BeiDou navigation satellite system) integrated navigation system and compared with extended Kalman filter (EKF).Simulation results demonstrate that the attitude angle error,velocity error and position error obtained by the improved neural network algorithm are within[-0.25′,+0.25′],[-0.05 m/s,+0.05 m/s]and [-5 m,+5 m],respectively,and the filtering performance is significantly superior to that of the EKF.The results show that the proposed algorithms effectively improve the positioning precision of the navigation system.
feed-forward neural network; model predictive filter; weights updating; SINS/CNS/BDS integrated navigation;
V249.32
:A
1005-6734(2014)02-0221-06
10.13695/j.cnki.12-1222/o3.2014.02.015
2013-11-20 ;
:2014-03-26
國(guó)家自然科學(xué)基金(61174193);中國(guó)航天科技集團(tuán)公司衛(wèi)星應(yīng)用研究院開放基金資助
楊一(1985—),男,博士研究生,研究方向?yàn)閷?dǎo)航、制導(dǎo)與控制。E-mail:yangyi19850315@163.com
聯(lián) 系 人:高社生(1956—),男,教授,博士生導(dǎo)師。E-mail:gshshnpu@163.com
中國(guó)慣性技術(shù)學(xué)報(bào)2014年2期