1. Introduction
Spacecraft tracking is usually performed through ground-based tracking systems such as radar or optical station networks. The complexity introduced by these devices can be tackled by implementing autonomous navigation modules onboard spacecraft. This step is particularly crucial for small satellite missions, which generally have limited computational and power consumption resources available. An onboard GPS module is a common solution; however, it relies on the quality and the availability of the GPS signal for the accuracy of position and velocity estimates, thus making the satellite not completely autonomous. Furthermore, commercial GPS modules are subject to several limitations, such as military and/or government restrictions, intentional performance degradation, signal occlusion by the Earth during the initial acquisition phase, unwanted Doppler shifts, or component degradation [
1].
For this reason, the use of data coming from sensors already available onboard, like magnetometers and/or Sun sensors, is attracting a lot of research effort [
1,
2,
3,
4]. Magnetometers, in particular, are low-cost sensors which can be exploited by Kalman Filters (KFs) [
5,
6,
7] to perform autonomous orbit determination. This approach yields errors with accuracies ranging from hundreds of kilometers to sub-kilometers from the spacecraft’s position. The goodness of these estimates mainly depends on the accuracy of the magnetic field model used [
8,
9,
10]. These results indicate that Kalman Filtering is a solid baseline for autonomous orbit determination, but the state estimation provided is still not reliable enough to be used in the absence of GPS signals. Following the recent exploit of Machine Learning (ML), many studies have been carried out to integrate Kalman Filtering with Artifical Intelligence (AI) frameworks, in particular by using Neural Networks (NNs). The reference [
11] presents a detailed overview of ML-KF applications, paying particular attention to the different roles played by ML. Such roles include the following:
Tuning and predicting KF parameters, such as error covariances;
Predicting and compensating KF errors;
Predicting and updating the state vector and/or measurements;
Predicting pseudo-measurements to be fed to the KF.
In general, an hybrid approach shows better results than the application of standalone ML frameworks or Kalman Filtering. When dealing with non-linear dynamics or non-Gaussian noises, ML models provide a better outcome than Kalman Filtering which, in turn, offers better interpretability with respect to end-to-end ML approaches. For most architectures, in fact, the intermediate relations between the features are unknown and the ML module acts as a “black box” between the input and the output of the process. In this work, the solidity and reliability of the Extended Kalman Filter (EKF) [
12,
13] is combined with a Neural Network trained via the Extreme Learning Machine [
14,
15] to further increase the accuracy of the state estimate. In particular, the algorithm collects GPS data as long as the GPS signal is available, while a magnetometer-based EKF provides a second, less accurate, state estimate. The error of the EKF estimate with respect to the GPS one is computed. When the GPS is no longer available, the Neural Network is trained using the EKF estimates as input values and the errors, with respect to the GPS, as target values.
This work also represents a feasibility study of improved autonomous magnetometer-based navigation during spacecraft’s safe mode when the GPS signal is unavailable due to safety reasons, system anomalies, a lack of communication, or hardware/software failures. In many situations, safe-mode navigation is performed via coarse orbit propagation from some initial conditions provided to the spacecraft by the ground station. This operation can be particularly demanding, especially when dealing with constellations of small satellites. Furthermore, communication with the ground station might be impossible under the given circumstances. On the contrary, sensor-based approaches such as the one described in this work do not require ground intervention. In particular, this approach represents an improvement over traditional EKF-based navigation using magnetometer data.
To meet onboard requirements such as limited power consumption and computational effort, the EKF employs an onboard IGRF magnetic field model to derive the state estimates, and it is aided by a Neural Network to overcome the model discrepancies with respect to the CHAOS-7 magnetic field. The overall process represents an accurate and lighter alternative to the direct implementation of the CHAOS-7 model in the EKF and a backup solution for the navigation of small satellites during GPS outages.
The algorithm was trained and tested on a simulated Sun-synchronous orbit considering J2, J3, third-body, and atmospheric-drag perturbations. The geomagnetic model used to provide the measurements was the CHAOS-7 magnetic field model [
16], while the filter implemented a spherical harmonics expansion using the 13th-Generation International Geomagnetic Reference Field (IGRF) coefficients up to the 13th order [
17]. This manuscript is organized as follows.
Section 2 describes the main frameworks used in this work;
Section 3 explains the parameter optimization process;
Section 4 describes the dataset generation; and
Section 5 presents the obtained results. Conclusions and future works on this topic are presented in
Section 7 at the end of the manuscript.
5. Results
The algorithm was tested on the following scenario, assuming knowledge of the satellite’s attitude. This assumption was made to simulate the best possible performance of the EKF to further emphasize the improvement brought by the SLFN application. For six days, GPS data were available to the spacecraft as well as the state estimates provided by the magnetometer-based EKF. The first day of measurements was excluded from the training data in order to avoid data contamination due to the initial transitory phase of the EKF. The errors of each state estimate with respect to the state provided by the GPS-based EKF were sequentially computed and stored as training targets. After six days, the GPS was no longer available, the SLFN was trained using the stored data, and its prediction was used to perform orbit determination for the following 51 days of the run. The prediction scheme of the algorithm is shown in
Figure 6.
The test was performed on the following hardware:
Table 5 shows the comparison between the ELM-trained SLFN and the EKF in terms of the state RSSE and standard deviation. The training phase was carried out from the second to the sixth day, while the prediction phase went from the seventh days onwards. The error was computed with respect to the true propagated orbit. The prediction of the SLFN reduced the errors in the state estimate by a factor of 2.39 for the position and 2.36 for the velocity, with the respective mean RSSE decreasing from 16.51 km to 6.90 km and from
km/s to
km/s. Moreover, the sparseness of the RSSE was reduced by a factor of 2.06 for the position and 1.71 for the velocity.
Figure 7 shows the state RSSE over time. While the SLFN yielded a better state estimate than the EKF on average, the predictive capacity of the network started to decrease with time and could eventually lead to a divergence in the prediction. This was due to the fact that the SLFN was trained on an extremely small percentage of data and, in the long run, it struggled to handle never-seen-before data points given by the pseudo-periodic behavior of the orbit. This pseudo-periodic feature could also be seen in the RSSE as it showed a periodic trend itself, due to the difference between the real and simplified magnetic field models. A greater error in the state estimate corresponded to a region in which the discrepancy between the two models was deeper. An extended simulation of 120 days was carried out in order to study the behavior of the SLFN’s mean RSSE over time.
Figure 8 shows the mean RSSE for both algorithms computed over each day of the simulation. While the position error clearly diverges, the velocity error stabilizes after approximately 100 days. Nonetheless, looking at the figure, it can be seen that the SLFN errors are inside the range determined by the EKF errors. Therefore, the SLFN approach yielded better or comparable results for up to 120 days. After this period, the SLFN did not represent an improvement over the EKF.
7. Conclusions and Future Works
This work proposes an algorithm combining a magnetometer-based EKF with an ELM-trained SLFN to improve the accuracy of the EKF state estimate during GPS outages. A GPS-based EKF is used to provide ground truth values for the SLFN when GPS data are available, while the magnetometer-based EKF state estimate is used as the input of the SLFN. During GPS outages, the output of the SLFN is used to perform navigation. Magnetometer measurements are simulated using the CHAOS-7 geomagnetic field model. The SLFN was trained on GPS data with a five day-long availability window and tested on the following 51 days of GPS absence. Results for a simulated Sun-synchronous orbit showed an improvement of a factor of 2.4 in the spacecraft’s state estimate after the application of the SLFN, with the mean RSSE error decreasing from 16.51 km to 6.90 km for the position and from
km/s to
km/s for the velocity. Future steps in this direction involve the feasibility study of a direct onboard application of the presented algorithm. The main aspect to be considered is the memory required to store the training data that can exceed the capabilities small satellites. For this purpose, many subsequent trainings with small batches of data can be performed instead of a single, more demanding tuning of the output weights at the end of the GPS availability window. The Online Sequential Extreme Learning Machine (OS-ELM) [
26,
27] is a variant of the ELM specifically designed to update the output weights when a new batch of data is available in a sequential fashion. By performing so, the information relative to the previous batches can be deleted once the data are processed, significantly easing the computational stress on the algorithm. However, the optimal dimension of the batch must be determined empirically and meet the requirements in terms of both accuracy and computational burden. This issue can be tackled if the communication between the satellite and the ground station is available. The necessary data can be, in fact, transmitted to the ground station with a fixed frequency and then deleted from the satellite. The training of the network can be performed offline and the weights can be transmitted back to the satellite to be used if needed. Finally, this procedure permits the sequential updating of the weights if more GPS and EKF data are available, which could eventually solve the issue of a prediction losing precision and stability over time as a consequence of a single training performed on a small percentage of data at the beginning of the run. Another aspect to be taken into consideration is the required level of precision in the state estimate. Despite the improvement, the prediction may not be accurate enough for the requirements of the mission. This is mainly due to the baseline provided by the EKF estimate that has a mean RSSE of approximately 17 km and 21 m/s. A better baseline can be achieved by improving the geomagnetic model embedded in the EKF or, vice versa, simplifying the model used to simulate the magnetometer measurements. However, the former would inevitably increase the computational effort of the algorithm while the latter would not represent a realistic application in a real case. Furthermore, the main goal of this work was to test the behaviour of the EKF when the embedded model was a simplified version of the more accurate one used to generate the measurements. For this reason, future work will also investigate the use of an oversimplified model, such as a dipole approximation, onboard the EKF and its impact on the algorithms’s performance.