王 潤 王井利 呂 棟
1 沈陽建筑大學(xué)交通工程學(xué)院,沈陽市渾南中路25號,110168 2 山東科技大學(xué)測繪與空間信息學(xué)院,青島市前灣港路579號,266590
衛(wèi)星鐘差(satellite clock bias,SCB)預(yù)報是衛(wèi)星導(dǎo)航定位系統(tǒng)中一項極其重要的工作[1],可靠程度高的鐘差預(yù)報結(jié)果有利于提高精密單點定位(PPP)的精度[2]。地面基于衛(wèi)星精密星歷所預(yù)報的鐘差也可作為衛(wèi)星導(dǎo)航所需要的先驗信息[3]。衛(wèi)星鐘差的高精度預(yù)報已成為精密導(dǎo)航定位中一項關(guān)鍵技術(shù)[4],盡管IGS已發(fā)布了軌道精度達(dá)到cm級的實時精密軌道產(chǎn)品,但由于其鐘差的外推精度不足,該產(chǎn)品無法應(yīng)用于實時精密導(dǎo)航定位;另外IGS還發(fā)布了實時精密鐘差,其精度可達(dá)0.1 ns,但傳輸穩(wěn)定性較差[5]。研究表明,白噪聲調(diào)相、白噪聲調(diào)頻、閃變噪聲調(diào)相、閃變噪聲調(diào)頻及隨機(jī)游走調(diào)頻等5種噪聲會嚴(yán)重影響衛(wèi)星原子鐘的穩(wěn)定性,導(dǎo)致頻標(biāo)的頻率發(fā)生隨機(jī)變化,使得衛(wèi)星鐘差預(yù)報難以達(dá)到較高精度[6-7]。為得到高精度的衛(wèi)星預(yù)報鐘差,國內(nèi)外學(xué)者進(jìn)行了大量研究,針對衛(wèi)星鐘差的特點提出一系列鐘差預(yù)報模型,其中常用的鐘差預(yù)報模型包括二次多項式(QP)模型、附有周期項的二次多項式模型(SA)、灰色系統(tǒng)(GM(1,1))模型和人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)模型等[8-14]。
衛(wèi)星鐘差數(shù)據(jù)變化復(fù)雜,難以采用嚴(yán)密的數(shù)學(xué)表達(dá)式進(jìn)行表示,而Elman神經(jīng)網(wǎng)絡(luò)是一種擁有局部記憶單元和局部反饋連接的遞歸神經(jīng)網(wǎng)絡(luò),具備強(qiáng)大的計算能力,可以動態(tài)映射任意非線性時間序列[15],同時擁有動態(tài)反饋能力,能有效降低鐘差預(yù)報過程中出現(xiàn)的誤差累積效應(yīng)。本文以IGS 提供的30 s采樣率的精密鐘差序列作為原始數(shù)據(jù),對其進(jìn)行一次差處理并建模,分別采用Elman模型、二次多項式模型、附有周期項的二次多項式模型和灰色模型進(jìn)行衛(wèi)星鐘差預(yù)報,并對比分析各模型對各類原子鐘預(yù)報不同時長的精度及穩(wěn)定性,以驗證Elman模型的可行性。
用于衛(wèi)星鐘差預(yù)報的二次多項式模型的觀測方程[11]為:
xi=a0+a1(ti-t0)+a2(ti-t0)2+ε
(1)
式中,xi為ti時刻的衛(wèi)星鐘差,ti(i=1,2,…,n)為歷元時刻,t0為衛(wèi)星鐘參考時刻,a0、a1和a2分別為參考時刻t0的相位、鐘速及鐘漂,ε為頻率隨機(jī)誤差。
SA模型是在二次多項式模型的基礎(chǔ)上附加考慮周期項的鐘差預(yù)報模型[2],其表達(dá)式為:
xi=a0+a1(ti-t0)+a2(ti-t0)2+
(2)
式中,a0、a1、a2和ε所代表的含義與式(1)相同,p為主要周期函數(shù)的個數(shù),Ak、fk、φk分別為對應(yīng)周期項的振幅、頻率和相位。
與二次多項式模型相同,利用最小二乘原理求得參數(shù)最或然值,再代入式(2)即可求得預(yù)報歷元的鐘差。附加周期項的二次多項式模型雖然考慮了鐘差周期性變化的影響,提高了短期鐘差預(yù)報的精度,但該模型同樣受多項式模型主體的影響,隨著預(yù)報時間的增加,預(yù)報精度逐漸降低。
灰色系統(tǒng)模型[12]表達(dá)式為:
(3)
式中,k=1,2,…,n;a和u為常量參數(shù),分別為發(fā)展系數(shù)和灰色作用量。
Elman神經(jīng)網(wǎng)絡(luò)通過在傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中增加一個承接層,以接收反饋信號和連接記憶上一時刻隱含層的輸出狀態(tài),并與該時刻的網(wǎng)絡(luò)輸入共同作為隱含層的輸入,從而使網(wǎng)絡(luò)訓(xùn)練具備局部反饋和動態(tài)記憶的特性[16]。這種方式使Elman神經(jīng)網(wǎng)絡(luò)表現(xiàn)出較強(qiáng)的記憶性和時序性,在關(guān)于時間序列的問題上具有較好的適配度[17]。Elman神經(jīng)網(wǎng)絡(luò)由輸入層、隱含層、承接層和輸出層構(gòu)成,具體如圖1所示。
圖1 Elman神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Elman neural network structure
Elman神經(jīng)網(wǎng)絡(luò)通過輸入層神經(jīng)元傳輸信號,同時隱含層神經(jīng)元采用Sigmoid函數(shù)作為激勵函數(shù),通過輸出層神經(jīng)元起到線性加權(quán)的作用,其表達(dá)式為:
x(k)=f(w1*xc(k)+w2*u(k-1))
(4)
xc(k)=x(k-1)
(5)
yk=g(w3*x(k))
(6)
式中,yk為m維輸出層節(jié)點向量,x(k)為n維隱含層節(jié)點向量,u為r維輸入層節(jié)點向量,xc為n維反饋狀態(tài)向量,w1為承接層到隱含層的連接權(quán)值,w2為輸入層到隱含層的連接權(quán)值,w3為隱含層到輸出層的連接權(quán)值,g(*)為輸出神經(jīng)元的傳遞函數(shù),f(*)為隱含層神經(jīng)元的傳遞函數(shù)。
Elman神經(jīng)網(wǎng)絡(luò)的連接權(quán)值可采用附加動量的梯度下降反向傳播算法進(jìn)行修正,同時將誤差平方和函數(shù)作為學(xué)習(xí)指標(biāo),其表達(dá)式為:
(7)
采用Elman神經(jīng)網(wǎng)絡(luò)模型預(yù)報鐘差,其關(guān)鍵在于針對衛(wèi)星鐘差的特點選擇最佳的網(wǎng)絡(luò)結(jié)構(gòu)。目前,神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中每層神經(jīng)元數(shù)量的確定并無明確規(guī)范,因此需要根據(jù)實際情況來確定[18]。研究表明,輸出層神經(jīng)元的個數(shù)通常與需要輸出的數(shù)據(jù)類型的個數(shù)相同[19],此處輸出的數(shù)據(jù)類型只有1種,因此輸出層神經(jīng)元個數(shù)為1。
Elman神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元個數(shù)的確定對模型預(yù)報的精度極為關(guān)鍵,如果隱含層的神經(jīng)元個數(shù)較多,則網(wǎng)絡(luò)的結(jié)構(gòu)會更加穩(wěn)定,映射非線性函數(shù)的能力也將加強(qiáng),但會降低網(wǎng)絡(luò)訓(xùn)練的收斂速度;如果隱含層神經(jīng)元個數(shù)較少,網(wǎng)絡(luò)結(jié)構(gòu)則會過于簡單,計算時間減少,但會導(dǎo)致模型預(yù)報能力不足,預(yù)報精度也會大大降低。因此需要在保證模型預(yù)報能力的前提下,選擇合適的隱含層神經(jīng)元數(shù)量。
為得到最佳的網(wǎng)絡(luò)結(jié)構(gòu),本文選擇GPS week 20 100(2018-07-15)數(shù)據(jù)進(jìn)行建模,選擇不同個數(shù)的隱含層神經(jīng)元預(yù)報其后1 d的鐘差。圖2為隱含層神經(jīng)元個數(shù)為3~11時鐘差預(yù)報結(jié)果的RMS變化情況。
圖2 隱含層神經(jīng)元變化時鐘差預(yù)報結(jié)果的RMS變化情況Fig.2 RMS of clock bias prediction result when hidden layer neuron changes
從圖2可以看出,隱含層神經(jīng)元個數(shù)為5時,鐘差預(yù)報結(jié)果的RMS最小。隨著神經(jīng)元個數(shù)的增加,RMS存在一定波動,但達(dá)不到最小值。當(dāng)神經(jīng)元個數(shù)為3時,其RMS也較小,而此時的預(yù)報結(jié)果也能達(dá)到要求。由此說明,神經(jīng)元個數(shù)的選擇受人為經(jīng)驗影響,本文選擇神經(jīng)元個數(shù)為5,即為最優(yōu)的網(wǎng)絡(luò)結(jié)構(gòu)。
研究表明,衛(wèi)星鐘差數(shù)據(jù)不可避免會含有誤差,而使用一次差分?jǐn)?shù)據(jù)進(jìn)行鐘差預(yù)報可減小誤差的影響,從而提高預(yù)報精度[20]。但常用的預(yù)報模型采用一次差分處理后的數(shù)據(jù)進(jìn)行預(yù)報會使精度不穩(wěn)定,而GM(1,1)模型在預(yù)報鐘差時已經(jīng)對數(shù)據(jù)進(jìn)行自減和自增,再進(jìn)行一次差處理會導(dǎo)致模型的預(yù)報性能無法定性[21]。因此,本文利用Elman預(yù)報模型一次差分處理后的新樣本數(shù)據(jù)進(jìn)行衛(wèi)星鐘差預(yù)報,而常用模型不進(jìn)行一次差分處理。在預(yù)報過程中得到一部分預(yù)測值后,需要通過移動窗口法得到連續(xù)的預(yù)測值,最后將所有的一階差分預(yù)測值恢復(fù)成鐘差預(yù)測值。
為驗證本文提出的預(yù)報模型的可行性,使用IGS提供的30 s采樣率的精密鐘差序列,從不同建模數(shù)據(jù)量和預(yù)報時長的角度,采用4種模型對GPS衛(wèi)星進(jìn)行1 d、7 d、30 d的鐘差預(yù)報實驗。本文實驗以GPS week 20 100~20 142(2018-07-15~08-14)共31 d的數(shù)據(jù)為例,考慮到不同類型的星載原子鐘(包括Block IIR銣鐘、Block IIR-M銣鐘、Block IIF銫鐘和Block IIF銣鐘)可能會對預(yù)報效果產(chǎn)生影響,故隨機(jī)選取各類原子鐘的其中1顆衛(wèi)星進(jìn)行實驗,本文實驗所選衛(wèi)星為PRN08、PRN12、PRN22和PRN26。在預(yù)報實驗中,采用均方根誤差(RMS)和極差(最大誤差與最小誤差之差,記為Range)作為統(tǒng)計指標(biāo),并以對應(yīng)的IGS精密鐘差數(shù)據(jù)作為真值進(jìn)行預(yù)報效果分析[22]。RMS計算公式為:
(8)
為分析Elman模型的預(yù)報效果,分別采用QP模型、SA模型、GM(1,1)模型和Elman模型(網(wǎng)絡(luò)結(jié)構(gòu)為1-5-1-1)對GPS week 20 100數(shù)據(jù)進(jìn)行建模,預(yù)報其后1 d、7 d、30 d的鐘差,分別對應(yīng)短期、中期、長期鐘差預(yù)報。以PRN26為例,圖3為不同模型不同預(yù)報時長的鐘差預(yù)報誤差,表1~3為各衛(wèi)星鐘差預(yù)報的結(jié)果統(tǒng)計。
圖3 鐘差預(yù)報誤差Fig.3 Clock bias prediction error
從圖3可以看出,在進(jìn)行短期、中期和長期鐘差預(yù)報時,Elman模型的預(yù)報誤差曲線均保持在0值附近,而其他常用模型的誤差曲線呈現(xiàn)隨時間不斷遞增的趨勢,說明Elman模型在一定程度上可抑制因預(yù)報時間增長導(dǎo)致誤差不斷累積的問題,表明該模型的預(yù)報效果優(yōu)于其他常用模型。
從表1(單位ns)可以看出,在衛(wèi)星鐘差短期預(yù)報實驗中,PRN12和PRN08的預(yù)報精度為ns級,PRN22和PRN26的預(yù)報精度為亞ns級。其中,PRN12工作時間較長,衛(wèi)星鐘性能下降導(dǎo)致預(yù)報精度稍低,而PRN08的衛(wèi)星鐘為銫鐘,精度相對較低。對比各模型對同一衛(wèi)星的預(yù)報精度發(fā)現(xiàn),無論是星載銣鐘還是星載銫鐘,Elman模型的預(yù)報精度和穩(wěn)定性均明顯優(yōu)于3種常用模型。以PRN26的預(yù)報效果為例,其預(yù)報精度分別提高89.1%、88.8%和89.8%,穩(wěn)定性分別提高67.0%、68.0%和69.6%。因此,在短期鐘差預(yù)報中,Elman模型的鐘差預(yù)報效果優(yōu)于3種常用模型。
表1 1 d鐘差預(yù)報結(jié)果統(tǒng)計
從表2和3(單位ns)可以看出,隨著預(yù)報時長的增加,各模型進(jìn)行中長期鐘差預(yù)報的精度和穩(wěn)定性均迅速降低。在進(jìn)行中期鐘差預(yù)報時,以PRN26的預(yù)報效果為例,Elman模型的預(yù)報精度比3種常用模型分別提升96.8%、91.3%和91.8%,其穩(wěn)定性也有一定提升。
表2 7 d鐘差預(yù)報結(jié)果統(tǒng)計
表3 30 d鐘差預(yù)報結(jié)果統(tǒng)計
在進(jìn)行長期鐘差預(yù)報時發(fā)現(xiàn),PRN08存在多天數(shù)據(jù)缺失的現(xiàn)象,因此只選用PRN12、PRN22和PRN26這3顆衛(wèi)星參與30 d的鐘差預(yù)報實驗。其中,Elman模型的預(yù)報精度在600 ns以內(nèi),其余3種模型的預(yù)報精度基本都超過600 ns,部分甚至超過1 000 ns,無法滿足精密定位的需求。以PRN26的預(yù)報效果為例,Elman模型的預(yù)報精度比3種常用模型分別提升93.8%、84.9%和85.9%,其預(yù)報穩(wěn)定性也高出其余模型1個數(shù)量級??傮w來說,Elman模型的預(yù)報精度和穩(wěn)定性明顯優(yōu)于3種常用模型。
為提高衛(wèi)星鐘差預(yù)報的精度和穩(wěn)定性,本文提出基于Elman神經(jīng)網(wǎng)絡(luò)的鐘差預(yù)報模型,并通過短期、中期和長期預(yù)報實驗,得到4種模型不同預(yù)報時長的預(yù)報結(jié)果。在對鐘差預(yù)報結(jié)果進(jìn)行對比分析后,得出以下結(jié)論:
1)在衛(wèi)星鐘差短期預(yù)報中,無論是星載銫鐘還是星載銣鐘,4種模型的鐘差預(yù)報精度均能達(dá)到ns級,而使用Elman模型預(yù)報鐘差時,部分衛(wèi)星的預(yù)報精度甚至可達(dá)到亞ns級,其鐘差預(yù)報穩(wěn)定性也有較大提升。
2)隨著預(yù)報時長的增加,各類模型進(jìn)行衛(wèi)星鐘差中長期預(yù)報的誤差不斷累積,導(dǎo)致各模型預(yù)報鐘差的精度和穩(wěn)定性迅速降低。但與3種常用模型相比,Elman模型的預(yù)報精度和穩(wěn)定性仍有明顯提升。
本文提出的Elman模型較3種常用鐘差預(yù)報模型具有更高的預(yù)報精度,表明Elman神經(jīng)網(wǎng)絡(luò)在衛(wèi)星鐘差預(yù)報中具有可行性。