Abstract
Keywords
Introduction
The BeiDou navigation satellite system (BDS) is a new system that provides positioning, navigation, and timing services for the entire Asia Pacific region since 2012, and the ultimate goal is to be used globally in 2020. 1 As it is widely used, its service demand will also increase. The BDS plays an increasingly important role in our work and daily life. How to effectively use BDS to serve us is necessary and meaningful work. The selection of BeiDou satellite combination is a very important part of it.
In observation space, the number of observable BeiDou satellites can usually reach to 12–16 or even more in total. 2 In the navigation and positioning application, a set of satellites with a better spatial structure needs to be selected from all visible satellites for positioning. The precision factor (geometric dilution of precision (GDOP)) is commonly used to measure the geometrical distribution of satellite space. It is obtained by matrix multiplication and inversion calculation, which takes a long time. If a satellite combination with good spatial distribution is selected quickly from all visible satellite combinations, the number of GDOP calculations could be reduced, and the time-consuming required for satellite selection could be reduced.3,4 Therefore, it is necessary to select the right satellite subset from observable ones for solving the problem in the various applications mentioned above. The problem of satellite selection has attracted many academicians to study. The key to solving this problem is to quickly eliminate redundancy from the many observable satellites and select effective satellites. Therefore, we have designed a satellite selection algorithm to improve the timeliness of satellite selection.
Previous research found that the positioning precision is affected by the selected satellite combination, and the performance of the satellite combination can be reflected by the GDOP value. 5 The smaller the GDOP value, the better the satellite selection result and the higher the positioning precision. 6 Based on the above findings, the minimum GDOP value (MGV) algorithm, the largest tetrahedron volume algorithm, and the maximum orthogonal projection were found and widely used. For the traditional algorithms, 7 the amount of calculation increases significantly with the increase in the number of observable satellites. 8 Furtherly, the largest tetrahedron volume algorithm, and the maximum orthogonal projection are mainly used for exactly four-satellite subset selection. Therefore, these algorithms are usually not applied to engineering projects directly. In recent years, a lot of researchers proposed machine learning (ML) algorithms to solve the satellite selection problem.9,10 In addition to the shortcomings of these algorithms themselves such as easy to trap into local optimum, difficult to implement large-scale training samples, how to set appropriate parameters is also a difficult problem. Besides, neural network (NN) ideas are proposed for satellite selection algorithms,11,12 which usually gives an approximate answer, and its results also depend on training process. Different training samples produce different results. In this article, in order to reduce the computational complexity and improve the timeliness, the Gibbs sampler algorithm is improved to make it suitable for BeiDou satellite selection scene.
This article is organized as follows. The related work analysis is described in section “Related work,” which compares the selection results of the traditional satellite selection algorithm and the recently proposed satellite selection algorithm, to pave the way for the algorithm proposed in this article. The related terminologies are described in section “Related terminologies,” which mainly introduces the main technical parameters for BeiDou satellite positioning and Gibbs sampler algorithm. The problem of satellite selection is described in section “The problem of navigation satellite selection,” and it is proposed that satellite selection is a combinatorial optimization problem. The details of Gibbs sampler algorithm to solve the satellite selection problem are described in section “Using improved Gibbs sampler algorithm to select optimal BeiDou satellite combination.” The experimental results are described in section “Experiment,” and the statistics and analysis are obtained from the amount of experimental data. The summary and conclusion of this article are described in section “Conclusion.” The future scope of this article is described in section “Future scope.”
Related work
As mentioned above, GDOP value is one of the main performance index to judge the quality of selected satellite subset. The original satellite selection algorithm is to minimize the GDOP value of satellite subset, which is called the MGV algorithm. 13 In this algorithm, all possible satellite subsets are selected from all observable satellites, then select the one with the MGV as the optimal subset. 14 Simple permutation and combination calculations mainly involved in it. As the number of satellites increases, the computational complexity of this algorithm will also increase greatly. 15 Besides, the calculation of GDOP value of each satellite subset requires a large amount of matrix multiplication and inversion operations. 16 Given the above description, we can see that it has extremely poor real-time performance, which is difficult to apply in high dynamic navigation and positioning scenes. To relieve the calculation burden, some quasi-optimal GDOP algorithms are proposed.
G Ou and colleagues 17 proposed a recursive satellite selection algorithm to expand the selected satellite subset sequentially. M Wei et al. 18 proposed a new algorithm that makes use of two satellites’ comparability and the distribution characteristic of satellites with high or low elevation to select satellites. D Roongpiboonsopit and HA Karimi 19 proposed a multi-constellations satellite selection algorithm (MCSSA). The MCSSA considers the geometric arrangements of observable satellites and selects the ones that spread evenly over the observed sky view. M Zhang and J Zhang 20 put forward an idea that selects a satellite subset in a view whose geometry is close to the best as the optimal satellite combination. However, these algorithms usually used to select the sub-optimal satellite subset merely. Besides, the positioning precision of navigation and positioning are not satisfied.
It can be seen that satellite selection performance of the MGV algorithm is poor, then other optimized satellite selection algorithms are put such as maximize the volume of sagittal tetrahedron of satellite subset.21–24 The algorithm is to select the combination with the largest volume in the polyhedron made up of the observable satellites and the receiver. The larger the volume, the smaller the GDOP value. This algorithm traverses the satellite combination corresponding to each satellite and calculates the volume of the tetrahedron of each combination, so the calculation is large. Similarly, another algorithm named the maximum orthogonal projection is proposed.
25
However, the two algorithms are only suitable for selecting four satellites from all observable satellites. The calculation amount of the two algorithms is
In recent years, ML algorithms such as genetic algorithm (GA) and support vector machine (SVM) algorithm are used to solve GDOP value–based calculation problems. In 2010, MR Mosavi 26 proposed that GA is used to achieve satellite selection. GA has the ability of fast random search. However, the local search ability of GAs is poor, which brings time-consuming in implementation of the algorithm, and low efficiency in the late evolution. In practical applications, the algorithms are prone to cause premature convergence problems. 27 The researchers have made a lot of improvements to the GA algorithm, which improves the precision of the algorithm.10,28–30 However, because many parameters need to be configured in the process of calculation, the satellite selection speed will also slow down as the number of observable satellites increases. N Zarei 31 proposed that artificial NN is used to solve GDOP value without calculating the inverse matrix. It is based on the learning properties of artificial neurons but only gives an approximate rather than an exact answer. The performance of the above algorithms also depends on the training time and the amount of training data. DJ Jwo and CC Lai 32 presented an NN-based navigation satellite subset selection algorithm to reduce the training time of back propagation neural network (BPNN). A Hamed and M Mohammad-Reza 33 proposed improved back propagation (BP) algorithms, including resilient BP that has greater precision and less calculation time. Even if the idea of classification is used to simplify the problem, these algorithms still need to calculate the GDOP value of each satellite subset from all possible subsets. 34 Besides, this classification thought can only roughly classify crucial values of each satellite subset to an approximate range.
In order to avoid the shortcomings of the above existing algorithms, this article proposes a navigation satellite selection algorithm for optimized positioning based on Gibbs sampler to effectively improve the timeliness of BeiDou satellite selection and the positioning precision of BeiDou satellite.
Related terminologies
In various applications of BeiDou satellite navigation and positioning, in order to ensure the positioning precision, selecting suitable
where
The GDOP value can be solved effectively by the method proposed in this article, which is based on the Gibbs sampler algorithm proposed by German in 1984. Its most significant feature is the construction of a Markov chain of this algorithm by constructing a conditional distribution sequence along a series of complementary directions. The algorithm is suitable for a distributed solution of discrete multi-dimensional problems.39,40 The problem of BeiDou satellite combination is to find the optimal combination among all BeiDou satellites in order to minimize the GDOP value of the selected BeiDou satellite combination, which belongs to a kind of discrete combinatorial optimization problem. The distribution function of Gibbs sampler is as follows
where
Gibbs sampler updates its state vector in the following way: Suppose that the state vector
The problem of navigation satellite selection
Take the study of BeiDou satellite as an example, the selection of the optimal satellite set is a combinatorial optimization problem; select
Define
from
where
. Since
shown as following definition.
Definition 1
GDOP function: GDOP of one satellite combination is calculated with the detailed coordinate values of selected satellites and observable satellites. It is an important performance index that could reflect the positioning precision. The smaller the GDOP value, the higher the positioning precision. This article aims to minimize the GDOP value of the satellite subset using Gibbs sampler algorithm with the help of “adaptive perturbation” strategy (improved Gibbs sampler).
The main points of the proposed algorithm are introduced as follows. First, the satellite selection problem is described as a combination optimization problem, and the objective function and search space are defined. Then Gibbs sampler is incorporated to solve the problem. Meanwhile, “adaptive perturbation” strategy is designed to improve the global searching ability of the algorithm. In this algorithm, GDOP value of each satellite combination is used to compute the corresponding energy function value, which will be utilized to consider its selection probability. The “adaptive perturbation” strategy mainly includes changing satellite selection probability by changing weighting coefficient value. The proposed algorithm can be considered as a promising candidate for satellite navigation application systems. BeiDou satellite was selected as an example in this article, and a number of suitable BeiDou satellites were selected from the observable satellites relative to the observation point. Usually, the number of observable satellites in satellite navigation system is about 15 at a certain time. 41 It has been proved that when the loss of positioning accuracy is not well, the calculation amount could be reduced effectively after selecting a suitable number of well-distributed satellites.42,43
Calculate the azimuth and elevation angle of the observable satellites
Set the observation point as the origin, the long axis of the earth ellipsoid as the
where
where
where
Calculate the state matrix of the BeiDou satellites and construct the objective function
Let the selected satellite combination be
then the azimuth and elevation angles of the BeiDou satellites are
of the BeiDou satellite combination is calculated using equation (9)
Use equation (10) to obtain the GDOP value of the BeiDou satellite combination as the objective function of the problem
where the
, the better the performance of the satellite combination
Determining the network model of the satellite combination
Definition 2
Network model: As shown in Figure 1, a two-dimensional space is constructed, and each column contains
.

Schematic diagram of network model.
Using improved Gibbs sampler algorithm to select optimal BeiDou satellite combination
Gibbs sampler algorithm and BeiDou satellite selection problem
Gibbs sampler is an algorithm used to obtain a series of observation samples. The Gibbs sampler algorithm continuously updates the satellite combination selection scheme through random sampling to optimize the objective function. When a certain condition is satisfied or the number of iterations reaches the maximum, the iteration is terminated and the final combination scheme is obtained.46,47 Preliminary research has shown that it has innate advantages such as sensitivity and rapid convergence in solving such complex combination optimization problems.48,49 The method to solve the BeiDou satellite combination selection problem is to find the optimal BeiDou satellite combination among all observable satellites so that its GDOP value reaches to the smallest, which belongs to discrete combination optimization problems. Improved Gibbs sampler algorithm was used to calculate the selection probability of each BeiDou satellite and complete the optimization of the BeiDou satellite combination according to the probability so that it could converge to the optimal or near optimal set of BeiDou satellites.
The specific steps of improved Gibbs sampler algorithm for selecting the optimal BeiDou satellite combination
Define
denote a initial selection scheme for BeiDou satellite combination, which means that in the
of BeiDou satellite combination in the
The optional BeiDou satellite record table is defined as
of BeiDou satellite combination. Define the number of BeiDou satellites in the optional BeiDou satellite record table
After the
is obtained after the
is given by
where
of BeiDou satellite combination is removed from dimension set
is the combination of
, and
is the
; the distribution function of Gibbs sampler is given by
where
Gibbs sampler updates its state vector by assuming that the state vector
It can be proved that the state vectors
where
. That is, in the case where the number of BeiDou satellites selected in the remaining
where
In the
of BeiDou satellite combination obtained in the
formed by
for BeiDou satellite combination formed by
; Otherwise, assign
Based on the discussion above, a flowchart that describes the operation steps of the algorithm intuitively is presented in Figure 2. The main process of improved Gibbs sampler algorithm is shown in Figure 3. Figure 3 highlights improvement measures added to the basic Gibbs sampler algorithm. It is a perturbation mechanism applied to the desired heuristic factor, in order to prevent the algorithm from falling into local optimum.

Flowchart of the proposed algorithm.

Improved Gibbs sampler algorithm process diagram.
Experiment
In order to verify the performance of the proposed algorithm, three algorithms are compared, including the traditional traversal algorithm, Gibbs sampler algorithm, and Gibbs sampler algorithm with the help of “adaptive perturbation” strategy (improved Gibbs sampler algorithm). The GDOP value is respectively computed via VC++software running on a Linux server with 8 Intel Xeon CPUs at 2.66 GHz, 3GB memory. We make use of high-precision global navigation satellite system (GNSS) receiver to collect raw data for 4 h. Considering its validity, we only choose 8000 continuous data from the raw data, including ephemeris data and observation data of 15 satellites in view. Two sets of experiments are conducted. In the first set, we set time as an argument and observe the change of GDOP value. In the second set, we set iteration number as argument and observe the change of GDOP value.
From the three ephemeris diagrams shown in Figure 4, We can see the results of the three algorithms in the same set of experiments, which are reflected by specific GDOP values. They are the best combination of six satellites selected from 15 observable satellites. More specifically, color of solid sphere in Figure 4 is used to represent satellite status, red means the satellite is selected, and blue means the satellite is not selected. The value marked in the solid sphere is satellite number. It can be seen that satellites numbered #142, #144, #150, #151, #152, and #154 were selected using traditional traversal algorithm, and its GDOP value is 2.6901 (Figure 4(a)); satellites numbered #142, #144, #149, #150, #151, and #152 are selected using Gibbs sampler algorithm, and its GDOP value is 2.9414 (Figure 4(b)); satellites numbered #142, #144, #149, #150, #151, and #154 are selected using improved Gibbs sampler algorithm, and its GDOP value is 2.8227 (Figure 4(c)).

Satellite selection results of three algorithms in some moment: (a) GDOP = 2.6901, (b) GDOP = 2.9414, and (c) GDOP = 2.8227.
In order to further distinguish the advantages and disadvantages of the three algorithms, 20 sets of experiments were carried out; the average of the experimental results is shown in Table 1. From Table 1, we can see that the average GDOP values of satellite subset are 2.6965, 2.9585, and 2.821, respectively, which are obtained by the three algorithms, respectively. It has been proved that the traditional traversal algorithm can achieve approximate optimal solution with almost smallest GDOP value (2.6965) but with almost biggest time-consuming (15.655 s) because of its large amount of calculation. Thus, it is difficult to be used in real-time-based navigation and positioning system. Both Gibbs sampler and improved Gibbs sampler algorithm have reached the approximate optimal solution with the GDOP values of 2.9585 and 2.821, respectively. However, since they are optimized algorithms, they can obtain approximate optimal solutions in an acceptable time range, which has important practical application value.
The average value of satellite selection results of three algorithms in 20 sets of experiments.
GDOP: geometric dilution of precision.
Figure 5 intuitively presents the experimental results in Table 1. In each group of experiments, traditional traversal algorithm can obtain the optimal solution (the MGV); improved Gibbs sampler algorithm is superior to Gibbs sampler algorithm for its solutions are always 0.1 smaller than that in GDOP value.

Comparison of GDOP values for 20-set of experiment in three algorithms.
The stability of the algorithm in a certain period of time can also be used as a criterion for evaluating the performance of the algorithm. Figure 6 shows that changes in GDOP value calculated by the two algorithms in 2 h. It can be seen that GDOP value of the satellite subset using improved Gibbs sampler algorithm is smaller than that using Gibbs sampler algorithm most of the time. Furthermore, the GDOP value of the satellite subset selected by the improved algorithm is more similar to the optimal algorithm, which is shown in the red curve in Figure 6. The above experimental results verified that the improved Gibbs sampler algorithm in this article has better performance and higher stability in practical application.

Variation in GDOP values of two algorithms within 2 h.
In addition, we made statistics about the relationship between GDOP value and iteration index over 100 random realizations by the two algorithms mentioned above, which is shown in Figure 7. As illustrated in Figure 7, for improved Gibbs sampler algorithm, when the index of iterations reaches 35, the optimal GDOP value emerges. However, for Gibbs sampler algorithm, the optimal GDOP value does not appear until the number of iterations is 50, 15 iterations more than the former algorithm. Furthermore, the proposed algorithm with the improvement of “adaptive perturbation” outperforms primitive Gibbs sampler algorithm by up to 72.6%, and its solutions are always 0.1 smaller than the related algorithms in GDOP value. Obviously, the designed “adaptive perturbation” strategy can improve the global searching ability of the Gibbs sampler algorithm and achieve approximate optimal solution, with low complexity and fast convergence.

Variation of GDOP value with the increase of iterations over 100 random realizations.
Conclusion
In this article, the satellite selection problem is described as a combination optimization problem. Then, Gibbs sampler–based navigation satellite selection algorithm is proposed. A fast satellite selection was achieved using the proposed algorithm, and the number of calculations for the GDOP value is reduced. According to simulation experiments on the algorithm, the results are as follows: (1) When the number of selected satellite is 6, the time that the proposed algorithm with the improvement of “adaptive perturbation” takes to select satellite once is 4.425 s, 43.7% of the time that the primitive Gibbs sampler algorithm takes. (2) The “adaptive perturbation” strategy could improve the global searching ability of the algorithm. (3) The GDOP value that the proposed algorithm with the improvement of “adaptive perturbation” calculate is 2.8, 0.1 smaller than that calculated by the primitive Gibbs sampler algorithm. The extensive experimental results demonstrate that the algorithm can achieve the approximate optimal satellite combination in real time with almost smallest GDOP.
Future scope
BeiDou satellite has been widely used in the navigation and positioning of aircraft, ships and vehicles, time service, and other fields. In various applications of BeiDou satellite navigation and positioning, the result of satellite selection will directly affect the positioning precision, so the satellite selection algorithm is of great significance for it. The satellite selection algorithm proposed in this article has the advantages of low complexity, high execution efficiency, and good timeliness. Compared with single constellation, the number of visible satellites was increased in multi-constellation, but the method of satellite selection is similar. Thus, the algorithm proposed in this article can also be applied to multi-constellation integrated navigation system in the future.
