牛樹華,于 燁,黃 默,周智勇
(1.海軍裝備部裝備裝備審價中心,北京 100040;2.中國科學(xué)院微電子研究所,北京 100029; 3.中國科學(xué)院大學(xué),北京 100049)
在全球衛(wèi)星導(dǎo)航系統(tǒng)(GNSS)之中,星載原子鐘的鐘差是定位、導(dǎo)航和授時(PNT)的主要誤差源之一。目前,國際IGS(International GNSS Service)數(shù)據(jù)分析中心發(fā)布的事后精密衛(wèi)星鐘差產(chǎn)品的精度小于0.1 ns,可以實(shí)現(xiàn)厘米級的精密單點(diǎn)定位(PPP)的需求,但是該產(chǎn)品需要在13天之后才能獲取,不能滿足用戶對實(shí)時性的需求。因此,獲得高精度、實(shí)時性好的衛(wèi)星鐘差產(chǎn)品對于實(shí)現(xiàn)PPP顯得極為重要[1-3]。所以,如何去提高衛(wèi)星鐘差預(yù)報的精度和準(zhǔn)確度一直都是GNSS中一個熱點(diǎn)問題之一。
近些年來,國內(nèi)外許多學(xué)者對衛(wèi)星鐘差預(yù)報進(jìn)行了多角度和多方位的研究,提出了多種衛(wèi)星鐘差預(yù)報的方法。主要有:二次多項(xiàng)式模型(QPM)、灰色模型(GM (1,1))、卡爾曼濾波模型(KF)、自回歸模型(AR(p))、自回歸滑動平均模型(ARMA)、人工神經(jīng)網(wǎng)絡(luò)(ANN)模型、泛函網(wǎng)絡(luò)模型和支持向量機(jī)(SVM)模型等[4-15]。這些預(yù)報方法分別適用于不同情況下導(dǎo)航衛(wèi)星星載原子鐘鐘差的短期、中長期和長期的預(yù)報,但也均有各自的適用范圍和局限性。例如:灰色模型適合處理數(shù)據(jù)量少、樣本小、信息不全的不確定性問題,計算簡便,抗干擾能力強(qiáng)[16]。但是,研究者們在應(yīng)用灰色模型預(yù)報衛(wèi)星鐘差時,沒有考慮到灰色模型在建立模型預(yù)報衛(wèi)星鐘差時的模型殘差,致使灰色模型的預(yù)報精度不高。
本文針對灰色模型在預(yù)報衛(wèi)星鐘差時精度的不足,提出了應(yīng)用二次多項(xiàng)式模型去修正灰色模型建模殘差的衛(wèi)星鐘差預(yù)報算法。該算法首先采用灰色模型對衛(wèi)星鐘差進(jìn)行建模,在建模的過程中會產(chǎn)生模型殘差,然后對模型殘差應(yīng)用二次多項(xiàng)式模型進(jìn)行建模,之后再進(jìn)行預(yù)報。最后將灰色模型預(yù)報的結(jié)果與模型殘差預(yù)報的結(jié)果對應(yīng)相加即得到衛(wèi)星鐘差的最終預(yù)報值。同時,將該誤差修正后的灰色模型應(yīng)用到了衛(wèi)星鐘差預(yù)報之中,從預(yù)報試驗(yàn)結(jié)果的對比分析,驗(yàn)證了該修正方法的有效性和優(yōu)越性。
設(shè)有1組衛(wèi)星鐘差序列:X(0)={x(0)(1),x(0)(2),…,x(0)(n)},對這組衛(wèi)星鐘差序列進(jìn)行一次累加操作處理[17],生成1組新的數(shù)據(jù)序列X(1):
X(1)={x(1)(1),x(1)(2),…,x(1)(n)}
(1)
對生成的這組新的數(shù)據(jù)序列X(1)建立如下的一階微分方程模型:
(2)
式中:系數(shù)a稱為灰色模型的發(fā)展系數(shù);系數(shù)u稱為灰色模型的灰作用量。
對式(2)進(jìn)行離散化操作處理,可得到如下的矩陣方程:
(3)
根據(jù)最小二乘法可得到上式矩陣方程的最小二乘解為:
(4)
將式(4)代入式(2)得:
(5)
求解時間響應(yīng)函數(shù)式(5)的解為:
k=1,2,…,n-1
(6)
由于數(shù)據(jù)序列X(1)是衛(wèi)星鐘差序列X(0)的累加序列,所以衛(wèi)星鐘差序列X(0)的預(yù)報模型為:
(7)
式中:k=1,2,…,n-1。
更一般的形式為:
(8)
式中:j為參與建模的衛(wèi)星鐘差的個數(shù),j=1,2,…,n;p為預(yù)報的點(diǎn)數(shù),p=1,2,…,m。
結(jié)合式(3)和式(4)可知,灰色模型在建模的過程中會產(chǎn)生如下的模型殘差:
(9)
為了減小灰色模型的建模誤差,這里使用如下的方法對灰色模型的建模誤差進(jìn)行修正。對灰色模型的模型殘差e={e1,e2,…,en}建立如下的模型,然后進(jìn)行預(yù)報:
e=rt2+s
(10)
由最小二乘法可得如下的矩陣方程:
(11)
由式(10)和式(11),即可得到灰色模型的模型殘差的預(yù)報模型為:
(12)
結(jié)合式(8)和式(12),即可得到誤差修正后的灰色模型的最終預(yù)報模型為:
(13)
由以上預(yù)報模型即可對未來任意時刻的衛(wèi)星鐘差進(jìn)行預(yù)報。
為了驗(yàn)證本文算法的有效性和可行性,從國際IGS服務(wù)器(ftp://cddis.gsfc.nasa.gov)上下載了2018年5月6日00:00至2018年5月7日12:00共36 h的IGS事后精密衛(wèi)星鐘差產(chǎn)品進(jìn)行預(yù)報試驗(yàn),其采樣間隔為15 min,即1 h記錄4個歷元的衛(wèi)星鐘差。考慮到目前在軌的GPS衛(wèi)星有31顆,且有29顆衛(wèi)星搭載的是銣原子鐘,所以隨機(jī)選取了3顆搭載銣原子鐘衛(wèi)星的衛(wèi)星鐘差進(jìn)行預(yù)報試驗(yàn)。它們分別是PRN02、PRN22和PRN32號衛(wèi)星,截止2019年5月10日,它們的相關(guān)信息如表1所示。
表1 選擇的衛(wèi)星相關(guān)信息
本試驗(yàn)采用12 h的衛(wèi)星鐘差,即:2018年5月6日00∶00至5月6日12∶00,共計49個歷元分別去建立二次多項(xiàng)式模型(QPM)、灰色模型(GM(1,1))和誤差修正的灰色模型(修正GM(1,1))。然后用建立好的模型去預(yù)報未來6 h、12 h、18 h和24 h的衛(wèi)星鐘差,即預(yù)報歷元的步長為24、47、72和96個,將接下來6 h、12 h、18 h和24 h的實(shí)際觀測衛(wèi)星鐘差與各模型預(yù)報的衛(wèi)星鐘差相減就得到了預(yù)報誤差。因?yàn)閲HIGS服務(wù)器上發(fā)布的為事后衛(wèi)星鐘差產(chǎn)品,其自身誤差小于0.1 ns,所以,可以作為“真值”,使用均方根誤差(RMS)(其計算公式見式(14))和最大誤差與最小誤差之差的絕對值,即極差Range(其計算公式見式(15))作為評價預(yù)報結(jié)果的統(tǒng)計量,去檢驗(yàn)QPM、GM(1,1)和修正GM(1,1)模型所預(yù)報結(jié)果的好壞程度。其中RMS表征了預(yù)報結(jié)果的精度,Range表征了算法的穩(wěn)定性[18]。
(14)
(15)
圖1~圖3和表2分別給出了QPM、GM(1,1)和修正GM(1,1)模型預(yù)報誤差的變化情況和預(yù)報誤差的統(tǒng)計特性。
結(jié)合圖1~圖3和分析表2可知:
圖1 PRN02號衛(wèi)星6 h、12 h、18 h和24 h的預(yù)報誤差
圖2 PRN22號衛(wèi)星6 h、12 h、18 h和24 h的預(yù)報誤差
圖3 PRN32號衛(wèi)星6 h、12 h、18 h和24 h的預(yù)報誤差
(1) 在建立衛(wèi)星鐘差模型中,應(yīng)用二次多項(xiàng)式模型時,其預(yù)報誤差呈快速上升趨勢。對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小均方根誤差分別為0.38 ns、1.06 ns、2.21 ns和3.29 ns。應(yīng)用灰色模型時,其預(yù)報誤差也呈快速上升趨勢。對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小均方根誤差分別為0.28 ns、0.83 ns、1.78 ns和2.63 ns。而應(yīng)用誤差修正的灰色模型時,其預(yù)報誤差呈緩慢上升趨勢。對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小均方根誤差分別為0.20 ns、0.37 ns、0.56 ns和1.05 ns。從以上分析可以看出,誤差修正的灰色模型算法的預(yù)報精度比二次多項(xiàng)式模型和灰色模型的預(yù)報精度都要好。
(2) 在建立衛(wèi)星鐘差模型中,應(yīng)用二次多項(xiàng)式模型時,對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小極差分別為0.88 ns、2.42 ns、4.55 ns和6.59 ns。應(yīng)用灰色模型時,對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小極差分別為0.77 ns、1.60 ns、3.41 ns和4.50 ns。而應(yīng)用誤差修正的灰色模型時,對于PRN02、PRN22和PRN32號衛(wèi)星,預(yù)報未來6 h、12 h、18 h和24 h衛(wèi)星鐘差時,預(yù)報誤差的最小極差分別為0.34 ns、1.07 ns、1.37 ns和2.92 ns。從以上分析可以看出,誤差修正的灰色模型算法相比于二次多項(xiàng)式模型和灰色模型有更好的算法穩(wěn)定性。
表2 衛(wèi)星鐘差預(yù)報誤差統(tǒng)計結(jié)果 (單位:ns)
(3)應(yīng)用二次多項(xiàng)式模型時,預(yù)報未來6 h、12 h、18 h和24 h的衛(wèi)星鐘差時的平均均方根誤差分別為1.39 ns、2.61 ns、4.49 ns和6.61 ns,平均極差分別為2.11 ns、4.42 ns、8.50 ns和12.63 ns;應(yīng)用灰色模型時,預(yù)報未來6 h、12 h、18 h和24 h的衛(wèi)星鐘差時的平均均方根誤差分別為0.73 ns、1.25 ns、2.06 ns和2.88 ns,平均極差分別為1.32 ns、2.41 ns、3.99 ns和5.37 ns;而應(yīng)用誤差修正的灰色模型時,預(yù)報未來6 h、12 h、18 h和24 h的衛(wèi)星鐘差時的平均均方根誤差分別為0.23 ns、0.54 ns、1.12 ns和1.88 ns,平均極差分別為0.69 ns、1.57 ns、2.66 ns和4.40 ns,它相比于二次多項(xiàng)式模型的平均均方根誤差分別提高了83.50%、79.30%、75.10%和71.60%,平均極差分別提高了67.30%、64.50%、68.70%和65.20%;相比于灰色模型的平均均方根誤差分別提高了68.50%、56.80%、45.60%和34.70%,平均極差分別提高了47.70%、26.60%、33.30%和18.10%。
針對灰色模型在預(yù)報衛(wèi)星鐘差時精度的不足,本文提出了應(yīng)用二次多項(xiàng)式模型去修正灰色模型在建模過程中產(chǎn)生的模型殘差的衛(wèi)星鐘差預(yù)報算法。該算法首先采用灰色模型對衛(wèi)星鐘差進(jìn)行建模,在建模的過程中會產(chǎn)生模型殘差,然后對模型殘差應(yīng)用二次多項(xiàng)式模型進(jìn)行建模,之后再進(jìn)行預(yù)報。最后將灰色模型預(yù)報的結(jié)果與模型殘差預(yù)報的結(jié)果對應(yīng)相加,即得到了衛(wèi)星鐘差的最終預(yù)報值。這種模型殘差修正的方法把2種模型的預(yù)報優(yōu)勢有機(jī)地結(jié)合起來,從而提高了灰色模型的預(yù)報性能,進(jìn)一步提高了衛(wèi)星鐘差的預(yù)報精度。經(jīng)預(yù)報試驗(yàn)分析,結(jié)果也表明了該修正方法的有效性和可行性,并且具有較好的算法穩(wěn)定性,為衛(wèi)星鐘差預(yù)報研究在實(shí)際的應(yīng)用中提供了一種新的思路。