Next Article in Journal
SSGNet: Selective Multi-Scale Receptive Field and Kernel Self-Attention Based on Group-Wise Modality for Brain Tumor Segmentation
Next Article in Special Issue
Optimal Voltage Recovery Learning Control for Microgrids with N-Distributed Generations via Hybrid Iteration Algorithm
Previous Article in Journal
DPCalib: Dual-Perspective View Network for LiDAR-Camera Joint Calibration
Previous Article in Special Issue
Trajectory Tracking Control of Car-like Mobile Robots Based on Extended State Observer and Backstepping Control
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Improved Genetic Method for Satellite Selection in Multi-Global Navigation Satellite System Positioning for Mobile Robots

1
School of Mechanical and Electrical Engineering, University of Electronic Science and Technology of China, Chengdu 611731, China
2
Shenzhen Institute for Advanced Study, University of Electronic Science and Technology of China, Shenzhen 518110, China
3
School of Control Engineering, Chengdu University of Information Technology, Chengdu 610225, China
4
Nuclear Power Institute of China, Chengdu 610200, China
*
Author to whom correspondence should be addressed.
Electronics 2024, 13(10), 1912; https://doi.org/10.3390/electronics13101912
Submission received: 3 April 2024 / Revised: 7 May 2024 / Accepted: 10 May 2024 / Published: 13 May 2024
(This article belongs to the Special Issue Intelligent Mobile Robotic Systems: Decision, Planning and Control)

Abstract

:
Mobile robots have been widely engaged in many fields. To obtain the precise and consistent localization of mobile robots, the Global Navigation Satellite System (GNSS) is often employed. With the continuous development and modernization of GNSS, more tracked satellites can be used for multi-GNSS positioning calculation, which can improve the positioning performance and enhance accuracy. However, it also increases computational complexity. Therefore, a satellite selection method, which selects a subset from all visible satellites, is necessary. In multi-GNSS positioning, the geometric dilution of precision (GDOP) is an essential metric for satellite selection. However, the traditional traversal method requires a large amount of solution resources. In this paper, we proposed an improved genetic algorithm for satellite selection. By defining the maturity factor (MF) to guide the crossover and mutation operators, the search performance is guaranteed while reducing unnecessary crossover and mutation operations, thus reducing the search time. By adopting the previous epoch optimal individual inheritance strategy, the satellite selection results of subsequent epochs under continuous epochs have been improved. The experimental results verify the effectiveness of the proposed method.

1. Introduction

Recently, with rapid technological advancements and breakthroughs in artificial intelligence, the scope and functionality of mobile robots have expanded, making them an indispensable part of contemporary society. Mobile robots are emerging in different sectors, such as companies, industries, hospitals, institutions, agriculture, and homes, to improve services and daily activities [1,2,3]. As technology advances, the demand for mobile robots has increased due to their tasks and services, such as carrying heavy objects, cleaning, and search and rescue missions [4,5]. For example, mobile robots, which are adept at smart path planning and collision risk reduction, are ideal for intelligent logistics and distribution applications [6,7,8]. Mobile robots are thriving in agriculture, thanks to their autonomous movement and yield prediction capabilities [9]. Mobile robots are also used for indoor disinfection [10]. These applications significantly improve the efficiency of manufacturing and the daily life of society. To enhance the efficiency and redundancy of mobile robots, precise and consistent localization is crucial [11,12]. In order to address the problem of mobile robots, a global navigation satellite system (GNSS) is employed in general [13,14,15].
With the continuous improvement and construction of the BeiDou Navigation Satellite System (BDS) and Galileo Satellite Navigation System and the development and upgrade of GPS and GLONASS, GNSS has now entered the stage of coexistence of hundreds of satellites [16,17]. Receivers in open-field environments can track satellite signals from different GNSS constellations simultaneously, which can lead to an increase in the number of visible satellites [18,19,20]. Due to the increased number of satellites, multi-GNSS positioning has undisputed advantages over standard single-GNSS positioning in terms of positioning accuracy, reliability, availability, and the convergence of position solutions [18,19,21,22,23,24]. For instance, augmenting GPS with GLONASS satellite measurements helps high-precision positioning applications in both real-time and post-mission modes, especially in areas with a limited number of visible GPS satellites [25]. On the other hand, in an open environment, SPP (single-point positioning) that combines GPS with other systems has been shown improve positioning accuracy both horizontally and vertically, compared to using GPS alone for SPP [23,26,27,28].
More tracked satellites can be used for multi-GNSS positioning calculation, which can improve the positioning performance and enhance accuracy. But it also increases computational complexity. Therefore, a satellite selection method, which selects a subset from all visible satellites, is necessary [29,30]. In multi-GNSS positioning, the geometric dilution of precision (GDOP) is a quality measure to specify the additional multiplicative effect of measurement error on positioning and timing accuracy [31,32,33]. Traditional methods that use the GDOP to find optimal combinations are inefficient when dealing with a large number of satellites [34], making it challenging to meet real-time requirements. For example, the traditional traversal GDOP method requires calculating the GDOP values of all possible satellite combinations, which often requires a significant amount of time. Focusing on this issue, many improved methods have been proposed. In these methods, the genetic algorithm has attracted the attention of researchers because of its fast convergence speed and small computational effort [35,36,37,38]. Zhu proposed an improved genetic algorithm based on the adaptive variation of crossover probability and mutation probability, which solves the conflict between convergence speed and global convergence [39]. Meng proposed a multi-constellation efficient genetic algorithm based on the weighted GDOP, which greatly reduces the computational complexity [40]. However, the majority of these genetic algorithms determine the crossover probability and mutation probability based on the fitness level of the individual in relation to the current population, which is relatively complex. Meng’s method relies on feedback probing based on GDOP levels, without considering the significant differences in GDOP levels when dealing with different ephemeris data. Therefore, it is necessary to explore other adaptive adjustment schemes for crossover probability and mutation probability in satellite selection problems.
In this paper, we focus on the satellite selection in multi-GNSS positioning and propose an improved genetic algorithm. The improved method introduces the maturity factor to map the crossover and mutation operators. The maturity factor, defined by the proportion of gene codes in the current population, is simpler to calculate and does not need to consider the overall GDOP level of the ephemeris data. Existing experiments have verified that the mapping of the maturity factor can achieve the good adaptation of crossover probability and mutation probability, thereby reducing satellite selection time. Furthermore, we propose the adoption of the previous epoch optimal individual inheritance strategy. Due to the continuity of satellite operation in time, the optimal search combination from the previous epoch often has higher fitness in the next epoch than randomly generated combinations. It can be considered that the inherited optimal individual from the previous epoch is equivalent to completing a partial search process for the optimal solution of the current epoch in the previous epoch. Experimental verification shows that the previous epoch optimal individual inheritance strategy can improve the search result under continuous epochs except for the first epoch. The rest of this paper is organized as follows. Taking a GPS/BDS integrated receiver as an example, we first briefly introduce the definition of GDOP in single-point positioning and the definition of a maturity factor. Furthermore, we give the general structure and specific operators of the improved genetic algorithm for satellite selection. Section 3 validates and discusses the performance of the proposed method. Finally, conclusions are given in Section 4.

2. Materials and Methods

In this section, we will propose an improved genetic algorithm for satellite selection and describe the implementation process of the algorithm. Firstly, we introduce the basic definitions required for the operation of the algorithm. Then, the operational logic and improvement methods for each process are proposed. Finally, the integral operational procedure of the algorithm is presented.

2.1. Fundamental Definition

2.1.1. Maturity Factor

The maturity factor characterizes the likelihood that individuals throughout the population will become better after crossover and mutation operations. The probability of crossover and mutation operations is modified according to the current population maturity factor’s size to direct the population to “evolve” better.
When the gene pool is too monotonic and the mutation probability is low, the variation of individuals can depend almost exclusively on genetic recombination brought about by crossover operations, which makes the population under-diverse and the result of satellite selection prone to becoming trapped in a local optimum. Therefore, in this paper, the maturity factor is constructed based on the similarity between individuals in the population. which is the sum of the proportions of the top 5 genes with the highest number in the current population:
F M a = i = a , b , c , d , e N u m X i N u m X i
where N u m ( X i ) represents the number of X i ; X a , X b , X c , X d , X e are, respectively, the top 5 genes with the highest number in the current population.
When the level of gene duplication is elevated, it indicates that the gene pool of the current population is more mature due to multiple recombination attempts. In such cases, it is essential to increase the diversity of the population while retaining dominant individuals. In turn, when gene duplication levels are not high, it is essential to tap the potential of the current gene pool to identify gene combinations that may lead to GDOP dominance.

2.1.2. GDOP Definition

Here, we take the single-point positioning using integrated GPS/BDS receivers as an example and briefly discuss the GDOP definition. By combining pseudo-range measurements with broadcast ephemerides, the receiver position in three dimensions can be calculated [41]. The pseudo-range single point positioning is often used in positioning, navigation, and timing (PNT) because of the quick positioning.
In integrated GPS/BDS receivers, the pseudo-range ρ i G between the ith GPS satellite and the receiver can be expressed
ρ i G = r r i G + μ G = x x i G 2 + y y i G 2 + z z i G 2 + α G
where r = x ,   y ,   z and r i G = x i G ,   y i G ,   z i G denote the three-dimensional positions of the receiver and the ith GPS satellite, respectively; α G is the RCB relative to the GPS system in meters.
On the basis of Equation (2), the linearization process can be applied around the initial position ( r 0 ). Then, we can obtain
Δ ρ i G = ρ i G ρ i 0 G = h i G Δ r + α G
where ρ i 0 G = r i G r 0 , Δ r = r r 0 and h i G is the direct cosine vector from the receiver to the ith GPS satellite.
If there are n G GPS satellites available, the linear measurement equation can be written as
z G = H G Δ x G = H G Δ r α G T
In (4), the measurement vector is denoted by z 1 = Δ ρ i G Δ ρ 2 G Δ ρ n G G T , and the unknown vector is denoted by Δ x G = Δ r α G T . Additionally, the matrix H G is called the design matrix capturing the receiver–satellite geometry.
Similarly, if n C BDS satellites are also used for positioning calculation, we can obtain that
z C = H C Δ x C = H C Δ r α C T
By means of combining (4) with (5), we can obtain the linear measurement equation in integrated GPS/BDS receivers, which is expressed as
z = H Δ x = H Δ r α G α C T
which includes five unknown parameters (namely, three positional parameters and two RCB values). So, at least five GPS satellites are required using integrated GPS/BDS receivers.
By combining H G with H C , then the design matrix can be given by
H = h 1 G 1 0 h n G G 1 0 h 1 C 0 1 h n C C 0 1
where h i G and h j C denote the direct cosine vectors from the receiver to the ith GPS and jth BDS satellites, respectively. It should be noted that the one’s vectors and the zeros vectors are located in different columns in order to obtain each RCB value because the RCB values for different constellations are different [42]. Then, the GDOP can be defined as
GDOP = t r H T H 1
The smaller the GDOP value, the higher the positioning accuracy. Generally, the GDOP evaluation criteria can be shown in Table 1.
Therefore, the fitness function is chosen as the reciprocal of the square of the GDOP value. Namely,
A d a p t C = 1 GDOP 2 X a , X b , X c , X d , X e
where C denotes a chromosomal individual; X a , X b , X c , X d , X e represents the five genes that make up the chromosome, i.e., the five satellites used to calculate GDOP values.

2.2. Improved Genetic Algorithm for Satellite Selection

The goal of the satellite selection is to determine the optimal or sub-optimal combination of satellites using GDOP values as evaluation criteria. Therefore, the genetic factor of sequence coding is used in this paper, i.e., according to the order of the satellites in the almanac, the satellites are coded with the corresponding real numbers to combine the required number of satellites into a chromosome. When the fit of the chromosome needs to be calculated, the calculation is performed by searching for the specific location information of the satellites corresponding to the number in the list of optional satellites. Since the satellites of each system are in adjacent order in the almanac file, it is also possible to calibrate the system of the selected satellites by their numbers and adjust the form of the design matrix to fit the calculation of the dual-system GDOP. During the process of selecting satellites, it is possible to encounter a situation where all five satellites are from the same system. By fixing the form of the design matrix, it is still possible to complete the calculation by virtualizing an identical RCB value as an increased parameter.

2.2.1. Obtaining the Initial Population

In the genetic algorithm, the initial population selection should reflect the samples’ randomness and statistical characteristics as much as possible. Sobol sequences are constructed and are a kind of uniformly distributed low-difference sequences, which are more homogeneous than the sequences generated by pseudo-random numbers [43]. Due to the need for 5 gene codes to form an individual, a Sobol sequence with a length of approximately 30 generates a relatively small population. Thus, we generate three sets of Sobol sequences with lengths equal to the number of selectable satellites, sort the values of the Sobol sequences, and record the index of the original sequences to obtain a uniformly distributed low-difference integer sequence. The sequence was divided into sequence segments of length 5, which comprise the chromosome of each single-chromosome individual. The sequence segments whose length is less than 5, do not comprise the chromosome but still retain as mutation alternatives and constitute the initial population. Thus, the size of the initial population was kept in a 3/5 ratio to the number of visible satellites to be selected.

2.2.2. Previous Epoch Optimal Individual Inheritance

Since the satellite’s continuous motion, the optimal solution of the previous epoch remains well adapted for the next epoch. From this view, the search optimal individual of the previous generation is also put into the genetic algorithm of the current generation, which reduces part of the preliminary optimal search work and provides part of the characteristics of the optimal solution to the genetic algorithm of this epoch. Due to the movement of satellites, the satellites in the search optimal solution of the previous epoch may no longer be in the visible range, so it is necessary to treat the optimal individual of the previous epoch and randomly select the currently visible satellites to replace the invisible satellites in it. The treated optimal individual of the former epoch is added to the population to participate in the evolution.
C e p o c h B E S T = GA e p o c h S e p o c h , C e p o c h 1 B E S T C ^ e p o c h B E S T = heal e p o c h S e p o c h , C e p o c h 1 B E S T C ^ 0 B E S T = P ^ e p o c h = P e p o c h , C ^ e p o c h B E S T
where C e p o c h B E S T denotes the optimal individual obtained by the GA at e p o c h ; GA e p o c h denotes the GA for satellite selection at e p o c h ; S e p o c h denotes the visible ephemeris at e p o c h ; hea l e p o c h ( · ) denotes the treatment operator; C ^ e p o c h B E S T denotes the optimal individual from the search at previous epoch after treatment; P e p o c h denotes the initial population generated by the GA at e p o c h ; P ^ e p o c h denotes the extended initial population of the GA at e p o c h that was subjected to the parent selection operation.

2.2.3. Parent Selection and Replication

The fittest individuals of each generation need to be inherited by the next generation to ensure that the optimal GDOP values can be retained, and less fit individuals are directly eliminated. The remaining population was selected and replicated according to the equidistant multipoint roulette wheel selection method.

2.2.4. Crossover Guided by Maturity Factor

Uniform crossover is the process of exchanging genes at corresponding positions between two individuals. From a probability perspective, the expected ratio of gene exchange per chromosome equals the crossover probability. Since the proportion of genes exchanged between two chromosomes is equal to the complementary proportion of genes exchanged at a corresponding locus. Therefore, it is considered that the upper limit of the exchange probability that can be useful in a pure exchange operation for a single-chromosome individual is 50%. When the maturity factor is high, it can be assumed that the current population gene pool has been relatively adequately combined, saving computational effort, at which point the exchange probability can be reduced. The maturity factor is segmentally mapped to the crossover probability to guide each gene exchange operation. The mapping function of the crossover probability P C o is:
P C o = 0.5 F M a ( 0 , 0.2 ] 0.25 F M a + 0.55 F M a ( 0.2 , 0.4 ] F M a + 0.85 F M a ( 0.4 , 0.6 ] 0.25 F M a + 0.4 F M a ( 0.6 , 0.8 ] 0.2 F M a ( 0.8 , 1 ]
According to the mapping function, it can be seen that, it is a piecewise continuous function with significant changes in the middle section and slow changes on both sides. The change in slope is mainly to allow for significant step changes in the crossover probability depending on the evaluation of the maturity factor. When the maturity factor is within the two sections of high and low maturity, the adjustment of crossover probability is relatively less obvious, making the direction of adaptive adjustment relatively stable. The specific slopes and parameters are adjusted based on experiments.

2.2.5. Mutation Guided by Maturity Factor

After crossover, individuals undergo a uniform mutation operation. A higher value of mutation probability can avoid falling into a local optimum, but it implies an increase in the computational time of the genetic algorithm. In this paper, the maturity factor is mapped into segmented mutation probabilities to guide the operation of genetic variation in different cases. When the maturity is low, the mutation probability is reduced so that the genes can be sufficiently combined to explore a suitable satellite selection set. On the other hand, the population is less genetically diverse, and mutation probability can be increased to enhance gene exchange. The mapping function of the crossover probability P M u is:
P M u = 0.1 F M a + 0.03 F M a ( 0 , 0.2 ] 0.25 F M a F M a ( 0.2 , 0.4 ] 3.75 F M a + 0.01 F M a ( 0.4 , 0.6 ] 0.25 F M a + 0.7 F M a ( 0.6 , 0.8 ] 0.9 F M a ( 0.8 , 1 ]
The selection of maturity factor mapping mutation probability formula is based on the same considerations as the maturity factor mapping crossover probability formula. The specific slopes and parameters are also adjusted based on experiments.
The population that has undergone crossover and mutation and the elite individuals with the highest fitness form the candidate set for the next generation population.

2.2.6. Population Size Control

It should be noted that the initial population size of the satellite selection algorithm is related to the number of visible satellites. When there are many visible satellites, the population size is large. Accordingly, the fitness needs to be calculated many times, which has a high computational cost. The strategy used in this paper is to control the number by determining whether the population exceeds the quota or eliminating a group of individuals with the lowest fitness. Due to the optimal retention strategy, the population size increases every generation by 1. Quota elimination allows the population size to fluctuate around the quota, thus reducing the total number of operations. Meanwhile, it also allows for more cross-reorganization attempts during the population boom period, thus reducing the number of subsequent generations. This can avoid an excessive computation time within a generation when the population is too large. We used a quota of 1.5 times the initial population size, and 20% of the individuals with the worst GDOP values were eliminated each time.

2.2.7. Judgment

For satellite selection in multi-GNSS positioning, we can choose the maximum value of the GDOP value or the maximum number of traversals to distinguish whether the alternating sequence converges or not.
When the convergence judgment is satisfied, terminate the genetic algorithm for this epoch and output the satellite selection set.

2.3. Genetic Algorithm Operation Procedure

According to the detailed descriptions in Section 2.2, the satellite selection method based on the maturity factor mapping for consecutive epochs is shown in Figure 1.
The improved genetic algorithm for satellite selection by a maturity factor uses Sobol sequences to obtain initial populations at each epoch. Elite individuals in the population are retained based on fitness, and the remaining individuals are allowed to crossover and mutate to obtain the next generation of the population. The number of individuals in the population is kept within a maximum threshold, and the iteration is judged to converge. If the iteration converges, obtain and output the satellite selection result of the epoch. At this point, the satellite selection of the genetic algorithm for a single epoch is completed. For the case of continuous epochs, the satellite selection result of the previous epoch is added to the initial population of the next epoch as an inherited individual. Repeat the above process until the maximum number of epochs is reached.

3. Results and Discussions

In this section, we will compare the performance of the maturity factor mapping genetic algorithm (MFMGA) with the traditional traversal satellite selection algorithm and the fixed crossover and mutation probability genetic algorithm (FCMPGA). The stability of the improved algorithm in this paper will be verified by testing and probability density fitting. Then, we discuss the satellite selection under continuous epochs and evaluate the impact of the optimal individual inheritance strategy on the satellite selection in continuous epochs.
In this paper, the satellite orbit data are from the sp3 file wum22473 released by GNSS RESEARCH CENTER, WUHAN UNIVERSITY on 1 February 2023, with the epoch of 300 s. And, the station coordinates are selected as JFNG [−2,279,829.18624063 m, 5,004,706.44324414 m, 3,219,777.35768265 m].
A total of 30 satellites (including 10 GPS satellites and 20 BDS satellites) with elevation angles greater than 10° from the two systems are selected from the ephemeris data at 13:25:0 as the satellite coordinate data for verifying a single epoch. For this epoch, the optimal GDOP is 2.475, and the search duration is 14.878 s by traversing the satellite selection. All the satellites with elevation angles greater than 10° from the two systems in the 288 epochs of the day are screened as the satellite coordinate data for verifying the satellites in consecutive epochs.
Due to the principle of controlling variables, all mechanisms of the FCMPGA used for comparison are consistent with MFMGA, with only differences in the variation of crossover probability and mutation probability. The FCMPGA does not change crossover probability and mutation probability, so the step of calculating the maturity factor is also omitted. The crossover and mutation probabilities follow the optimal scheme suggested in the references [44], i.e., P C o = 0.9 , P M u = 0.9 . Experimental results showed that the matching elite reservation strategy can jump out of the local optimum as soon as possible when P M u = 0.9 , but the same number of generations requires a longer search time, which is consistent with the conclusion in [44]. The effect of P C o on the accuracy of the same algebraic search is less pronounced.

3.1. Comparison of Evolutionary Performance

Due to the obvious randomness reflected in the evolution of each generation of genetic algorithms, it is difficult to reflect the performance of genetic algorithms through a single experiment on the same example. We believe that taking the average GDOP corresponding to the optimal individual in each generation of samples can evaluate the genetic algorithm’s performance in a statistical sense. Therefore, we designed Experiment 1 to examine the evolutionary performance of algorithms over a long evolutionary process. The number of evolutionary generations is set to 200. The FCMPGA and MFMGA each conduct 500 searches as their respective samples, and we record the GDOP values corresponding to the optimal individual in each generation.
By calculating the mean values of GDOP corresponding to the optimal individuals in each generation of 500 samples from two algorithms, then we can obtain the evolutionary curves of the mean GDOP for the optimal individuals in 200 generations of these two algorithms, as shown in Figure 2.
The comparison of the average search times of the comparative experiments across 200 evolutionary generations, is recorded as shown in Table 2.
As mentioned earlier, the optimal GDOP obtained by the traversal method is 2.475, and the traversal time is 14.878 s. According to Figure 2 and Table 2, it can be seen that, compared to traditional traversal method, genetic algorithms have a significant time advantage while the GDOP results are close enough to the optimal solution obtained through traversal.
Experiment 1 shows that the MFMGA maintains a similar intergenerational search performance to the FCMPGA, when FCMPGA is used under the recommended scheme. However, it reduces the search time for 200 generations by 10.53%, due to the maturity factor mapping resulting in fewer unnecessary crossover and mutation operations. The fixed crossover mutation probability parameters are already the most efficient solutions for intergenerational search according to references [44] and testing, while the algorithm proposed in this paper has similar an intergenerational search performance, the average time required for each generation is shorter. This indicates that the maturity factor mapping achieved a better level of adaptive crossover and mutation operators.

3.2. Comparison of Search Time with the Same GDOP Threshold

When GDOP is relatively close to optimal, the improvement in GDOP will no longer be significant with the increase in evolutionary generations. Therefore, it is necessary to explore and determine the convergence rules of algorithm evolution. According to the GDOP evaluation criteria in Table 1, we set the threshold of GDOP as 3. And, 2000 searches are performed for each of the two schemes. Record this experiment as Experiment 2.
The comparison of the average search times of the comparative experiments, with a GDOP threshold of 3, is recorded as shown in Table 3.
Experiment 2 discusses the search performance with a fixed GDOP threshold. The results show that, at a GDOP threshold of 3, the search time is reduced by 6.9% compared to the FCMPGA.
For comparison, the results of the traversal method are shown again. The optimal GDOP obtained by the traversal method is 2.475, and the traversal time is 14.878 s. Due to experiencing fewer evolutionary generations (i.e., an average of 26) compared to Experiment 1, the time advantage is more significant. In fact, for the requirement of satellite selection, we can refer to Experiment 2’s evolutionary generations to set the evolutionary generation threshold to avoid the unstable time consumption of the algorithm caused by using the GDOP threshold. When the geometric distribution of satellites changes, and then the set GDOP threshold becomes unreasonable, this time consumption may become unacceptable. For example, if the previously set GDOP threshold is smaller than the optimal GDOP in the next epoch, the genetic algorithm will never end its evolution.
We speculate that the reason for the lower percentage of time reduction compared to Experiment 1 is that the average number of evolutionary generations is lower at this GDOP threshold compared to 200 generations. In the early stage of population evolution, there are fewer individuals in the population, and the number of crossover operations and mutation operations that need to be performed based on the crossover probability and mutation probability of maturity factor mapping is relatively small. The time advantage of adaptation is diluted by the time spent on other operations.
Thus, Experiments 1 and 2 demonstrate that the maturity factor mapping that maturity factor mapping is an effective adaptive strategy. And it can notably decrease the search time while preserving a nearly identical performance to the optimal scheme with fixed crossover probability and mutation probability.

3.3. Evaluation of Search Capability and Stability in the Situation of Different Numbers of Visible Satellites

To verify the search performance of our method in the situation of different numbers of visible satellites, we designed Experiment 3. Referring to the average number of evolutionary generations in Experiment 2, the evolutionary generation threshold is set to 30. From the 30 satellites in the previously used ephemeris data, 10, 15, 20, 25, and 30 satellites are randomly selected in proportion as visible satellites. A total of 2000 searches were performed on each of these selected datasets.
The search statistics are shown in Table 4.
Since the shape of the evolution curve approximates an exponential function and the contribution of the searched GDOP varies across generations, we assume that the searched GDOP follows a lognormal distribution. A summary of the lognormal distribution fitting function is plotted, as shown in Figure 3 below. The traversal-optimal GDOP values for each selected dataset are also marked with dashed lines of the same color.
Expectation and confidence intervals obtained from the fitted distributions for each selected dataset are shown in Table 5.
Experiment 3 evaluates the search performance and applicability of our method in different visible satellite environments, using probability density fitting to discuss the algorithm’s expectation and confidence intervals. For more than 15 visible satellites, our method is consistently faster than the traversal search, with each scenario taking less than 0.1 s. The GDOP difference relative to the optimal value never exceeds 20%, and the GDOP is within 4, indicating that the algorithm and the selected threshold can meet the positioning requirements. The expectation and confidence interval based on the fitted distribution function provides a more accurate assessment of the GDOP value range under the current search scheme. Except for 10 visible satellites, the upper limit of the GDOP search confidence interval is below 4 in all cases. The likelihood of the GDOP search value falling outside the interval is almost zero (since 2000 experiments were conducted, it is plausible that the upper limit of the maximum confidence interval was exceeded, and the fit itself is subject to error). These results show that our algorithm is stable and can improve the credibility of the results by repeated searches. In application scenarios, due to the faster search speed of our algorithm, it is possible to perform repeated satellite selection searches and calculate positioning with the satellite selection set that yields the lowest GDOP. For real-world positioning applications, satellite sets with relatively stable GDOP bring relatively stable average positioning results. This has a positive significance in scenarios such as continuous tracking and localization, where the reliability of localization results is of great importance.

3.4. Comparison of Satellite Selection in Continuous Epochs

During real-time positioning, the ephemeris data and observations processed by the receiver are in chronological order. And, the position changes of the satellite and receiver are time-continuous. Considering exploiting these properties, we propose the previous epoch optimal individual inheritance strategy. To verify the effectiveness of this strategy, using the previously mentioned continuous epoch dataset, we execute two genetic algorithms: the MFMGA and its enhanced version that inherits the optimal individuals from the previous epoch. The evolutionary generation threshold for both algorithms is also set to 30. To evaluate the performance of both, we also run a traversal satellite selection algorithm. Record this experiment as Experiment 4.
The GDOP values of the satellite sets selected by each algorithm are recorded, as shown in Figure 4.
Experiment 4 shows the performance of our satellite selection in response to continuous satellite orbit changes. In most instances, the MFMGA can achieve a GDOP of less than 4. The average value for an all-day search is 3.022, with an average search time of only 0.093 s for 30 generations. Experiment 4 provided a total of 288 samples from the different datasets for the MFMGA with an evolutionary threshold of 30 generations. These samples exclude chance generated by a single dataset.
In addition, when the strategy of the previous epoch optimal individual inheritance is adopted, the maximum search result of the MFMGA is 3.813 within the same evolutionary generation threshold. The average value for an all-day search is 2.906, and the average search time remains almost the same. This indicates that the strategy of previous epoch optimal individual inheritance can improve the search performance of the genetic algorithm satellite selection under continuous epochs.
In Figure 4, the previous epoch optimal individual inheritance strategy can yield relatively good search results in most epochs. However, in a few epochs, especially in the latter epoch where the optimal GDOP is poor, the results are not as good. This suggests that the previous epoch optimal individual inheritance strategy may misdirect the search of the present epoch. Nevertheless, this direction is maintained by the algorithm’s selection operator when it still outperforms the randomly generated direction. Thus, the deterioration of the search results in this epoch is primarily due to the randomness of the genetic algorithm.

4. Conclusions

During the process of satellite selection using integrated GNSS receivers for mobile robots, the traditional method of traversal selecting satellites suffers from high computational effort. We proposed an improved genetic algorithm based on a maturity factor mapping and previous epoch optimal inheritance individual strategy. This method can effectively reduce the search cost while maintaining an acceptable GDOP. Experimental results demonstrate that, compared to the traditional traversal method, the proposed method can effectively reduce the search time and achieve the GDOP value that meets the positioning requirements. Moreover, in contrast to the genetic algorithm with a fixed high crossover mutation probability, this method can substantially decrease redundant calculations, thereby reducing the search time. Additionally, to avoid the uncertainty of search time caused by unreasonable GDOP threshold in genetic algorithms, this study recommends utilizing the number of evolutionary generations as a threshold to ensure that search times are roughly consistent. When the search result corresponds to a poor GDOP, we can perform a simple repeated search and obtain a result with a smaller GDOP value. In this case, it is possible to avoid a long solution time when running at unreasonable GDOP threshold, and also to reduce the probability that the selected satellite set has poor GDOP value. Finally, for continuous epochs, the previous epoch optimal individual inheritance strategy can improve the search results of subsequent epochs.

Author Contributions

Conceptualization, X.L. and Y.T.; methodology, X.L.; software, X.L. and S.Q.; validation, S.Q.; formal analysis, X.L.; investigation, J.J.; resources, Y.T.; data curation, J.J. and J.Q; writing—original draft preparation, X.L. and S.Q.; writing—review and editing, J.J., J.H., and Y.T.; visualization, X.L. and S.Q.; supervision, Y.T.; project administration, Y.T.; funding acquisition, J.J, J.Q., J.H., and Y.T. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Shenzhen Science and Technology Program under Grant JCYJ20210324143004012, by the Sichuan Science and Technology Program under Grant 2023YFG0242, and by the National Natural Science Foundation of China (42074038).

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

There are no conflicts of interest regarding the publication of this paper.

References

  1. Zhu, M.; Huang, C.; Song, S.; Xu, S.; Gong, D. Vision-admittance-based adaptive RBFNN control with a SMC robust compensator for collaborative parallel robots. J. Frankl. Inst. 2023, 361, 106538. [Google Scholar] [CrossRef]
  2. Deng, Y.; Léchappé, V.; Zhang, C.; Moulay, E.; Du, D.; Plestan, F.; Han, Q.L. Designing discrete predictor-based controllers for networked control systems with time-varying delays: Application to a visual servo inverted pendulum system. IEEE/CAA J. Autom. Sin. 2021, 9, 1763–1777. [Google Scholar] [CrossRef]
  3. Ranjha, A.; Kaddoum, G.; Dev, K. Facilitating URLLC in UAV-assisted relay systems with multiple-mobile robots for 6G networks: A prospective of agriculture 4.0. IEEE Trans. Ind. Inform. 2021, 18, 4954–4965. [Google Scholar] [CrossRef]
  4. Alatise, M.B.; Hancke, G.P. A review on challenges of autonomous mobile robot and sensor fusion methods. IEEE Access 2020, 8, 39830–39846. [Google Scholar] [CrossRef]
  5. Bai, J.; Lian, S.; Liu, Z.; Wang, K.; Liu, D. Deep learning based robot for automatically picking up garbage on the grass. IEEE Trans. Consum. Electron. 2018, 64, 382–389. [Google Scholar] [CrossRef]
  6. Hossain, M. Autonomous Delivery Robots: A Literature Review. IEEE Eng. Manag. Rev. 2023, 51, 77–89. [Google Scholar] [CrossRef]
  7. Lee, J.; Park, G.; Cho, I.; Kang, K.; Pyo, D.; Cho, S.; Cho, M.; Chung, W. ODS-Bot: Mobile Robot Navigation for Outdoor Delivery Services. IEEE Access 2022, 10, 107250–107258. [Google Scholar] [CrossRef]
  8. Lee, D.; Kang, G.; Kim, B.; Shim, D.H. Assistive delivery robot application for real-world postal services. IEEE Access 2021, 9, 141981–141998. [Google Scholar] [CrossRef]
  9. Kurtser, P.; Ringdahl, O.; Rotstein, N.; Berenstein, R.; Edan, Y. In-field grape cluster size assessment for vine yield estimation using a mobile robot and a consumer level RGB-D camera. IEEE Robot. Autom. Lett. 2020, 5, 2031–2038. [Google Scholar] [CrossRef]
  10. Chio, I.; Ruan, K.; Wu, Z.; Wong, K.I.; Tam, L.M.; Xu, Q. Design and Autonomous Navigation of a New Indoor Disinfection Robot Based on Disinfection Modeling. IEEE Trans. Autom. Sci. Eng. 2022, 20, 649–661. [Google Scholar] [CrossRef]
  11. Li, X.; Song, B.; Shen, Z.; Zhou, Y.; Lyu, H.; Qin, Z. Consistent localization for autonomous robots with inter-vehicle GNSS information Fusion. IEEE Commun. Lett. 2022, 27, 120–124. [Google Scholar] [CrossRef]
  12. Song, S.; Zhu, M.; Dai, X.; Gong, D. Model-free optimal tracking control of nonlinear input-affine discrete-time systems via an iterative deterministic Q-learning algorithm. IEEE Trans. Neural Netw. Learn. Syst. 2022, 35, 999–1012. [Google Scholar] [CrossRef] [PubMed]
  13. Reyes, D.; Millan, G.; Osorio-Corparan, R.; Lefranc, G. Mobile robot navigation assisted by GPS. IEEE Lat. Am. Trans. 2015, 13, 1915–1920. [Google Scholar] [CrossRef]
  14. Sutyagin, I.; Tatarnikov, D. Absolute robotic GNSS antenna calibrations in open field environment. GPS Solut. 2020, 24, 92. [Google Scholar] [CrossRef]
  15. Sekaran, J.; Kaluvan, H.; Irudhayaraj, L. Modeling and analysis of GPS–GLONASS navigation for car like mobile robot. J. Electr. Eng. Technol. 2020, 15, 927–935. [Google Scholar] [CrossRef]
  16. Wang, L.; Jiao, W.; Jia, X. Performance Analysis of Multi-GNSS Dynamic Pseudo-range Single Point Positioning. In China Satellite Navigation Conference (CSNC) 2020 Proceedings: Volume III; Springer: Singapore, 2020. [Google Scholar]
  17. Chen, X.; Ge, M.; Zuo, X.; Schuh, H. An effective automatic processing engine for improving the multi-GNSS constellation precise orbit prediction. GPS Solut. 2024, 28, 72. [Google Scholar] [CrossRef]
  18. Teunissen, P.J.G.; Odolinski, R.; Odijk, D. Instantaneous BeiDou+GPS RTK positioning with high cut-off elevation angles. J. Geod. 2014, 88, 335–350. [Google Scholar] [CrossRef]
  19. Tabatabaei, A.; Mosavi, M.R.; Khavari, A.; Shahhoseini, H.S. Reliable urban canyon navigation solution in GPS and GLONASS integrated receiver using improved fuzzy weighted least-square method. Wirel. Pers. Commun. 2017, 94, 3181–3196. [Google Scholar] [CrossRef]
  20. Brack, A.; Männel, B.; Schuh, H. On the Feasibility of Instantaneous Multi-GNSS Multi-Frequency PPP-RTK. In Proceedings of the 2023 IEEE/ION Position, Location and Navigation Symposium (PLANS), Monterey, CA, USA, 24–27 April 2023; pp. 583–590. [Google Scholar]
  21. Teng, Y.; Wang, J.; Huang, Q.; Liu, B. New characteristics of weighted GDOP in multi-GNSS positioning. GPS Solut. 2018, 22, 74. [Google Scholar] [CrossRef]
  22. Zhang, Z.; Pan, L. Current performance of open position service with almost fully deployed multi-GNSS constellations: GPS, GLONASS, Galileo, BDS-2, and BDS-3. Adv. Space Res. 2022, 69, 1994–2019. [Google Scholar] [CrossRef]
  23. Odolinski, R.; Teunissen, P.J.; Odijk, D. Combined bds, galileo, qzss and gps single-frequency rtk. GPS Solut. 2015, 19, 151–163. [Google Scholar] [CrossRef]
  24. Wang, A.; Zhang, Y.; Chen, J.; Wang, H.; Yuan, D.; Jiang, J.; Zhang, Z. Investigating the contribution of BDS-3 observations to multi-GNSS single-frequency precise point positioning with different ionospheric models. Adv. Space Res. 2024, 73, 553–570. [Google Scholar] [CrossRef]
  25. Al-Shaery, A.; Zhang, S.; Rizos, C. An enhanced calibration method of GLONASS inter-channel bias for GNSS RTK. GPS Solut. 2013, 17, 165–173. [Google Scholar] [CrossRef]
  26. Chen, L.; Li, M.; Hu, Z.; Fang, C.; Geng, C.; Zhao, Q.; Shi, C. Method for real-time self-calibrating GLONASS code inter-frequency bias and improvements on single point positioning. GPS Solut. 2018, 22, 111. [Google Scholar] [CrossRef]
  27. Shen, S.; Liu, C.; Chen, J.; Gong, D. Design of a Low Power Condenser for Underwater Ships. Electronics 2023, 12, 3681. [Google Scholar] [CrossRef]
  28. Cai, C.; Gao, Y.; Pan, L.; Dai, W. An analysis on combined GPS/COMPASS data quality and its effect on single point positioning accuracy under different observing conditions. Adv. Space Res. 2014, 54, 818–829. [Google Scholar] [CrossRef]
  29. Zhao, D.; Cai, C.; Li, L. A binary discrete particle swarm optimization satellite selection algorithm with a queen informant for Multi-GNSS continuous positioning. Adv. Space Res. 2021, 68, 3521–3530. [Google Scholar] [CrossRef]
  30. Yu, Q.; Wang, Y.; Shen, Y. A fast GNSS satellite selection algorithm for continuous real-time positioning. GPS Solut. 2022, 26, 68. [Google Scholar] [CrossRef]
  31. Hofmann-Wellenhof, B.; Lichtenegger, H.; Wasle, E. GNSS–Global Navigation Satellite Systems: GPS, GLONASS, Galileo, and More; Springer Science & Business Media: New York, NY, USA, 2007. [Google Scholar]
  32. Leick, A.; Rapoport, L.; Tatarnikov, D. GPS Satellite Surveying; John Wiley & Sons: New York, NY, USA, 2015. [Google Scholar]
  33. Biswas, S.K. Unsupervised learning-based satellite selection algorithm for GPS–NavIC multi-constellation receivers. GPS Solut. 2022, 26, 61. [Google Scholar] [CrossRef]
  34. Zhang, M.; Zhang, J. A fast satellite selection algorithm: Beyond four satellites. IEEE J. Sel. Top. Signal Process. 2009, 3, 740–747. [Google Scholar] [CrossRef]
  35. Iyengar, K.B.; Pal, R.; Dalal, U. A dual phase genetic algorithm for improved initial access in 5G millimeter wave communication. Phys. Commun. 2023, 59, 102081. [Google Scholar] [CrossRef]
  36. Shiddiqi, A.M.; Za’in, C.; Lathifah, A.; Ahmad, T.; Purwitasari, D. GA-Sense: Sensor placement strategy for detecting leaks in water distribution networks based on time series flow and genetic algorithm. MethodsX 2024, 12, 102612. [Google Scholar] [CrossRef] [PubMed]
  37. Fang, Y.; Yao, Y.; Lin, X.; Wang, J.; Zhai, H. A feature selection based on genetic algorithm for intrusion detection of industrial control systems. Comput. Secur. 2024, 139, 103675. [Google Scholar] [CrossRef]
  38. Li, W.; Li, H.; Wang, Y.; Han, Y. Optimizing flexible job shop scheduling with automated guided vehicles using a multi-strategy-driven genetic algorithm. Egypt. Inform. J. 2024, 25, 100437. [Google Scholar] [CrossRef]
  39. Zhu, S. An optimal satellite selection model of global navigation satellite system based on genetic algorithm. In China Satellite Navigation Conference (CSNC) 2018 Proceedings; Springer: Singapore, 2018. [Google Scholar]
  40. Meng, X.; Wang, S.; Nie, P.; Niu, Z.; Zhu, B. An Efficient Genetic Algorithm of Multi-Constellation Satellite Selection. In Proceedings of the 2018 IEEE 4th International Conference on Computer and Communications (ICCC), Chengdu, China, 7–10 December 2018. [Google Scholar]
  41. Hu, H.; Zhou, F.; Jin, S. Improved stochastic modeling of multi-GNSS single point positioning with additional BDS-3 observations. Meas. Sci. Technol. 2021, 32, 045105. [Google Scholar] [CrossRef]
  42. Teng, Y.; Wang, J. A closed-form formula to calculate geometric dilution of precision (GDOP) for multi-GNSS constellations. GPS Solut. 2016, 20, 331–339. [Google Scholar] [CrossRef]
  43. Ge, Y.; Lu, W.; Pan, Z. Groundwater contamination source identification based on Sobol sequences–based sparrow search algorithm with a BiLSTM surrogate model. Environ. Sci. Pollut. Res. 2023, 30, 53191–53203. [Google Scholar] [CrossRef] [PubMed]
  44. Song, D. Satellite Selection with Genetic Algorithm under Multi Constellation. J. Astronaut. 2015, 36, 300. [Google Scholar]
Figure 1. Flowchart of the improved genetic algorithm for satellite selection across consecutive epochs.
Figure 1. Flowchart of the improved genetic algorithm for satellite selection across consecutive epochs.
Electronics 13 01912 g001
Figure 2. Evolutionary curves of the mean GDOP for the optimal individuals in 200 generations.
Figure 2. Evolutionary curves of the mean GDOP for the optimal individuals in 200 generations.
Electronics 13 01912 g002
Figure 3. The logarithmic normal distribution fitting curves of GDOP corresponding to the satellite selection results obtained from 30 generations of evolution for each selected dataset.
Figure 3. The logarithmic normal distribution fitting curves of GDOP corresponding to the satellite selection results obtained from 30 generations of evolution for each selected dataset.
Electronics 13 01912 g003
Figure 4. Comparison of the effectiveness of satellite selection algorithms with and without the previous epoch optimal individual inheritance strategy under continuous epochs.
Figure 4. Comparison of the effectiveness of satellite selection algorithms with and without the previous epoch optimal individual inheritance strategy under continuous epochs.
Electronics 13 01912 g004
Table 1. GDOP evaluation criteria.
Table 1. GDOP evaluation criteria.
GDOP12–34–67–89–2020+
GradeExcellentGoodFairAverageQualifiedPoor
Table 2. Average search time of the comparative experiments across 200 evolutionary generations.
Table 2. Average search time of the comparative experiments across 200 evolutionary generations.
Satellite Selection MethodAverage Search Time (s)
Maturity Factor Mapping
Genetic Algorithm
0.773
Fixed Crossover and Mutation Probability
Genetic Algorithm
0.864
Table 3. Average search times of the comparative experiments with a GDOP threshold of 3.
Table 3. Average search times of the comparative experiments with a GDOP threshold of 3.
Satellite Selection MethodAverage Search Time (s)
Maturity Factor Mapping
Genetic Algorithm
0.081
Fixed Crossover and Mutation Probability
Genetic Algorithm
0.087
Table 4. Statistics of evolutionary 30 generations of evolution for each selected dataset.
Table 4. Statistics of evolutionary 30 generations of evolution for each selected dataset.
Statistical variables1015202530
Traversal of the optimal GDOP3.1652.6092.5072.7092.475
Traversal search time (s)0.0050.0690.4382.451014.878
GDOP average3.2902.9632.9422.9742.911
GDOP standard deviation0.1350.1550.1570.1370.160
GDOP maximum3.8383.5013.5013.5893.466
Average search time (s)0.0440.0580.0760.0850.093
Search average relative value1.0391.1361.1741.0981.176
Table 5. The GDOP means and confidence intervals of the satellite selection results for each selected dataset obtained by fitting the lognormal distribution.
Table 5. The GDOP means and confidence intervals of the satellite selection results for each selected dataset obtained by fitting the lognormal distribution.
Number of visible satellites1015202530
Expectation3.28982.96282.94232.97412.9112
3 σ   Confidence interval[2.909, 3.715][2.531, 3.459][2.502, 3.451][2.589, 3.409][2.461, 3.433]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Li, X.; Qiu, S.; Jiang, J.; Qi, J.; Huang, J.; Teng, Y. An Improved Genetic Method for Satellite Selection in Multi-Global Navigation Satellite System Positioning for Mobile Robots. Electronics 2024, 13, 1912. https://doi.org/10.3390/electronics13101912

AMA Style

Li X, Qiu S, Jiang J, Qi J, Huang J, Teng Y. An Improved Genetic Method for Satellite Selection in Multi-Global Navigation Satellite System Positioning for Mobile Robots. Electronics. 2024; 13(10):1912. https://doi.org/10.3390/electronics13101912

Chicago/Turabian Style

Li, Xiang, Shidong Qiu, Jinmao Jiang, Jun Qi, Jie Huang, and Yunlong Teng. 2024. "An Improved Genetic Method for Satellite Selection in Multi-Global Navigation Satellite System Positioning for Mobile Robots" Electronics 13, no. 10: 1912. https://doi.org/10.3390/electronics13101912

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop