Control parameters design of spacecraft formation flying via modified biogeography-based optimization

  • Tianfu Chen
  • Dexin Zhang
  • Xiaowei ShaoEmail author
Original Paper


For spacecraft formation flying (SFF) missions, effective control of relative motion is a critical issue. This paper investigates the problem of feedback parameters design in the trajectory tracking controller of SFF. To overcome the difficulty in manual parameters adjustment, a modified biogeography-based optimization (M-BBO) algorithm is employed by transforming the parameters tuning into an optimization problem. In the developed M-BBO, the new component is a hybrid operator, where the search mechanism of grasshopper optimization algorithm is integrated into the migration operation of biogeography-based optimization (BBO). It helps M-BBO to achieve a better balance between exploitation and exploration abilities, thereby facilitating the generation of promising candidate solutions. During the optimization process, the performance indicator is a linear weighted function that considers the tracking error and fuel consumption of the SFF controller. Simulation results show that the parameters obtained via M-BBO ensure accurate control at low cost, and comparative experiments with other versions of BBO are conducted to prove M-BBO’s merit in terms of convergence performance.


Spacecraft formation flying Control parameters optimization Biogeography-based optimization 

1 Introduction

Spacecraft formation flying (SFF) is a significant technology for certain space missions [1]. With notable benefits such as low cost, high efficiency and great flexibility, SFF expands the functions of a traditional single spacecraft [2, 3]. To guarantee the practical implementation of SFF, it is required to perform valid control of relative position between the spacecraft.

One major goal of SFF control is that the spacecraft can track a desired relative trajectory, and extensive researches have focused on the design of SFF controller. Some popular techniques of SFF control included linear quadratic control, model predictive control and slide mode control [4, 5, 6]. To obtain the expected control performance, the controller parameters commonly need to be identified through the designers’ experience, which is a challenging task in the control system [7].

Recently, owing to automating the parameter adjustment, the application of bio-inspired optimization algorithms to control parameters design has attracted much attention. Steinberg and Page [8] developed a backstepping control scheme with parameter optimization done by a genetic algorithm (GA), which was favorable for the multi-axis control of a high-performance aircraft. In [9], the GA was also employed to optimally search the control gains of pitch autopilot for aircraft landing. Lu et al. [10] suggested a control strategy of turbine engine based on particle swarm optimization (PSO), where proportional–integral–differential parameters are tuned via PSO. Deng and Duan [11] optimized the selection of control parameters in the carrier landing system by pigeon-inspired optimization (PIO). Aiming at satellite formation keeping, Soyinka and Duan [12] regarded mean orbit elements as feedback and proposed the chaotic artificial bee colony (ABC) algorithm to estimate the feedback gain. It can be seen that combining the bio-inspired approaches with the controller design works well in a number of studies.

When it comes to the emerging bio-inspired methods for global optimization, biogeography-based optimization (BBO) cannot be underestimated, because it has demonstrated remarkable success in diverse engineering cases [13, 14]. BBO is modeled after the distribution mechanism of biological species among habitats. Generally, BBO has an excellent exploitation ability, which triggers the hybridization of BBO with other evolutionary algorithms that are good at exploration. Here, exploitation refers to the tendency for the search agents to change on a relatively small scale and move locally, while they are encouraged to be highly randomized and search abruptly during exploration. For instance, the mutation operator of differential evolution (DE) was merged with BBO to increase the population diversity while preserving the exploitation [15]. Such hybrid heuristics algorithms established on the basis of BBO were also reported in [16, 17]. In this study, a modified BBO (M-BBO) method is presented to enhance the balance in BBO between exploitation and exploration. The strategy of updating the solutions in grasshopper optimization algorithm (GOA) [18] is introduced into the standard BBO migration operation. According to [18], GOA is able to explore the search space well, and this is the motivation of redesigning the migration operator.

The novelty of this study is twofold. First, the task of acquiring the controller parameters of SFF along elliptical orbits is converted to an optimization problem, and BBO is considered as a solver to find the parameters. Second, M-BBO that absorbs the advantage of GOA is proposed, where a new migration operator integrates the exploitation of BBO and the exploration of GOA.

The rest of this paper is as follows. The relative translational dynamics and controller design of SFF are described in Sect. 2. The basic BBO and its modified version are contained in Sect. 3. The detailed implementation of M-BBO for control parameters optimization is presented in Sect. 4, followed by numerical simulations and experimental results in Sect. 5. Finally, Sect. 6 concludes the paper.

2 System model of SFF

2.1 Relative motion dynamics

Consider a SFF system consisting of two spacecraft, namely, the leader and follower, as shown in Fig. 1. Let \( I = \left\{ {X_{\text{i}} ,Y_{\text{i}} ,Z_{\text{i}} } \right\} \) denote the Earth-centered inertial (ECI) frame, and \( {\mathbf{r}}_{\text{l}} \) mean the position vector from the center of Earth to the leader. The motion of the follower relative to the leader is modeled in the local–vertical–local–horizontal (LVLH) frame \( L = \left\{ {X_{\text{l}} ,Y_{\text{l}} ,Z_{\text{l}} } \right\} \), whose origin is located at the mass center of the leader. The \( X_{\text{l}} \) axis points in the direction of \( {\mathbf{r}}_{\text{l}} \), the \( Z_{\text{l}} \) axis is along the angular momentum vector of the leader and the \( Y_{\text{l}} \) axis completes the right-handed orthogonal coordinate system.
Fig. 1

Schematic diagram of SFF system

The relative dynamics between the leader and follower [19] can be formulated as:
$$ {\mathbf{\ddot{\rho }}} + {\mathbf{C}}\left( {\omega_{\text{l}} } \right){\dot{\mathbf{\rho }}} + {\mathbf{N}}\left( {{\varvec{\uprho}},{\mathbf{r}}_{\text{l}} ,\omega_{\text{l}} ,\dot{\omega }_{\text{l}} } \right) = {\mathbf{D}} + {\mathbf{u}}, $$
where \( {\varvec{\uprho}} = [\begin{array}{*{20}c} x & y & x \\ \end{array} ]^{\text{T}} \) is the relative position in the LVLH frame and \( r_{\text{l}} = \left\| {{\mathbf{r}}_{\text{l}} } \right\| = \frac{{a\left( {1 - e^{2} } \right)}}{1 + e\cos \theta } \); \( a \), \( e \) and \( \theta \) are the semi-major axis, the eccentricity and the true anomaly of the leader orbit, respectively; \( {\mathbf{D}} \) is the relative disturbance vector and \( {\mathbf{u}} \) is the control input. The leader’s orbital angular velocity \( \omega_{\text{l}} \) and angular acceleration \( \dot{\omega }_{\text{l}} \) are given as follows:
$$ \omega_{\text{l}} = \dot{\theta } = \frac{{\sqrt {\mu a\left( {1 - e^{2} } \right)} }}{{r_{\text{l}}^{2} }},\;\;\dot{\omega }_{\text{l}} = \ddot{\theta } = - \frac{2\mu e\sin \theta }{{r_{\text{l}}^{3} }}, $$
where \( \mu \) is the gravitational constant of Earth. The skew-symmetric matrix \( \varvec{C}({\mathbf{ \cdot }}) \) is written as:
$$ {\mathbf{C}}(\omega_{\text{l}} ) = 2\omega_{\text{l}} \left[ {\begin{array}{*{20}c} 0 & { - 1} & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 \\ \end{array} } \right]. $$
The nonlinear term \( \varvec{N}({\mathbf{ \cdot }}) \) is expressed as:
$$ {\mathbf{N}}\left( {{\varvec{\uprho}},{\mathbf{r}}_{\text{l}} ,\omega_{\text{l}} ,\dot{\omega }_{\text{l}} } \right) = \left[ {\begin{array}{*{20}c} {\mu \left( {\frac{{r_{\text{l}} + x}}{{\left\| {{\mathbf{r}}_{\text{l}} + {\varvec{\uprho}}} \right\|^{3} }} - \frac{1}{{r_{\text{l}}^{2} }}} \right) - \omega_{\text{l}}^{2} x - \dot{\omega }_{\text{l}} y} \\ {\left( {\frac{\mu }{{\left\| {{\mathbf{r}}_{\text{l}} + {\varvec{\uprho}}} \right\|^{3} }} - \omega_{\text{l}}^{2} } \right)y + \dot{\omega }_{\text{l}} x} \\ {\frac{\mu }{{\left\| {{\mathbf{r}}_{\text{l}} + {\varvec{\uprho}}} \right\|^{3} }}z} \\ \end{array} } \right]. $$

2.2 Lyapunov-based control

Given a reference trajectory \( {\varvec{\uprho}}_{\text{d}} = \left[ {x_{\text{d}} \quad y_{\text{d}} \quad z_{\text{d}} } \right]^{\text{T}} \) of the follower relative to the leader, then the position tracking error can be computed as \( {\mathbf{e}} = {\varvec{\uprho}} - {\varvec{\uprho}}_{\text{d}} \). Using the error vector and its time derivative, the control Lyapunov function is defined as:
$$ V({\mathbf{e}},{\dot{\mathbf{e}}}) = \frac{1}{2}{\mathbf{e}}^{\text{T}} {\mathbf{K}}_{1} {\mathbf{e}} + \frac{1}{2}{\dot{\mathbf{e}}}^{\text{T}} {\dot{\mathbf{e}}}, $$
where \( {\mathbf{K}}_{1} \in R^{3 \times 3} \) is a positive definite position feedback gain matrix. Taking the time derivative of Eq. (5) leads to:
$$ \dot{V} = {\dot{\mathbf{e}}}^{\text{T}} \left( {{\mathbf{K}}_{1} {\mathbf{e}} + {\mathbf{\ddot{\rho }}} - {\mathbf{\ddot{\rho }}}_{\text{d}} } \right). $$
Setting \( {\mathbf{D}} = 0 \) in Eq. (1) and substituting Eq. (1) into Eq. (6) yields:
$$ \dot{V} = {\dot{\mathbf{e}}}^{\text{T}} ({\mathbf{K}}_{1} {\mathbf{e}} - {\mathbf{C}}({\mathbf{ \cdot }}){\dot{\mathbf{\rho }}} - {\mathbf{N}}({\mathbf{ \cdot }}) + {\mathbf{u}} - {\mathbf{\ddot{\rho }}}_{d} ). $$
Enforcing \( \dot{V} \) to be the negative quantity:
$$ \dot{V} = - {\dot{\mathbf{e}}}^{\text{T}} {\mathbf{K}}_{2} {\dot{\mathbf{e}}}, $$
where \( {\mathbf{K}}_{2} \in R^{3 \times 3} \) is a positive definite velocity feedback gain matrix, the control law [20] can be deduced as:
$$ {\mathbf{u}} = - {\mathbf{K}}_{1} {\mathbf{e}} - {\mathbf{K}}_{2} {\dot{\mathbf{e}}} + {\mathbf{C}}({\mathbf{ \cdot }}){\dot{\mathbf{\rho }}} + {\mathbf{N}}({\mathbf{ \cdot }}) + {\mathbf{\ddot{\rho }}}_{\text{d}} . $$
When \( \dot{V} = 0 \) (i.e., \( {\dot{\mathbf{e}}} = 0 \)), the second and third derivatives of \( V \) with respect to time are:
$$ \left\{ {\begin{array}{*{20}l} {\ddot{V} = 0} \hfill \\ {\dddot V = - 2{\mathbf{e}}^{\text{T}} {\mathbf{K}}_{1}^{\text{T}} {\mathbf{K}}_{2} {\mathbf{K}}_{1} {\mathbf{e}} < 0,\quad \forall {\mathbf{e}} \ne 0} \hfill \\ \end{array} } \right.. $$

From the stability theorem in [21], Eq. (10) can indicate that the closed loop system with the control law \( {\mathbf{u}} \) is asymptotically stable.

3 M-BBO algorithm

3.1 Principles of the basic BBO

In natural biogeography, the extent to which a habitat is suitable for living is judged by the habitat suitability index (HSI), and the numerous factors that can exert influence on the HSI are collectively called the suitability index variables (SIVs). As a population-based algorithm, BBO treats each candidate solution as a habitat. The goodness of one individual is measured by HSI, and each component of the individual is analogous to a SIV.

Migration, one core operator of BBO, makes the best use of feature sharing among the individuals. In BBO, a good individual stands for a high HSI habitat which has relatively low immigration rate (\( \lambda \)) and high emigration rate (\( \varphi \)), while the converse is true for an inferior individual. For the kth individual \( H_{k} \) in the population, according to the linear migration model in Fig. 2, the migration rates are represented as follows:
$$ \gamma_{k} = I\left( {1 - \frac{r(k)}{{N_{\text{P}} }}} \right)\;,\;\varphi_{k} = E\frac{r(k)}{{N_{\text{P}} }}, $$
where \( N_{\text{P}} \) is the population size and \( r\left( k \right) \) is the HSI rank of \( H_{k} \) (1 is the worst and \( N_{\text{P}} \) is the best); \( I \) is the maximum immigration rate and \( E \) is the maximum emigration rate. Under the migration mechanism, the probability that \( H_{k} \) is chosen for immigration is proportional to \( \gamma_{k} \). Subsequently, the emigrating habitat \( H_{j} \) is picked via the roulette method [22] based on all the \( \varphi \) values of the population. The migration equation can be formulated as:
$$ H_{k} ({\text{SIV}}) = H_{j} ({\text{SIV}}). $$
Fig. 2

Migration model in BBO

In BBO, the solutions change probabilistically by the migration operation, which distinguishes BBO from reproductive manners like GA. Besides, for each solution, the migration rate is governed by its quality. Notice that the good solutions are more likely to pass on their own features to others, while the poor ones are inclined to accept new information from others. It is these features that make BBO become a powerful optimization tool [13].

The HSI of a habitat can be dramatically changed due to cataclysmic events, and this phenomenon is modeled as SIV mutation in BBO. The relationship between mutation rate \( \sigma_{k} \) and species count probability \( P_{k} \) is expressed as:
$$ \sigma_{k} = \sigma_{\text{max} } \left( {1 - \frac{{P_{k} }}{{P_{\text{max} } }}} \right), $$
where \( \sigma_{\text{max} } \) is the maximum mutation rate and \( P_{\text{max} } = \text{max} P_{k} ,\quad k = 1,2, \ldots ,N_{\text{P}} \). For details on the calculation of \( P_{k} \), see [23].

3.2 New migration operator of M-BBO

As mentioned above, in the migration, the solution features of good individuals might substitute certain features of poor individuals, which means that BBO exploits the information of the current population finely. Nevertheless, the existence of these features in both good and poor individuals results in the lack of population diversity and exploration capacity. To make BBO possess better optimization performance, exploitation and exploration are abilities that should be well counterpoised. Moreover, the no free lunch theorem [24] has proven that there are no techniques for all the optimization problems, which is also the reason that M-BBO is needed.

The new operator of M-BBO is a hybrid migration operator, which involves the original migration operator of BBO and the position-updating operator of GOA. GOA is a novel intelligent optimization method and simulates the swarming behavior of grasshoppers. The movement of grasshoppers in nature is mainly affected by social interaction, gravity force and windy advection. In GOA, to settle optimization problems effectively, gravity force is neglected and the wind direction is assumed to be towards the grasshopper with the best fitness. Suppose the d-dimensional position of the individual (grasshopper) \( H_{k} \) in the lth iteration is \( H_{k}^{d} \left( l \right) \). The mathematical model is built as follows to update the status of the next iteration [18]:
$$ H_{k}^{d} \left( {l + 1} \right) = c\left( {\sum\limits_{\begin{subarray}{l} j = 1 \\ j \ne k \end{subarray} }^{{N_{\text{P}} }} {c\frac{{ub_{d} - lb_{d} }}{2}S\left( {\left| {\Delta r} \right|} \right)\frac{\Delta r}{{d_{jk} }}} } \right) + H_{\text{best}}^{d} \left( l \right), $$
$$ S\left( r \right) = \alpha e^{{ - \frac{r}{\beta }}} - e^{ - r} , $$
$$ \Delta r = H_{j}^{d} \left( l \right) - H_{k}^{d} \left( l \right) $$
where \( ub_{d} \) and \( lb_{d} \) are the upper and lower bound of the dth dimension, respectively; \( H_{\text{best}}^{d} \) is the value of the dth dimension in the best individual found so far; \( d_{jk} \) is the distance between the individuals \( H_{j} \) and \( H_{k} \). The function \( S \) defines the strength of social forces, \( \alpha \) in \( S \) stands for the intensity of attraction, and \( \beta \) in \( S \) is the attractive length scale. \( \alpha \) and \( \beta \) typically equal to 0.5 and 1.5. \( c \) is a parameter that has an impact on the exploitation and exploration in GOA. A large \( c \) indicates that the dominant activity of GOA is exploration; a small \( c \) indicates that the dominant activity is exploitation. It should be noted that \( c \) is set as 1 in this study to fully utilize the exploration potential of GOA.
In M-BBO, a new migration operator is proposed, where the position-updating mode of GOA is incorporated into the BBO’s migration framework, as illustrated in Fig. 3. In Fig. 3, \( D \) is the dimension of decision space, and rand is a function generating a random number uniformly distributed in \( \left( {0,1} \right) \). The new operator unites the advantages of BBO and GOA as much as possible. Each dimension of \( H_{k} \) has a probability of \( \gamma_{k} \) to employ the original migration, which maintains the outstanding property concerning the local searching ability in BBO. Meanwhile, each dimension of \( H_{k} \) has a probability of \( \left( {1 - \gamma_{k} } \right) \) to update in the evolutionary way of GOA. From Eq. (14), the next position of an individual is decided by its current position, the global best, and the position of all other individuals. This is beneficial to searching globally and increasing the diversity of search space. Hence, M-BBO could exhibit the reasonable trade-off between exploitation and exploration.
Fig. 3

Algorithm for new migration operator in M-BBO

4 Control parameters design based on M-BBO

4.1 Problem formulation

This study looks on the parameters identification of SFF controller as a continuous-domain optimization problem. It can partly alleviate the workload of designers because the conventional cut-and-try method usually calls for plenty of experience and tests. In addition, by tuning the control parameters via optimization algorithms, the control characteristic can satisfy different design requirements.

Let \( {\mathbf{K}}_{1} \) and \( {\mathbf{K}}_{2} \) be diagonal matrices for simplicity, then they are written as:
$$ {\mathbf{K}}_{1} = \left[ {\begin{array}{*{20}c} {K_{1,1} } & 0 & 0 \\ 0 & {K_{1,2} } & 0 \\ 0 & 0 & {K_{1,3} } \\ \end{array} } \right],\;{\mathbf{K}}_{2} = \left[ {\begin{array}{*{20}c} {K_{2,1} } & 0 & 0 \\ 0 & {K_{2,2} } & 0 \\ 0 & 0 & {K_{2,3} } \\ \end{array} } \right], $$
where all the diagonal elements are positive. In view of this, there are six control parameters to be optimized in the decision vector \( {\mathbf{X}} = \left[ {K_{1,1} \quad K_{1,2} \quad K_{1,3} \quad K_{2,1} \quad K_{2,2} \quad K_{2,3} } \right]^{\text{T}} \).
The control objective is that the bounded motion of SFF and low fuel cost can be ensured. Therefore, two fitness functions are defined for the optimization problem. The first function intends to lessen the tracking error between the actual and desired trajectory, and it can be calculated as:
$$ f_{1} = \int\limits_{0}^{{t_{f} }} {\left\| {{\varvec{\uprho}}\left( t \right) - {\varvec{\uprho}}_{d} \left( t \right)} \right\|{\text{d}}t} , $$
where \( t_{f} \) is the total duration. The second function denotes the fuel cost during the control process, the expression of which is:
$$ f_{2} = \int\limits_{0}^{{t_{f} }} {\left| {u_{x} \left( t \right)} \right| + \left| {u_{y} \left( t \right)} \right| + \left| {u_{z} \left( t \right)} \right|{\text{d}}t} , $$
where \( u_{m} \;\left( {m = x,y,z} \right) \) is the component of the control acceleration \( {\mathbf{u}} \).
The mathematical model of control parameters optimization is formulated as:
$$ \begin{aligned} \min_{{\mathbf{X}}} F\left( {\mathbf{X}} \right) = \omega_{1} f_{1} + \omega_{2} f_{2} \hfill \\ {\text{s}} . {\text{t}} .\;\;{\mathbf{X}} \in R^{ 6\times 1} :X_{j}^{l} < X_{j} < X_{j}^{u} \;\left( {j = 1,2,3,4,5,6} \right), \hfill \\ \end{aligned} $$
where \( \omega_{1} \) and \( \omega_{2} \) are the weight coefficients, reflecting the importance of the fitness functions; \( X_{j}^{l} \) and \( X_{j}^{u} \) are the lower and upper bound of the corresponding decision variable in \( {\mathbf{X}} \).

4.2 Implementation procedure of M-BBO for parameters optimization

The proposed M-BBO is used to handle the single-objective optimization model in Eq. (20). The procedure of M-BBO for attaining the control parameters in SFF is described as follows:
Step 1

Input the orbital elements of the leader, the initial position \( {\varvec{\uprho}}_{0} \) and desired trajectory \( {\varvec{\uprho}}_{d} \) of the follower in the LVLH frame, the total control time \( t_{f} \), the weights \( \omega_{1} \) and \( \omega_{2} \), the search ranges of decision variables \( \left( {X_{j}^{l} ,X_{j}^{u} } \right) \) and the parameters in M-BBO (including population size \( N_{\text{P}} \), maximum optimization generation \( N_{\text{G}} \), maximum migration rates \( I \) and \( E \), maximum mutation rate \( \sigma_{\text{max} } \))

Step 2

Generate an initial population and initialize generation number \( n_{\text{G}} = 0 \)

Step 3

Evaluate the weighted optimization objective value in Eq. (20) for each individual in the population

Step 4

Apply elitism mechanism: updating the best solution \( H_{\text{best}} \), which will replace the worst solution of the current population if \( H_{\text{best}} \) does not exist in the present generation

Step 5

If the maximum generation number is reached (\( n_{\text{G}} \ge N_{\text{G}} \)), output the optimal control parameters. Otherwise, go to step 6

Step 6

Compute the immigration rates, emigration rates and mutation rates according to the ranking result of the fitness

Step 7

Perform the new migration operator as discussed in Sect. 3.2

Step 8

Conduct the mutation operator as discussed in Sect. 3.1

Step 9

Update the generation number \( n_{\text{G}} = n_{\text{G}} + 1 \) and go to step 3 for the next iteration

The flow diagram of control parameters design based on M-BBO is also outlined in Fig. 4.
Fig. 4

Flow chart of M-BBO for SFF control parameters optimization

5 Simulation

To validate the effectiveness of the developed strategy of using M-BBO to optimize the control parameters in SFF, an example of two-spacecraft formation is demonstrated. The leader is assumed to be perfectly controlled in an elliptical orbit with semi-major axis 6878.137 km and eccentricity 0.1. The initial true anomaly of the leader is 0°. The follower has the initial values \( {\varvec{\uprho}}_{0} = \left[ { - 100,900,150} \right]^{\text{T}} \;{\text{m}} \), and it ought to track the sinusoidal trajectories \( {\varvec{\uprho}}_{d} = \left[ {500\sin \left( {nt} \right),} \right. \)\( \left. {1000\cos \left( {nt} \right),500\sqrt 3 \sin \left( {nt} \right)} \right]^{\text{T}} \;{\text{m}} \), where \( n \) is the mean angular velocity of the leader. The disturbances are assumed to be known, since these do not belong to the main scope of the present work. In this simulation, \( {\mathbf{D}} = \left[ {2\sin \left( {nt} \right),2\cos \left( {nt} \right),2\sin \left( {nt} \right)} \right]^{\text{T}} \times 10^{ - 5} {{\text{m}} \mathord{\left/ {\vphantom {{\text{m}} {{\text{s}}^{2} }}} \right. \kern-0pt} {{\text{s}}^{2} }} \). The simulating time of the controller is set as \( t_{f} = {{2\pi } \mathord{\left/ {\vphantom {{2\pi } n}} \right. \kern-0pt} n} \).

For the optimization model in Eq. (20), the weights are chosen as \( \omega_{1} = 1 \) and \( \omega_{2} = 10^{5} \); the lower bounds of six decision variables are all considered as 0 and the upper bounds are set as \( X_{j}^{u} = 2 \times 10^{{{ - }5}} \;\left( {j = 1,2,3} \right) \) and \( X_{j}^{u} = 2 \times 10^{{{ - }2}} \;\left( {j = 4,5,6} \right) \). The relevant parameters of M-BBO are tabulated in Table 1. Figure 5 depicts the convergence process, where the final value of fitness reaches \( 4.346 \times 10^{5} \). The optimized result of control parameters is displayed in Table 2.
Table 1

Simulation parameters of M-BBO algorithm



Population size NP


Maximum generation number NG


Maximum immigration rate I


Maximum emigration rate E


Maximum mutation rate σmax


Fig. 5

Convergence process of M-BBO

Table 2

Control parameters obtained by M-BBO algorithm









\( 1. 8 4 2\times 10^{{{ - }5}} \)

\( 1. 9 9 5\times 10^{{{ - }5}} \)

\( 1. 6 4 0\times 10^{{{ - }5}} \)

\( 1. 1 1 4\times 10^{ - 2} \)

\( 9. 2 8 2\times 10^{ - 3} \)

\( 6. 0 4 2\times 10^{ - 3} \)

Figure 6 plots the follower’s three-dimensional trajectories in the LVLH frame under the set of parameters in Table 2. The time histories of relative position error \( \left\| {{\mathbf{e}}\left( t \right)} \right\| \) are shown in Fig. 7. As can be seen, the optimized controller based on M-BBO can support the accomplishment of the given mission for tracking the desired trajectory. Figure 8 illustrates the time histories of total fuel consumption \( \Delta V\left( t \right) \). At the time of \( t_{f} \), the fuel cost of the control is 3.259 m/s.
Fig. 6

Actual controlled trajectory (solid line) and desired trajectory (dashed line)

Fig. 7

Tracking error of the follower

Fig. 8

Total fuel cost

To testify the improvement of M-BBO for identifying the control parameters of SFF, the comparative experiments with the original BBO [13] and the blend BBO (B-BBO) [25] are carried out. Note that these optimization algorithms have the same initialization part, which evades the influence of different initializations. Some requisite parameters are consistent with those in Table 1. The evolution curves of three methods are depicted in Fig. 9. The convergence quality of M-BBO is better in contrast to the others, which reveals the assistance of new migration operator in the optimization process. This is because that the redesigned operator strengthens the exploration ability and prevents the population falling into the local optima in some degree. The results here imply that M-BBO is at least competitive with BBO and B-BBO, and could be a valuable tool for designing the controller of SFF.
Fig. 9

Comparative convergence process of M-BBO with other optimizations

6 Conclusion

In this paper, the problem of optimizing the control parameters for SFF missions is addressed. A nonlinear Lyapunov-based control law is adopted, and the key of the optimization is tuning the feedback matrix parameters of the controller. A modified version of BBO, i.e., M-BBO, is presented to deal with this parameter optimization problem. By virtue of the new migration operator, which assimilates the exploration of GOA without destroying the exploitation of BBO, M-BBO has an appropriate balance between solution diversification and intensification. With the help of M-BBO, the generated SFF controller can guarantee an excellent performance index that performs an overall evaluation of tracking error and fuel cost. Comparative results suggest that the proposed M-BBO is a feasible and superior method for determining the SFF control parameters.

It has to be pointed out that the limitation of the developed method is that the objective function during the optimization considers a weighted fitness function, that is, the method is only targeted at the single-objective optimization. In the future work, applying multi-objective optimization algorithms to the research field of SFF control is worthy of investigation.


  1. 1.
    Sobiesiak LA, Damaren CJ (2015) Impulsive spacecraft formation maneuvers with optimal firing times. J Guid Control Dyn 38(10):1994–1999CrossRefGoogle Scholar
  2. 2.
    Wang J, Zhang J, Cao X (2012) Optimal satellite formation reconfiguration strategy based on relative orbital elements. Acta Astronaut 76(76):99–114CrossRefGoogle Scholar
  3. 3.
    Zhang C, Wang J, Sun R et al (2018) Multi-spacecraft attitude cooperative control using model-based event-triggered methodology. Adv Space Res 62:2620–2630CrossRefGoogle Scholar
  4. 4.
    Kristiansen R, Nicklasson PJ (2009) Spacecraft formation flying: a review and new results on state feedback control. Acta Astronaut 65(11–12):1537–1552CrossRefGoogle Scholar
  5. 5.
    Lim Y, Jung Y, Bang H (2018) Robust model predictive control for satellite formation keeping with eccentricity/inclination vector separation. Adv Space Res 61(10):2661–2672CrossRefGoogle Scholar
  6. 6.
    Sun R, Wang J, Zhang D et al (2017) Roto-translational spacecraft formation control using aerodynamic forces. J Guid Control Dyn 40(10):2556–2568CrossRefGoogle Scholar
  7. 7.
    Yang Z, Duan H, Fan Y et al (2018) Automatic carrier landing system multilayer parameter design based on Cauchy mutation pigeon-inspired optimization. Aerosp Sci Technol 79:518–530CrossRefGoogle Scholar
  8. 8.
    Steinberg ML, Page AB (1999) Nonlinear adaptive flight control with genetic algorithm design optimization. Int J Robust Nonlinear Control 9(14):1097–1115CrossRefGoogle Scholar
  9. 9.
    Juang JG, Chiou HK, Chien LH (2008) Analysis and comparison of aircraft landing control using recurrent neural networks and genetic algorithms approaches. Neurocomputing 71(16–18):3224–3238CrossRefGoogle Scholar
  10. 10.
    Lu J, Yang C, Peng B et al (2014) Self-tuning PID control scheme with swarm intelligence based on support vector machine. In: IEEE international conference on mechatronics and automation. Tianjin, China, pp 1554–1558Google Scholar
  11. 11.
    Deng Y, Duan H (2016) Control parameter design for automatic carrier landing system via pigeon-inspired optimization. Nonlinear Dyn 85(1):97–106MathSciNetCrossRefGoogle Scholar
  12. 12.
    Soyinka OK, Duan H (2017) Satellite formation keeping via chaotic artificial bee colony. Aircr Eng Aerosp Technol 89(2):246–256CrossRefGoogle Scholar
  13. 13.
    Simon D (2008) Biogeography-based optimization. IEEE Trans Evol Comput 12(6):702–713CrossRefGoogle Scholar
  14. 14.
    Rahmati SHA, Zandieh M (2012) A new biogeography-based optimization (BBO) algorithm for the flexible job shop scheduling problem. Int J Adv Manuf Technol 58(9–12):1115–1129CrossRefGoogle Scholar
  15. 15.
    Gong W, Cai Z, Ling CX (2011) DE/BBO: a hybrid differential evolution with biogeography-based optimization for global numerical optimization. Soft Comput 15(4):645–665CrossRefGoogle Scholar
  16. 16.
    Feng Q, Liu S, Zhang J et al (2014) Biogeography-based optimization with improved migration operator and self-adaptive clear duplicate operator. Appl Intell 41(2):563–581CrossRefGoogle Scholar
  17. 17.
    Zhang B, Zhang M, Zheng Y (2014) A hybrid biogeography-based optimization and fireworks algorithm. In: IEEE congress on evolutionary computation. Beijing, China, pp 3200–3206Google Scholar
  18. 18.
    Saremi S, Mirjalili S, Lewis A (2017) Grasshopper optimisation algorithm: theory and application. Adv Eng Softw 105:30–47CrossRefGoogle Scholar
  19. 19.
    Imani A, Bahrami M (2013) Optimal sliding mode control for spacecraft formation flying in eccentric orbits. Proc Inst Mech Eng Part I J Syst Control Eng 227(5):474–481CrossRefGoogle Scholar
  20. 20.
    Zhang Y (2002) Study on dynamics and control technology of satellite formation flying. Ph.D. dissertation, National University Defense TechnologyGoogle Scholar
  21. 21.
    Mukherjee R, Chen D (1993) Asymptotic stability theorem for autonomous systems. J Guid Control Dyn 16(5):961–963zbMATHCrossRefGoogle Scholar
  22. 22.
    Goldberg DE (1989) Genetic algorithms in search, optimization and machine learning. Addison-Wesley, BostonzbMATHGoogle Scholar
  23. 23.
    Ma H (2010) An analysis of the equilibrium of migration models for biogeography-based optimization. Inf Sci 180(18):3444–3464zbMATHCrossRefGoogle Scholar
  24. 24.
    Wolpert DH, Macready WG (1997) No free lunch theorems for optimization. IEEE Trans Evol Comput 1(1):67–82CrossRefGoogle Scholar
  25. 25.
    Ma H, Simon D (2011) Blended biogeography-based optimization for constrained optimization. Eng Appl Artif Intell 24(3):517–525CrossRefGoogle Scholar

Copyright information

© Shanghai Jiao Tong University 2019

Authors and Affiliations

  1. 1.School of Aeronautics and AstronauticsShanghai Jiao Tong UniversityShanghaiChina

Personalised recommendations