Keywords

1 Introduction

For autonomous navigation, the influence of the space environment, which refers to the sum of elements that affect human production and life in the vast expanse of cosmic space above an altitude of tens of kilometres from the ground, cannot be ignored [1, 2]. As an important part of the space environment, the ionosphere can produce reflection, refraction and scattering effects on radio signals, causing changes in the propagation speed and direction of navigation signals, resulting in ionospheric delay error, which is one of the important error sources in GNSS measurements [3,4,5]. For standard point positioning, ionospheric delay is mainly corrected in real time using the broadcast ionospheric model. BDS-2 uses BDS Klobuchar model (BDSKlob), and the BDS-3 adds the independently designed and developed BeiDou global broadcast ionospheric delay correction model (BDGIM), both of which attenuate ionospheric delay errors to a certain extent.

BDSKlob is mainly applicable to the mid-latitudes of the Northern Hemisphere, with a higher correction accuracy in the mid-latitudes than in the high-latitudes and low-latitudes. The model parameters are mainly calculated from tracking station data in China, and are most suitable for the Chinese region, but only up to about 70%; the correction accuracy in the Northern Hemisphere is higher than in the Southern Hemisphere, mainly because the model uses symmetry with the Northern Hemisphere when calculating the ionospheric TEC in the Southern Hemisphere, so it is less applicable to the Southern Hemisphere [6,7,8,9]. BDGIM is a global ionospheric correction model, which, according to related studies [9,10,11], has a slightly improved correction accuracy at low and mid-latitudes and a larger improvement at high latitudes compared to BDSKlob. Because the BDGIM background ionospheric constraint information is mainly built using Northern Hemisphere information, the BDGIM model is usually significantly better than other regions in the Northern Hemisphere at low and mid-latitude corrections, and the BDGIM correction rate can reach up to 70% or more on a global scale [6, 12]. The broadcast ionospheric model is convenient to apply, but it cannot meet the increasing demand for positioning accuracy. Some scholars have improved the Klobuchar model by analysing the physical mechanism of the ionosphere and increasing the model parameters [13,14,15], while others have optimised the Klobuchar model using time series analysis methods or neural network models [5, 16], which have improved the model accuracy to varying degrees.

Neural networks can infinitely approximate complex non-linear relationships and have been shown to achieve good results in ionospheric TEC prediction and satellite orbit modelling [16,17,18,19,20,21,22,23,24,25,26]. Back Propagation Neural Network (BP) is a typical non-linear prediction model, but BP neural network itself has some shortcomings, such as sensitive to the setting of the initial parameters of the network, easy to fall into the local minimum value. In this paper, the Artificial Bee Colony Algorithm (ABC), a swarm intelligence optimization algorithm, is used to optimize the network parameters of BP neural network, and based on this, an error prediction method is proposed for the BDS ionospheric model to forecast and compensate the error of BDSKlob and BDGIM to improve the model accuracy.

2 ABC-BP Neural Network

2.1 BP Neural Network

The essence of neural network learning is to find a certain hypothesis function in the hypothesis space that satisfies the sample inputs and outputs by training on the basis of a training dataset with a specified optimization method so that the corresponding loss function of the current model on the training dataset is minimized [28].

BP networks have a strong non-linear mapping capability and a 3-layer BP neural network can approximate any non-linear function but it also has limitations. Firstly, there are many parameters in the network, and each time a large number of thresholds and weights need to be updated, so the convergence speed is slow; BP algorithm is essentially a one-time convergence learning algorithm, there is inevitably the problem of local minima, and even oscillation near the extreme value point, which does not converge smoothly to the optimal solution.

2.2 ABC-BP Model

The ABC-BP model incorporates the ABC algorithm into the BP neural network, replacing the way of training and adjusting the weights and thresholds of the BP neural network from the fastest gradient descent algorithm to the ABC algorithm. The incorporation of the population intelligence optimisation algorithm ABC into the BP neural network can improve the global search capability of the network, speed up the convergence of the algorithm and prevent the algorithm from falling into local extremes.

ABC Algorithm

The ABC algorithm make up of four parts: the nectar source (potential solution), the leader bee, the follower bee and the scouter bee, as well as two actions: recruiting the follower bee and discarding the nectar source [29], where the location of the nectar source is used to represent the solution, and the pollen count of the nectar source is used to represent the adaptation value of the solution [30]. Lead bees and follow bees each account for half of the total bee colony. The leader bees are responsible for the initial search for nectar sources and sharing information, the followers are responsible for staying in the hive and collecting nectar according to the information provided by the leader bees, and the scouter bees are responsible for randomly finding new nectar sources to replace the original ones when they are abandoned. The ABC algorithm is iterative and, after initialisation of the colony and honey source, iteratively performs three processes, the leader bee, follower bee and scouter bee phases, to find the optimal solution to the problem. Each stage is described as follows:

  1. (1)

    Initialization of bee colony. The parameters of the ABC algorithm are initialised, these are the number of nectar sources SN, the number of times the nectar sources are determined to be discarded LIMIT, and the number of iterations terminated. In the standard ABC algorithm, the number of nectar sources SN is equal to the number of leader bees and the number of follower bees. The equation for generating nectar is

    $$ x_{ij} = x_{\min j} + rand[0,1](x_{\max j} - x_{\min j} ) $$
    (1)

    Among them, \(x_{ij}\) represents the jth dimension value of the ith nectar, 1 ≤ i ≤ SN, 1 ≤ j ≤ D, \(x_{\max j}\) and \(x_{\min j}\) represents the minimum and maximum value of the dimension respectively. Initialising a nectar source means assigning a random value within a range of values to all dimensions of each nectar source using the above formula, thus generating a random initial nectar source for SN.

  2. (2)

    Leader Bee Stage. In this stage, the leader bee uses Eq. (2) to find a new nectar source and uses a greedy algorithm to compare the old and new nectar adaptation values and select the superior.

    $$ v_{ij} = x_{ij} + \varphi_{ij} (x_{ij} - x_{kj} ) $$
    (2)

    Among them, \(x_k\) represents the neighborhood nectar, 1 ≤ \(k\) ≤ SN, and \(k \ne i\); \(\varphi_{ij}\) is a random number, and −1 ≤ \(\varphi_{ij}\) ≤ 1.

  3. (3)

    Follower bee stage. In this phase, the follower bee analyses the nectar source information of the leader bee and selects a nectar source with a higher adaptation value to be followed and mined, again using Eq. (2) for the mining process. The honey source has the parameter trail, which is 0 when the update is retained, and 1 when it is not, so that the number of times a honey source is retained can be counted.

  4. (4)

    Scouter bee stage. When a nectar source has not been renewed after several exploits, i.e. the trial value is too high and exceeds a predetermined threshold limit, then the source is discarded and the corresponding leader bee is transformed into a scouter bee, using Eq. (3) to find a new nectar source.

    $$ x_{ij} = \left\{ \begin{aligned} & x_{\min j} + rand[0,1](x_{\max j} - x_{\min j} ),\,trail \ge \lim it \\ & \, x_{ij} \, ,\,trail \ge \lim it \\ \end{aligned} \right. $$
    (3)

ABC Optimizes Network Parameters

The BP neural network connection weights are optimized using the ABC algorithm, the BP loss function is used as the adaptation value function of the ABC algorithm, each connection weight is used as a dimension of the solution, and the infinite number of combinations corresponding to the connection weights are used as the solution space of the ABC algorithm, so as to construct a BP model optimized by the ABC algorithm, which reduces the probability of the BP model falling into a local optimum by using the advantage of ABC in global search, thus improving the effectiveness of parameter learning of the BP neural network [28].

3 Error Modeling Method of Ionospheric Model

3.1 Error Prediction Method

The following procedure is used to create a BDS ionospheric model error prediction model based on a 3-layer ABC-BP neural network:

  1. (1)

    Obtain a sample data set. The ionospheric vertical delay of the target puncture point is calculated using the BDS ionospheric model, the GIM (Global Ionospheric Map) product published by Center for Orbit Determination in Europe (CODE) is used as the TEC reference value, and the model error value is calculated as the sample data, with a temporal resolution of 1 h.

  2. (2)

    BP neural network settings. The number of nodes in the input layer and in the implicit layer of the model are both set to 5, and the number of nodes in the output layer is set to 1. The input layer corresponds to the sample data for the first five moments and the output layer corresponds to the sample data for the next moment, organised in a stepwise manner in order to make full use of the sample data.

  3. (3)

    ABC algorithm parameter setting. For the 3-layer BP neural network, the number of problem dimensions N of the ABC algorithm is 36, the number of nectar sources, i.e. the number of swarms SN, is set to 100, the limit is set to 1 and the maximum number of iterations is set to 5.

  4. (4)

    Model training and prediction. The sample data is normalised and pre-processed, and the ABC-BP neural network is used for training and prediction to obtain predicted values of the BDS ionospheric model error and compensate for the model values, the overall process is shown in Fig. 1.

Fig. 1.
figure 1

ABC-BPNN algorithm flow chart

Fig. 2.
figure 2

Grid point distribution in China

Using the above method, 15 grid points were error compensated and the RMSE before and after compensation was counted for each grid point over a 7-day period, as shown in Fig. 3 and 4. It can be seen that after compensating for the BDSKlob, the RMSE is reduced to varying degrees for most grid points, with a maximum reduction of 4.22 TECu occurring at (45°N,130°E).

Fig. 3.
figure 3

RMSE for BDSKlob

Fig. 4.
figure 4

RMSE for BDSKlob+ABC-BPNN

Figure 5 shows the prediction of the BDSKlob model error for some grid points on September 7. As can be seen from the figure, the BDSKlob model error prediction values are in most cases more closely matched to the true values, with only a few cases of large deviations. The correction rates for all grid points before and after compensation for these 7 days were calculated and the data are shown in Table 1. Among the 15 grid points, 14 of them have improved their BDSKlob model correction rate to varying degrees, among which the accuracy of the grid points in the mid-latitude region has improved significantly, with five points improving by more than 20%.

Fig. 5.
figure 5

Error prediction of BDSKlob for partial grid points

Table 1. BDSKlob correction rate before and after compensation (%)
Table 2. Accuracy statistics of BDSKlob in China

The mean value of the correction rate of all grid points was calculated to obtain the correction rate of the BDSKlob before and after compensation, and the correction rate of the Chinese region increased from 67.95% to 81.66%, as listed in Table 2.

4 BDGIM Error Compensation Results

For the BDGIM, the same approach was used to predict and compensate for model errors from 7 to 13 September 2021. Considering the needs of maritime navigation and positioning, and in order to test the prediction effect of ABC-BP neural network more comprehensively, this paper does not treat land and sea differently, but selects 96 grid points evenly around the world for experimental analysis, so the accuracy of BDGIM model calculated in this paper is slightly lower than the existing evaluation results, and the specific distribution of grid points is shown in Fig. 6. Due to the length of the paper, specific forecasts for grid points are not shown.

Fig. 6.
figure 6

Global grid point distribution

The RMSE before and after compensation are given and shown in Fig. 7 and Fig. 8 respectively. It can be visually seen that the RMS is significantly reduced in the mid and high latitudes after adjustment.

Fig. 7.
figure 7

RMSE for BDGIM

Fig. 8.
figure 8

RMSE for BDGIM+ABC-BPNN

In order to analyse the improvement in the correction rate in more detail, the improvement in the correction rate of all grid points over the 7 days was counted and the number of grid points in the different improvement intervals was obtained. Out of the 96 grid points, the correction rate of 74 grid points improved to varying degrees, with 37 of them improving by 0–10%, 22 by 10–20%, 9 by 20–30% and 6 by more than 30%; 22 grid points showed a decrease in the correction rate, but the maximum decrease was only 9.81%.

Table 3. Accuracy statistics of BDGIM in different latitudes of the world

The accuracy of the model before and after grid point compensation for different latitude regions was counted to obtain Table 3. It can be seen that after the error prediction compensation using ABC-BP, the accuracy of the model is significantly improved in the high and middle latitudes and not significantly improved in the low latitudes. For high latitudes, the BDGIM model accuracy improved from 2.19 TECu to 1.78 TECu and the correction rate improved from 56.41% to 74.25%; for mid-latitudes the model accuracy improved from 3.20 TECu to 2.68 TECu and the correction rate improved from 71.56% to 82.05%, with a global an improvement of 8.77%. ABC-BP neural network for error prediction of BDGIM is more suitable for middle and high latitudes because the ionospheric electron content varies more at low latitudes compared to middle and high latitudes, and BDGIM error varies more randomly.

5 Conclusion

In this paper, the CODE GIM product is used as a reference to obtain the BDS Klobuchar and BDGIM model errors, and a BP neural network optimized by an artificial bee colony algorithm is used for training to predict the model errors from 7 to 13 September 2021 and to compensate for the model values to improve the model accuracy.

After using ABC-BP neural network to compensate for the error of the BDS Klobuchar model, the model accuracy improved significantly, with the model error RMS in China improving from 4.92TECu to 3.66TECu and the correction rate increasing from 67.95% to 81.66%

The use of ABC-BP neural networks to compensate for errors in the BDGIM model: (1) can improve the overall accuracy of the BDGIM model. The correction rates of 74 out of 96 grid points worldwide were improved to different degrees; (2) is more applicable to middle and high latitudes. After performing error compensation, the model accuracy and correction rate improved from 2.19 TECu, 56.41% to 1.78 TECu, 82.05% for global high latitudes; from 3.20 TECu, 71.54% to 2.68 TECu, 82.05% for global mid-latitudes, and from 71.36% to 80.13% for global correction rate.

In standard point positioning, the ionospheric correction model ultimately serves the positioning needs of single-frequency users. The subsequent positioning experiments will be conducted using the ABC-BP neural network-based compensated BDS ionospheric model to analyse its effect on positioning accuracy improvement.