Flight Trajectory Optimization Using Genetic Algorithm Combined
Flight Trajectory Optimization Using Genetic Algorithm Combined
Abstaract
This paper considers the numerical method to solve trajectory optimization problems where ecient flight trajectories are searched to minimize a performance index
with specified constrained. While a wide variety of numerical methods have been developed, the direct application of a nonlinear programming method is frequently
used in the recent applications, which transforms the
original problem into a nonlinear optimization problem.
Although these methods can be applied to complicated
applications, it is very dicult to find reasonable initial
solutions since practical problems have high nonlinearlity. This paper tries to apply the Genetic Algorithm
(GA) method. Sine the GA approach is one of the random search methods, the initial solutions are selected
at random. As shown in numerical examples, the GA
approach has slow convergence characteristics and the
meaningless fluctuation in the solutions. Therefore, the
gradient approach is utilized to refine the solutions. As
the gradient method, the authors uses the BDH method
which approximates the state and control variables using linear interpolation and the collocation method is
used to satisfy the dynamic equations. The obtained
Hessian matrix can be approximated in a Block Diagonal Form which is suitable for ecient computation.
The proposed approach is applied to the optimal accent
trajectory optimization of a spaceplane. The spaceplane
is a future space transportation vehicle and its conceptual design is investigated.
As a non-gradient optimization algorithm, a Genetic Algorithms (GA) is employed, which uses search
procedures based on the mechanics of natural genetics, which combines a Darwinian survival-of-the-fittest
strategy to eliminate unfit characteristics and uses random information exchange(3) . While the original GA
codes continuous variables into a string of bit code, the
continuous variables can be dealt with by an advanced
continuous parameter GA(4) which defines a chromosome as an array of floating point numbers. Since
the GA approach is categorized as random search algorithm, initial solutions are selected at random. However, the convergence of the search process is usually
very slow.
This paper utilizes the continuos parameter GA
in order to select the initial solutions for the BDH
method(5) which is one of the gradient methods proposed by us. The characteristics of the GA approach to
the trajectory optimization are examined for a simple
problem with an analytic solution and the limitation
of this approach will be revealed. Additionally, as a
practical complicated example, an ascent trajectory optimization problem of a spaceplane is computed by the
presented method which uses the GA approach combined with the gradient method. The space plane is a
future space transportation vehicle which takes o horizontally, reaches to a space station with a single stage,
and lands horizontally(6) . In order to perform this mission, the vehicle changes several types of engine, e.g., an
air breathing engine and a rocket engine according to
its flight phase. The ecient accent trajectory design is
strongly desired to maximize payload or minimize consumed fuel.
Introduction
Trajectory optimization problems have been widely considered in aerospace engineering fields(1) . The problem
is formulated as the calculus of variations where an objective function such as a flight time or required fuel is
minimized while satisfying initial/final conditions and
path constrains for a flying vehicle. Although some
techniques such as the dynamic programming of Bellman and the maximum principle of Pontryagin have
been developed and used, the recent development of
computer is promoting new algorithms(2) . Some of
the new methods transform the original problem into
1
Defining the state variables x(t) and the control variables u(t), the dynamic system is defined by the state
equations as
d
x(t) = f (x, u, t)
(1)
dt
The state and control variables are optimized to minimize the following performance index
J[x, u, t]
(2)
(4)
The initial Np population of the independent variables is prepared for the continuous parameter GA at
random. The generation is updated from the following
process:
1) Selection of parents: m + 2 parents are initially selected at random.
2) Generation of children: the gravity point of the first
m + 1 parents is determined as xp . The deviation
vectors of each parents are defined as
xp =
m+1
1 X
xi
m+1 1
(10)
d i = xi xp
(11)
The normalized orthogonal base vectors to the deviation vector di , (i = 1, ..., m) are prepared as
e1 , ..., enm
(12)
GA Approach
The trajectory optimization problem stated in the preceding section can be converted to a nonlinear optimization problem. The time interval from tI to tF is divided
into N elements to transform the control variables u(t)
as a function of time to a set of discrete variables. By denoting the nodal values of time by ti (i = 1, 2, ...N + 1),
control variables are represented as a set of discrete values ui = u(ti ). If the initial states x(tI ) are specified in
the initial conditions, and if the final time tF is assumed
and the descritized control variables ui are assumed,
the state variables can be calculated by an appropriate integration scheme. In this paper, the control variables between nodal values of ui are interpolated using
a third order spline function, and the 4th order RungeKutta algorithm is used as the integration scheme. This
approximation makes it possible to represent the state
variables at time node ti as a function of descretized
control variables ui and the final time tF . Therefore,
the independent variables to be optimized are defined
as
pT = [uT1 , uT2 , ..., uTN +1 , tF ]
(5)
It should be noted that unknown initial states variables
can be incorporated into the independent variables.
The performance index J, the final conditions at
tF , and path constrains are defined as a function of the
independent variables p. The trajectory optimization
problem can be transformed into the following nonlinear
optimization problem:
minimize : J(p)
subject to : F (p) = 0
G(p) = 0
H(p) 0
(6)
(7)
(8)
(9)
xc = xp
m
X
i=1
wi di
nm
X
vi Dei
(13)
i=1
where D is the distance of the orthogonal component of the vector dm+2 to the d1 , ..., dm vectors,
and wi and vi are the random variables with normal deviates. Note thet the number of chirdren is
specified as 2 Nc . The above process is called
as UNDX-m method(7) which allows the uniform
search.
3) Selection: the fitness function of each parent and
generated child is calculated. The fitness function
can be generated by using the performance index
and the constraints as
X j
F = J+
[w1 max[0, | Gj (p) | ]2
j
+w2j
max[0, Hj (p)]2 ]
(14)
Gradient Approach
(15)
(16)
where X k is the vector X at kth iteration step, indicates the gradient of a function associated with the variables X, and dk is the update vector (= X k+1 X k ).
Vector G0 is composed from all the equal constraints.
Matrix B in Eq. (26) denotes the approximation of the
Hessian matrix H for the following Lagrange function
L:
(29)
L = J(X) + T G0 (X) + T H(X)
H = 2 L
(17)
pk = X k+1 X k
xi + f (xi , ui )
ti
2
ti+1 Ki
]=0
2 Ki+1
Ki+1 ti Ki ti+1 = 0
H =
(21)
(22)
F (X) = 0
H(X) 0
(23)
(24)
5.1
0
0
2X1 X1 L
0
0
..
.
2XN +1 XN+1 L
(34)
Numerical Examples
Rocket Thrust Direction Control
(27)
(28)
subject to
=
(26)
(25)
Note that the Eq. (21) indicates the continuity condition of states at the mid point in time element ti .
In order to solve the nonlinear programming
problem, a sequential quadratic programming (SQP)(8)
method is employed. The SQP tries to solve the following quadratic programming problem in a sequential
manner:
G0 (X k ) + G0 (X k )dk
H 0 (X k ) + H 0 (X k )dk
(32)
T
To check the validity of the GA approach, a planar powered flight was investigated. A point mass m is guided
by controlling the direction angle of a constant thrust
with magnitude ma on a planar inertial coordinate system as shown in Fig.1.
The state equations are
0 0 1 0
0
0 0 0 1
d
0
x +
x=
(35)
0 0 0 0
a cos
dt
0 0 0 0
a sin
1
minimize J(X k )dk + (dk )T Bdk
2
k+1
[xi+1 + f (xi , ui )
Ki = ti /(tF tI )
k+1
) L(X , , )
(33)
The Hessian matrix for Eqs. (19)-(24) is derived
subject to
(20)
k+1
as
(19)
G(X) = 0
q = L(X
(18)
minimize J(X)
(31)
where
k
Using this approximation, the trajectory optimization problem is transformed into a nonlinear programming problem defined as,
B k pk (pk )T B k
q k (q k )T
k
T
k
(q ) p
(pk )T B k pk
B k+1 = B k +
(30)
x = [x, y u, v]T
(36)
given time T so as to maximize the final horizontal velocity. The initial and final conditions and performance
index for this problem are
0 1 0 0
h
F =
x(T )
=0
(37)
0 0 0 1
0
J = v(T )
(39)
Figure 2 indicates the transition of the finest performance index during the GA process. Figures 3,4 and
5 are the horizontal velocity, the vertical velocity, and
the trajectory, respectively. Those values are compared
with analytical solutions. The numerical solutions show
fluctuation around the analytical ones. This is remarkable in Fig. 6 showing the control variables, i.e., the
time history of the thrust direction. These results indicate that the GA approach has a great advantage in
the selection of initial solutions since those are selected
at random but has a disadvantage in the convergence
characteristics. It should be noted that the fluctuation in the GA method can be reduced if the number
of initial population increases and the huge number of
generations is allowed.
Figures 7 and 8 show the optimal solutions obtained from the BDH approach in which the initial solutions are obtained from the GA approach. These results
indicate the good accuracy of the BDH method.
5.2
take o weight m0
wing area Sw
ATR intake area
SCR intake area
RE thrust TRE
RE Isp
(38)
Dividing the time scale into N = 20 elements, the independent variables to be optimized are represented as a
set of i .
In this calculation, the constant values are a = 2,
h = 20, and T = 10, respectively. The following values
are selected in the GA method:
Np = 100, m = 4, Nc = 100
300 [ton]
336.8 [m2 ]
17.96 [m2 ]
17.96 [m2 ]
233.6 [ton]
450 [sec]
= v sin
(40)
T cos D
(41)
+ (2 r 2 ) sin
m
r
2r
T sin + L
v
=
+( 2 +
) cos
mv
r
vr
v
+2
(42)
T
(43)
=
Isp g0
:
:
ATR
SCR
(44)
(45)
RE
(46)
(47)
(48)
(49)
(50)
(tF )
Ha [h(tF ), v(tF ), (tF )] =
90 [km]
(51)
0 [deg]
400 [km]
(52)
(53)
where Ha is the function which defines the apogee altitude on the elliptic orbit. Several path constraints must
Reference
h 0 [km]
(54)
1 2
(55)
q = v 100 [kPa]
2
20 [deg]
(56)
8 3.07
Q = 4.4575 10
v
2
load factor :
300 [kW/m ]
L cos + D sin
4
mg0
(57)
(59)
(2) Hargraves, C. R. and Paris, S. W., Direct Trajectory Optimization Using Nonlinear Programming
and Collocation, Journal of Guidance, Control,
and Dynamics, Vol. 10, No. 4 (1987), pp.338-342.
(58)
(1) Bryson, A. E., Jr., and Ho, Y. C., Applied Optimal Control, Blaisdell Publishing Company, MA,
(1969).
Conclusion
The numerical method for the flight trajectory optimization problem is investigated in this paper. The
new approach is combined the Genetic Algorithm (GA)
method and the BDH method which is one of the gradient approach. The GA approach is used to find initial
solutions for the BDH method. While the GA approach
can select initial solution at random, it is dicult to obtain the smooth converged solution. On the other hand,
the BDH method has the good convergence characteristics if the good initial solutions are specified. The
proposing approach utilizes the good characteristic in
each method. The simple example which has an analytic solution is used to check the validity of the method,
and the complicated example of the accent flight trajectory optimization of a spaceplane is demonstrated to
show the applicability of the proposing approach.
Figure 9: Spaceplane