DOI QR코드

DOI QR Code

A Short-Term Prediction Method of the IGS RTS Clock Correction by using LSTM Network

  • Kim, Mingyu (School of Aerospace and Mechanical Engineering, Korea Aerospace University) ;
  • Kim, Jeongrae (School of Aerospace and Mechanical Engineering, Korea Aerospace University)
  • Received : 2019.10.25
  • Accepted : 2019.11.23
  • Published : 2019.12.15

Abstract

Precise point positioning (PPP) requires precise orbit and clock products. International GNSS service (IGS) real-time service (RTS) data can be used in real-time for PPP, but it may not be possible to receive these corrections for a short time due to internet or hardware failure. In addition, the time required for IGS to combine RTS data from each analysis center results in a delay of about 30 seconds for the RTS data. Short-term orbit prediction can be possible because it includes the rate of correction, but the clock correction only provides bias. Thus, a short-term prediction model is needed to preidict RTS clock corrections. In this paper, we used a long short-term memory (LSTM) network to predict RTS clock correction for three minutes. The prediction accuracy of the LSTM was compared with that of the polynomial model. After applying the predicted clock corrections to the broadcast ephemeris, we performed PPP and analyzed the positioning accuracy. The LSTM network predicted the clock correction within 2 cm error, and the PPP accuracy is almost the same as received RTS data.

Keywords

1. INTRODUCTION

In the field of aviation and transportation where precise positioning is required, it is necessary to estimate the positions using the global navigation satellite system (GNSS) by removing errors related to GNSS orbits, clocks, and signals. Typically, international GNSS service (IGS) ultra-rapid data or real-time service (RTS) correction data is used to correct GNSS orbit and clock errors in real-time. IGS ultra-rapid data includes precise orbit and clock data predicted over 24 hours, but the longer the prediction time, the lower the precision. RTS provides real-time orbit and clock data that can be applied to navigation messages over the internet (IGS 2019). However, in situations where RTS corrections cannot be received because of unstable hardware or internet environment, short-term prediction is needed due to the delay in combining data. Since orbit correction data includes information related to the rate of change, short-term predictions are possible. However, clock correction data only provides bias information, so prediction using the model is necessary.

A wide variety of studies have been performed on the prediction of RTS corrections in the past. Hadas & Bosy (2015) conducted a study on the prediction of short-term RTS clock correction data using polynomials. Nie et al. (2018) performed a study on prediction based on a harmonic function model using ultra-rapid data and RTS clock correction data. For long-term predictions, some studies combined artificial neural networks, genetic algorithms (GA), and auto-regressive moving-average (ARMA) models, but the clock predictions in those studies varied linearly (Kim & Kim 2015, 2017). Recently, multiple studies have been performed on predicting signals based on deep learning. Among them, the long short-term memory (LSTM) network is a model suitable for time series prediction, and is mainly used for short-term predictions of market prices (Nandakumar et al. 2018, Rundo et al. 2019) and also to predict words in speech (Shechtman & Mordechay 2018).

This study is about the predicting RTS clock corrections using a bidirectional LSTM (BiLSTM) network, a network that adds a reverse layer to the LSTM networks. After predicting the RTS clock for 3 minutes, we compared it with the accuracy with the polynomial model proposed by Hadas. After applying the predicted clock corrections to the broadcast ephemeris, we performed precise point positioning (PPP) and compared the positioning accuracy of polynomial model.

2. RTS CORRECTIONS AND POLYNOMIAL MODEL

2.1 RTS Corrections

IGS RTS corrections are provided in the form of radio technical commission for maritime services (RTCM) state space representation (SSR), and users can download them using the network transport of RTCM via Internet protocol (NTRIP) (Elsobeiey & Al-Harbi 2016). Nine analysis centers use the data from 220 permanent stations to generate RTS corrections, and IGS currently provides RTS corrections for each analysis center and combination solutions (Elsobeiey & Al-Harbi 2016). RTS corrections consist of satellite orbit, clock, and code bias, which are included in message types (MT) 1057, 1058, and 1059, respectively (RTCM 2013). The combined RTS data includes satellite orbit correction transmitted every 60 seconds and clock corrections transmitted every 10 seconds.

The orbit data includes the corrections and their rate of change in the radial, along-track, and cross-track directions. Clock data is transmitted in the form of quadratic polynomial coefficients. However, IGS03 data only provides bias values. When using the RTS corrections, you need to compare the issue of data (IOD) contained in the RTS message with the IOD of the GPS navigation message. This is because the IOD changes when GPS navigation message is updated, and the corrections are updated when the IOD changes.

2.2 Polynomial Model

The prediction method proposed by Hadas & Bosy (2015) applies a polynomial model to predict RTS data. It can only be applied to RTS data with the same IOD, so it cannot be used when the IOD changes. As shown in Eq. (1) below, a fifth-order polynomial model was used in this study because it had the smallest fitting error in paper by Hadas & Bosy (2015) and in our tests.

at = a0 + a1t + a2t2 + a3t3 + a4t4 + a5t5       (1)

where at is the clock correction at time t, and a0 to a5 are polynomial coefficients calculated from the RTS clock corrections.

3. LSTM NETWORK AND PREDICTION METHOD

3.1 LSTM Network

A LSTM network is a type of deep learning developed to address the long-term dependency problems that arise from the long-term learning of recurrent neural networks (RNN) (Hochreiter & Schmidhuber 1997). For RNNs, the gradient used to update the weights vanishes when learning long-term data. To solve this problem, as shown in Fig. 1, the LSTM network uses an input gate, forget gate, and output gate to control the cell state in the hidden state of the RNN. Each gate calculates the output of the gate by combining the current input with the previous network output, as shown in Eq. (2) (Cui et al. 2018).

HOHSB0_2019_v8n4_209_f0001.png 이미지

Fig. 1. LSTM network architecture.

\(f_{t}=\bar{f}\left(W_{x} x_{t}+W_{h} h_{t-1}+b\right)\)       (2)

where Wx and Wh are the weights for the current input xt and previous output ht-1, b is the gate bias, and f̄ is the activation function. As shown in Fig. 1, sigmoid functions are mainly used as the activation function of the forget gate. If the function value is 0, the previous cell state is forgotten; if the value is 1, the previous cell state is propagated forward.

The input gate propagates the current input and the past cell state to two terminals as shown in Fig. 1. The current cell state ct is a linear combination of the output of the forget gate multiplied by the past cell state and the output of the current input gate, as shown in Eq. (3) (Cui et al. 2018).

ct = ft*ct-1 + it*gt       (3)

where it and gt are the outputs of the input gate calculated by the sigmoid function and the hyperbolic tangent function, respectively. As shown in Eq. (4), the final state of the network is calculated by combining the output of the output gate, which is combined with the weight of the output gate, the current input, and the past cell state, as in Eq. (2), with the current cell state.

ht = ot * tanh(ct)       (4)

The BiLSTM network, a network that adds a reverse forward propagation layer to the LSTM network, calculates the output of the network by combining the output state from the forward propagation layer and the output state from the backward propagation layer. The structure of BiLSTM is shown in Fig. 2, and adding the backward propagation layer improves the prediction performance for classification problems as well as time series prediction problems (Graves & Schmidhuber 2005, Cui et al. 2018).

HOHSB0_2019_v8n4_209_f0002.png 이미지

Fig. 2. Unfolded architecture of BiLSTM network.

3.2 LSTM Network Based Prediction Method

Time series data or a sequence of time series data is used as the input for the BiLSTM network. As shown in Fig. 3, this study configured the clock corrections received every two hours as one sequence. This means that a set of clock corrections with the same IOD is composed as one sequence. Normalization was performed for each sequence. We used the correction data received from the day before the prediction to the moment before updating the state for training, and the correction data received from updating the state to just before the prediction was used to update the time and the input/output state of the BiLSTM network. By updating the state, we can reflect the discontinuities caused by the last IOD change in the prediction period. When discontinuities occur in the prediction section, we can conduct the prediction by adding the difference between clock data of the received GPS broadcast ephemeris and the RTS clock correction to the prediction value. 

HOHSB0_2019_v8n4_209_f0003.png 이미지

Fig. 3. RTS clock corrections for LSTM training, state update, and prediction (PRN 25, February 3-4, 2017).

In terms of time series prediction, we can predict using the predicted value as the input for the next epoch, but the longer the prediction period, the more errors accumulate and result in larger errors. In this study, the BiLSTM model used the 18-step ahead prediction method, which predicts the correction value of the current epoch by using the clock correction received 3 minutes ago. Although this method uses more historical data as input, it is a stable way to make predictions without accumulating errors due to using actual measurements. Also, our test result showed that using more than 18 steps resulted in linear variations in the predicted corrections. The input x of the BiLSTM network consists of corrections received 3 minutes before output y. Eqs. (5) and (6) show one input/output sequence of the BiLSTM network. 

x = {a1, a2, ···, an-18}       (5)

y = {a19, a20, ···, an}       (6)

where n is the total number of clock correction data in a sequence. The BiLSTM model was trained using the Adam algorithm, which is commonly used to optimize non-stationary time series data. Through the network optimization process, we set the learning rate to 0.001, the maximum iteration to 200, and the size of the minibatch to 1.

4. RESULTS

4.1 Prediction Result of RTS Clock Corrections

In this study, we predicted the clock corrections for 6 days using IGS03 data received from February 3-9, 2017. IGS03 is the RTS corrections combined by IGS, and it is suitable for the prediction method proposed in this paper because the latency is longer than the RTS corrections provided by each analysis center. IGS03 is also less volatile than the clock information of IGC01. Fig. 4 shows the results of predicting the clock corrections of PRN 25 satellites. The BiLSTM model shows similar results to the changes in the corrections that are actually received even with corrections received 3 minutes ago, while the polynomial model shows a significant difference. The predictions of the optimized polynomial were in the opposite direction to the actual variations because the rate of change of the corrections appeared to be reversed before and after the point of prediction. The differences increased significantly over time because the random walk in the RTS clock corrections is difficult to model with a fifth-order polynomial (Hadas & Bosy 2015).

HOHSB0_2019_v8n4_209_f0004.png 이미지

Fig. 4. RTS clock corrections and prediction results for each model.

Fig. 5 shows the prediction errors for all satellites. The BiLSTM model made predictions less than 5 cm for all of the satellites. Both models produced large errors in terms of PRN 8 and 24 satellites because of the unstable cesium atomic clocks, thus resulting in larger changes in the corrections compared to other satellites (Nie et al. 2018). As a result of calculating the prediction errors for each type of satellite, excluding PRN 24 which had the largest error, the difference between the predicted RMS errors of Block-IIR and IIF satellites was only 0.004 m.

HOHSB0_2019_v8n4_209_f0005.png 이미지

Fig. 5. RTS clock prediction RMS errors for each satellite and model.

4.2 Result of Precise Point Positioning

After applying the clock corrections predicted by each model to the GPS navigation message, we performed PPP using gLAB. gLAB was developed by the technical university of Catalonia (UPC) and is widely used to analyze GNSS orbit accuracy and estimate positions. We used observation data received from the National Institute of Standards and Technology (NIST) stations because of its excellent clock stability and less influence from multipath. We used navigation messages received from NIST stations instead of BRDC (combined broadcast ephemeris) because the IOD at the transmission time was important when applying RTS corrections. We also used dual-frequency to eliminate the ionospheric error, limited the GPS elevation angle to 10° or higher, and performed wind-up and tidal corrections. After applying the received RTS orbit corrections to the GPS broadcast ephemeris, we estimated the position epoch by epoch.

Fig. 6 shows the horizontal position errors of each model after performing PPP, and Fig. 7 presents the vertical position errors. The polynomial model produced the largest horizontal and vertical position errors at the last point because the prediction errors increase according to the prediction period. The predictions were more affected in the vertical direction than in the horizontal direction because the clock corrections were in the same direction as the signal flight path. The BiLSTM model maintained an accuracy within 0.1 m, as in the case of RTS, but the polynomial model produced vertical errors up to 0.18 m. Since the large errors of the polynomial model in the prediction period affect tropospheric delay and integer ambiguity resolution, the errors were greater than RTS even after the prediction period.

HOHSB0_2019_v8n4_209_f0006.png 이미지

Fig. 6. Horizontal positioning error for each model.

HOHSB0_2019_v8n4_209_f0007.png 이미지

Fig. 7. Vertical positioning error for each model.

Table 1 summarizes the results of calculating the position error statistics for each model for six days. The BiLSTM model showed a difference of less than 5 mm compared to RTS, with 59% and 67% smaller horizontal and vertical position errors than the polynomial model, respectively. As seen from Fig. 7, the polynomial model showed the largest errors in the last section of prediction. The BiLSTM model was able to maintain PPP performance similar to RTS even with corrections received 3 minutes ago.

Table 1. PPP error statistics in prediction interval for each model (unit: m).

  RTS BiLSTM Polynomial
Horizontal mean
Horizontal STD
Vertical mean
Vertical STD
0.056
0.009
0.028
0.010
0.058
0.024
0.033
0.022
0.141
0.072
0.099
0.047

 

5. CONCLUSIONS

RTS correction provided by IGS is used for real-time precise point positioning, but it may not be possible to receive this correction for a short time due to the Internet environment or hardware problems. Also, due to the time required to combine the data in the IGS, there may be a difference between the time the correction is sent and the current time. Short-term orbit predictions may be possible because the orbit correction data includes information related to the rate of change, but the clock correction data only provides a bias value, so a model for prediction is needed.

In this study, we predicted a clock correction of IGS03 every three minutes for six days. When using BiLSTM network, the prediction showed 0.02 m accuracy. The polynomial model produced large prediction errors due to random walk of the RTS clock corrections. PPP was performed after applying the clock corrections predicted by the BiLSTM model to the broadcast ephemeris, and the average difference with the PPP accuracy of RTS was within 5 mm. Even if the RTS clock data cannot be received for a short time, the RTS clock correction can be predicted based on the BiLSTM model to achieve an accuracy similar to the RTS.

ACKNOWLEDGMENTS

This research was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (NRF-2019R1F1A1062605).

AUTHOR CONTRIBUTIONS

Conceptualization, J. Kim; methodology, J. Kim; software, M. Kim; validation, M. Kim and J. Kim; formal analysis, M. Kim and J. Kim; investigation, M. Kim and J. Kim; resources, J. Kim; data curation, M. Kim and J. Kim; writing—original draft preparation, M. Kim; writing—review and editing, J. Kim; visualization, M. Kim; supervision, J. Kim; project administration, J. Kim; funding acquisition, J. Kim.

CONFLICTS OF INTEREST

The authors declare no conflict of interest.

References

  1. Cui, Z., Ke, R., & Wang, Y. 2018, Deep stacked bidirectional and unidirectional LSTM recurrent neural network for network-wide traffic speed prediction, in 7th International Workshop on Urban Computing, London, 20 Aug 2018.
  2. Elsobeiey, M. & Al-Harbi, S. 2016, Performance of real-time precise point positioning using IGS real-time service, GPS Solutions, 20, 565-571. https://doi.org/10.1007/s10291-015-0467-z
  3. Graves A. & Schmidhuber, J. 2005, Framewise phoneme classification with bidirectional LSTM and other neural network architectures, Neural Networks, 18, 602-610. https://doi.org/10.1016/j.neunet.2005.06.042
  4. Hadas, T. & Bosy, J. 2015, IGS RTS precise orbits and clocks verification and quality degradation over time, GPS Solutions, 19, 93-105. https://doi.org/10.1007/s10291-014-0369-5
  5. Hochreiter, S. & Schmidhuber, J. 1997, Long Short-Term Memory, Neural Computation, 9, 1735-1780. https://doi.org/10.1162/neco.1997.9.8.1735
  6. IGS, Real-time service information [Internet], cited 2019, available from: http://igs.org/rts/products
  7. Kim, M. & Kim, J. 2015, Predicting IGS RTS corrections using ARMA neural networks, Mathematical Problems in Engineering, 2015, 1-11. https://doi.org/10.1155/2015/851761
  8. Kim, M. & Kim, J. 2017, GA-ARMA model for predicting IGS RTS corrections, International Journal of Aerospace Engineering, 2017, 1-7. https://doi.org/10.1155/2017/6316590
  9. Nandakumar, R., Uttamraj, K. R., Vishal, R., & Lokeswari, Y. V. 2018, Stock price prediction using long short term memory, International Research Journal of Engineering and Technology, 5, 3342-3348.
  10. Nie, Z., Gao, Y., Wang, Z., Ji, S., & Yang, H. 2018, An approach to GPS clock prediction for real-time PPP during outages of RTS stream, GPS Solutions, 22, 1-14. https://doi.org/10.1007/s10291-017-0681-y
  11. RTCM 2013, RTCM standard 10403.2 differential GNSS (global navigation satellite systems) services - version 3, RTCM Special Committee 104, Arlington, Va.
  12. Rundo, F., Trenta, F., Di Stallo, A. L., & Battiato, S. 2019, Advanced markov-based machine learning framework for making adaptive trading system, Computation, 7, 1-20. https://doi.org/10.3390/computation7010004
  13. Shechtman, S. & Mordechay, M. 2018, Emphatic speech prosody prediction with deep LSTM networks, in 2018 IEEE International Conference on Acoustic, Speech and Signal Processing, Calgary, AB, Canada, 15-20 Apr 2018. https://doi.org/10.1109/ICASSP.2018.8462473