6.1 Introduction

The powered descent phase is the terminal phase of the planetary descent and landing mission, where the required direction and magnitude of the thrust engine are determined to steer the spacecraft to meet the pre-determined targeting condition at the end, such as touchdown at the designated landing site with the required velocity [12]. Methods of powered descent guidance originated from the Apollo era and have been further promoted by later Mars landing missions. Typically, acceleration schemes, such as gravity turning and polynomial guidance algorithms [6, 19], were adopted to design and calculate an analytical thrust profile for soft landing. Such methods can hardly achieve precise landing, and its ability to perform in real time for avoiding constraints violation is limited. Besides, fuel optimality is usually ignored in the acceleration scheme. To overcome these shortcomings, powered descent methods with higher landing accuracy based on numerical optimization are proposed [18], including indirect methods by solving a two-point boundary value problem, direct methods based on solving nonlinear programming (NLP) or convex optimization (CO) problems [2, 4, 7]. Powered descent methods based on numerical optimization essentially solve a trajectory optimization problem, which guarantees the feasibility of physical constraints, as well as fuel optimality.

Future planetary exploration missions will require spacecrafts to land in high-value scientific areas such as craters and boulder fields [5]. When encountering unexpected events or subsystem failure, the spacecraft needs to deflect the pre-determined landing trajectory to an alternative site [8]. The powered descent trajectory must be reconstructed during flight, posing new challenges to the guidance algorithm [15]. Benefited from computer hardware improvement, onboard computational guidance and control based on numerical optimization have been gradually becoming an important direction for powered descent methods [11]. This new trend enables a spacecraft to autonomously change its landing site and generate powered descent trajectories online.

This chapter explores the adaptive powered descent algorithms in two scenarios. The first scenario discusses adaptive powered descent in planetary exploration missions. Since the planetary exploration missions are usually carried out on the planet with a thin atmosphere, a three degree-of-freedom (DOF) translational model is formulated disregarding aerodynamic forces. With optimal sensitivity method, fuel consumption of multiple candidate landing sites is accurately estimated, which facilitates a rapid decision of optimal landing site. In the second scenario, a model of six DOF is established to depict dynamics of a reusable rocket because the dense earth atmosphere causes significant aerodynamic torques. In order to realize emergency landing under significant deviation from the nominal trajectory, a highway landing trajectory optimization problem is established. Through successive convexification, trajectory recovery can be implemented despite the large initial uncertainties. These two trajectory optimization algorithms are validated through simulations.

The remainder of this chapter is organized as follows. The multi-point powered descent algorithm for fuel optimality is presented in Sect. 6.2. The highway powered descent algorithm is detailed in Sect. 6.3. Finally, Sect. 6.4 gives conclusions.

6.2 Multi-point Powered Descent Based on Optimal Sensitivity

As a result of increased focus on the exploration of planets in the solar system, planetary powered descent is gaining renewed interest. The trajectory must be planned onboard because the state of the lander at the start of powered descent cannot be adequately predicted beforehand due to atmospheric uncertainties and/or the limits of deep space navigation [16, 17]. The multi-point powered descent algorithm aims to make a real-time decision that recognizes among a list of potential landing sites the one with a trajectory of least fuel consumption leading to it.

6.2.1 Problem Formulation

Since powered descent phase of a planetary landing mission starts at a low altitude relative to planet’s radius, the uniform gravity assumption is appropriate. Other forces such as aerodynamic forces due to winds are neglected in optimal trajectory design and they are treated as disturbances [4]. a lumped mass rigid body model of the lander is used, where the translational dynamics are decoupled from rotational dynamics. This is a common assumption used in practice mainly because bandwidth of the attitude control authority is typically far higher than that of the translational one [1].

The translational dynamics of the lander are expressed in a surface fixed frame of reference illustrated in Fig. 6.1 as follows:

$$\begin{aligned} \begin{array}{l} \boldsymbol{\dot{r}}(t)=\boldsymbol{v}(t)\\ \boldsymbol{\dot{v}}(t)=\boldsymbol{g}+\boldsymbol{T}(t)/m(t)\\ \dot{m}(t)=-\alpha \left\| \boldsymbol{T}(t) \right\| \\ \end{array} \end{aligned}$$
(6.1)

where \(\boldsymbol{r}=\left[ \begin{matrix} x&{} y&{} z\\ \end{matrix} \right] ^{\textrm{T}}\) is the position vector; \(\boldsymbol{v}=\left[ \begin{matrix} v_x&{} v_y&{} v_z\\ \end{matrix} \right] ^{\textrm{T}}\) is the velocity vector; \(\boldsymbol{g}\) is the constant gravitational acceleration vector of the planet; \(\boldsymbol{T}=\left[ \begin{matrix} T_x&{} T_y&{} T_z\\ \end{matrix} \right] ^{\textrm{T}}\) is the thrust vector; m is the lander mass; and \(\alpha \) is a positive constant describing the fuel consumption rate.

Fig. 6.1
figure 1

Coordinate of powered descent process

The magnitude of \(\boldsymbol{T}\) is bounded as:

$$\begin{aligned} {T_{\min }} \le \left\| {\boldsymbol{T}(t)} \right\| \le {T_{\max }} \end{aligned}$$
(6.2)

Onboard sensors for terrain-relative navigation generally require specific viewing orientations, which imposes a constraint on the lander orientation [1]. This may imply that the thrust direction should not deviate more than \(\gamma \) degrees from the positive x direction. This type of constraint can easily be expressed as follows:

$$\begin{aligned} \begin{array}{l} \boldsymbol{\hat{n}}^{\textrm{T}}\boldsymbol{T}(t)\ge \left\| \boldsymbol{T}(t) \right\| \cos \gamma \\ \boldsymbol{\hat{n}}^{\textrm{T}}=\left[ \begin{matrix} 1&{} 0&{} 0\\ \end{matrix} \right] \\ \end{array} \end{aligned}$$
(6.3)

where \(\cos \gamma \) and \(\boldsymbol{\hat{n}}\) describe the cone that the thrust vector should point into. Also, it is required that the trajectory does not go below the surface during the maneuver, namely:

$$\begin{aligned} x(t) \ge 0 \end{aligned}$$
(6.4)

The mass of the fuel consumed cannot be more than the total mass of the fuel, hence the constraint is given by:

$$\begin{aligned} {m_0} - {m_{fuel}} \le m(t) \le {m_0} \end{aligned}$$
(6.5)

where \({m_{fuel}}\) is total mass of the fuel, and \({m_0}\) is the initial mass of the lander.

The initial and final position and velocity, and initial mass are specified as follows:

$$\begin{aligned} \begin{array}{l} m(0)=m_0\\ \boldsymbol{r}(0)=\boldsymbol{r}_0,\boldsymbol{r}(t_f)=\boldsymbol{r}_f\\ \boldsymbol{v}(0)=\boldsymbol{v}_0,\boldsymbol{v}(t_f)=\boldsymbol{v}_f\\ \end{array} \end{aligned}$$
(6.6)

Therefore, we obtain the problem of powered descent as follows:

$$\begin{aligned} \begin{array}{l} \underset{T}{\max }\,m(t_f)\\ s.t.\,\textrm{Dynamics}:(6.1)\\ \;\;\;\;\;\,\textrm{PathConstraints}:(6.2)-(6.5)\\ \;\;\;\;\;\,\textrm{BoundaryConstraints}:(6.6)\\ \end{array} \end{aligned}$$
(6.7)

As shown in (6.7), the problem of single-point powered descent is established. For the problem of multi-point powered descent, it is straightforward to calculate the optimal trajectory point by point, then select the fuel-optimal landing site. However, the point-by-point approach is quite time-consuming, especially in the case of many candidate landing sites. Therefore, an effective and efficient multi-point powered descent algorithm is necessary.

6.2.2 Optimal Sensitivity

The finite-element collocation approach is chosen to discretize the state and control variables of a dynamic optimization problem as (6.7), leading to a large-scale NLP problem. We prefer Radau collocation points because they allow constraints to be set at the end of each element and to stabilize the system more efficiently if high index differential-algebraic equations are present. Without loss of generality, the following slacked NLP problem is obtained after discretization [3, 9]:

$$\begin{aligned} \begin{array}{l} \underset{\boldsymbol{x}}{\min }\,f(\boldsymbol{x};\boldsymbol{p})\\ s.t.\,\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})=0\\ \;\;\;\;\;\,\boldsymbol{x}\ge 0\\ \end{array} \end{aligned}$$
(6.8)

where the variable vector \(\boldsymbol{x}\in \mathbb {R} ^{n_x}\) consists of the discretized state, control and slack variables in formulation (6.7); The parameter vector \(\boldsymbol{p}\in \mathbb {R} ^{n_p}\) refers to the vector of perturbation parameters that corresponds to the position vector of candidate landing site; and \(\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p}):\mathbb {R} ^{n_x+n_p}\rightarrow \mathbb {R} ^m\) are equality constraints.

The interior point method is used to solve the above NLP problem. The inequality constraints are transformed into a barrier term and added to the objective function. The following sequence of barrier subproblems is solved with \(\mu \rightarrow 0\) [21]:

$$\begin{aligned} \begin{array}{l} \underset{\boldsymbol{x}}{\min }\,f(\boldsymbol{x};\boldsymbol{p})-\mu \sum _{i=1}^{n_x}{\ln \mathrm {(}x_i)}\\ s.t.\,\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})=0\\ \end{array} \end{aligned}$$
(6.9)

The KKT conditions are defined as:

$$\begin{aligned} \begin{array}{l} \nabla _xL(\boldsymbol{x},\boldsymbol{\lambda },\boldsymbol{v};\boldsymbol{p})=\nabla _xf(\boldsymbol{x};\boldsymbol{p})+\nabla _x\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})\boldsymbol{\lambda }-\boldsymbol{v}=0\\ \boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})=0\\ x^{(i)}v^{(i)}=\mu \\ \end{array} \end{aligned}$$
(6.10)

where \(\boldsymbol{\lambda }\in \mathbb {R} ^{n_{\lambda }}\) and \(\boldsymbol{v}\in \mathbb {R} ^{n_x}\) are vectors of the Lagrangian multipliers of the equality constraints and the bounds respectively; the superscript i denotes the ith component of a vector.

Under proper assumptions, we obtain the following theorem:

Theorem 6.1

([14]) Consider problem (6.8) with \(f(\boldsymbol{x};\boldsymbol{p})\) and \(\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})\) at least twice differentiable in \(\boldsymbol{x}\). Let \(\boldsymbol{x}^*\) be a local constrained minimizer of problem (6.8). The linear independence constraint qualification, strict complementarity, and strict second-order sufficient conditions hold at \(\boldsymbol{x}^*\). Then, for barrier problem (6.9) with \(\boldsymbol{p}=\boldsymbol{p}_0\) and \(\mu \rightarrow 0\), a unique, continuous differentiable vector function \(\boldsymbol{x}(\mu ;\boldsymbol{p}_0)\) exists; the minimizer of problem (6.9) exists for \(\mu > 0\) in a neighborhood of \(\mu = 0\); \(\lim _{\mu \rightarrow 0^+} \boldsymbol{x}(\mu ;\boldsymbol{p}_0)=\boldsymbol{x}^*\); \(\left\| \boldsymbol{x}(\mu ;\boldsymbol{p}_0)-\boldsymbol{x}^* \right\| =O(\mu )\).

Theorem 6.2

([14]) For barrier problem (6.9), assume that \(f(\boldsymbol{x};\boldsymbol{p})\) and \(\boldsymbol{c}(\boldsymbol{x};\boldsymbol{p})\) are k times differentiable in \(\boldsymbol{p}\) and k+1 times differentiable in \(\boldsymbol{x}\), and that the assumption of \(\boldsymbol{x}^*\) in Theorem 6.1 hold. Then, for the solution of problem (6.9) with a small positive \(\mu \):

  1. 1.

    \(\boldsymbol{x}(\mu ;\boldsymbol{p}_0)\) is an isolated minimizer and the associated barrier multipliers and dual variables are unique.

  2. 2.

    For some \(\boldsymbol{p}\) in a neighborhood of \(\boldsymbol{p}_0\), a k times differentiable function exists as follows:

    $$\begin{aligned} \boldsymbol{s}(\mu ;\boldsymbol{p})^{\textrm{T}}=\left[ \begin{array}{ccc} \boldsymbol{x}(\mu ;\boldsymbol{p})^{\textrm{T}}&{} \boldsymbol{\lambda }(\mu ;\boldsymbol{p})^{\textrm{T}}&{} \boldsymbol{v}(\mu ;\boldsymbol{p})^{\textrm{T}}\\ \end{array} \right] \end{aligned}$$
    (6.11)

    which corresponds to a locally unique minimum for problem (6.9) with the multiplier vector \(\boldsymbol{\lambda }\) and dual variable vector \(\boldsymbol{v}\).

  3. 3.

    Solution \(\boldsymbol{s}(0;\boldsymbol{p}_0)\equiv \lim _{\mu \rightarrow 0,\boldsymbol{p}\rightarrow \boldsymbol{p}_0} \boldsymbol{s}(\mu ;\boldsymbol{p})=\boldsymbol{s}^*\).

Theorem 6.1 indicates that nearby solutions of problem (6.9) provide useful information for bounding properties for problem (6.8) for small positive values of \(\mu \). Theorem 6.2 considers the barrier formulation and sensitivity of its solution with respect to changes in values of \(\boldsymbol{p}\). Based on Theorems 6.1 and 6.2, the implicit function theorem can be applied to formulation (6.10) at \(\boldsymbol{p}_0\). We define the quantities:

$$\begin{aligned} \begin{array}{l} S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))=\left[ \begin{array}{ccc} \nabla _{xx}L(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))&{} \nabla _x\boldsymbol{c}(\boldsymbol{x}(\mu ;\boldsymbol{p}_0))&{} -\boldsymbol{I}_{nx}\\ \nabla _x\boldsymbol{c}(\boldsymbol{x}(\mu ;\boldsymbol{p}_0))^{\textrm{T}}&{} 0&{} 0\\ V(\mu ;\boldsymbol{p}_0)&{} 0&{} \boldsymbol{X}(\mu ;\boldsymbol{p}_0)\\ \end{array} \right] \\ S_p(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))=\left[ \begin{array}{c} \nabla _{xp}L(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))\\ \nabla _p\boldsymbol{c}(\boldsymbol{x}(\mu ;\boldsymbol{p}_0))\\ 0\\ \end{array} \right] \\ S_{\mu }(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))=\left[ \begin{array}{c} 0\\ 0\\ -\boldsymbol{I}_{nx}\\ \end{array} \right] \\ \end{array} \end{aligned}$$
(6.12)

where \(\boldsymbol{X}=diag\{\boldsymbol{x}\}\), \(\boldsymbol{V}=diag\{\boldsymbol{v}\}\), and \(\boldsymbol{I}\) is the identity matrix. \(S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))\) and \(S_p(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))\) are solved numerically. If the assumptions of Theorem 6.1 hold, \(S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))\) is non-singular, and the sensitivity \(d\boldsymbol{s}(\mu ;\boldsymbol{p}_0)^{\textrm{T}}/d\boldsymbol{p}\) can be calculated from:

$$\begin{aligned} \frac{d\boldsymbol{s}(\mu ;\boldsymbol{p}_0)^{\textrm{T}}}{d\boldsymbol{p}}=-S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))^{-1}S_p(\boldsymbol{s}(\mu ;\boldsymbol{p}_0)) \end{aligned}$$
(6.13)

For small value of \(\mu \) and \(\left\| \boldsymbol{p}-\boldsymbol{p}_0 \right\| \), expand \(\boldsymbol{s}(\mu ;\boldsymbol{p})\) at \((\mu ;\boldsymbol{p}_0)\):

$$\begin{aligned} \boldsymbol{s}(\mu ;\boldsymbol{p})=\boldsymbol{s}(\mu ;\boldsymbol{p}_0)-S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))^{-1}S_p(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))(\boldsymbol{p}-\boldsymbol{p}_0)+o(\boldsymbol{p}-\boldsymbol{p}_0) \end{aligned}$$
(6.14)

We can also have:

$$\begin{aligned} \begin{aligned} \boldsymbol{s}(0;\boldsymbol{p})=\boldsymbol{s}(\mu ;\boldsymbol{p}_0)-S_s(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))^{-1}[S_p(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))(\boldsymbol{p}-\boldsymbol{p}_0)+S_{\mu }(\boldsymbol{s}(\mu ;\boldsymbol{p}_0))\mu ] \\ +o(\boldsymbol{p}-\boldsymbol{p}_0)+o(\mu ) \end{aligned} \end{aligned}$$
(6.15)

6.2.3 Multi-point Guidance Algorithm

The main idea of the multi-point powered descent algorithm is to utilize the fuel optimal trajectory from the initial state of the lander to the centroids of the candidate landing sites to estimate the fuel optimal trajectories from the same initial state of the lander to each candidate landing site based on sensitivity analysis. In the sensitivity analysis, the nominal parameter vector \(\boldsymbol{p}_0\) is the position of the centroid, and each perturbed parameter vector \(\boldsymbol{p}\) is the position of one candidate landing site.

In terms of the optimal sensitivity theory above, the overall multi-point powered descent algorithm is given as follows:

Step1: Partition all candidate landing sites into clusters based on the modified K-means clustering method [13]. (Note that the following steps show the guidance algorithm implemented in one cluster. The proposed algorithm should be implemented for each cluster in practice.)

Step2: Obtain the fuel-optimal trajectory \(\boldsymbol{s}_{optimal}(0;\boldsymbol{p}_0)\) from the initial position of the lander \(({x_0},{y_0},{z_0})\) to the centroid \(\boldsymbol{p}_0\).

Step3: Estimate trajectories \(\boldsymbol{s}_{estimated}(0;\boldsymbol{p})\) from the initial position of the lander \(({x_0},{y_0},{z_0})\) to the candidate landing sites \(\boldsymbol{p}\) whose centroid is \(\boldsymbol{p}_0\) based on sensitivity analysis as follows:

$$\begin{aligned} \boldsymbol{s}_{estimated}(0;\boldsymbol{p})=\boldsymbol{s}_{optimal}(0;\boldsymbol{p}_0)-S_s(\boldsymbol{s}(0;\boldsymbol{p}_0))^{-1}S_p(\boldsymbol{s}(0;\boldsymbol{p}_0))(\boldsymbol{p}-\boldsymbol{p}_0) \end{aligned}$$
(6.16)

Step4: Select the optimal landing site \(\boldsymbol{p}^*=(x_{f^*},y_{f^*},z_{f^*})\) that consumes the least fuel based on Step 3.

Step5: Calculate the fuel-optimal trajectory from the initial position of the lander \(({x_0},{y_0},{z_0})\) to the optimal landing site \(({x_{{f^ * }}},{y_{{f^ * }}},{z_{{f^ * }}})\), using \(\boldsymbol{s}_{estimated}(0;\boldsymbol{p}^*)\) as the initial guess.

Step6: Output the optimal results. (For a couple of clusters, compare the best landing sites from all the clusters before outputting the best one.)

Theorem 6.3

Given the accuracy of sensitivity analysis, the proposed multi-point powered descent algorithm has minimum total estimation error with modified K-means clustering method.

Proof

The optimal trajectory from the initial state of the lander to the defined centroid \({C_j},j = 1, \ldots ,K\) is \(\boldsymbol{s}_{optimal}(0;\boldsymbol{p}_0)\), and the trajectories to each candidate landing site can be estimated by (6.16). The total estimation error is written as follows:

$$\begin{aligned} \begin{aligned} Error&=\sum _{i=1}^N{Error_i}\\&=\sum _{j=1}^K{\sum _{i\in Cluster(j)}{\boldsymbol{s}_{optimal}(0;\boldsymbol{p}_i)-\boldsymbol{s}_{estimated}(0;\boldsymbol{p}_i)}}\\&=\begin{array}{l} \sum \limits _{j=1}^K{\sum _{i\in Cluster(j)}{\boldsymbol{s}_{optimal}(0;\boldsymbol{p}_i)-\{\boldsymbol{s}_{estimated}(0;\boldsymbol{p}_{j0})}}\\ -S_s(\boldsymbol{s}(0;\boldsymbol{p}_{j0}))^{-1}S_p(\boldsymbol{s}(0;\boldsymbol{p}_{j0}))(\boldsymbol{p}-\boldsymbol{p}_{j0})\}\\ \end{array}\\&=\sum _{j=1}^K{\sum _{i\in Cluster(j)}{o\Big (\left\| \boldsymbol{p}_i-\boldsymbol{p}_{j0} \right\| \Big )}}\\ \end{aligned} \end{aligned}$$
(6.17)

To minimize the total estimation error, we have:

$$\begin{aligned} \min \,Error=\min \sum _{j=1}^K{\sum _{i\in Cluster(j)}{o(\left\| \boldsymbol{p}_i-\boldsymbol{p}_{j0} \right\| )}} \end{aligned}$$
(6.18)

which is equivalent to

$$\begin{aligned} \min _{\boldsymbol{p}_{j0}} \sum _{j=1}^K{\sum _{i\in Cluster(j)}{o(\left\| \boldsymbol{p}_i-\boldsymbol{p}_{j0} \right\| )}} \end{aligned}$$
(6.19)

where the optimal \(\boldsymbol{p}_{j0},j=1, \ldots , K\) are consistent with the definition of the centroids of the modified K-means clustering method.

6.2.4 Simulation Results

In Scenario 1, the initial position of the lander in the figures is \((2500,150,150){\textrm{m}} \), and the initial velocity of the lander is \((-10,-50,10)\textrm{m}/\textrm{s}\). One cluster is obtained based on the modified K-means clustering method, and the position of the centroid of these 36 candidate landing sites is \((0.5,0,0){\textrm{m}} \). In the following figures, A denotes the initial position of the lander; \({D_1}\) to \({D_{36}}\) denote the candidate landing sites from No. 1 to No. 36; C refers to the centroid of these candidate landing sites.

Figure 6.2 shows the results obtained by the proposed multi-point powered descent algorithm. First, the fuel-optimal trajectory from A to the centroid C is obtained as shown in Fig. 6.2a. Then, the estimated trajectories expressed by the red lines in Fig. 6.2b and c from A to each candidate landing site are obtained based on the sensitivity analysis. Fig. 6.2c is the vertical view of Fig. 6.2b. The fuel-optimal trajectory from these estimated trajectories is selected from the estimation results. In this scenario, the estimated trajectory from A to \({D_1}\) is fuel-optimal, thus \({D_1}\) is the best landing site. Finally, the trajectory from A to \({D_1}\) is optimized based on the initial value given by the estimated trajectory and is shown in Fig. 6.2d.

Fig. 6.2
figure 2

Results by the proposed multi-point powered descent algorithm (Scenario 1)

Figure 6.3a shows the optimized trajectories from the initial position A to each candidate landing site. The trajectories are optimized separately for destinations ranging from \({D_1}\) to \({D_{36}}\). Then, the best trajectory that consumes the least fuel is selected from the resulting 36 trajectories. Figure 6.3b shows the results of fuel consumption of the optimized trajectories in Fig. 6.3a and the estimated trajectories in Fig. 6.2b. It is obvious that the sensitivity resulted fuel consumption approximates the results by actual optimization very well, and \({D_1}\) is the truly the best landing site, which verifies the validity of the proposed algorithm.

The performance of the proposed approach compared with that of the general approach (point by point) for Scenario 1 is presented in Table 6.1 This table includes the number of optimization runs (#nor), total CPU time taken in solving the problem (#Total CPU), and CPU time for sensitivity calculation (#Sen CPU). Apparently, the proposed approach is much better for real-time applications.

Fig. 6.3
figure 3

Comparison with actual optimization results (Scenario 1)

Table 6.1 Performance comparison of Scenario 1
Fig. 6.4
figure 4

Optimal state and control profiles (Scenario1)

The sub-figures in Fig. 6.4 show the optimal state and control profiles from the initial position of the lander to the best landing site \({D_1}\). Figure 6.2d shows the three-dimensional position of the lander with respect to time. The lander finally lands at the specified landing site \((0.5, - 375,375){\textrm{m}} \). Figure 6.4a gives the velocity vector of the lander with respect to time, showing that the velocity vector eventually equals zero when the lander lands on the specified position of the planetary surface. Figure 6.4b shows the thrust magnitude profile with respect to time. The thrust magnitude changes between the maximum and minimum. It can be seen that the optimal thrust control consists of a period of minimum thrust after the mission starts, then a period of maximum thrust until touchdown. As shown in Fig. 6.4c, the thrust pointing satisfies the corresponding requirements.

In Scenario 2, the initial position of the lander is \((2500, - 500,500){\textrm{m}} \), and the initial velocity of the lander is \((-10,40,-40)\,\textrm{m}/\textrm{s}\). Based on the modified K-means clustering method, three clusters are obtained, and the positions of the centroids are \((0.5, - 186.875,440){\textrm{m}} \) denoted by \({C_1}\), \((0.5, - 1068.75, - 725){\textrm{m}} \) denoted by \({C_2}\), and \((0.5,1126.25,630){\textrm{m}} \) denoted by \({C_3}\), respectively. In the following figures, A denotes the initial position of the lander; \({D_1}\) to \({D_{48}}\) denote the candidate landing sites from No. 1 to No. 48. The centroid of \({D_1}\) to \({D_{24}}\) is \({C_1}\); the centroid of \({D_{25}}\) to \({D_{36}}\) is \({C_2}\); and the centroid of \({D_{37}}\) to \({D_{48}}\) is \({C_3}\).

Fig. 6.5
figure 5

Results by the proposed multi-point powered descent algorithm (Scenario 2)

Fig. 6.6
figure 6

Comparison with actual optimization results (Scenario 2)

Figure 6.5 shows results obtained by the proposed multi-point algorithm. First, the fuel-optimal trajectories from A to the centroids \({C_1}\), \({C_2}\), and \({C_3}\) are respectively obtained as shown in Fig. 6.5a. Then, the estimated trajectories expressed by the red lines in Fig. 6.5b and c from A to each candidate landing site are obtained based on the sensitivity analysis. Figure 6.5c is the vertical view of Fig. 6.5b. The trajectories to sites from \({D_1}\) to \({D_{24}}\) are estimated by the optimal trajectory from A to \({C_1}\); the trajectories to sites from \({D_{25}}\) to \({D_{36}}\) are estimated by the optimal trajectory from A to \({C_2}\); and the trajectories to sites from \({D_{37}}\) to \({D_{48}}\) are estimated by the optimal trajectory from A to \({C_3}\). The fuel-optimal trajectory is selected from these estimated trajectories. In this scenario, the estimated trajectory from A to \({D_{25}}\) is fuel-optimal, thus \({D_{25}}\) is the best landing site. Finally, the trajectory from A to \({D_{25}}\) is optimized based on the initial guess given by the estimated trajectory and is shown in Fig. 6.5d.

Figure 6.6a shows the optimized trajectories from the initial position A to each candidate landing site. The trajectories are optimized for destination \({D_{1}}\) to \({D_{48}}\) point by point. Then, the best trajectory that consumes the least fuel is selected from the resulting 48 trajectories. Figure 6.6b shows the results of fuel consumption of the optimized trajectories in Fig. 6.6a and the estimated trajectories in Fig. 6.5b. Again, fuel consumption resulted by the two algorithms are nearly the same, and \({D_{25}}\) is fuel optimal. Performance comparison of these two algorithms in scenario 2 is presented in Table 6.2. In this case of multiple clusters, the proposed algorithm is still suitable for online applications.

Table 6.2 Performance comparison of Scenario 2

6.3 Highway Powered Descent Based on Successive Convexification

In the whole flight, the powered landing phase is the last opportunity for a reusable rocket to correct the trajectory deviation [10]. However, this is not even possible when difficulties, such as abrupt environment changes, a system failure, etc., appear at this stage. In order to deal with such emergencies, we attempt to take advantage of the highways near the pre-specified landing zone, trying to land on some highway instead. The adaptive powered descent algorithm in this section is devised to reconstruct trajectories for highway landing autonomously, to help landing in extreme conditions.

6.3.1 Problem Formulation

Due to the dense atmosphere, the aerodynamic forces are not negligible and have to be incorporated in the dynamic formulation. Moreover, the rotational dynamics are applied to describe attitude changes, preventing a rocket from tip-over.

We define the quaternion \(\boldsymbol{q}_{B\leftarrow I}\) to describe the attitude of ground coordinate relative to body coordinate:

$$\begin{aligned} \boldsymbol{q}_{B\leftarrow I}=\left[ \begin{array}{c} \cos \mathrm {(}\theta /2)\\ \sin \mathrm {(}\theta /2){\hat{\textbf{e}}}\\ \end{array} \right] \end{aligned}$$
(6.20)

where \(\hat{\textbf{e}}\) is the rotation axis of ground coordinate relative to body coordinate, \(\theta \) is the rotation angle.

The six degree-of-freedom model of a reusable rocket can be expressed as:

$$\begin{aligned} \begin{array}{l} \dot{m}=-\frac{1}{I_{sp}g_0}\left\| \boldsymbol{T}_B \right\| \\ \boldsymbol{\dot{r}}_I=\boldsymbol{v}_I\\ \boldsymbol{\dot{v}}_I=\frac{1}{m}(\boldsymbol{T}_I+\boldsymbol{D}_I)+\boldsymbol{g}\\ \boldsymbol{\dot{q}}_{B\leftarrow I}=\frac{1}{2}\left[ \boldsymbol{\omega }_B\otimes \right] \boldsymbol{q}_{B\leftarrow I}\\ \textbf{J}_B\boldsymbol{\dot{\omega }}_B=\boldsymbol{M}_B-\left[ \boldsymbol{\omega }_B\times \right] \textbf{J}_B\boldsymbol{\omega }_B\\ \end{array} \end{aligned}$$
(6.21)

where m is the reusable rocket mass, \({I_{sp}}\) is the vacuum-specific-impulse, \(\boldsymbol{g}\) is the gravity vector; the position \(\boldsymbol{r}_I\), velocity \(\boldsymbol{v}_I\), thrust force \(\boldsymbol{T}_I\) and drag force \(\boldsymbol{D}_I\) are all expressed in terms of the ground coordinate; the angular velocity \(\boldsymbol{\omega }_B\), rocket’s moment of inertia \(\textbf{J}_B\), torque \(\boldsymbol{M}_B\) are expressed in terms of the body coordinate. The transformation between coordinates is realized by direction cosine matrix \(\boldsymbol{C}_{B\leftarrow I}\) and \(\boldsymbol{C}_{I\leftarrow B}\), which are detailed in [22]. For any vector \(\boldsymbol{\xi }\in \mathbb {R} ^3\), we define matrixes \(\left[ \boldsymbol{\xi }\otimes \right] \) and \(\left[ \boldsymbol{\xi }\times \right] \) as in [20].

Assume the drag force \(\boldsymbol{D}_I\) is proportional to the square of the velocity \(\boldsymbol{v}_I\), and its direction is opposite to that of \(\boldsymbol{v}_I\). Then, \(\boldsymbol{D}_I\) is expressed as:

$$\begin{aligned} \boldsymbol{D}_I=0.5C_DS_{ref}\rho \left\| \boldsymbol{v}_I \right\| \boldsymbol{v}_I \end{aligned}$$
(6.22)

where \({C_D}\) is the drag coefficient, \({S_{ref}}\) is the aerodynamic reference area, \(\rho \) is the atmosphere density.

Assume the aerodynamic center remains at the same position, the torque \(\boldsymbol{M}_B\) is expressed as:

$$\begin{aligned} \boldsymbol{M}_B=\left[ \textbf{r}_P\times \right] \boldsymbol{D}_B+\left[ \textbf{r}_T\times \right] \boldsymbol{T}_B \end{aligned}$$
(6.23)

where \(\textbf{r}_P\) is the position vector of drag force, \(\textbf{r}_T\) is the position vector of thrust force.

The fuel of the reusable rocket is limited:

$$\begin{aligned} {m_{dry}} \le m(t) \end{aligned}$$
(6.24)

The tilt angle of the reusable rocket is expressed as the angle between the x-axes of body coordinate and that of the ground coordinate. During the landing phase, the tilt angle is limited as:

$$\begin{aligned} \hat{n}_{3}^{\textrm{T}}\boldsymbol{C}_{I\leftarrow B}\hat{n}_3=1-2(q_{1}^{2}+q_{2}^{2})\ge \cos \theta _{\max } \end{aligned}$$
(6.25)

To ensure landing safety, the maximum angular rate is limited as:

$$\begin{aligned} \left\| \boldsymbol{\omega }_B \right\| \le {\omega _{\max }} \end{aligned}$$
(6.26)

As illustrated in Fig. 6.7, the trajectory is constrained in an area restricted by two inclined planes to prevent subsurface flight. The glide angle relative to the horizon plane is constrained:

$$\begin{aligned} \begin{array}{l} {r_{I,z}}(t) - {r_{f,z}} \ge \sin {\theta _{gs}}\sqrt{{{({d_i})}^2} + {{({r_{I,z}}(t) - {r_{f,z}})}^2}} \\ {d_i} = \frac{{{a_i}{r_{I,x}}(t) + {b_i}{r_{I,y}}(t) + {c_i}}}{{\sqrt{{{({a_i})}^2} + {{({b_i})}^2}} }} \end{array} \end{aligned}$$
(6.27)
Fig. 6.7
figure 7

Illustration of highway landing

The magnitude of the thrust vector is bounded in the interval \([{T_{\min }},{T_{\max }}]\), and the gimble angle of the engine is limited in \([0,{\delta _{\max }}]\):

$$\begin{aligned} T_{\min }\le \left\| \boldsymbol{T}_B(t) \right\| \le T_{\max } \end{aligned}$$
(6.28)
$$\begin{aligned} \cos {\delta _{\max }}\left\| \boldsymbol{T}_B(t) \right\| \le {T_{B,z}}(t) \end{aligned}$$
(6.29)

The boundary states of the reusable rocket are constrained as:

$$\begin{aligned} \left\{ \begin{array}{l} m(0)=m_{wet},\boldsymbol{r}_I(0)=\boldsymbol{r}_i,\boldsymbol{v}_I(0)=\boldsymbol{v}_i\\ \boldsymbol{q}_{B\leftarrow I}(0)=\boldsymbol{q}_{B\leftarrow I,i},\boldsymbol{\omega }_B(0)=\boldsymbol{\omega }_i\\ \end{array} \right. \end{aligned}$$
(6.30)
$$\begin{aligned} \left\{ \begin{array}{l} a_ir_{I,x}(t_f)+b_ir_{I,y}(t_f)+c_i=0\\ x_{\min }\le r_{I,x}(t_f)\le x_{\max },y_{\min }\le r_{I,y}(t_f)\le y_{\max }\\ r_{I,z}(t_f)=r_{f,z},\boldsymbol{v}_I(t_f)=\boldsymbol{v}_f\\ \boldsymbol{q}_{B\leftarrow I}(t_f)=\boldsymbol{q}_{B\leftarrow I,f},\boldsymbol{\omega }_B(t_f)=\boldsymbol{\omega }_f\\ \end{array} \right. \end{aligned}$$
(6.31)

where \({a_i}{r_{I,x}}({t_f}) + {b_i}{r_{I,y}}({t_f}) + {c_i}\) denotes the ith highway in the ground coordinate, which is available for the emergency landing of the reusable rocket. To describe the length of the highway, the x-axis interval \([{x_{\min }},{x_{\max }}]\) and y-axis interval \([{y_{\min }},{y_{\max }}]\) is defined.

Therefore, we obtain the problem of highway landing as follows:

$$\begin{aligned} \begin{array}{l} \underset{\boldsymbol{T}_B,t_f}{\max }\,t_f\\ s.t.\,\textrm{Dynamics}:(6.21)\\ \;\;\;\;\;\,\textrm{PathConstraints}:(6.24)-(6.29)\\ \;\;\;\;\;\,\textrm{BoundaryConstraints}:(6.30)-(6.31)\\ \end{array} \end{aligned}$$
(6.32)

The above problem is a non-convex optimization problem minimizing the flight time. The non-convexity lies in the nonlinear dynamics and the lower bound of the thrust magnitude. Once transformed into the convex optimization problem, this problem can be quickly solved by the interior-point method to obtain a trajectory that lands the reusable rocket on the highway.

6.3.2 Successive Convexification

We define the state variable and the control variable as:

$$\begin{aligned} \boldsymbol{x}=\left[ \begin{matrix} m&{} \boldsymbol{r}_{I}^{\textrm{T}}&{} \boldsymbol{v}_{I}^{\textrm{T}}&{} \boldsymbol{q}_{B\leftarrow I}^{\textrm{T}}&{} \boldsymbol{\omega }_{B}^{\textrm{T}}\\ \end{matrix} \right] ^{\textrm{T}} \end{aligned}$$
(6.33)
$$\begin{aligned} \boldsymbol{u}=\left[ \begin{matrix} T_{B,x}&{} T_{B,y}&{} T_{B,z}\\ \end{matrix} \right] ^{\textrm{T}} \end{aligned}$$
(6.34)

Normalized trajectory time is utilized to convert the problem into a fixed-final-time one:

$$\begin{aligned} \boldsymbol{\dot{x}}(\tau )\triangleq \frac{d}{d\tau }\boldsymbol{x}(\tau )=\sigma \boldsymbol{f}(\boldsymbol{x}(\tau ),\boldsymbol{u}(\tau )) \end{aligned}$$
(6.35)

where \(\boldsymbol{f}(\boldsymbol{x}(\tau ),\boldsymbol{u}(\tau ))\) denotes the differential equation of kinematics and dynamics, \(\tau \in [0,1]\) is the normalized time, \(\sigma = dt/d\tau \) denotes the time dilation coefficient.

Assume that a reference trajectory comprised of \(\boldsymbol{\hat{x}}(\tau )\), \(\boldsymbol{\hat{u}}(\tau )\), \(\hat{\sigma }\) is given, then we can approximate the nonlinear dynamics with first-order Tayler series:

$$\begin{aligned} \begin{array}{l} \boldsymbol{x}'(\tau )=\boldsymbol{A}(\tau )\boldsymbol{x}(\tau )+\boldsymbol{B}(\tau )\boldsymbol{u}(\tau )+\boldsymbol{C}(\tau )+\boldsymbol{D}(\tau )\\ \boldsymbol{A}(\tau )=\hat{\sigma }\cdot \left. \frac{\partial \boldsymbol{f}(\boldsymbol{x}(\tau ),\boldsymbol{u}(\tau ))}{\partial \boldsymbol{x}} \right| _{\boldsymbol{\hat{x}}(\tau ),\boldsymbol{\hat{u}}(\tau )}\\ \boldsymbol{B}(\tau )=\hat{\sigma }\cdot \left. \frac{\partial \boldsymbol{f}(\boldsymbol{x}(\tau ),\boldsymbol{u}(\tau ))}{\partial \boldsymbol{u}} \right| _{\boldsymbol{\hat{x}}(\tau ),\boldsymbol{\hat{u}}(\tau )}\\ \boldsymbol{C}(\tau )=-\boldsymbol{A}(\tau )\boldsymbol{\hat{x}}(\tau )-\boldsymbol{B}(\tau )\boldsymbol{\hat{u}}(\tau )\\ \boldsymbol{D}(\tau )=\hat{\sigma }\boldsymbol{f}(\boldsymbol{\hat{x}}(\tau ),\boldsymbol{\hat{u}}(\tau ))\\ \end{array} \end{aligned}$$
(6.36)

Similarly, the lower bound of the thrust magnitude can be approximated as:

$$\begin{aligned} T_{\min }\le \frac{\boldsymbol{\hat{u}}^{\textrm{T}}(\tau )}{\left\| \boldsymbol{\hat{u}}(\tau ) \right\| }\boldsymbol{u}(\tau ),\left\| \boldsymbol{\hat{u}}(\tau ) \right\| \le T_{\max } \end{aligned}$$
(6.37)

Then the linearized problem is casted into a finite-dimensional convex optimization problem using fourth-order Runge–Kutta discretization. Without loss of generality, this can be described by the following second-order cone programming (SOCP) problem:

$$\begin{aligned} \begin{array}{l} \underset{x}{\min }\,\boldsymbol{f}^{\textrm{T}}\boldsymbol{x}\\ s.t.\,\left\| \boldsymbol{A}_i\boldsymbol{x}+\boldsymbol{b}_i \right\| \le \boldsymbol{c}_{i}^{\textrm{T}}\boldsymbol{x}+\boldsymbol{d}_i\\ \;\;\;\;\;\,\boldsymbol{Fx}=\boldsymbol{g}\\ \end{array} \end{aligned}$$
(6.38)

The above SOCP problem approximates the original problem (6.32) near the reference trajectory. According to successive convexification method [20], a sequence of SOCP subproblems can be solved to approach the optimal solution of (6.32). The procedure is as follows:

Step1: Initialize \(\boldsymbol{x}_{k}^{0}\), \(\boldsymbol{u}_{k}^{0}\) and \(\sigma _k^0\) using (6.39). Set iteration number j \(=\) 0.

$$\begin{aligned} \begin{array}{l} \boldsymbol{x}_{k}^{0}=\frac{K-1-k}{K-1}\boldsymbol{x}_i+\frac{k}{K-1}\boldsymbol{x}_f\\ \boldsymbol{u}_{k}^{0}=\left( \frac{K-1-k}{K-1}m_{wet}+\frac{k}{K-1}m_{dry} \right) \boldsymbol{g}_0\\ \sigma ^0=t_{guess}\\ \end{array} \end{aligned}$$
(6.39)

Step2: Set \(\boldsymbol{x}_{k}^{j}\), \(\boldsymbol{u}_{k}^{j}\) and \(\sigma _k^j\) as the reference trajectory, transform the original problem (6.32) using linearization and Runge-Kutta discretization.

Step3: Set iteration number j \(=\) j \(+\) 1, combine the trust-region and virtual control methods to solve the discretized problem (6.38). Update \(\boldsymbol{x}_{k}^{j}\), \(\boldsymbol{u}_{k}^{j}\) and \(\sigma _k^j\).

Step4: Check the termination condition using (6.40). If the condition is satisfied, continue. Otherwise, go to step2.

$$\begin{aligned} \left( \left\| V^j \right\| _1\le v_{tol} \,\, and \,\, \left\| \Delta ^j \right\| _2\le \Delta _{tol} \,\, and \,\, \Delta _{\sigma }\le \Delta _{\sigma ,tol} \right) \,or\,\left( j>N_{\max } \right) \end{aligned}$$
(6.40)

Step5: Output \(\boldsymbol{x}_{k}^{j}\), \(\boldsymbol{u}_{k}^{j}\) and \(\sigma _k^j\) as the solution of problem (6.32).

6.3.3 Highway Guidance Algorithm

The terminal status of a reusable rocket is limited in several aspects: (1) it must land on the pad or the highway, any landing position error that exceeds the safety tolerance may damage the rocket or the landing area; (2) it must impact the ground with small velocity to avoid damage in its structure; (3) it must touch the ground near vertically, in that large attitude angle may lead to tip-over. Therefore, we choose the landing position error \(\Delta {r_f}\), terminal velocity \({v_f}\), and terminal attitude angle \({\theta _f}\) as landing performance indexes:

$$\begin{aligned} \left\{ \begin{array}{l} \Delta {r_f} = \sqrt{{{({r_{f,x}} - {r_{p,x}})}^2} + {{({r_{f,y}} - {r_{p,y}})}^2}} \\ {v_f} = \sqrt{v_{f,x}^2 + v_{f,y}^2 + v_{f,z}^2} \\ {\theta _f} = \arccos (1 - 2(q_1^2 + q_2^2)) \end{array} \right. \end{aligned}$$
(6.41)

To get the landing performance index, linear interpolation is employed to get a continuous form of the control variable \(\boldsymbol{\tilde{u}}\), then the trajectory is calculated under the open-loop control of \(\boldsymbol{\tilde{u}}\). At last, we can get perform indexes using (6.41).

The proposed trajectory reconstruction algorithm considers both traditional pad landing and highway landing. When large deviation from the designed trajectory is detected, it calculates a pad landing trajectory at first. If the trajectory satisfies landing performance tolerance, it proceeds to perform pad landing. Otherwise, it chooses an available highway to land on. The detailed procedure is as follows:

Step1: Calculate the pad landing trajectory;

Step2: Evaluate the pad landing performance. If the evaluation indexes satisfy (6.42), go to Step 8; Otherwise, continue.

$$\begin{aligned} \left\{ \begin{array}{l} pad\mathrm{{ }}case:\Delta {r_f} \le {r_{p,\max }}\,\, and \,\, {v_f} \le {v_{f,\max }} \,\, and \,\, {\theta _f} \le {\theta _{f,\max }}\\ highway\mathrm{{ }}case:\Delta {r_f} \le {r_{h,\max }} \,\, and \,\, {v_f} \le {v_{f,\max }} \,\, and \,\, {\theta _f} \le {\theta _{f,\max }} \end{array} \right. \end{aligned}$$
(6.42)

Step3: Get the number of available highways \({N_{highway}}\). Set k \(=\) 1.

Step4: Calculate the landing trajectory of kth highway.

Step5: Evaluate the landing performance of kth highway. If the indexes satisfy (6.42), go to Step 8; Otherwise, continue.

Step6: Calculate the comprehensive index \({E_k}\) as follows. If \(k < {N_{highway}}\), k \(=\) k \(+\)1, go to Step4; Otherwise, continue.

$$\begin{aligned} \begin{array}{l} {E_i} = {\tau _1}g\left( {\Delta {r_f}} \right) + {\tau _2}g\left( {{v_f}} \right) + {\tau _3}g\left( {{\theta _f}} \right) \\ g\left( x \right) = \frac{1}{1 + {e^{k(1 - {x /{{x_e}}})}}} \end{array} \end{aligned}$$
(6.43)

where \({\tau _1}\), \({\tau _2}\) and \({\tau _3}\) are weight coefficients. \(g\left( x \right) \) is the normalization function.

Step7: Choose the highway with the smallest \({E_i}\).

Step8: Output the trajectory result.

6.3.4 Simulation Results

The effectiveness of highway landing under large trajectory deviations is demonstrated first. We assume that there exists only one highway ranging from (−5000,0,0) to (5000,0,0) along the x-axis direction, and the landing pad lies in (0,0,0). The initial position of the reusable rocket deviates from (−656,54,4154) to (−3280,270,4154).

The nominal trajectory is denoted as trajectory1. With the given large deviation, the trajectories of the pad landing and the highway lading are denoted as trajectory2 and trajectory3, respectively.

The 3-D trajectory results under open-loop control are depicted in Fig. 6.8. Both trajectory1 and trajectory2 attempt to land the rocket on the pad, but trajectory2 violates the velocity and the attitude limit which may lead to tilt-over. Trajectory3 succeeds in landing the reusable rocket on position (−2679.54,0,0) of the highway. The flight time costs of the three trajectories are 25.25 s, 52.89 s, and 25.26 s. It can be seen from Fig. 6.9 that trajectory1 and trajectory3 share similar thrust level curve, while trajectory2 spends more thrust to land the reusable rocket. Therefore, in this case highway landing provides a better solution than pad landing under large trajectory deviation.

To validate optimality of the landing performance of trajectory3, among all the potential trajectories leading to different ends on the highway, we evenly choose 121 points locating from (−5000,0,0) to (5000,0,0) on the highway to compute landing trajectory. As shown in Fig. 6.10, the performance index of trajectory3 is marked in red, and the index of other trajectories are marked in green. It is observed that the landing position error of trajectory3 is within the highway landing tolerance, which guarantees an accurate landing. Also, the deviation value of trajectory3 is smaller than 86.8% (105/121) of other trajectories. The terminal velocity and the terminal attitude of trajectory3 outperform 96.7% (117/121) and 95.9% (116/121) of other trajectories, respectively. To summarize, the solution trajectory of the highway landing optimization problem has a better landing performance than most of the other trajectories.

Fig. 6.8
figure 8

3-D trajectory results

Fig. 6.9
figure 9

Thrust profile

Fig. 6.10
figure 10

Comparison results between the landing point and other points

The robustness of the trajectory reconstruction algorithm is verified by implementing 500-run Monte Carlo simulations. We assume that there exist three highways surrounding the landing pad. The terminal altitude of the rocket is set 30m above the ground, which tolerates the distance deviation along the altitude. The initial state parameters used are listed in Table 6.3.

Table 6.3 Monte Carlo simulation parameters
Fig. 6.11
figure 11

3-D trajectory results

Figure 6.11 shows trajectory optimization results of the Monte Carlo simulations. The trajectories of pad landing, highway landing, and failure are marked in blue, red and black color, respectively. As the figure reveals, when the initial state deviation is small, pad landing is probably executed. If the state deviation exceeds the tolerable interval, highway landing is performed. Also, Fig. 6.11 shows that the reusable rocket tends to choose the nearest highway to land. Only in several extreme conditions, the trajectory reconstruction algorithm fails to find a feasible trajectory. Compare the proposed algorithm with the standard one, the success rate rises from 65% (326/500) to 99.4% (497/500). In conclusion, the trajectory reconstruction algorithm reduces dependence of generating a practical landing trajectory on small initial state perturbations, and improves the robustness of trajectory recovery by adding highway landing choices and solving the optimization problem in a sequential manner.

Fig. 6.12
figure 12

Fuel consumption profiles

Fig. 6.13
figure 13

Landing performances comparison

Figure 6.12 depicts fuel consumption comparison. Generally, highway landing trajectories use less fuel than pad landing trajectories, which can save more fuel for the guidance and control system to implement real-time adjustments.

The landing performance results are illustrated in Fig. 6.13. The threshold of pad landing is indicated by the dash-dotted line, and the threshold of highway landing is denoted by the solid line. It is noted that 99.4% (497/500) of trajectories meet the performance requirements in landing position error, 99.8% (499/500) in terminal velocity, and 100% (500/500) in terminal attitude. In the failed cases, the maximum error in the landing position error exceeds 10.3% (0.71m), and the maximum error in terminal velocity exceeds 3.2% (0.096 m/s), of the threshold. Hence, the position error is the main factor affecting success.

6.4 Conclusions

This chapter develops algorithms and strategies to improve adaptive and autonomous decision making in powered decent of spacecrafts.

Firstly, a multi-point powered descent algorithm for planetary soft landing is presented. Here the best landing site is identified from many candidate landing sites efficiently by optimal sensitivity analysis. The proposed guidance algorithm establishes a relation between landing site selection and fast trajectory generation based on optimal sensitivity. The theoretical analysis shows that the proposed algorithm has minimum total estimation error. Numerical results indicate that the algorithm is capable of online applications.

Another powered descent algorithm is proposed for landing in large deviation from the nominal trajectory. Here highway landing trajectory optimization problem is proposed to handle the significant trajectory deviation and is solved by successive convexification technique. A trajectory reconstruction algorithm is devised to make decision between pad and highway landing in terms of the degree of trajectory deviation. The results of the Monte Carlo simulations show that the algorithm improves trajectory optimization under large uncertainties in the initial states.