2.1. Multi-Objective Optimization of the Satellite Selection Problem
Compared to MEO satellites, LEO satellites have a smaller ground coverage area, higher tangential velocity, and shorter observable durations, typically ranging from 4 to 10 min. These characteristics lead to a higher frequency of satellite switching in the visible field as the elevation angle changes. Therefore, in non-cooperative multi-constellation LEO satellite dynamic opportunistic navigation, the satellite selection algorithm plays a critical role.
To meet the real-time and continuous opportunistic navigation needs of dynamic users, the satellite selection algorithm for multi-constellation LEO dynamic opportunistic navigation must balance two key objectives. First, it should maximize the number of LEO satellites selected to improve positioning accuracy. Second, it must minimize the number of satellites involved in calculations to reduce the computational burden on the user’s receiver and enhance real-time positioning performance. These two objectives are inherently conflicting and subject to various constraints, such as ground signal power and the duration of observable satellite time.
To achieve an optimal balance, an efficient and well-structured multi-objective optimization algorithm is essential for refining the satellite selection strategy. Consequently, the process of selecting satellites for multi-constellation LEO dynamic opportunistic navigation can be modeled as a low-complexity multi-objective optimization problem.
In this study, the DGDOP value is chosen as one of the optimization objectives to evaluate the quality of the satellite geometric configuration, thereby reflecting its impact on positioning accuracy. The state equation of the dynamic opportunistic navigation model is similar to that of conventional GNSS/IMU tight coupling, but its observation equation differs. In dynamic opportunistic navigation, Doppler frequency shifts result from tracking the downlink beacon signals of LEO satellites. Moreover, LEO satellites from different constellations operate on distinct time systems, with each satellite providing only a single Doppler shift measurement per time update.
Let the discrete sampling time of the receiver at epoch
represent the arrival time of the reference signal at
, with
as the initial time and
as the sampling clock period. The signal transmission time of the LEO satellite at epoch
is represented as
, where
represents the true propagation delay from the
-th LEO satellite to the receiver. At epoch
k, the Doppler frequency shift extracted from the signal of the
-th LEO satellite is
, while the pseudorange rate is
, the beacon carrier frequency of the
-th satellite is
, and
is the speed of light.
represents the three-dimensional position vector
of the dynamic platform at epoch
k,
denotes the three-dimensional position vector
of the
-th LEO satellite at epoch k’, and
indicates the observed velocity
of the dynamic platform at epoch
k. The velocity
of the l-th LEO satellite at epoch k’ is denoted as
. Additionally,
represents the clock drift error of the LEO receiver at epoch
k, while
denotes the clock drift error of the
-th LEO satellite at epoch
k’.
is the total number of visible LEO satellites within the receiver’s field of view, and
is the noise in the pseudorange rate, which is assumed to follow a normal distribution as additive noise. Due to the non-cooperative approach employed to extract Doppler frequency from LEO satellite signals, a clock drift error exists between the receiver and the LEO satellite. Based on the characteristics of LEO satellite clock drift referenced in the literature, the drift error between the receiver clock and the LEO satellite clock is modeled using linear fitting, represented as
.The derivation based on the pseudorange rate obtained from observing the signal of the
-th LEO satellite at epoch
is given as follows [
34]:
After linearizing Equation (1) and taking the partial derivatives with respect to the receiver state and clock bias, the observation equation can be expressed as follows:
The vectorized observation equation for the
LEO satellites can be formulated as follows:
where
represents the Doppler frequency error vector observed by the dynamic platform receiver from
LEO satellites at epoch
.
denotes the gradient vector of the Doppler frequency observations in the spatial direction;
represents the gradient vector of the Doppler frequency observations in the velocity direction; and
indicates the gradient vector of the Doppler frequency observations in the time direction. By linearizing observation Equation (3), we can derive the following relationships:
represents the positioning error;
denotes the speed measurement error;
indicates the clock drift error of the
-th observed satellite relative to the receiver’s clock; and
reflects the linearization error at epoch
along with various types of additive measurement noise.
From the observation equation of dynamic opportunistic navigation using LEO satellites, the dynamic Doppler geometric dilution of precision (DGDOP) can be expressed as follows:
The positioning error can be expressed as the product of the user receiver’s Doppler measurement error and the Doppler geometric dilution of precision (DGDOP):
The number of satellites,
, is considered another optimization objective, reflecting the computational burden on the user’s receiver. To balance multiple objectives, we introduce the concept of Pareto non-dominated solutions [
35]. A solution is considered optimal and Pareto non-dominated if it outperforms (dominates) another solution if and only if it shows equal or better objective values across all objectives and provides a better value in at least one objective function. The selected set of satellites
serves as agents evolving in search of multi-objective optimization, seeking to find the global Pareto non-dominated solution set. Thus, the multi-objective satellite selection problem can be formulated as follows:
where
represents the decision vector for the search agents,
is the size of the search agents, and
is the objective vector function indicating the objective fitness. Here,
reflects the fitness function related to positioning accuracy, while
represents the fitness function concerning computational burden. The space
refers to the decision space for satellite selection, and
denotes the set of visible satellites within the observation field of the user’s receiver during a specific time period. Each
represents a satellite carrying pseudo-random noise and is identified by its number
. The function
reflects the inequality constraint space related to ground signal power, while
denotes the sensitivity of the user’s receiver. The function
represents the inequality constraint space regarding the remaining observation time of the satellites within the field of view.
2.2. Design of the NSWOA Satellite Selection Algorithm
2.2.1. Whale Optimization Algorithm
According to the multi-objective optimization satellite selection model presented in Equation (6), the target fitness function reflecting positioning accuracy is given by , which corresponds to the DGDOP for observing non-cooperative LEO satellites. The target fitness reflecting the computational burden is expressed as , where denotes the number of selected satellites.
To determine the Pareto optimal front of the objective vector function , the Whale Optimization Algorithm (WOA) fixes the number of selected satellites (objective ) and classifies the fitness values (DGDOP) of the satellite combinations. The best DGDOP configuration is designated as the search guiding agent , while the remaining candidate combinations are treated as search agents . After establishing the fitness values and identifying the guiding agent, the algorithm employs the contraction and encirclement mechanism of the WOA’s bubble-net feeding behavior during the predation phase, combined with a spiral position updating model. The algorithm then iteratively updates the satellite search agents with equal probability, calculates the fitness of the updated , and subsequently updates the guiding agent . This process is repeated until the termination condition is satisfied, ultimately yielding as the Pareto non-dominated satellite combination, identified by . The solution thus represents the final desired satellite combination.
The WOA [
36] algorithm simulates the hunting behavior of humpback whale populations in nature, dividing the process into three stages: prey searching, prey encircling, and bubble-net feeding.
The prey searching phase, also known as the exploration phase, involves randomly selecting a search agent as the reference agent to update the positions of other search agents. The process of prey searching is described as follows:
In Equation (7), denotes the iteration count, while represents the position vector of a randomly selected search agent and corresponds to the position vectors of the remaining search agents. The parameter is a convergence factor that linearly decreases from 2 to 0 as iterations progress. Additionally, and are randomly generated values within the range [0, 1].
In the encircling prey phase, the WOA sets the current best search agent as the target prey position, or the best solution closest to the target prey. Once the best search agent is defined, the other search agents update their positions in the direction of the best search agent, iteratively determining the optimal solution .
The bubble-net foraging phase, also known as the exploration phase, updates the whale’s position by probabilistically selecting between the shrinking encircling mechanism and the spiral position update model with equal probability, as expressed by
where
represents a random number uniformly distributed in the interval [−1, 1] and
is a constant that defines the logarithmic shape.
2.2.2. Archiving and Guiding Selection Mechanism
Building on the proposed mathematical definitions of optimal Pareto non-dominated solutions, a fast satellite selection algorithm—NSWOA—is developed. This algorithm incorporates two key innovations that enhance the original WOA for multi-objective optimization problems:
An archiving mechanism, which maintains a dynamic set of non-dominated solutions during the optimization process;
A guiding selection mechanism, which adaptively selects leading agents to balance convergence and diversity in the solution space.
These enhancements improve WOA and enable effective solution comparison in the multi-objective optimization satellite selection problem.
The archiving mechanism is designed to store the non-dominated Pareto optimal solutions generated during the optimization process. It regulates the inclusion of new satellite combinations in the archive while enabling the retrieval of existing non-dominated solutions. When a new satellite combination is evaluated, one of two possible outcomes occurs:
Scenario A: If the new satellite combination dominates one or more existing solutions in the archive, the dominated solutions are removed, and the new combination is added.
Scenario B: If the new combination is non-dominated relative to the existing solutions, it is simply added to the archive.
The selection mechanism in NSWOA is based on Pareto dominance, addressing the challenge of ranking multi-objective solutions using scalar fitness values alone. It selects guiding agents from the current archive of non-dominated solutions to steer the search process toward optimal satellite combinations. This mechanism operates in three main phases:
The congestion probability for each grid is defined as follows:
where
is the number of Pareto optimal solutions in the
-th grid, and
is the guiding selection pressure parameter, typically set to
. The probabilities are then normalized.
The cumulative probability for the
-th grid is calculated as follows:
The first grid index is identified such that , where is a random probability uniformly distributed within the range [0, 1].
This probability-biased selection method favors grids with lower solution density, thereby promoting exploration in less-crowded regions of the solution space and enhancing global search capability.
2.3. Procedure of the NSWOA-Based Satellite Selection Algorithm
As indicated by Equation (6), the decision space for the satellite selection strategy within the observational field for positioning is denoted as
. In this context, the NSWOA, which incorporates both archiving and guiding selection mechanisms, selects a set of Pareto non-dominated satellite combinations from the decision space
. The resulting set of Pareto non-dominated satellite combination agents is denoted as
, where
and
represents the selection of
LEO satellites. The steps of the NSWOA rapid satellite selection algorithm are shown in
Table 1. The flow of the NSWOA rapid satellite selection algorithm is illustrated in
Figure 1. The pseudocode for the satellite selection algorithm is presented in
Table 2. The initial phase involves data preprocessing, during which
visible satellites are identified and a viable satellite selection strategy space
is generated. This process utilizes satellite IDs, downlink signal power, and orbital information derived from Two-Line Element (TLE) data. Satellites are considered visible if they meet two criteria: a remaining observable time greater than zero and a signal power exceeding the receiver’s sensitivity threshold.
The selection module begins by initializing the satellite search agents and the associated parameters based on the input data, the specified agent population size , and the number of iterations T. The objective fitness values of the satellite search agents are then calculated. Non-dominated satellite combinations are updated in the archive, and the guiding search agent is identified from the archive. Subsequently, the satellite search agents and parameters are updated according to Equations (7) and (8), followed by boundary adjustments for the updated satellite search agent .
The iterative process continues until the specified number of iterations is reached. Finally, the archive is output, and the non-dominated Pareto satellite combinations contained in the archive are identified as the selected optimal satellite combinations.