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