Skip to main content
Top
Published in: Complex & Intelligent Systems 1/2024

Open Access 21-07-2023 | Original Article

Gravity assist space pruning and global optimization of spacecraft trajectories for solar system boundary exploration

Authors: Yuqi Song, Weiren Wu, Hang Hu, Mingpei Lin, Hui Wang, Jinxiu Zhang

Published in: Complex & Intelligent Systems | Issue 1/2024

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

The solar system boundary exploration mission has the characteristics of long flight time, high fuel consumption, complex gravity-assist sequence and strict constraints. Therefore, the number of decision variables and the search space of the transfer trajectory are very large, resulting in poor convergence and efficiency of the global search of the metaheuristic algorithm. Moreover, the existing gravity assist space pruning algorithm is no longer applicable for solar system boundary exploration. To effectively reduce the search space and improve the effect of trajectory optimization, an improved gravity assist space pruning algorithm is proposed. In this algorithm, a unique pruning procedure is used to effectively prune the search space, a shape of solution space box bounds combining rectangle and rhombus is adopted, and a method to automatically determine the solution space box bounds is presented. To verify the effectiveness of the improved gravity assist space pruning algorithm, the sensitivity of pruning effect to parameters is analyzed and the optimization effects of three typical metaheuristics are compared. The optimization results of 50 repeated runs of the differential evolution algorithm in the entire search space and the solution space box bounds are compared. Simulation results show that the performance of differential evolution algorithm is better than bat algorithm and firefly algorithm. And the improved pruning algorithm can increase the efficiency of subsequent optimization by more than eleven times and the convergence probability of the objective function by fifty of times. The applicability and efficiency of the proposed method for the solar system boundary exploration are demonstrated.
Notes

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Introduction

The future of space exploration includes a focus on the solar system boundary, which is located 80-150AU from the sun at the edge of the heliosphere [1]. Since the 1970s, although some spacecraft have passed through the heliosphere and reached or are about to reach interstellar space, such as the Pioneer 10/11 [24], Voyager 1/2 [57] and New horizon missions [8], the solar system boundary has not been the primary target of exploration, but rather as extensions of planetary exploration missions. Since the exploration of the solar system boundary can not only obtain major scientific discoveries, but also promote the leap-forward development of cutting-edge space technologies, China proposes to implement the solar system boundary exploration plans, in which two almost identical spacecraft will fly to the nose and tail of the heliosphere respectively and reach 100AU before October 1, 2049 [9]. Strict flight time and distance constraints mean that the spacecraft will have an average speed of 4.5 AU/year, which is greater than the average speed of the Pioneer and Voyager missions. Moreover, the gravity-assist sequences will be different and the optimization of interplanetary transfer trajectories will be more complicated.
The optimization of interplanetary transfer trajectory is essentially a typical NP-hard problem [10]. Due to the complexity and nonlinearity of the problem, it is difficult for traditional deterministic methods to solve the problem. As a stochastic algorithm that does not require the gradient and convexity of the problem, metaheuristics have been identified as very effective global optimizers and used in a wide range of practical NP-hard challenges [11]. Firstly, the metaheuristic algorithm is applied to the tuning of the controller parameters. Stojanovic et al. [12] applied the bat algorithm (BA) to optimize the cascade control parameters of the robot platform, and showed significant performance improvement compared with the traditional parameter tuning method. Nedic et al. [13] proposed a parameter optimization method of cascade controller based on the firefly algorithm (FA), and compared the best results with the results obtained by other metaheuristic algorithms to show the advantages of FA. Fang et al. [14] designed a new online policy iteration algorithm to obtain an adaptive optimal controller for a class of nonlinear Markovian jump systems. Secondly, metaheuristics are widely used in the field of machine learning. Tuba et al. [15] proposes a handwritten digit recognition algorithm which uses projection histogram for feature extraction and support vector machine for classification. To effectively extract local and global features from handwritten word images, Malakar et al. [16] implement a global search strategy based on genetic algorithm (GA) in the wrapper method to select features. Finally, metaheuristics are also widely used to find the optimal value of the interplanetary transfer trajectory to minimize fuel consumption. Wall et al. [17] applied the genetic algorithm to the trajectory optimization of the asteroid patrol mission, and a near-optimal trajectory is obtained by combining the outer loop genetic algorithm for the sequence optimization and the inner loop genetic algorithm for trajectory optimization. Rosa et al. [18] proposed a hybrid evolutionary algorithm which synergistically exploits differential evolution, genetic algorithms and particle swarm optimization, and applied it to spacecraft trajectory optimization. Vasile et al. [19] tested and compared the global search performance of metaheuristics such as genetic algorithm, differential evolution algorithm, and particle swarm optimization on the space trajectory design problem.
The biggest challenge in the application of metaheuristics is the No Free Lunch (NFL) theorem, that is, there is no general algorithm that can achieve the best results for all optimization problems [11]. Moreover, there are a large number of local optimal solutions in the interplanetary transfer trajectory optimization problem, so the convergence and computational efficiency of the metaheuristic algorithm cannot be guaranteed. An effective approach to this problem is to prune the search space of the problem before applying the metaheuristic. Myatt et al. developed an efficient pruning method for the multiple gravity assists (MGA) problem and named it gravity assist space pruning (GASP) Algorithm [20]. Considering the sequential nature of the problem, the GASP algorithm prunes the search space on a phase-by-phase basis. It results in significant computational savings with search space reductions greater than six orders of magnitude, thus simplifying significantly the subsequent optimization. The pruning method has been shown to have polynomial time and space complexity, so that it remains tractable as the number of decision variables increases [21, 22]. Subsequently, Izzo et al. summarized the research status of GASP algorithm and pointed out that some attempts had been made to improve GASP algorithm [23]. Armellin et al. provided a mathematical proof on the global optimality of the found solution using GASP algorithm based on differential algebra [24]. Schütze et al. proposed a method to design optimal low-thrust gravity-assist trajectories using space pruning and a multi-objective approach [25]. Yang et al. introduced an image tool into the gravity assist space pruning algorithm to determine the boundary of the solution space [26]. In addition, the GASP algorithm was extended to the multiple gravity assists with one deep space maneuver (MGA-1DSM) problem [2729].
However, both the original GASP algorithm and the corresponding improved algorithm are only suitable for the traditional planetary exploration mission, but not for the solar system boundary exploration mission. The gravity-assist sequence of the solar system boundary exploration is more complex than the planetary exploration, the flight time and distance are longer and the constraints of the mission are more stringent. As a result, the dimensions of decision variables and search space for trajectory optimization are extremely complex, and the previous gravity assist space pruning algorithm has been unable to apply to such a situation. All these situations require us to develop an efficient gravity assist space pruning algorithm for the solar system boundary exploration mission and to effectively reduce the search space and improve the convergence and efficiency of the metaheuristic algorithm for trajectory optimization.
In this study, the search space of the transfer trajectory optimization is determined according to the requirements of the solar system boundary exploration mission in the direction of the heliosphere’s tail. An improved gravity assist space pruning algorithm is then proposed to better prune the search space, and the improvement of the algorithm is mainly reflected in two aspects. On the one hand, the forward and backward constraining are used to further prune the search space after each gravity assist pruning, on the other hand, the shape of solution space box bounds combining rectangle and rhombus is used and the several sets of reduced box bounds are automatically determined according to the discontinuity of the pruned solution space. Then the sensitivity of pruning effect to the gravity assist maximum thrust constraint is analyzed and the trajectory optimization effects of differential evolution algorithm, firefly algorithm and bat algorithm are compared. The differential evolution algorithm is used to optimize the trajectories in the entire search space and the pruned solution space box bounds, the convergence probability, convergence efficiency and the performance of the optimal solution are compared.
The main contributions in this paper are listed as the following facts:
It is the first time to carry out a multi-gravity assist trajectory study on the heliosphere tail exploration mission, and to establish a transfer trajectory optimization model for solar system boundary exploration. The optimization effects of differential evolution algorithm, bat algorithm and firefly algorithm are compared and analyzed.
An improved gravity assist space pruning algorithm is proposed to solve the problem of low efficiency and poor convergence of the optimization algorithm. A new pruning procedure and a method for determining the solution space box bounds are proposed. The sensitivity of the pruning algorithm to the gravity assist maximum thrust constraint is studied.
Differential evolution algorithm is used to optimize the trajectories in the entire and pruned search space respectively, by comparing the convergence probability and convergence efficiency of the optimization, the effectiveness of the proposed gravity assist space pruning algorithm is verified.
The rest of the paper is arranged as follows. “Gravity assist model” section describes the gravity-assist models, including MGA and MGA-1DSM. “Optimization and space pruning” section proposes the optimization method of transfer trajectory for the solar system boundary exploration and illustrates the improved gravity assist space pruning algorithm. “Simulation and results” section shows the simulation results of the space pruning as well as the trajectory optimization. “Conclusion” section summarizes the conclusions.

Gravity assist model

There are roughly two types of gravity-assist models. The MGA model is to apply an impulsive maneuver only at the periapsis of the hyperbolic trajectory of the spacecraft relative to the gravity-assist planet. The MGA-1DSM model is to apply a deep space maneuver at some point during the transfer between two adjacent gravity assists.

MGA model

Figure 1 shows the process of gravity assist in the MGA model. Since the gravity-assist time is small relative to the overall mission transfer time, it can be considered that the gravity assist is instantaneous, and the heliocentric position vector of the spacecraft is consistent with that of the gravity-assist planet. By solving Lambert’s problem, we can determine the spacecraft’s incoming and outgoing velocity vectors \({\mathbf{v}}_{{{\text{s}}/{\text{c-in}}}}\) and \({\mathbf{v}}_{{{\text{s}}/{\text{c-out}}}}\) in the heliocentric frame for each gravity assist. Defining \({\mathbf{v}}_{{\text{p}}}\) as the velocity vector of the gravity-assist planet, the incoming and outgoing velocities relative to the planet (hyperbolic residual velocities) are [30]
$$ \begin{gathered} {\mathbf{v}}_{{\infty - {\text{in}}}} = {\mathbf{v}}_{{{\text{s}}/{\text{c-in}}}} - {\mathbf{v}}_{{\text{p}}} \hfill \\ {\mathbf{v}}_{{\infty - {\text{out}}}} = {\mathbf{v}}_{{{\text{s}}/{\text{c-out}}}} - {\mathbf{v}}_{{\text{p}}} \hfill \\ \end{gathered} $$
(1)
These velocity vectors are along the asymptotic directions of the incoming and outgoing hyperbolic orbits about the planet, respectively. The gravity-assist transfer angle \(\delta\) is
$$ \delta = \left\langle {{\mathbf{v}}_{{\infty - {\text{in}}}} ,{\mathbf{v}}_{{\infty - {\text{out}}}} } \right\rangle , $$
(2)
where the symbol 〈〉 denotes the angle between two vectors. Then, the gravity-assist periapsis radius \(r_{{\text{p}}}\) is obtained by solving the following equation
$$ \sin^{ - 1} \left( {1/e_{{\text{in }}} } \right) + \sin^{ - 1} \left( {1/e_{{\text{out }}} } \right) = \delta , $$
(3)
where \(e_{{{\text{in}}}}\) and \(e_{{{\text{out}}}}\) are the eccentricities of incoming and outgoing hyperbolic orbits given by
$$ \begin{gathered} e_{{{\text{in}}}} = 1 + \frac{{r_{{\text{p}}} }}{{\mu_{{\text{p}}} }}v_{{\infty - {\text{in}}}}^{2} \hfill \\ e_{{{\text{out}}}} \, = 1 + \frac{{r_{{\text{p}}} }}{{\mu_{{\text{p}}} }}v_{{\infty - {\text{out}}}}^{2} , \hfill \\ \end{gathered} $$
(4)
where \(\mu_{{\text{p}}}\) is the gravitational constant of the gravity-assist planet, \(v_{{\infty - {\text{in}}}}\) and \(v_{{\infty - {\text{out}}}}\) are the magnitudes of vectors \({\mathbf{v}}_{{\infty - {\text{in}}}}\) and \({\mathbf{v}}_{{\infty - {\text{out}}}}\), respectively. The magnitude of the maneuver at periapsis can be found by
$$ \Delta v = \left| {\sqrt {v_{{\infty {\text{ - in }}}}^{2} + \frac{{2\mu_{{\text{p}}} }}{{r_{{\text{p}}} }}} - \sqrt {v_{{\infty {\text{ - out }}}}^{2} + \frac{{2\mu_{{\text{p}}} }}{{r_{{\text{p}}} }}} } \right| $$
(5)

MGA-1DSM model

As shown in Fig. 2, the gravity assist with deep space maneuver can split the transfer trajectory between two adjacent gravity assists into two legs according to the position where the deep space maneuver is applied. The first leg is obtained by Kepler orbital propagation according to the departure velocity, and the second leg is obtained by solving the Lambert problem. As shown in Fig. 3, the B-plane model is used to describe the gravity-assist process, where \(r_{{\text{p}}}\) is the periapsis radius of the gravity assist and \(\gamma\) is the B-plane angle.
Because the flyby is unpowered during the gravity assist, the spacecraft will follow a hyperbolic path about the planet. Therefore, the magnitudes of the incoming and outgoing velocity vectors relative to the planet are equal, that is
$$ v_{{\infty - {\text{in}}}} = v_{{\infty - {\text{out}}}} = v_{\infty } , $$
(6)
where \(v_{\infty }\) is the magnitude of the hyperbolic residual velocity.
Next, we need to find the outgoing velocity vector. Firstly, the eccentricity of the hyperbola is found by
$$ e = 1 + \frac{{r_{{\text{p}}} v_{\infty }^{2} }}{{\mu_{{\text{p}}} }} $$
(7)
Then, the gravity-assist transfer angle may be found by
$$ \delta = 2\sin^{ - 1} (1/e) $$
(8)
Finally, the outgoing velocity vector is obtained by [31]:
$$ {\mathbf{v}}_{{\infty {\text{ - out }}}} = v_{\infty } (\cos \delta {\hat{\mathbf{S}}} + \cos \gamma \sin \delta {\hat{\mathbf{T}}} + \sin \gamma \sin \delta {\hat{\mathbf{R}}}), $$
(9)
where \({\hat{\mathbf{S}}}\), \({\hat{\mathbf{T}}}\) and \({\hat{\mathbf{R}}}\) is a unit vector defined by
$$ \begin{array}{*{20}l} {{\hat{\mathbf{S}}} = \frac{{{\mathbf{v}}_{{\infty {\text{ - in }}}} }}{{v_{{\infty {\text{ - in }}}} }}} \hfill \\ {{\hat{\mathbf{T}}} = \frac{{{\hat{\mathbf{S}}} \times {\mathbf{v}}_{{\text{p}}} }}{{\left\| {{\hat{\mathbf{S}}} \times {\mathbf{v}}_{{\text{p}}} } \right\|}}} \hfill \\ {{\hat{\mathbf{R}}} = {\hat{\mathbf{S}}} \times {\hat{\mathbf{T}}}} \hfill \\ \end{array} $$
(10)
The outgoing heliocentric velocity vector can then be found as
$$ {\mathbf{v}}_{{\text{s/c - out }}} = {\mathbf{v}}_{{\infty {\text{ - out }}}} + {\mathbf{v}}_{{\text{p}}} $$
(11)

Optimization and space pruning

In this section, we first transform the transfer trajectory optimization problem for the solar system boundary exploration into a nonlinear programming problem with multiple constraints. The standard form of the optimization model and the optimization method we adopt are presented. Then we introduce the improved gravity assist space pruning algorithm in detail, including the introduction of basic pruning criteria and the description of the unique pruning procedure, as well as the explanation of the method to determine box bounds of the solution space after pruning.

Optimization model and method

Traditional planetary exploration missions require the spacecraft to eventually be inserted into an elliptical orbit around the target planet, so the braking maneuver is indispensable. While the solar system boundary exploration mission requires the spacecraft to fly out of the solar system along a hyperbolic orbit and no braking maneuvers are required. Therefore, the last gravity assist is described by the B-plane parameters of the MGA-1DSM model, and meanwhile the MGA model is used in the 1st to the (N − 1)-th gravity assist. Where N denotes the total number of gravity assists performed. After the N-th gravity assist, the spacecraft travels in a Kepler orbit for a while, and then applies a deep space maneuver, and finally flies to the heliosphere’s tail in a Kepler orbit again. On October 1, 2049, the magnitude of the heliocentric position vector of the spacecraft is \(r_{2049}\), and the angle between the spacecraft’s heliocentric position vector and the tail’s position vector is \(\theta_{2049}\).
The decision vector of the trajectory optimization for the solar system boundary exploration is \({\mathbf{x}} = [t_{0} ,T_{1} ,T_{2} , \ldots T_{i} \ldots T_{N} ,r_{pN} ,\gamma ,\eta ,(\Delta v)_{{{\text{dsm}}}} ]\), where \(t_{0}\) represents the departure date, \(T_{i}\) represents the time interval between two adjacent gravity assists, \(r_{pN}\) and \(\gamma\) represent the periapsis radius and the B-plane angle of the N-th gravity assist, respectively. \(\eta\) represents the deep space maneuver time coefficient and the time to apply the deep space maneuver is given by
$$ \begin{aligned} & t_{{{\text{dsm}}}} = t_{N} + \eta \times (t_{f} - t_{N} ) \\ & t_{N} = t_{0} + \sum\limits_{i = 1}^{N} {T_{i} } \\ & t_{f} = 2049,10,1, \\ \end{aligned} $$
(12)
where \(t_{f}\) denotes the end time of the mission, \(t_{N}\) denotes the time of the N-th gravity assist. \((\Delta v)_{{{\text{dsm}}}}\) represents the magnitude of the deep space maneuver applied at \(t_{{{\text{dsm}}}}\).
Here, the velocity vectors of the spacecraft before and after maneuver at \(t_{{{\text{dsm}}}}\) are defined as \({\mathbf{v}}_{{{\text{sc}}}}^{0}\) and \({\mathbf{v}}_{{{\text{sc}}}}^{1}\), respectively, and the direction of the vector \({\mathbf{v}}_{{{\text{sc}}}}^{0}\) is defined as \({\mathbf{n}}_{sc}\). The deep space maneuver is applied along \({\mathbf{n}}_{{{\text{sc}}}}\), so \({\mathbf{v}}_{{{\text{sc}}}}^{1}\) can be calculated by \({\mathbf{v}}_{{{\text{sc}}}}^{1} = {\mathbf{v}}_{{{\text{sc}}}}^{0} + (\Delta {\mathbf{v}})_{{{\text{dsm}}}}\), where \((\Delta {\mathbf{v}})_{{{\text{dsm}}}}\) is the deep space maneuver vector determined by \((\Delta {\mathbf{v}})_{{{\text{dsm}}}} = (\Delta v)_{{{\text{dsm}}}} \times {\mathbf{n}}_{{{\text{sc}}}}\).
The optimization variables are assumed to be in the following range:
$$ \begin{aligned} & t_{0} \in \Gamma \left( {t_{0} } \right) \\ & T_{i} \in \Gamma \left( {T_{i} } \right),\quad i = 1, \ldots N \\ & r_{pN} \in \Gamma \left( {r_{pN} } \right) \\ & \gamma \in \Gamma \left( \gamma \right) \\ & \eta \in \Gamma \left( \eta \right) \\ & \Delta v_{{{\text{dsm}}}} \in \Gamma \left( {\Delta v_{{{\text{dsm}}}} } \right), \\ \end{aligned} $$
(13)
where \(\Gamma ()\) represents a one-dimensional search space formed by value ranges of the variable in parentheses. The entire search space \(\Gamma\) can be expressed as:
$$ \Gamma : = \Gamma \left( {t_{0} } \right) \times \cdots \Gamma \left( {T_{i} } \right) \cdots \times \Gamma \left( {T_{N} } \right) \times \Gamma \left( {r_{pN} } \right) \times \Gamma \left( \gamma \right) \times \Gamma \left( \eta \right) \times \Gamma \left( {\Delta v_{{{\text{dsm}}}} } \right) $$
(14)
The optimization model can be described as
$$ \begin{aligned} & {\text{find: }}{\mathbf{x}} \in \Gamma \\ & {\text{to}}\,{\text{minimise: }}J({\mathbf{x}}) = \sum\nolimits_{i = 1}^{N - 1} {(\Delta V)_{i} ({\mathbf{x}})} + (\Delta v)_{{{\text{dsm}}}} ({\mathbf{x}}) + k \\ & k = k_{1} + k_{2} + k_{3} + k_{4} + k_{5} \\ & k_{1} = c_{1} \max \left(0,C_{3} ({\mathbf{x}}) - C_{3}^{\max } \right) \\ & k_{2} = \sum\nolimits_{i = 1}^{N - 1} {c_{2i} \max (0,r_{pi}^{\min } - r_{pi} ({\mathbf{x}}))} \\ & k_{3} = c_{3} \max (0,100{\text{AU}} - r_{2049} ({\mathbf{x}})) \\ & k_{4} = c_{4} \max (0,\theta_{2049} ({\mathbf{x}}) - 45^{ \circ } ) \\ & k_{5} = \sum\nolimits_{i = 1}^{N - 1} {c_{5i} \max \left(0,(\Delta V)_{i} ({\mathbf{x}}) - (\Delta V)_{i}^{\max } \right)} \\ \end{aligned} $$
(15)
The objective of the optimization is to minimize the total maneuver subject to the constraints, so the objective function \(J\) consists of three terms, which are the sum of the periapsis maneuvers \(\sum\nolimits_{i = 1}^{N - 1} {(\Delta V)_{i} }\), the deep space maneuver \((\Delta v)_{{{\text{dsm}}}}\) and penalty term \(k\). The penalty term \(k\) consists of five sub-terms \(k_{1}\), \(k_{2}\), \(k_{3}\), \(k_{4}\) and \(k_{5}\), which represent the constraints on \(C_{3}\), periapsis radius, position, flight direction and periapsis maneuver, respectively. Where \(C_{3}\) is equal to the square of the hyperbolic residual velocity at launch, which is usually used to measure the carrying capacity of a rocket. \(c_{1}\), \(c_{2i}\), \(c_{3}\), \(c_{4}\) and \(c_{5i}\) represent the penalty coefficients, respectively, and are usually taken to be a large constant. When the constraint conditions are not satisfied, the penalty term \(k\) will become the dominant term of the objective function value, so \(C_{3}\) should be less than the given value \(C_{3}^{\max }\), the periapsis radius \(r_{pi}\) of each gravity assist should be greater than the given value \(r_{pi}^{\min }\), \(r_{2049}\) should be greater than 100AU, \(\theta_{2049}\) should be less than 45° and each periapsis maneuver \((\Delta V)_{i}\) should be less than a given threshold \((\Delta V)_{i}^{\max }\).
Generally speaking, a variety of optimization algorithms such as genetic algorithm, particle swarm optimization, differential evolution algorithm, simulated annealing algorithm and so on can be used for trajectory optimization [3234], but for each specific problem, these algorithms show different performance. It is generally believed that differential evolution algorithm has good performance in dealing with various trajectory optimization problems [3537]. In this paper, we mainly use adaptive differential evolution algorithm to search for the optimal solution on the entire search space and the pruned solution space to compare the efficiency of optimization and the effect of space pruning. Differential evolution algorithm is used in all optimizations with the consistent parameters set as follows: the crossover probability is \(0.5 \times (1 + {\text{rand}}(0,1))\), the mutation probability is \(F = 0.5 \times 2^{\lambda }\), \(\lambda = e^{{1 - G/(G + 1 - G_{\max } )}}\) and mutation operator is
$$ {\mathbf{v}}_{i,G + 1} = {\mathbf{x}}_{i,G} + 0.35 \times ({\mathbf{x}}_{{{\text{best}},G}} - {\mathbf{x}}_{i,G} ) + F \times ({\mathbf{x}}_{r1,G} - {\mathbf{x}}_{r2,G} ), $$
(16)
where G is the current generation number, Gmax is the maximum number of the generation, \({\mathbf{x}}_{i,G}\) represents the individual before mutation, \({\mathbf{v}}_{i,G + 1}\) represents the individual after mutation, \({\mathbf{x}}_{r1,G}\) and \({\mathbf{x}}_{r2,G}\) denote the randomly selected individuals from the population, and \(x_{{{\text{best}},G}}\) means the current best individual.

Improved gravity assist space pruning algorithm

The first step of the improved gravity assist space pruning algorithm is to transform the search space of the problem, which is similar to the original GASP algorithm. Applying the transformation defined by the simple relation \(t_{i} = t_{0} + \sum\nolimits_{j = 1}^{i} {T_{j} } ,i = 0,...,N\) to the search space \(\Gamma\), we obtain a new search space that we denote with \(\Gamma^{ * } = f\left( \Gamma \right)\). As shown in Fig. 4, the mapping \(f\) realizes the transformation of the rectangular search space consisting of \(t_{i}\) and \(T_{i}\) into the rhombic search space consisting of \(t_{i}\) and \(t_{i + 1}\). The (i + 1)-th Lambert arc can be solved in terms of \(t_{i}\) and \(t_{i + 1}\), regardless of the other arc. Thus, the high-dimensional search space is decoupled into a cascade of multiple 2-dimensional search spaces.
The decision vector of the new search space is then [21, 25]:
$$ f:{\mathbf{x}} = [t_{0} ,T_{1} , \ldots ,T_{N} ] \to {\mathbf{X}} = [t_{0} ,t_{1} , \ldots ,t_{N} ] $$
(17)
A new statement of the optimization problem in terms of absolute times \(t_{i}\) can be formulated as shown in Eq. (18)
$$ \begin{aligned} & {\text{find: }}{\mathbf{X}} \in \Gamma^{ * } \\ & {\text{to}}\,{\text{minimise: }}J({\mathbf{X}}) = \sum\nolimits_{i = 1}^{N - 1} {(\Delta V)_{i} ({\mathbf{X}})} + (\Delta v)_{{{\text{dsm}}}} ({\mathbf{X}}) + k \\ & k = k_{1} + k_{2} + k_{3} + k_{4} + k_{5} \\ & k_{1} = c_{1} {\text{max}} (0,C_{3} ({\mathbf{X}}) - C_{3}^{{\text{max}}} ) \\ & k_{2} = \sum\nolimits_{i = 1}^{N - 1} {c_{2i} {\text{max}} (0,r_{pi}^{{\text{min}} } - r_{pi} ({\mathbf{X}}))} \\ & k_{3} = c_{3} {\text{max}} (0,100{\text{AU}} - r_{2049} ({\mathbf{X}})) \\ & k_{4} = c_{4} {\text{max}} (0,\theta_{2049} ({\mathbf{X}}) - 45^{ \circ } ) \\ & k_{5} = \sum\nolimits_{i = 1}^{N - 1} {c_{5i} {\text{max}} \left(0,(\Delta V_{i} )({\mathbf{X}}) - (\Delta V)_{i}^{{\text{max}} } \right)} \\ \end{aligned} $$
(18)
The 2-dimensional search space is then sampled at an appropriate resolution with possible departure dates in the horizontal axis and prospective arrival dates in the vertical axis. Because of this, the number of Lambert problem evaluations is vastly reduced. The grid sampling will require many less ephemeris calculations as the same positions/velocities need not be recalculated for a given departure or arrival time [20, 21].
The improved gravity assisted space pruning algorithm needs to consider the following pruning criteria, namely \(C_{3}\) constraining, gravity assist maximum thrust constraint, gravity assist angular constraint, forward constraining and backward constraining. The details of these pruning criteria are as follow [21, 23]:
1.
\(C_{3}\) constraining: The maximum allowable \(C_{3}\) works on the sampled space \(\Gamma^{ * } \left( {t_{0} } \right) \times \Gamma^{ * } \left( {t_{1} } \right)\), pruning out all those points where corresponding trajectories have unfeasible \(C_{3}\).
 
2.
Gravity assist maximum thrust constraint: If the difference between incoming and outgoing velocities during a gravity assist is larger than a threshold \(T_{{\text{v}}}\), the corresponding trajectories will be pruned out. Through the threshold \(T_{{\text{v}}}\) and the incoming velocity, we can determine the reasonable range of outgoing velocity, so as to prune out the trajectories with infeasible outgoing velocity. Similarly, according to the threshold \(T_{{\text{v}}}\) and the outgoing velocity after pruning, the reasonable range of the incoming velocity can be determined, so that the incoming velocity not in the range can be pruned. The detailed pruning steps are shown in Table 1.
 
3.
Gravity assist angular constraint: The gravity assist angular constraint prunes out infeasible trajectories with periapsis height less than the minimum safe distance for a given planet. Assuming \(i\) valid incoming trajectories and \(j\) valid outgoing trajectories, the pruning steps for gravity assist angular constraint are shown in Table 2.
 
4.
Forward constraining: If the arrival date in \(\Gamma^{ * } \left( {t_{i - 1} } \right) \times \Gamma^{ * } \left( {t_{i} } \right)\) becomes unfeasible because of pruning, the relative departure date in \(\Gamma^{ * } \left( {t_{i} } \right) \times \Gamma^{ * } \left( {t_{i + 1} } \right)\) has to be pruned out.
 
5.
Backward constraining: If the departure date in \(\Gamma^{ * } \left( {t_{i} } \right) \times \Gamma^{ * } \left( {t_{i + 1} } \right)\) becomes unfeasible because of pruning, also the relative arrival date in \(\Gamma^{ * } \left( {t_{i - 1} } \right) \times \Gamma^{ * } \left( {t_{i} } \right)\) has to be pruned out.
 
Table 1
Pruning steps for gravity assist maximum thrust constraint
Steps: gravity assist maximum thrust constraint
1. Calculate the bounds on the possible incoming velocity \(v_{{{\text{min}}}}^{{{\text{in}}}}\) and \(v_{{{\text{max}}}}^{{{\text{in}}}}\)
2. Invalidate any outgoing trajectories that do not have outgoing velocities in the range \(\left[ {v_{{{\text{min}}}}^{{{\text{in}}}} - T_{{\text{v}}} ,v_{{{\text{max}}}}^{{{\text{in}}}} + T_{{\text{v}}} } \right]\)
3. Calculate the modified bounds on outgoing velocity \(v_{{{\text{min}}}}^{{{\text{out}}}}\) and \(v_{{{\text{max}}}}^{{{\text{out}}}}\)
4. Invalidate any incoming trajectories with velocities outside the range \(\left[ {v_{{{\text{min}}}}^{{{\text{out}}}} - T_{{\text{v}}} ,v_{{{\text{max}}}}^{{{\text{out}}}} + T_{{\text{v}}} } \right]\)
Table 2
Pruning steps for gravity assist angular constraint
Steps: gravity assist angular constraint
1.  For all \(i\) incoming trajectories
2.   For all \(j\) outgoing trajectories
3.    If the periapsis height of gravity assist is valid for the current incoming and outgoing trajectory
4.     Mark both incoming and outgoing trajectory as valid
5.    End If
6.   End For
7.  End For
8. Invalidate all trajectories not marked as valid
The original version of GASP algorithm only uses forward and backward constraining after the application of the \(C_{3}\) constraining and the braking maneuver constraint. However, in this study, to ensure that the impact of each pruning operation in the current phase can be transmitted to all other phases and better play the effect of the pruning, a pruning procedure different from the basic pruning algorithm is formed. The pruning criteria of the forward and backward constraining are not only used after the \(C_{3}\) constraining, but also after each gravity assist pruning (gravity assist maximum thrust constraint and gravity assist angular constraint). In this way, the search space can be effectively reduced and the arrival and departure dates of the preceding and following phases can be matched. The pruning procedure of the improved gravity assist space pruning algorithm are shown in Fig. 5.
The box bounds of the solution space after pruning needs to be determined to obtain the range of the decision variables \(t_{0}\) and \(T_{i}\). Since infeasible parts of the space are pruned, the solution space is usually divided into several independent spaces and several sets of box bounds with smaller volume are left. As shown in Fig. 6, the pruned solutions are shown as red dots, and due to grid sampling, each solution actually represents a solution space box shown as a small black box centered on the dot. Because the envelope of the solution space box is an irregular shape, it is difficult to define the value range of the decision variables corresponding to it completely, the solution space box envelope is therefore replaced by the solution space box bounds that happens to completely contain the solution space and is regular in shape, which in effect results in an inevitable enlargement of the solution space. But this enlargement is limited and tolerable because the box bounds are tangent to the solution space envelope.
The existing GASP algorithms all use a single rectangle or rhombus to determine the box bounds, but the rectangle or rhombus has some shortcomings. As shown in Fig. 7, when the solution space is close to the boundary of the original search space, the solution space box bounds determined by the rectangle is easy to exceed the boundary of the original search space, so that solutions that do not belong to the search space are included, and even solutions with \(T_{i + 1} \le 0\) may be obtained, which is inconsistent with the actual situation. Although the rhombic solution space box bounds can determine the value range of \(T_{i + 1}\) accurately enough, the corresponding \(t_{i + 1}\) is always beyond the range determined by the rectangular box bounds, resulting in non-correspondence with the next two-dimensional search space on \(t_{i + 1}\).
In this paper, we use a combination of rectangle and rhombus to determine the solution space box bounds. Firstly, the value range \([t_{i,\min } ,t_{i,\max } ]\) of \(t_{i}\) is determined according to the overlapping part of the rectangular and rhombic box bounds, and then the value range \([T_{i + 1,\min }^{ * } ,T_{i + 1,\max }^{ * } ]\) of \(T_{i + 1}\) is determined according to the intercept of the extension line of the upper and lower bounds of the rhombic box bounds on the \(t_{i + 1}\) axis. According to the value ranges \([t_{i,\min } ,t_{i,\max } ]\) and \([T_{i + 1,\min }^{ * } ,T_{i + 1,\max }^{ * } ]\), the value range \([t_{i + 1,\min }^{ * } ,t_{i + 1,\max }^{ * } ]\) of \(t_{i + 1}\) is obtained using the mapping \(f\) in Eq. (17), and finally the value range \([t_{i,\min }^{{{\text{end}}}} ,t_{i,\max }^{{{\text{end}}}} ]\) of \(t_{i + 1}\) is modified according to Eq. (19).
$$ \begin{gathered} t_{i + 1,{\text{min}} }^{{{\text{end}}}} = \left\{ {\begin{array}{ll} {t_{i + 1,{\text{min}} } ,} & {{\text{if }}(t_{i + 1,{\text{min}} } \ge t_{i + 1,{\text{min}} }^{ * } )} \\ {t_{i + 1,{\text{min}} }^{ * } ,} & {{\text{else}}} \\ \end{array} } \right. \hfill \\ t_{i + 1,{\text{max}} }^{{{\text{end}}}} = \left\{ {\begin{array}{*{20}c} {t_{i + 1,{\text{max}} } ,} & {{\text{if }}(t_{i + 1,{\text{max}} } \le t_{i + 1,{\text{max}} }^{ * } )} \\ {t_{i + 1,{\text{max}} }^{ * } ,} & {{\text{else}}} \\ \end{array} } \right., \hfill \\ \end{gathered} $$
(19)
where \([t_{i + 1,\min } ,t_{i + 1,\max } ]\) is the range of \(t_{i + 1}\) determined from the rectangular solution space box bounds. The ranges \([t_{i,\min } ,t_{i,\max } ]\), \([T_{i + 1,\min }^{ * } ,T_{i + 1,\max }^{ * } ]\) and \([t_{i,\min }^{{{\text{end}}}} ,t_{i,\max }^{{{\text{end}}}} ]\) together determine the solution space box bounds for the combination of the rectangle and rhombic. When the decision variables \(t_{i}\) and \(T_{i + 1}\) are subsequently optimized on the solution space box bounds, Eq. (19) is also used to correct the decision variable values of the newly generated individuals after the mutation and crossover operations of each generation of the differential evolution algorithm (it has the effect of boundary absorption).
In addition, in the matrix corresponding to the pruned search space, the positions of solutions belonging to the same box bounds in the matrix are adjacent, while the positions of solutions not belonging to the same box bounds are discontinuous. Based on this feature, we implement a method to automatically determine every rectangular solution space box bound, and the detailed steps are shown in Table 3. Using the proposed pruning method, the visualization of the high-dimensional search space and the subsequent effective optimization in the reduced search range can be realized.
Table 3
Steps to get the rectangular solution space box bounds
Steps: get rectangular solution space box bounds
1. Obtain the solution space matrix Ms after pruning (\(m\) rows, \(n\) columns)
2.   For the kth box bounds
3.     row(1) = {1:m}, i = 1
4.     For j = 1:\(n\)
5.      If (Ms (row{\(i\)},\(j\))\(\sim\) = NaN
6.       row(\(i\) + 1) = {find(\(\sim\)is NaN (\(M_{{\text{s}}}\)(row(\(i\)),\(j\))))}
7.       If \(M_{{\text{s}}}\)(row{\(i\) + 1},\(j + 1\)) is NaN
8.       Break;
9.       End If
10.       \(i\) = \(i\) + 1;
11.      End If
12.     End
13.     Extract \(M_{{\text{s}}}\) (all elements in row, \(1:j\)) elements to get box bounds \(k\)
14.     Delete columns whose entire elements is NaN in box bounds \(k\)
15.   End

Simulation and results

To better test and show the effect of the pruning algorithm, we choose the flight sequence E-V-V-E-J-N-Tail with as many times of gravity assists as possible. Although this sequence may not be the optimal sequence for the solar system boundary exploration, it is beneficial to highlight the superiority of the pruning algorithm. With the flight sequence E-V-V-E-J-N-Tail, the spacecraft departs from the Earth, passes through two Venus gravity assists (VGA), one Earth gravity assist (EGA), one Jupiter gravity assist (JGA) and one Neptune gravity assist (NGA), finally flies to the tail of the heliosphere. The value range of the decision vector is shown in Eq. (20), which defines a complete and complicated search space. According to the search space of the transfer trajectory given by Eq. (20), the ranges of \(t_{0}\), \(T_{1}\), \(T_{2}\), \(T_{3}\), \(T_{4}\) and \(T_{5}\) are [9132, 11322], [30, 400], [230, 470], [30, 400], [400, 1000] and [1000, 3000] respectively. \(k_{Ti}\) and \(k_{ti}\)(\(i = 0,1,2,3,4,5\)) are defined as the number of bins after the ranges of \(T_{i}\) and \(t_{i}\) are discretized, respectively. With a sampling resolution of 5 days, the number of bins obtained is \(k_{t0} = 439\), \(k_{T1} = 74\), \(k_{T2} = 48\), \(k_{T3} = 74\), \(k_{T4} = 120\) and \(k_{T5} = 400\), respectively. According to the relation \(t_{i + 1} = t_{i} + T_{i + 1}\), we can obtain the number of bins \(k_{t1} = 513\), \(k_{t2} = 561\), \(k_{t3} = 635\), \(k_{t4} = 755\) and \(k_{t5} = 1155\). The number of Lambert problems to be solved at stage \(t_{i}\) − \(t_{i + 1}\) using the gravity assist space pruning algorithm is \(N_{{t_{i} t_{i + 1} }} = k_{{t_{i} }} * k_{{t_{i + 1} }}\). The total number of Lambert problems to be solved is \(N_{{{\text{gasp}}}} = \sum\nolimits_{i = 0}^{4} {N_{{t_{i} t_{i + 1} }} } = {2,220,685}\). However, if the high-dimensional search space is directly discretized using the traverse search with the same sampling resolution, the total number of Lambert problems to be solved is \(N_{{{\text{ts}}}} = \prod\nolimits_{i = 0}^{4} {k_{{t_{i} }} } = {6}{\text{.996}} \times {10}^{{{16}}}\). It can be seen that the gravity assist space pruning algorithm reduces the number of Lambert problems by more than \(N_{{{\text{ts}}}} /N_{{{\text{gasp}}}} = 3.15 \times 10^{10}\) times, which is efficient in calculation and implementation.
$$ \begin{aligned} & t_{0} \in [9132,11322]\,{\text{MJD2000}} \\ & T_{1} \in [30,400]\,{\text{days}} \\ & T_{2} \in [230,470]\,{\text{days}} \\ & T_{3} \in [30,400]\,{\text{days}} \\ & T_{4} \in [400,1000]\,{\text{days}} \\ & T_{5} \in [1000,3000]\,{\text{days}} \\ & r_{pN} \in [{1}{\text{.1}},{300}]R_{pN} \\ & \gamma \in {[} - \pi {,}\pi {]}\,{\text{rad}} \\ & \eta \in {[0}{\text{.01,}}0.99{]} \\ & \Delta V_{{{\text{dsm}}}} \in {[0,}3{]}\,{\text{km/s}} \\ \end{aligned} $$
(20)
The simulation results of pruning the solution space using the proposed gravity assist space pruning algorithm are shown in "Gravity assist space pruning" section, while the simulation results of trajectory optimization in the entire search space are shown in "Trajectory optimization in the entire search space" section. The optimization results on the solution space box bounds after pruning and the comparison of trajectory optimization results before and after pruning are shown in "Trajectory optimization in the solution space box bounds" section.

Gravity assist space pruning

A sampling resolution of 5 days is used in both axes to yield the search space. \(C_{3}\) constraint is \(36\,{\text{km}}^{{2}} {\text{/s}}^{{2}}\), each gravity assist maximum thrust constraint \(T_{{\text{v}}}\) is \(5{\text{ km/s}}\). Gravity assist angular constraint for inner solar system planets is \(r_{pi}^{\min } = 1.05R_{pi}\), while the corresponding value for outer solar system planets is \(r_{pi}^{\min } = 1.1R_{pi}\), where \(R_{pi}\) is the mean radius of the gravity-assist planet.
The execution time of the improved GASP algorithm is 17.97 s on a 3.4 GHz Intel(R) Xeon Duo, and the pruning algorithm only needs to be executed once in total. The process of gradually pruning the solution space with the addition of different constraints is shown in Figs. 8, 9, 10, 11 and 12, where each figure shows the results of five two-dimensional (2D) search spaces (\(\Gamma^{ * } (t_{0} ) \times \Gamma^{ * } (t_{1} )\), \(\Gamma^{ * } (t_{1} ) \times \Gamma^{ * } (t_{2} )\), \(\Gamma^{ * } (t_{2} ) \times \Gamma^{ * } (t_{3} )\), \(\Gamma^{ * } (t_{3} ) \times \Gamma^{ * } (t_{4} )\) and \(\Gamma^{ * } (t_{4} ) \times \Gamma^{ * } (t_{5} )\)) pruned under the current constraints. It can be seen that the \(C_{3}\) constraining pruning and the first and second gravity assist pruning have the most obvious pruning effect on the search spaces \(\Gamma^{ * } (t_{0} ) \times \Gamma^{ * } (t_{1} )\), \(\Gamma^{ * } (t_{1} ) \times \Gamma^{ * } (t_{2} )\) and \(\Gamma^{ * } (t_{2} ) \times \Gamma^{ * } (t_{3} )\), while the third and the fourth gravity assist pruning has the most obvious pruning effect on the search space \(\Gamma^{ * } (t_{3} ) \times \Gamma^{ * } (t_{4} )\) and \(\Gamma^{ * } (t_{4} ) \times \Gamma^{ * } (t_{5} )\), respectively.
After applying the fourth gravity assist constraint pruning, final five 2D search spaces \({\text{C3}}_{4} (t_{0} ,t_{1} )\),\({\text{outV}}1_{4} (t_{1} ,t_{2} )\),\({\text{outV2}}_{4} (t_{2} ,t_{3} )\),\({\text{outV3}}_{{4}} (t_{3} ,t_{4} )\) and \({\text{outV4}}_{{4}} (t_{4} ,t_{5} )\) are obtained and shown in Fig. 13a–e, respectively, where \({\text{outV}}i_{j}\) represents the magnitude of the hyperbolic residual velocity when the spacecraft leaves the i-th planet after the j-th gravity assist constraint pruning, and \({\text{C3}}_{j}\) represents the \(C_{3}\) after the j-th gravity assist constraint pruning. Starting from the above five different 2D search spaces, different numbers of solution spaces box bounds can be determined respectively. Table 4 shows the number of solution space box bounds that can be obtained starting from the 2D search space (a), (b), (c), (d) and (e) respectively. It can be seen that the number of solution space box bounds determined starting from space (d) is the largest, so the solution space can be divided in the most detail. At the same time, the minimum number of solution spaces box bounds can be determined from space (e), although the number of subsequent optimizations can be reduced, the solution space for each optimization is still too large. In summary, we choose to determine the solution space box bounds starting from the space (b) to balance the fineness of the space partition and the ease of the optimization process.
Table 4
Number of box bounds starting from different space
Space
(a)
(b)
(c)
(d)
(e)
Number of box bounds
5
4
7
8
2
The rectangular solution space box bounds named box 1–4 determined from space (b) are shown in Fig. 13b. According to the relationship that the arrival time of the previous phase is the departure time of the next phase, the rectangular box bounds corresponding to the other four 2D search spaces can be obtained as shown in Fig. 13a, c, d, e, respectively.
Table 5 shows the value range of the decision variables corresponding to the box1-box4. The value ranges of \(t_{0}\), \(T_{1}\), \(T_{2}\), \(T_{3}\), \(T_{4}\) and \(T_{5}\) constitute the rhombic box bounds, and the value ranges of \(t_{0}\), \(t_{1}\), \(t_{2}\), \(t_{3}\), \(t_{4}\) and \(t_{5}\) constitute the rectangular box bounds. The intersection of these two box bounds is the solution space after pruning. Therefore, in the subsequent optimization, the range of rhombic box bounds is used as the range of optimization variables, and then the range of rectangular box bounds is used to constrain and correct the value of the corresponding \(t_{i}\).
Table 5
The decision variables range of the pruned solution space box bounds
Variables
box1
box2
box3
box4
\(t_{0}\) (mjd2000)
[9132,9262]
[9567,9792]
[10247,10437]
[10737,11022]
\(T_{1}\) (days)
[100,210]
[75,245]
[130,225]
[70,235]
\(t_{1}\) (mjd2000)
[9277,9422]
[9802,9922]
[10472,10592]
[10962,11177]
\(T_{2}\) (days)
[345,445]
[325,445]
[345,445]
[345,445]
\(t_{2}\) (mjd2000)
[9722,9802]
[10177,10267]
[10917,10967]
[11347,11532]
\(T_{3}\) (days)
[85,315]
[90,230]
[255,325]
[60,245]
\(t_{3}\) (mjd2000)
[9832,10117]
[10272,10467]
[11222,11292]
[11462,11737]
\(T_{4}\) (days)
[625,1000]
[450,1000]
[400,1000]
[400,1000]
\(t_{4}\) (mjd2000)
[10582,11117]
[10742,11467]
[11687,12292]
[11862,12737]
\(T_{5}\) (days)
[1900,3000]
[1745,3000]
[1390,3000]
[1390,3000]
\(t_{5}\) (mjd2000)
[12847,14117]
[12882,14467]
[13427,15292]
[13427,15737]
To better illustrate the effect of the gravity assist space pruning algorithm, we study the sensitivity of the simulation results to the value of the gravity assist maximum thrust constraint Tv. Fixing the sampling resolution to 5 days, we let Tv vary from zero to 15.00 km/s and take a value every 0.10 km/s. In this way, we need to test the effect of gravity assist space pruning under 150 different Tv values (note that in principle, the gravity assist maximum thrust constraint can take different values according to the different planet at each gravity assist, but in this study, for convenience, a unified value Tv is taken for all gravity assists). To evaluate the effect of gravity assist space pruning under different values of Tv, we count the number of elements in the solution space matrix after pruning as a standard to measure the pruning effect, and draw the curves of the number of elements with the change of Tv in final five 2D search spaces \({\text{C3}}_{4}\), \({\text{outV}}1_{4}\), \({\text{outV2}}_{4}\), \({\text{outV}}3_{4}\) and \({\text{outV}}4_{4}\). As shown in Fig. 14, the pruning effect of 2D spaces \({\text{C3}}_{4}\), \({\text{outV}}1_{4}\) and \({\text{outV2}}_{4}\) is less sensitive to Tv, and the number of elements is almost unchanged with the increase of Tv. This is because the required periapsis maneuver itself is relatively small for Venus gravity assist, and it is easy to satisfy the constraint of Tv. However, since the required periapsis maneuver is relatively large for Earth gravity assist and Jupiter gravity assist, the 2D search spaces \({\text{outV}}3_{4}\) and \({\text{outV}}4_{4}\) are very sensitive to Tv. When the value of Tv is small, the constraint of periapsis maneuver cannot be satisfied, and the number of elements in the solution space decreases rapidly due to pruning. The actual trajectory optimization results also show that the magnitude of the two periapsis maneuvers for Venus gravity assist are very small, which are 0.72 km/s and 0.00 km/s, respectively, while the periapsis maneuvers for Earth gravity assist and Jupiter gravity assist are larger, which are 5.00 km/s and 3.62 km/s, respectively. This is consistent with the results of our analysis. In addition, in the 2D search space \({\text{outV}}4_{4}\), the number of elements increases rapidly with the increase of Tv when Tv is less than 5.00 km/s, and the increasing trend slows down when Tv is greater than 5.00 km/s. When Tv is equal to 5.00 km/s, it becomes an inflection point, which is also the reason why Tv is taken as 5.00 km/s in the gravity assist space pruning in this paper.

Trajectory optimization in the entire search space

The global optimization is carried out in the entire search space defined as Eq. (20) using differential evolution (DE) [35], bat algorithm (BA) [38] and firefly algorithm (FA) [39], respectively. The population size is \({\text{NP}} = 200\) and the maximum number of the generation is \(G_{\max } = 3000\) in all three algorithms. The simulation was repeatedly run 50 times due to inconsistent convergence of the algorithm each time. To compare the results of computational intelligence experiments, a single-problem analysis is usually performed, dealing with the results obtained over several runs of the algorithms over a given problem [40]. Here we count the minimum, maximum, average, and standard deviation of the total maneuver in 50 runs of each algorithm to compare the performance of different algorithms. As shown in Table 6, the value of DE is smaller than the other two algorithms in terms of minimum, maximum, average and standard deviation, so DE has better performance. The optimal performances of the three algorithms are ranked as follows: DE is greater than BA, BA is greater than FA.
Table 6
Results of 50 repeated runs in the entire search space
Optimization algorithm
Total maneuver (km/s)
Minimum
Maximum
Average
Standard deviation
DE
9.34
19.25
14.19
2.10
BA
13.36
47.18
19.71
6.84
FA
16.17
59.78
25.08
9.02
The convergence processes of the objective functions of DE, BA and FA are shown in Figs. 15, 16 and 17, respectively. It can be seen that after 3000 iterations, the objective function of DE can all be reduced to below 500, and more than half of the objective function of BA can be reduced to below 500, while the objective function of FA can be reduced below 500 only in less than a quarter of the cases. The actual statistical results from Table 7 show that the number of times that the objective functions of DE, BA and FA converge below 500 in 50 repeated runs is 50, 36 and 7, respectively. Therefore, from the point of view of iterative convergence, there are also conclusions that the performance of DE is greater than that of BA, and the performance of BA is greater than that of FA. In view of this, in the following content of this paper, we only discuss the optimization results of differential evolution algorithm.
Table 7
The number of times the objective function converges below 500 in 50 runs
Optimization algorithm
DE
BA
FA
The number of times
50
36
7
Although the performance of DE is the best among the three algorithms, its standard deviation of 50 runs is still large, reaching 2.10 km/s. This indicates that the difference between each two runs of DE is large, which makes the results of a single optimization not repeatable and makes it difficult to determine whether the results of the next run will be better than those of the current run. In addition, only one of the 50 runs converged to a minimum of 9.34 km/s, only four converged below 10.00 km/s, and the remaining 46 converged above 11.44 km/s. The probability of convergence to the minimum is only 2%. It can also be seen from Fig. 15 that the minimum number of generations required for all objective functions to converge below 500 is 516, which is relatively large, indicating that the convergence efficiency is low. In conclusion, without any pruning of the search space, the convergence probability and efficiency of DE are both low.
From the results of 50 runs, it is clear that the solution with a total maneuver equal to 9.34 km/s is the optimal solution. The transfer trajectory of the optimal solution is shown in Fig. 18, and the relevant parameters of the optimal solution are shown in Table 8. The \(C_{3}\) is \(33.67{\text{ km}}^{{2}} {\text{/s}}^{{2}}\) and the constraint \(C_{3} \le 36{\text{ km}}^{{2}} {\text{/s}}^{{2}}\) is satisfied. The position of spacecraft reaches 100.00 AU in an angle of 23.50 degrees with tail on October 1, 2049, so the constraints \(r_{2049} \ge 100{\text{AU}}\) and \(\theta_{2049} \le 45\deg\) is satisfied. The periapsis radius for the two VGA, EGA, JGA and NGA are \(1.12R_{p1}\),\(2.50R_{p2}\),\(1.05R_{p3}\),\(1.10R_{p4}\) and \(1.29R_{p5}\) respectively, satisfying the constraints \(r_{pi} \ge 1.05R_{pi} (i \le 3)\) and \(r_{pi} \ge 1.1R_{pi} (i \ge 4)\). The magnitude of all periapsis maneuvers is less than or equal to 5.00 km/s, and the magnitude of deep space maneuvers is zero. Therefore, the optimal solution satisfies all the constraints.
Table 8
The value of the decision vector for the optimal solution in the entire search space
Event
Decision vector value
Maneuver magnitude or \(C_{3}\)(\({\text{km}}^{2} /{\text{s}}^{2}\))
Periapsis radius (\(R_{{{\text{pi}}}}\))
Variables
Value
Launch (Earth)
\(t_{0}\) (y-m-d)
2025-05-08
33.67
0.00
1st gravity assist (VGA)
\(T_{1}\) (days)
156.08
0.72
1.12
2nd gravity assist (VGA)
\(T_{2}\) (days)
384.71
0.00
2.50
3rd gravity assist (EGA)
\(T_{3}\) (days)
317.84
5.00
1.05
4th gravity assist (JGA)
\(T_{4}\) (days)
958.34
3.62
1.10
5th gravity assist (NGA)
\(T_{5}\) (days)
2250.54
0.00
1.29
\(r_{pN}\) (\(R_{pN}\))
1.29
\(\gamma\) (rad)
− 1.58
Deep-space maneuver
\(\eta\)
0.13
  
\({\Delta }V_{{{\text{dsm}}}}\) (km/s)
0.00

Trajectory optimization in the solution space box bounds

Since the analysis in the previous section has shown that the performance of DE is better than that of BA and FA, we only use DE for trajectory optimization in each solution space box bound after pruning, and compare the optimization results with those in the previous section. The population size of the algorithm is still \({\text{NP}} = 200\) and the maximum number of generations is \(G_{\max } = 3000\). Table 9 shows the results of 50 repeated runs in box1–4. It can be seen that whether the minimum, maximum, average or standard deviation, the optimization results of box3 are completely better than those of box1, box2 and box4. Therefore, we only discuss the optimization results in box3 in the following.
Table 9
Results of 50 repeated runs in the solution space box bounds
Solution space
Total maneuver (km/s)
Minimum
Maximum
Average
Standard deviation
box1
12.72
15.79
14.20
0.72
box2
24.59
24.68
24.66
0.01
box3
10.54
10.54
10.54
0.00
box4
15.65
21.99
15.79
0.89
Entire search space
9.34
19.25
14.19
2.10
According to Table 9, although the minimum of the total maneuver in box3 is slightly larger than that in the entire search space, the maximum, the average and the standard deviation are all much smaller than those in the entire search space. The standard deviation reaches zero, that is, the magnitude of the total maneuver in each run converges to 10.54 km/s, with a convergence probability of 100%.
The convergence of the objective function for 50 runs in the solution space box3 is shown in Fig. 19. It can be seen that all the objective functions converge to less than 500 after 45 generations, which is much better than the result that the objective functions converge to less than 500 after 516 generations in the entire search space. It shows that the optimization efficiency in the pruned solution space box3 is more than 11 times higher than that in the entire search space.
The transfer trajectory of the optimal solution in the solution space box3 is shown in Fig. 20, the relevant parameters of the optimal solution are shown in Table 10. The \(C_{3}\) can be calculated as \(35.17{\text{ km}}^{{2}} {\text{/s}}^{{2}}\). The position of spacecraft reaches 100.00 AU in an angle of 22.88 degrees with tail on October 1, 2049. The ratio of the periapsis radius to the planet radius is 1.05, 4.02, 1.05, 1.1, and 1.45 for VGA, VGA, EGA, JGA, and NGA, respectively. All these results satisfy the constraints.
Table 10
The value of the decision vector for the optimal solution in the solution space box3
Event
Decision variables value
Maneuver magnitude or \(C_{3}\)(\({\text{km}}^{2} /{\text{s}}^{2}\))
Periapsis radius (\(R_{pi}\))
Variables
Value
Launch (Earth)
\(t_{0}\) (y-m-d)
2028-07-28
5.93
0
1st gravity assist (VGA)
\(T_{1}\) (days)
152.60
0.42
1.05
2nd gravity assist (VGA)
\(T_{2}\) (days)
377.40
0.61
4.02
3rd gravity assist (EGA)
\(T_{3}\) (days)
325.00
5.64
1.05
4th gravity assist (JGA)
\(T_{4}\) (days)
781.91
2.67
1.1
5th gravity assist (NGA)
\(T_{5}\) (days)
1776.90
0.00
1.45
\(r_{pN}\) (\(R_{pN}\))
1.45
\(\gamma\) (rad)
− 1.58
Deep-space maneuver
\(\eta\)
0.01
  
\({\Delta }V_{{{\text{dsm}}}}\) (km/s)
1.21
Table 11 gives a comparison of the optimization results in the entire search space and in the solution space box3. The convergence efficiency of DE in the solution space box3 is more than 11 times higher than that in the entire search space. The probability that the objective function converges to the optimal solution in the solution space box3 is 50 times higher than that in the entire search space. Although the optimal total maneuver in the solution space box3 is slightly larger than that in the entire search space, the periapsis maneuver is actually superior to the latter.
Table 11
Comparison of the optimization results
Parameter
The entire search space
Solution space box3
Generations of convergence to 500
516
45
Convergence probability
2%
100%
Total maneuver of optimal solution (km/s)
9.34
10.54
Periapsis maneuver of optimal solution (km/s)
9.34
9.33
Deep-space maneuver of optimal solution (km/s)
0.00
1.21
Therefore, we can conclude that the improved gravity assist space pruning algorithm proposed in this paper not only guarantees the approximate optimal solution, but also greatly improves the convergence probability and convergence efficiency of trajectory optimization. These results illustrate the effectiveness of the improved gravity assist space pruning algorithm in the transfer trajectory optimization for solar system boundary exploration.

Conclusion

In this paper, we systematically study the transfer trajectory optimization for China's solar system boundary exploration mission and application of the proposed gravity assist space pruning algorithm to the E-V-V-E-J-N-Tail flight sequence for the first time. According to the characteristics of the mission, the transfer trajectory optimization model for the solar system boundary exploration is established, and then the improved gravity assist space pruning algorithm is proposed and discussed in detail. The gravity assist pruning criterion and a new pruning procedure are presented. A new solution space box bounds shape combining rectangular and rhombic is proposed to determine the range of decision variables. The method of determining the number of solution space box bounds and automatically determining the solution space box bounds is given. The optimization performance of differential evolution algorithm, bat algorithm and firefly algorithm for the given problem is compared. And the differential evolution algorithm is used to optimize the decision vector both in the entire search space and solution space box bounds. The simulation results show that the differential evolution algorithm is more efficient than bat algorithm and firefly algorithm. The proposed gravity assist space pruning algorithm is effective in the solar system boundary exploration mission, which is conducive to improving the efficiency of subsequent optimization to more than 11 times, and improving the convergence probability of the objective function by 50 of times.
In this study, not only the flight distance and direction requirements of the solar system boundary exploration mission are met, but also the parameters in line with the actual engineering constraints are adopted. Therefore, the results of this study are realizable in practical engineering, and the relevant conclusions can provide a reference for practical engineering missions. In addition, this study shows that the pruning results of Venus gravity assist are less sensitive to the maximum thrust constraint than those of Earth and Jupiter gravity assist, so the periapsis maneuver constraint of Venus gravity assist can be more stringent, while the periapsis maneuver constraint of Jupiter gravity assist should be relaxed.
The transfer trajectory optimization model established in this paper for solar system boundary exploration adopts N − 1 times of periapsis maneuver and one time of deep space maneuver, and the proposed gravity assist space pruning algorithm is mainly aimed at the situation of periapsis maneuver. However, in practical engineering applications, it is difficult to accurately locate the position of the maneuver as the periapsis in a strict sense, which limits the application scenarios of the improved gravity assist space pruning algorithm proposed in this paper. Therefore, in further research, the transfer trajectory optimization model for solar system boundary exploration using N times of deep space maneuvers and none periapsis maneuvers should be considered. In this case, the dimensions of the decision variables and the volume of the search space are further increased, so a new gravity assist space pruning algorithm for deep space maneuvers should be developed. In addition, the total maneuver magnitude of the optimal transfer trajectory obtained in this paper reaches the order of 10.00 km/s. Because the specific impulse of the pulse propulsion system used is small, the fuel consumption corresponding to the total maneuver of 10.00 km/s is large. To further reduce the fuel consumption, the transfer trajectory optimization of solar system boundary exploration in the case of low-thrust propulsion system should be considered in the follow-up study.

Acknowledgements

This work is supported by the National Natural Science Foundation of China (Grant No. 12150007). The authors would like to thank Lang Lu and Lantian Chang for helpful discussions on topics related to this work.

Declarations

Conflict of interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://​creativecommons.​org/​licenses/​by/​4.​0/​.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Literature
22.
Metadata
Title
Gravity assist space pruning and global optimization of spacecraft trajectories for solar system boundary exploration
Authors
Yuqi Song
Weiren Wu
Hang Hu
Mingpei Lin
Hui Wang
Jinxiu Zhang
Publication date
21-07-2023
Publisher
Springer International Publishing
Published in
Complex & Intelligent Systems / Issue 1/2024
Print ISSN: 2199-4536
Electronic ISSN: 2198-6053
DOI
https://doi.org/10.1007/s40747-023-01123-2

Other articles of this Issue 1/2024

Complex & Intelligent Systems 1/2024 Go to the issue

Premium Partner