SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Automated Design of Multiphase Space Missions
Using Hybrid Optimal Control
Christian M. Chilan∗
and Bruce A. Conway†
University of Illinois, Urbana, Illinois 61801
DOI: 10.2514/1.58766
A modern space mission is assembled from multiple phases or events such as impulsive maneuvers, coast arcs,
thrust arcs, and planetary flybys. Traditionally, a mission planner would resort to intuition and experience to develop
a sequence of events for the multiphase mission and to find the space trajectory that minimizes propellant use by
solving the associated continuous optimal control problem. This strategy, however, will most likely yield a suboptimal
solution, as the problem is sophisticated for several reasons. For example, the number of events in the optimal mission
structure is not known a priori, and the system equations of motion change depending on what event is current. In this
work a framework for the automated design of multiphase space missions is presented using hybrid optimal control.
The method developed uses two nested loops: an outer-loop that handles the discrete dynamics and finds the optimal
mission structure in terms of the categorical variables, and an inner-loop that performs the optimization of the
corresponding continuous-time dynamical system and obtains the required control history. Genetic algorithms and
direct transcription with nonlinear programming are introduced as methods of solution for the outer-loop and
inner-loop problems, respectively. Automation of the inner-loop, continuous optimal control problem solver required
two new technologies. The first is a method for the automated construction of the nonlinear programming problems
resulting from the use of a transcription method for systems with different structures, including different numbers of
categorical events. The method assembles modules, consisting of parameters and constraints appropriate to each
event, sequentially according to the given mission structure. The other new technology is for a robust initial guess
generator required by the inner-loop nonlinear programming problem solver. The method, based on a real genetic
algorithm, approximates optimal control histories by incorporating boundary conditions explicitly using a
conditional penalty function. The solution of representative multiphase mission design problems shows the
effectiveness of the methods developed.
Nomenclature
A = adjacency matrix, or linear constraint matrix
bL = vector of lower bounds for parameters and constraints
bU = vector of upper bounds for parameters and constraints
C = nonlinear constraint vector
c = propulsion engine exhaust velocity, or coast event
cc = exhaust velocity of the chemical rocket engine
ce = exhaust velocity of the low-thrust electric engine
D = set of binary matrices with column-sum equal to one
d = Euclidean norm of the constraint violations
F = discrete space of feasible event sequences
f = system equation vector
h = equality constraint
i = impulsive event
J = total cost of the mission
K = infeasibility constant
l = Lambert’s rendezvous event
m = spacecraft mass
m− = spacecraft mass immediately before a particular event
m = spacecraft mass immediately after a particular event
NQ = cardinality of Q
NT = number of thrusting events in a particular q
NT;max = maximum number of thrusting events for all q
Ns = number of switches in a particular q
Ns1 = Ns 1, i.e., number of events in a particular q
Ns;max = maximum number of events for all q
P = parameter vector
Q = categorical space of events
q = event sequence
q = event
qj = event in the j 1 place in the sequence
r = spacecraft radial coordinate
S = switching set
s = boundary-free thrust arc event
t = boundary-specified thrust arc event, or time
te = duration of a particular thrust arc event
tj = initial time for the event qj
ts = switching time between events
tol = feasibility tolerance for the conditional penalty
method
UD = set of discrete controllers that satisfy discrete con-
straints
u = control variable vector
vr = radial component of spacecraft velocity
vθ = tangential component of spacecraft velocity
x = state variable vector
x = state variable
α = spacecraft thrust acceleration
α0 = spacecraft thrust acceleration at the beginning of the
mission
αf = spacecraft thrust acceleration at the end of the
mission
α− = spacecraft thrust acceleration immediately before a
particular event
α = spacecraft thrust acceleration immediately after a
particular event
β = spacecraft thrust-pointing angle
Δ = discrete controller
ΔV = change in velocity
ϕ = cost function
θ = spacecraft angular coordinate
Received 25 April 2012; revision received 4 December 2012; accepted for
publication 12 December 2012; published online 20 June 2013. Copyright ©
2012 by Christian M. Chilan and Bruce A. Conway. Published by the
American Institute of Aeronautics and Astronautics, Inc., with permission.
Copies of this paper may be made for personal or internal use, on condition
that the copier pay the $10.00 per-copy fee to the Copyright Clearance Center,
Inc., 222 Rosewood Drive, Danvers, MA 01923; include the code 1533-3884/
13 and $10.00 in correspondence with the CCC.
*Postdoctoral Research Associate, Department of Aerospace Engineering,
104 South Wright St. MC-236. Member AIAA.
†
Professor, Department of Aerospace Engineering, 104 South Wright St.
MC-236. Associate Fellow AIAA.
AIAA Early Edition / 1
JOURNAL OF GUIDANCE, CONTROL, AND DYNAMICS
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
I. Introduction
MANY interesting problems in numerical optimization are
hybrid optimal control (HOC) problems. HOC problems
include both continuous-valued variables and categorical variables in
the problem formulation. For the types of problems envisioned here,
the categorical variables will specify the structure or sequence of
events that qualitatively describes a space trajectory or mission. For
example, for an interplanetary spacecraft trajectory, a mission could
be described by the sequence of categorical variables: Earth
departure, low-thrust heliocentric arc, Mercury arrival. An equally
valid and perhaps lower-cost sequence might be: Earth departure,
low-thrust heliocentric arc, coast arc, low-thrust heliocentric arc,
Mercury arrival. The identities of the mission events and their order in
the sequence are the discrete or categorical variables of the HOC
problem. The time histories of the spacecraft position and velocity
and of the spacecraft control (thrust-pointing angle) are the
continuous-time variables of the HOC problem. The cost associated
with a particular event sequence is found from the solution of the
corresponding continuous optimal control problem.
Finding the sequence of events with minimum cost requires
searching a discrete space composed of the sequences resulting from
the permutation of the mission events. Even by considering a catalog
with only a few events, there may be several thousand possible
mission designs. A simple approach to find the best mission structure
is to perform a total enumeration of all the possible sequences.
Although intuition on the part of the mission planner can reduce the
size of the search space, total enumeration would still consume a
significant amount of resources. A solver is needed for this type of
problem, i.e., finding the best mission structure without performing
total enumeration, andwith little or no intuition supplied (or required)
on the part of the mission planner.
Oneway to reduce the discrete search space is to apply pre-pruning
with respect to some criteria; in this way, the remaining mission
sequences are the only ones considered of interest [1]. Vasile et al. [1]
also present an approach to automated mission planning, in which the
mission is composed of elementary blocks that represent events such
as Lambert maneuvers and flybys. Englander et al. [2] and Gad and
Abdelkhalik [3] presented methods that find the flyby sequence and
the optimal trajectory using genetic algorithms (GA). In their work,
the governing dynamics do not change during the trajectory legs
between flybys, i.e., such legs can be modeled with a single phase.
Ceriotti and Vasile [4] propose the use of a modified ant colony
optimization (ACO) algorithm for the automated mission planning
using flybys and impulsive maneuvers.
In this work, the problem of interest is the automated solution of
HOCproblems that consistof different events or phases. Theproblem
consists of finding the sequence composed of an unspecified number
of events (coast arcs, thrust arcs, and impulses) that minimizes
propellant consumption for a space trajectory with given initial and
boundary conditions, conducted in free or fixed final time.
A recent approach to solving HOC problems is to use two nested
loops: an outer-loop that handles the discrete dynamics and finds
a solution sequence in terms of the categorical variables, and an
inner-loop that performs the optimization of the continuous-time
dynamical system and obtains the required control history. Ross and
D’Souza [5] present a general framework for the description of HOC
problems and the corresponding mathematical formalism.
The nested-loop approach is qualitatively similar to the solution of
a discrete optimization problem using GA [6], where the objective is
usually some known, analytic function of the discrete parameters of
the GA that can be evaluated directly. In the HOC context, however,
the cost cannot be found until an optimal control problem (with
important event parameters supplied by the GA decision vector) is
solved. This is much more difficult and time-consuming, e.g.,
analytic functions always return a cost value, but the routine used to
solve the inner-loop problem inherits the difficulties associated with
solving optimal control problems.
The inner-loop solver finds the optimal trajectories for the
continuous-time dynamical systems associated with the event
sequences generated by the outer-loop. Note that distinct event
sequences can constitute quite different optimal control problems.
For instance, the equations of motion during a coast arc event are not
the same as the equations of motion during a continuous thrust arc
event. Similarly, the control parameters change in type and number;
an impulse is defined by magnitude and direction parameters, while a
thrust arc needs a flight time parameter and a continuous thrust-
pointing angle (or angles). Because the outer-loop requests the
evaluation of different sequences during the search, this work
presents a scheme that allows the inner-loop to solve trajectory
optimization problems with variable structures without a priori
knowledge or experience. This is a challenging aspect of the problem
because the determination of just a single optimal space trajectory
with (possibly) multiple coast arcs and thrust arcs has not been
considered a simple or straightforward problem.
The optimal trajectory for a particular mission sequence is found
using direct transcription with nonlinear programming (NLP) [7]. As
a gradient-based optimization method, NLP requires an initial guess,
which after several numerical iterations by the NLP problem solver
should converge to a solution, i.e., satisfy specified tolerances on
feasibility and optimality. Traditionally, the mission planner has had
to resort to intuition and experience to generate such initial guesses.
For example, solutions to Lambert’s problem [8] can provide good
initial guesses for impulsive trajectories. If the solution process
(outer-loop inner-loop) is to be automated, methods that generate
high-quality guesses are needed to yield a robust behavior of the NLP
problem solver. A new method was developed to generate the
approximate low-thrust trajectories to be used as the initial guesses
for the NLP solvers. The method, based on GA, directly approxi-
mates optimal control histories by incorporating boundary conditions
explicitly using a “conditional penalty” (CP) function [9].
II. Hybrid Optimal Control Problem
The solution to the HOC problem consists of finding values for a
set of discrete variables that minimize a cost function resulting from
the trajectory optimization of a continuous-time dynamical system.
One example of a HOC problem is the motorized traveling salesman
[10]. The salesman drives a car in which the motion dynamics are
described by a system of differential equations. He must visit a
number of cities whose locations are specified in the problem.
The objective is to find the ordered sequence of cities and the
corresponding optimal trajectory that minimizes the travel time of
the salesman. The identities of the cities and their order of visitation
are the discrete or categoricalvariables of the HOC problem.The time
histories of the car position and velocity and of the car controls
(acceleration and turn rate) are the continuous-time variables of the
HOC problem.
This section presents the general formulation of a HOC problem
using the formalism introduced by Ross and D’Souza [5].
A. Discrete Dynamics
The discrete events represent the qualitative states or phases of a
HOC problem. They can be grouped together into a categorical space
Q of finite cardinality NQ ∈ N. The task of the mission planner is to
assemble a sequence q of events q ∈ Q that fulfills the mission
objectives and minimizes a cost function defined in the inner-loop.
The construction of the sequence q incorporates constraints that form
the finite dynamics of the problem. Such constraints can be modeled
with a finite state automaton in the form of a directed graph or digraph
as shown in Fig. 1. The nodes and the directed edges constitute the
events and the allowed transitions between them, respectively.
From the digraph, the categorical state space is
Q fqa; qb; qcg
with cardinality NQ 3. The subscript notation in qi identifies the
state in the categorical space. To encode the information contained in
the digraph, let a switching set be defined as the transition between
states at time ts ∈ R
S q; q0 f x; u; x0; u0; ts g (1)
2 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
where x ∈ RNx and u ∈ RNu are the continuous state and control
vectors, respectively. If a transition is allowed from the event q to the
event q0, then the switching set S q; q0 ≠ ∅; otherwise, the
switching set is empty. All the possible switching sets can be encoded
in the NQ × NQ adjacency matrix A, where
Aij
1 if S qi; qj ≠ ∅
0 if S qi; qj ∅
(2)
Feasible event sequences can be obtained from the digraph. One
example of such a sequence is
q qa; qb; qa; qc; qa
where the number of switches Ns 4. The digraph also shows
transitions that are not allowed. For example, the automaton cannot
move from the state qc to qb because there is not a directed edge in
that direction. Thus, the switching set S qc; qb is empty. The number
of events in a sequence, given by Ns1 Ns 1, is not fixed. In
practice, however, an upper bound Ns;max on the length of the feasible
sequences is given to constrain the problem to finite sequences and to
reduce the computational complexity of the problem.
Let Q be a 1 × NQ matrix whose components are the elements
qi ∈ Q. Letalso the operation be definedoverthe Cartesian product
Q × f0; 1g in the following way:
q 0 ∅ and q 1 q; ∀ q ∈ Q
Also, let D be defined by
Dn×m ≡
n
Δ ∈ f0; 1gn×m∶
Pn
i 1 Δij ∈ f0; 1g ∀ j 1; : : : ; m
o
(3)
where the column-sum property implies that the columns are
composed mostly of zeros with only a single component equal to 1.
The framework proposed originally does not consider the case where
an event must not appear more than once in the solution sequence [5].
This constraint can be applied by requiring that D have full
column rank.
Finally, by including the following definitions:
q ∅ q ∅ q; ∅ ∅ ∅
the transition map Q → q can be characterized through the discrete
controller matrix Δ with Δ ∈ DNQ×Ns1 , as a matrix operation that
generates an event sequence of length Ns1
q Q Δ (4)
In constructing the discrete controller Δ, it is important to recall that
not all transitions between the events of the categorical set are
allowed. These constraints are encoded in the adjacencymatrix A as a
model for the finite state automaton. Therefore, the controller Δ must
satisfy
Δi;j ∈ fAki; 0g for Δk;j−1 1; i 1; : : : ; NQ; j 1; : : : ; Ns
(5)
Let the superscript notation qj−1
identify the event in the j place in the
sequence. Then, the condition in Eq. (5) indicates that if the current
event qj−1 is qk, then the next event qj can be qi if Aki is equal to 1. If
this were the case and the next event was chosen to be qi, then
Δk;j−1 1; and Δi;j 1
where the rest of the elements in the columns j-1 and j of Δ are zero
due to the column-sum property in Eq. (3).
The first and last columns of Δ are not directly constrained by the
adjacency matrix A, but they must satisfy discrete boundary
conditions. Let Q0 ⊆ Q be the set of all the allowed initial events, and
Qf ⊆ Q be the set of all permissible final events. Then, the initial
event q0 of all feasible sequences belongs to Q0. In the same way, the
last event qNs
of all feasible sequences belongs to Qf.
Finally, let UD ⊆ D be the set of discrete controllers Δ that satisfy
adjacency and boundary constraints. Then, the problem to be solved
by the outer-loop is a feasible integer programming (FIP) problem
that can be stated as follows:
Find Δ; Ns1 subject to Δ ∈ UD ⊆ DNQ×Ns1 ;
Ns1 ≤ Ns;max ∈ N
(6)
Assuming that the inner-loop handling the continuous-time
dynamics can find the optimal trajectory for any feasible sequence,
then each candidate q will have an associated cost. The objective of
the outer-loop solver is finding the sequence of events that has the
optimal cost among all the feasible sequences with
length Ns1 ≤ Ns;max.
The complexity of the search space for the FIP is NQ
Ns1 because
Δ ∈ D. The fact that this type of problem is NP-complete [5,10]
underscores the impracticality of total enumeration as a means to find
the optimal feasible sequence. A more efficient approach known as
branch-and-bound optimization has been used in the outer-loop to
solve the FIP [10,11]. This work introduces use of the GA for the
same purpose [12].
The GA [6] method is a relatively new technique (in comparison
with the calculus of variations or primer vector theory [13]) that has
been successfully applied to trajectory optimization problems
[14,15]. The GA requires a population of individuals; an individual is
a set of values for optimization parameters that is encoded as a string
of binary digits (a chromosome). In a HOC problem, a typical string
might consist of binary representations of states or events in a
sequence. GA methods have features that make them appealing for
use in an automated mission planner. For instance, planning intuition
in the form of an incumbent solution sequence is not required.
Although GA does not ensure that the solution found represents a
global optimum [16], the fact that the method is randomized allows
the search to continue even when a local minimum is found, unlike
gradient-based methods.
B. Continuous-Time Dynamics
A modern space mission is usually composed of several events.
Some of them have finite duration, such as thrust arcs, while others
are instantaneous, such as impulsive maneuvers. The dynamics
governing the system during any of the events q ∈ Q is defined by a
set of differential equations
_x f x; u; t; q (7)
where x ∈ RNx and u ∈ RNu are the continuous state and control
vectors, respectively. The dependence on q means that the system
dynamics may change throughout the mission, e.g., a model could
require switching from a thrust arc to a coast arc.
Let q q0; q1; : : : ; qNs be a finite sequence of events
where qj
∈ Q for j 0; 1; : : : ; Ns. Let t t0; t1; : : : ; tNs1
be a
qa
qc
qb
Fig. 1 Digraph for a finite state automaton.
AIAA Early Edition / CHILAN AND CONWAY 3
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
real-valued matrix associated with q. Then, the cost functional is
given by
J x : ; u : ; t; q; Δ; Ns
XNs
j 0
ϕ x tj 1 ; tj 1; qj
Z tj 1
tj
L x t ; u t ; qj dt (8)
where ϕ and L correspond to the Mayer and Lagrange costs of each
phase. As with most optimal control problems of significant
complexity, direct methods are preferred to avoid the difficulties
associated with the derivation and solution of the two-point boundary
value problem (TPBVP) resulting from the Euler–Lagrange
conditions [17] of the calculus of variations (COV). There are two
principal schemes that directly transform continuous-time optimal
control problems into NLP problems: collocation and transcription.
Both cause the equations of motion (EOM) to be satisfied by defining
nonlinear constraint equations. Direct collocation describes such
constraint equations with implicit rules, such as Hermite–Simpson
[18] and Gauss–Lobatto [19], while direct transcription uses explicit
rules, such as the fourth-degree Runge–Kutta (RK) method [7].
Given that NLP is a gradient-based method, it requires an initial guess
of the solution, i.e., the vector of solution parameters, which can be
obtained by intuition or experience. The robustness and accuracy of
the method depends on the selected resolution level of the time mesh,
the collocation or transcription scheme, and the quality of the initial
guess, which means how closely the guess satisfies the constraints
and the optimality conditions. For the implementation of the inner-
loop solver, direct transcription with RK integration rules and a
parallel-shooting scheme [7,12] is selected.
The NLP parameters can then be arranged as a singlevector PT that
collects all the continuous variables. For example, the parameter
vector for a trajectory consisting of a single thrust arc becomes
PT
ZT
where ZT xT
1 ; uT
1 ; xT
2 ; uT
2 ; : : : ; xT
N 1; uT
N 1; tf , xi ∈ RNx and
ui ∈ RNu for i 1; 2; : : : ; N 1 are parameter vectors that
represent the state and control variables at the nodes of the discrete
time mesh, and N is the number of segments of the mesh [7].
In the same manner, the nonlinear constraints can be collected into
a vector CT. The optimal control problem can then be restated as a
NLP problem of the form:
Minimize J P
subject to
bL ≤
8
<
:
P
AP
C P
9
=
;
≤ bU
where AP is formed by all the linear constraints of the problem, and
bL and bU are the lower and upper bounds of the parameters and
constraints. The upper and lower bounds for the great majority of the
nonlinear constraints C P are usually set to zero, because this
forces the solver to choose values for the parameters that satisfy the
EOMs when they are integrated forward using the RK rule within
each segment (there may be a small number of additional nonlinear
constraints, e.g., boundary conditions). Once the NLP problem is
clearly defined, it can be solved using dense or sparse solvers
such as NPSOL and SNOPT [20]. SNOPT is selected because
it can take advantage of the sparsity present in the constraint
Jacobian [18].
III. Multiphase Mission Design as a Hybrid
Optimal Control Problem
The validity of the proposed GA NLP approach for the
implementation of hybrid optimizers was shown by solving two
sample problems: the motorized traveling salesman [12] and the
interception of multiple asteroids [21]. However, these problems
contain several simplifications that make them qualitatively different
from multiphase missions. For instance, the categorical variables
represent targets such as cities and asteroids, and the length of the
categorical sequence is constant. This allowed a straightforward
definition of the GA chromosome and a static NLP structure, i.e., the
structure remained the same for any sequence, requiring only
changing thevalue of the interception constraints in the inner-loop. In
a multiphase mission, the categorical variables represent events such
as coast arcs and thrust arcs, and the length of the mission sequence is
variable. Therefore, approaches to accommodate variable-length
sequences and to generate different NLP problem structures dynami-
cally are needed.
The problems of interest here are missions composed of an
unspecified number of events with given initial and boundary
conditions, and free or fixed final time. The discrete and continuous-
time problems associated with the mission design will be described
along with the proposed methods of solution.
A. Discrete Dynamics
The discrete events in a space mission plan can be maneuvers such
as impulses, thrust arcs, and coast arcs, which can be grouped
together into a categorical space Q of finite cardinality NQ ∈ N.
Although it appears that only these three types of events need to be
defined, considerations regarding the robustness of the trajectory
optimization in the inner-loop, to be described in the following
sections, warrant the definition of additional, more specifically
defined events as shown in Table 1.
Therefore, the categorical space becomes
Q fq0; q1; q2; q3; q4g fc; i; s; l; tg (9)
with cardinality NQ 5. The subscripts identify the event within the
categorical space. The goal is to assemble a sequence q of events
q ∈ Q that fulfills the mission objectives and minimizes a cost
function defined in the inner-loop. The construction of the sequence
q incorporates constraints that are consistent with the discrete
dynamics of the problem. For instance, to satisfy state boundary
conditions, only a Lambert’s rendezvous l or a boundary-specified
thrust arc t can be the final event of the sequence [9]. Also, a coast is
placed at the beginning of the mission and between thrusting
maneuvers [9]; for example, sequences of the form i; i or s; s are
not allowed. These constraints help reduce the size of the discrete
search space.
The discrete constraints can be modeled with a finite state
automaton in the form of a directed graph or digraph, as shown in
Fig. 2. The nodes and the directed edges constitute the mission events
and the allowed transitions between them, respectively.
The directed edge that does not start from a node indicates that the
sequences start with event c; the double-circled nodes specify that the
sequences end with events l or t. These constraints form the discrete
boundary conditions
Q0 fcg (10)
Table 1 Categorical events for mission design
Event (code) Description
Coast arc c A finite coasting arc
Impulse i An instantaneous impulsive maneuver
Boundary-free thrust
arc s
A thrust arc without given boundary conditions,
subject only to feasibility with respect to the EOMs
Lambert’s
rendezvous l
A rendezvous composed of an impulse, a coast arc,
and another impulse that satisfies given boundary
conditions
Boundary-specified
thrust arc t
A thrust arc with given boundary conditions
4 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
Qf fl; tg (11)
Feasible event sequences can be obtained from the digraph. An
example of a feasible sequence is
q q0
; q1
; q2
; q3
; q4
; q5
; q6
; q7
c; s; c; i; c; s; c; t
where the number of switches Ns 7. The superscripts specify the
place of the event in the sequence. The digraph also shows transitions
that are not allowed. For example, the automaton cannot move from
the event i to event s, because there is not a directed edge in that
direction.
The information contained in the digraph can be encoded
following the notation and analysis shown in Sec. II for the definition
of the switching sets and the adjacency matrix, which becomes, for
the digraph of Fig. 2
A
2
6
6
6
6
4
0 1 1 1 1
1 0 0 0 0
1 0 0 0 0
0 0 0 0 0
0 0 0 0 0
3
7
7
7
7
5
(12)
The number of events in a sequence, given by Ns1 Ns 1, is not
fixed. An upper bound Ns;max is given to constrain the problem to
finite sequences and to make the problem tractable.
Let F be the set of all the feasible sequences, i.e., event sequences
that satisfy the adjacency constraints and the discrete initial and
boundary conditions. The problem to be solved by the outer-loop can
then be stated as follows:
minimize
q
ϕ q subject to q ∈ F; Ns1 ≤ Ns;max ∈ N
The evaluation of the function ϕ is carried out by the inner-loop
solver, which will provide the outer-loop with the optimal cost of the
trajectory corresponding to the argument sequence.
B. Continuous-Time Problem
The continuous-time problem of multiphase mission design is to
find the optimal trajectory that minimizes the objective function,
usually propellant consumption or time offlight, satisfies giveninitial
and boundary conditions for the continuous-time state variables, and
has a given mission structure described by an event sequence. The
total mission time can be specified or free. Because a multiphase
trajectory can use an electric engine for providing a continuous thrust
arc and a chemical rocket for impulses, parameters such as the initial
thrust acceleration α0, and the exhaust velocities of the propulsion
engines must be given.
Using polar coordinates on a spacecraft-fixed basis, the equations
of motion become [9]
_r vr
_θ
vθ
r
_vr
v2
θ
r
−
1
r2
f q α sin β
_vθ −
vθvr
r
f q α cos β
_α f q
α2
ce
(13)
where
f q
0 if q c
1 if q ∈ fs; tg
α is the thrust acceleration, ce is the exhaust velocity of the electric
engine, and β is the control angle describing the direction of the
thrust. Because the thrust magnitude provided by the electric engine
is constant, and the rate of change of the thrust acceleration appears in
the EOMs governing the finite events, it is convenient to use the thrust
acceleration as a measure of the spacecraft’s mass throughout the
trajectory.
An impulsive maneuver is modeled as changing both mass and
velocityinstantaneously.An equation relating such change isgiven in
[22]
m− − m
m− 1 − e−ΔVc
cc (14)
where cc is the exhaust velocity of the chemical rocket, and the
superscripts − and refer to instants immediately before and
immediately following the event. Then,
m− − m
m− 1 −
α−
α
(15)
using Newton’s second law. Substituting Eq. (15) into Eq. (14), the
states must satisfy the constraints [9]:
r r−
θ θ−
vr v−
r ΔVc sin β
vθ v−
θ ΔVc cos β
α α−e
ΔVc
cc (16)
where ΔVc is the impulse magnitude, and β is the direction of the
impulse in a spacecraft fixed basis.
An analytical expression for the thrust acceleration as a function of
the thrusting time te t − t−
can be obtained from Eq. (13)
Z α
α−
da
a2
Z te
0
dτ
ce
which yields
α
1
1
α− − te
ce
(17)
Minimizing the sum of the thrusting times can optimize a mission
consisting of multiple thrust arcs. However, this approach is not
appropriate if electric engines with different exhaust velocities are
used, because their difference in efficiency is not taken into account.
For instance, consider a trajectory with n thrust arcs where ti and ci
represent the thrusting time and the exhaust velocity of the engine
used during thrust arc i. Then, according to Eq. (17), the final thrust
acceleration due to propellant consumption is given by [9]
i sl
t
c
Fig. 2 Digraph of a finite state automaton for mission design.
AIAA Early Edition / CHILAN AND CONWAY 5
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
αf
1
1
α0
−
Pn
i 1
ti
ci
(18)
Minimizing the sum of the normalized thrusting times ti∕ci as
defined in Eq. (18) thus minimizes overall propellant consumption
for the case when engines with different exhaust velocities are
used.
For impulsive maneuvers, the change invelocity ΔV has been used
as a measure of the propellant consumed. Therefore, the total amount
of propellant used in a trajectory that uses multiple impulses is
described as the sum of the corresponding ΔVs. As with the low-
thrust case, summing ΔVs provided by rockets with different exhaust
velocities does not describe the total propellant used. Consider a
trajectory with n impulses where ΔVi and ci represent the change in
velocity of the spacecraft and the exhaust velocity of the rocket used
during impulse i. According to Eq. (16), the total change in thrust
acceleration due to propellant consumption is given by [9]
αf α0e
Pn
i 1
ΔVi
ci (19)
Thus, the sum of the normalized change in velocity ΔVi∕ci is a better
measure of propellant use, because values corresponding to different
rockets can be added to determine the total change in mass.
Optimizing a system that uses both low-thrust and chemical
propulsion in the same trajectory requires a uniform metric to
minimize. Equating the expressions for the thrust acceleration α in
Eqs. (16) and (17) yields an expression that relates the normalized
thrusting time te∕ce of the electric engine to the normalized change in
velocity ΔVc∕cc provided by the chemical rocket.
te
ce
1
α− 1 − e−ΔVc
cc (20)
The mission planner can now choose which measure of propellant to
minimize. In this work, the total normalized thrusting time is used as
the objective. Thus, if impulsive maneuvers are used, their ΔVs are
converted to normalized thrusting time using Eq. (20).
Let q q0; q1; : : : ; qNs be the finite sequence of events
provided by the outer-loop where qj
∈ Q for j 0; 1; : : : ; Ns. Let
t t0; t1; : : : ; tNs1
be a real-valued time matrix associated with q.
Then, the optimal control problem consists of minimizing the cost
functional given by
J x : ; u : ; t; q; Ns
XNs
j 0
g qj (21)
where
g qj
8
>>>>><
>>>>>:
0 if qj c
1
α−
j
1 − e−
ΔVc;j
cc if qj i
tj 1−tj
ce
if qj
∈ fs; tg
P2
k 1
1
α−
j;k
1 − e−
ΔVc;j;k
cc if qj l
subject to Eqs. (13) and (16) and
x t0 x0 (22a)
x tNs1 xf tNs1 (22b)
tj−1 ≤ tj ≤ tj 1; for j 1; : : : ; Ns (22c)
t0 0 (22d)
tNs1
free or fixed (22e)
where x ∈ R5 and u ∈ R are the continuous state and control
vectors, respectively.
In view of the fact that the inner-loop solver is expected to find the
optimal state trajectory for any given event sequence q, if it exists,
robustness is more important than high accuracy. With this in mind,
the proposed method of solution uses direct transcription with NLP
using RK integration rules and a parallel-shooting scheme [7]. To
maximize robustness for a given number of segments, only one RK
step is used on each segment. The method used in the inner-loop to
generate a good initial guess and to solve the continuous optimal
control problem automatically with robustness and accuracy will be
described in Sec. V.
IV. Transcription of the Mission Event Sequence
The discrete component of the HOC problem consists of finding
the feasible categorical sequence that has minimum cost. In the
mission design context, this means finding the sequence of events
that achieves the mission objectives while minimizing propellant
consumption. The successful solutions of the sample problems in
[12] suggest the use of GA for the implementation of the outer-loop
solver. In those problems, the discrete constraints were enforced by
assigning a large constant cost to infeasible sequences. This approach
is not practical for the multiphase problem because the discrete
dynamics are more complex. A new model that transforms the
constrained discrete optimization problem into an unconstrained
problem [9] and searches for the solution only in the feasible discrete
space ispresented. The proposedapproach also deals with categorical
sequences of variable length.
It is known that optimization algorithms improve their performance
if the search is carried out only in the feasible space defined by the
given constraints [23]. In the mission design problem the potential for
improvement is significant, because the specified discrete constraints
defineafeasiblespacethatismuchsmallerthanthetotaldiscretespace.
Searching only in the feasible space requires the transformation of the
constrained optimization problem into an unconstrained problem. The
proposed GA model applies the specified constraints implicitly,
allowing every individual to represent a feasible event sequence [9].
According to Fig. 2 only the thrusting events need to be described in a
sequence because coast arcs are always to be placed between them and
at the beginning of the sequence. Midcourse events can be modeled
using a binary digit, because there are only two allowed event types
(0fori,1fors).Similarly,abinarydigitcanalsorepresentthelastevent
in a sequence (0 for l, 1 for t). As a result, a feasible sequence can be
modeled using a binary string, in which every bit represents a thrusting
event. The remaining issue is to determine how to handle sequences
with a variable number of events.
A fixed-size binary string can represent sequences with variable
length by describing the number of thrusting events NT as the location
of the leading 1-bit in the chromosome [9]. The leading 1-bit does not
represent an event itself; it is just a marker stating that only the bits that
followaretobetakenintoaccount.Inadditiontothesequenceevents,a
categorical variable specific to mission design, to be included in the
chromosome, is the number of revolutions to be performed by the
spacecraft.If the maximum numberof revolutionsallowed isthree,itis
necessary to add two bits to the chromosome. Figure 3 shows a sample
10-bitchromosomethatcanaccommodatesequenceswithamaximum
number of thrusting events NT;max equal to 7 (1 bit for the length
marker, 7 bits for thrusting events, and 2 bits for the number of
revolutions). According to the convention of the previous paragraphs,
the string in Fig. 3 is to be decoded as i; s; t . By adding the coast arcs
that are assumed to precede each thrusting event, the resulting event
sequence becomes c; i; c; s; c; t with two revolutions.
Not all binary strings generated by GA are ready for decoding. For
instance, consider the following possible 8-bit strings: 00000000 and
0 0 0 0 1 0 1 1 1 0
Thrusting
events
Number of
revolutions
Length
marker
Fig. 3 Sample chromosome for variable-length sequences.
6 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
00000001. The former does not have the leading 1-bit, meaning that
its length is undefined, and the latter does have the leading 1-bit, but
does not contain any thrusting event. This issue can be handled by
preprocessing every GA-generated binary string through a binary
addition to 1000 before the decoding step, so that there is at least one
thrusting event, and the number of revolutions is defined. The sample
binary strings would then become 00001000 and 00001001, which
represent the sequence c; l with 0 and 1 revolution, respectively.
The outer-loop solver for the mission design problem will use this
model in which everystring generated by the GA represents a feasible
sequence. The GA solver used is the MATLAB Global Optimization
Toolbox [24].
V. Method for the Solution of the Continuous-Time
Optimal Control Problem
The continuous-time component of the HOC problem consists
of finding the optimal space trajectory that satisfies initial and
final boundary conditions and a given mission structure. In [12],
two sample problems were solved using GA and NLP for the
implementation of the outer- and inner-loop solvers, respectively. In
the motorized traveling salesman problem [12], the outer-loop
searched for the optimal visitation sequence of three cities. During
the search the outer-loop passed each candidate city sequence to the
inner-loop, which solved the corresponding continuous-time optimal
control problem and returned the cost to the outer-loop. That is, the
inner-loop must solve every optimal control problem required by the
outer-loop, or the hybrid optimizer may not find the optimal
sequence. This motorized traveling salesman problem is, however, an
unusually straightforward HOC problem, because even though the
inner-loop had to solve optimization problems with different visita-
tionsequences, the NLPproblem structure of parameters, constraints,
and system EOMs was static, i.e., it did not change. The only required
modification was setting the interception constraints with the
locations of the cities corresponding to the given sequence.
The mission design problem is qualitatively different from these
sample problems, as the discrete variables now represent events such
as impulses, coast arcs, and thrust arcs that, as will be shown, change
the structure of the NLP problem. In addition, the number of events in
the categorical sequence is not fixed; for example a mission might
consist of a coast arc, an impulse, another coast arc, and a thrust arc.
The same mission might be accomplished without the impulse, or
with an additional coast arc/thrust arc combination. Conventional
implementations of NLP solvers expect a static problem structure.
For the dynamical assembly of events required for the NLP
discretization of the mission design problem, a scheme that defines
events as modules consisting of parameters and constraints is
presented. The method assembles the respective events sequentially
in time according to the given mission structure [9].
It was noted in the discussion of the solution process for the
example problems [12,21] that the continuous-time problem, after
transcription, requires an initial guess,i.e., an approximate solution to
initialize the NLPproblem solver.If theguess is not sufficiently good,
the NLP solver will not converge, and as mentioned previously, a
suboptimal solution may be found or the HOC solution search could
stop. Because the mission design problems are sophisticated and
challenging, combining possibly lengthy sequences of events
(coasts, impulses, thrust arcs), reliably finding an approximate
solution of good quality is challenging. A new method was developed
that approximates optimal low-thrust trajectories [9] and addresses
these issues. The method, based on GA, approximates optimal
control histories by incorporating boundary conditions explicitly
using a CP function. The approximate solution from this method is
given as an initial guess to an NLP problem solver to obtain an
accurate optimal trajectory.
A. Methods for the Approximate Optimization of Multiphase
Impulsive Trajectories
The proposed method to approximate an optimal solution is based
on real GA. Real GA still uses binary representations and operations
for the evolutionary processes but at a level that is transparent to the
user. The approximate optimal trajectory is to be used as the initial
guess for a more accurate optimization method, such as direct
transcription with NLP.
Because experience shows that penalty methods do not handle
explicit constraints well in general, such constraints should be
handled implicitly whenever possible, i.e., posing the optimization
problem in such a way that it appears to be unconstrained from the
standpoint of the GA. For instance, a compound event named
“Lambert’s rendezvous” has been defined for trajectories that must
satisfy rendezvous conditions using impulsive maneuvers. Its
implementation is based on algorithms for Lambert’s problem, which
consist of the determination of an orbit that connects two position
vectors and has a specified transfer time. Battin [8] and Prussing [25]
present algorithms for Lambert’s problem using single and
multirevolution trajectories, respectively. Such algorithms yield the
semimajor axis and eccentricity of the transfer orbit, which is
sufficient to allow the determination of the velocity vectors at the
beginning and the end of the transfer. Although the original definition
of Lambert’s problem does not consider rendezvous maneuvers,
it is possible to match required velocity vectors by computing the
respective ΔVs using the resulting terminal velocity vectors. Because
the interception or rendezvous constraints are handled by the
Lambert’s problem algorithm, the GA can find optimal values for the
respective parameters for the states and transfer time without
explicitly dealing with any constraint.
Foran entirely impulsive trajectory, the following eventsconstitute
the categorical space Q:
1) A coast arc c is the most basic event to represent. It is
characterized by only one GA parameter, the flight time. Its
evaluation consists of integrating the EOMs in Eq. (13) from the
initial state of the event for the duration of the flight time. The state at
the end of the integration becomes the boundary state of the event.
2) An impulse i is also straightforward; it consists of two GA
parameters, the direction, and magnitude of the impulse. Its evalua-
tion applies the vector operation in Eq. (16) to the initial state of the
event. The resulting vector is the boundary state of the event.
3) The Lambert’s rendezvous l is a compound event consisting of
an impulse, a coast arc, and another impulse that is placed at the end
of the mission to satisfy given boundary conditions. Although this
compound event is equivalent to the sequence i; c; i , the Lambert’s
rendezvous event was introduced because the coast arc c and the
impulse i events would need explicit constraints to satisfy the given
boundary conditions. The only GA parameter required is the transfer
time, because the initial and target state vectors for the event are
specified. The evaluation of the event yields the terminal velocities
and hence the impulses required to perform the maneuver.
Assembling the respective events, in this case, i, c, and l,
sequentially in time constitutes a multiphase mission. Given that a
few parameters represent each event, a GA individual can
characterize an entire mission by collecting the parameters of all the
constitutive events. For example, the sequence q q0; q1; q2; q3
c; i; c; l can be represented by the chromosome
Coast Time0; Direction1; Magnitude1;
Coast Time2; Transfer Time3
where the superscripts identify which event in the sequence the
respective parameter belongs to. The cost determination of this
individual starts by evaluating each of the component events from left
to right, successively. Every event has a defined initial state at the
moment of evaluation that corresponds to the boundary state of
the previous event. The assessment of the last event concludes the
evaluation of the individual and precedes the computation of the
sequence cost. Forthe sample chromosome, it would be the sum of all
the explicit impulse magnitudes, in this case just magnitude1, and
the two impulse magnitudes resulting from solving Lambert’s
problem. The addition of events that use low-thrust propulsion is
more complex because they require continuous control histories. The
next section presents a method to approximate optimal trajectories
including these types of events.
AIAA Early Edition / CHILAN AND CONWAY 7
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
B. Conditional Penalty Method for the Approximate Optimization
of Multiphase Low-Thrust Trajectories
A GA-based approach, the CP method [9], has been developed for
the approximate optimization of multiphase low-thrust trajectories.
In principle, any evolutionary algorithm such as particle swarm
algorithms or genetic algorithms can be used with the CP
formulation. Instead of using traditional penalty methods to satisfy
explicit boundary conditions, a conditionally valued fitness function
is introduced to first find a feasible trajectory, and then refine it into a
trajectory that is also optimal. The approximate solution can then be
used as an initial guess for a direct solver that converts the continuous
optimal control problem into a NLP problem. The method inherits the
parallel scalability of GA for use in parallel computing systems [26].
An important feature of this method is that it is not constrained to a
particular choice of coordinate system. Also, the method allows
considering actual mission features, such as the use of constant thrust,
and the thrust acceleration increase as propellant is consumed.
A space mission can be accomplished successfully by thrusting for
the entire duration of the flight. However, primer vector theory shows
that such a strategy is likely not optimal. Trajectories consisting of
multiple low-thrust and coasting arcs, i.e., multiphase missions, can
often satisfy similar boundary conditions using less propellant. The
conditional penalty method described here optimizes this multiphase
type of trajectory without a priori knowledge. It is illustrated by
means of a sample minimum-propellant rendezvous using low thrust,
whose state trajectory is shown in cartoon form in Fig. 4.
Assuming that initial conditions are given, the state point A is
specified. For a rendezvous, the state point D is also given or is
determinable as a function of time. Intermediate points B and C are
not specified directly but can be obtained by integrating the system
with a control history during the first thrust arc and by coasting,
respectively. Assuming that the mission events can be evaluated in
chronological order, some general observations can be made at
this point:
1) Every arc has initial conditions before its evaluation.
2) The thrust arc AB does not have terminal boundary conditions.
3) The thrust arc CD has given boundary conditions.
4) The flight times of each arc, including the coast, are free.
A GA method can then optimize this mission by finding values for
1) control parameter vector uAB, 2) control parameter vector uCD,
3) flight time of thrust arc AB, 4) flight time of coast arc BC, and 5)
flight time of thrust arc CD, that satisfy the rendezvous conditions
while minimizing the total thrusting time. The control vectors consist
of parameters that determine the thrust-pointing angle history during
each thrust arc.
The integration of the EOMs in a thrust arc requires many
integration steps, which in turn calls for a rather large number of
parameters to represent the respective control history. Such a large
number of parameters in the GA model of an individual wouldrequire
the use of very large populations, reducing the effectiveness of the
method. A reduction in the number of parameters can be
accomplished by representing the control history at only a few points
in time. Interpolating the few control parameters using polynomials
such as the Hermite cubic or a Fourier transform [9,27,28] yields the
higher time resolution of the control history required for an accurate
integration.
A design of a chromosome for GA individuals, for the example
shown in Fig. 4, would require the following vector P of parameters:
P tAB; uAB; tBC; tCD; uCD
The determination of the cost of each individual is accomplished by
evaluating the mission phases successively using the parameter
values. For instance, the first thrust arc has a defined initial point A
that, with flight time tAB and control vector uAB, are used to obtain
point B. Then,point B is used with tBC to find point C at the endof the
coast. Finally, the evaluation of the second thrust arc requires the
integration of the system starting from C, using flight time tCD and
control vector uCD, to obtain point x tD . Although this approach
ensures every individual satisfies the EOMs throughout the
trajectory, the specified terminal conditions may not be achieved. An
approach to address this issue is to use penalty methods in the fitness
function. For example, the constrained optimization problem
Minimize J P subject to hi P 0; i 1; 2; : : : ; n
would become
minimize J P k
Xn
i 1
Φ hi P
where Φ is the penalty function, and k is the penalty coefficient.
Experience shows that using a linear combination to minimize the
cost and constraint violations simultaneously is not an effective
technique [29]. Because the inner-loop in the HOC problem solver
should be able to optimize a trajectory with any structure, an
alternate, more robust method is needed. Coello Coello [29] presents
a method that handles the constraints based on evolutionary
multiobjective optimization (MOO). The method explicitly ranks the
GA individuals in the population according to prescribed rules on
their feasibility and optimality. The CP method [9] used in this work
has a simpler implementation, but it is effective in finding solutions to
constrained optimization problems.
In the CPmethod, the constraint violations are mapped into a scalar
distance d, i.e., the Euclidean distance between the boundary state
x tD and the boundary conditions D. Figure 5 shows two boundary-
specified thrust arcs identified by subscripts (1, 2) corresponding to
the last thrust arcs of multiphase missions represented by different
GA individuals. The last thrust arcs for individuals 1 and 2 terminate
at x1 tD and x2 tD , respectively. If the distance d is greater than the
specified tolerance, as is the case for individual 1, the trajectory is
considered to be infeasible; the cost assigned to the individual is then
the addition of a large infeasibility constant K and the distance d,
which provides the search with directionality information even from
infeasible individuals. If the trajectory is feasible, as results from the
last thrust arc of individual 2, the cost assigned to the individual is no
longer related to the distance d, but instead it is based on the original
A B
C
D
X1
X2
thrust
coast
thrust
Fig. 4 State trajectory of multiphase low-thrust mission.
X1
X2
C1
D
x1(tD)
d1 > tol
d2 toltolerance region
C2
x2(tD)
Fig. 5 Feasibility determination of boundary-specified thrust arcs.
8 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
cost metric, i.e., the amount of propellant used in the entire mission.
This method can be implemented using the following conditional
fitness function:
J
K d if d > tolPNs
j 0 g qj if d ≤ tol
(23)
The CP method requires the tuning of only two parameters. The
infeasibility constant can be trivially set to a value that is higher than
the expected cost of any feasible solution. In general, the tolerance
should be set to low-accuracy values in the order of 10−1 to 10−2 for
normalized problems, because evolutionary metaheuristics are less
accurate than gradient-based deterministic methods such as NLP.
High-accuracy tolerances are likely to cause overpenalization,
i.e., convergence to a feasible solution with a cost that is significantly
higher than the optimal cost.
C. Methods of Solution for the Optimization of a Multiphase
Space Trajectory
Direct methods have become a popular choice for trajectory
optimization problems because they avoid the difficulties related to
the derivation and solution of the TPBVP resulting from the
Euler–Lagrange equations of the COV. Unlike GA solutions,
trajectories found using NLP satisfy optimality conditions to a
specified tolerance, which yields accurate solutions. Schemes for the
transformation include Hermite–Simpson collocation [18], Runge–
Kutta transcription with parallel shooting [7], and Gauss–Lobatto
collocation [19], which vary in their degree of accuracy and
robustness. Regardless of the scheme chosen, the NLP trans-
formation consists of discretizing time and modeling the continuous-
time state and control variables at several points in time. The system
dynamics and boundary conditions are satisfied by defining
nonlinear constraints that relate nodal NLP parameters. Creating such
a NLP structure of parameters and constraints is an involved process
that the mission planner has to perform each time the optimization
problem is formulated with a different structure. It is clear that this
approach is not practical for a mission “automaton,” because the
problem statement for the inner-loop calls for the optimization of
trajectories with a variety of structures. Therefore, a modular scheme
is needed for the automatic construction of NLP problems during
runtime.
The basic module in this work is the categorical event, which
consists of a set of NLP parameters and constraints [9]. A property of
every event is the presence of terminal nodes that allows representing
initial and boundary states. This property, along with the definition of
continuity constraints on the states during the event transitions,
allows assembling the events successively in time regardless of their
internal dynamics in a fashion similar to that described by von Stryk
and Glocker [10] as shown in Fig. 6. The internal constitution of each
event module depends on the type of event it represents [9].
The NLP representation of impulses is implemented as follows:
1) An impulse is represented by a knot, i.e., two nodes
corresponding to the states immediately before and following the
impulsive maneuver.
2) Two additional parameters are used for the direction and
magnitude of the impulse.
3) Five nonlinear constraints ensure that the parameters satisfy the
change in velocity and mass described in Eq. (16).
In a similar way, the NLP representation for coast and thrust arcs is
the following:
1) A coast/thrust arc is represented by a standard mesh for parallel-
shooting using RK integration rule. One RK step per segment has
been selected for maximum robustness.
2) An additional parameter is added for the flight time.
3) Five nonlinear constraints on each mesh segment ensure that the
parameters satisfy the EOMs in Eq. (13).
4) Additional constraints may be imposed depending on the
desired maneuver, e.g., interception or rendezvous.
Note that there is no particular event definition for a Lambert’s
rendezvous, because the NLP problem does not employ any of the
algorithms to solve Lambert’s problem. When the inner-loop is
assigned to optimize a trajectory containing this type of event, it
assembles an impulse, a coast arc, and another impulse, and defines
the nonlinear constraints required to satisfy the boundary conditions.
By parsing the events provided by the outer-loop, this modular
approach allows the inner-loop to set the vector of NLP parameters
with suitable bounds and to compute the appropriate nonlinear
constraints. The modeler has the discretion to define the upper and
lower bounds for the parameters in a way that is appropriate for the
problem in consideration; the boundsfor the GA and NLPeventsmay
or may not be similar as long as the GA search space is a subset of the
NLP search space. This is a necessary condition for the GA solution
to be a feasible initial guess for the NLP problem. Regarding the
terminal constraints, numerical experimentation shows that the NLP
solver finds the optimal solution more robustly if the interception
constraints, i.e., position matching, are transformed to Cartesian
coordinates instead of directly using polar coordinates.
The cost function is a measure of the propellant used throughout
the trajectory. In this work, it has been constructed as the sum of the
normalized thrusting times corresponding to the thrust arcs and those
resulting from the transformation of the impulse magnitudes as
defined in Eq. (20). It is important to note that a feasible trajectory
may not exist for some values of the categorical variables, e.g.,
number of revolutions, and the constraints for the continuous
variables, e.g., boundary conditions and flight time. For these cases,
the inner-loop assigns a large constant cost to the event sequence
provided by the outer-loop.
D. Transformation of the Approximate GA Solution
into the NLP Initial Guess
The approximate solution for the trajectory optimization problem
found using the conditional penalty method [9] is a good initial guess
for the NLP problem solver, because the EOMs are satisfied and the
propellant consumption has been minimized heuristically. However,
such a solution cannot be used directly by the NLP solver, because the
GA and NLP parameter representations are different. For example,
the GA model does not use parameters to represent state variables;
they are computed during the evaluation of each event taking as initial
state the boundary state of the previous event. Therefore, a procedure
is required to generate guess values for the respective NLP
parameters from the approximate GA solution.
For an impulse, the GA values for the initial state and the impulse
direction and magnitude can be used directly as guess values for the
NLP parameters corresponding to the state at initial node and the
direction and magnitude of the impulse. The vector operations in
Eq. (16) describe the impulse dynamics and generate guess values for
the state at the boundary node of the event.
For a coast arc, the GA values for the initial state and flight time
can be used directly as guess values for the NLP parameters
corresponding to the state at the initial node and the flight time.
Performing an integration of the system in Eq. (13) yields guess
values for the state parameters at the inner and boundary mesh nodes.
Fora thrust arc, the GAvalues for the initial state and the flight time
can again be used as guess values for the NLP parameters for the state
at the initial node and the flight time. To obtain guess values for the
states at the inner nodes, the few GA control parameters are
t0= 0 tNs1= tf
event q0
t1 t2 ti
ti+1
event q1
event qi
x = f(x,u,q0
) x = f(x,u,q1
) x = f(x,u,qi
)
x(0)
x(tf)
Fig. 6 Assembly of events in a multiphase trajectory.
AIAA Early Edition / CHILAN AND CONWAY 9
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
interpolated to achieve a resolution consistent with the transcription
mesh; this provides the guess values for all the control parameters for
the thrust arc. Then, the system in Eq. (13) can be integrated to obtain
the state values for the inner and boundary nodes. This is a
computationally practical approach, because the interpolation of the
control history involves only a few GA parameters, and the integ-
ration of the EOMs is an initial value problem (IVP) with a number of
steps given by the resolution of the discrete time mesh.
Finally, for a Lambert’s rendezvous, the GA model provides an
initial state and a flight time; a target state is given in the problem
definition. A Lambert’s problem algorithm can find the terminal
velocities needed to perform the rendezvous, which in turn yield the
magnitude and direction of the first and second impulsive maneuvers.
With this information, guess values can be generated for the
parameters of the events that compose the Lambert’s rendezvous
in the NLP model, i.e., a first impulse, a coast arc, and a second
impulse.
The next paragraph shows an outline of the algorithm for the
optimization of trajectories with different structures using NLP. As
with the CP approximation method, the events are evaluated one at a
time, and the locations of the respective event parameters and
constraints in the GA vector, NLP parameter vector, and NLP
constraint vector are determined through the use of an offset variable
on each vector. Each offset variable indicates the location of the first
element, e.g., parameter or constraint, for the event that is currently
evaluated; the rest of the elements for the current event are recognized
by their relative position with respect to the first element. After the
evaluation of the event is complete, the number of elements
(parameters or constraints) of the current event in the respective
vector is added to the corresponding offset variable so that it indicates
the location of the first element of the next event. This process
continues successively until all events in the given sequence have
been evaluated.
MAIN PROGRAM
initialize offsets on GA solution vector and NLP initial guess and bounds
vectors
FOR each event
transform solution values of the GA event parameters into initial guess
values for the NLP event parameters, and
set them in the NLP initial guess vector
set bounds for the respective NLP event parameters and constraints in the
NLP bounds vectors
advance offsets on GA parameters vector and NLP initial guess and bounds
vectors to the next event
END
call NLP solver with initial guess vector, bounds vectors, and names for the
OBJECTIVE FUNCTION and the NONLINEAR CONSTRAINTS
FUNCTION
OBJECTIVE FUNCTION
initialize offset on NLP parameter vector
FOR each event
accumulate the cost contribution of the event
advance offset on NLP parameter vector to the next event
END
return accumulated cost
NONLINEAR CONSTRAINTS FUNCTION
initialize offsets on NLP parameters and constraints vectors
FOR each event
compute values for the nonlinear constraints for the event and set them in
the NLP constraints vector
IF event is NOT first
compute values for state continuity constraints and set them in the
NLP constraints vector
END
IF event is terminal
compute values for terminal constraints and set them in the NLP
constraints vector
END
advance offsets on NLP parameters and constraints vectors to the next event
END
return NLP constraints vector
VI. Example Problem with Specified Final Time
A minimum-propellant time-fixed rendezvous between circular
orbits was selected as a testbed for the GA NLP hybrid optimizer
[9]. The GA and NLP solvers used are the MATLAB Global
Optimization Toolbox [24] and TOMLAB/SNOPT [30], respec-
tively. The computing system used to solve this problem is a 1.66-
GHz Intel Core Duo. This problem was developed and solved by
Prussing and Chiu [31] using primer vector theory [13]. In the
problem, two spacecraft orbit a planet in coplanar circular orbits of
unit radius. The target spacecraft has an initial lead angle of π rad
with respect to the controlled spacecraft as shown in Fig. 7, and the
transfer time is 2.3 orbit periods. Prussing and Chiu [31] found a
locally optimal trajectory with four impulses and a cost of ΔV
0.1891 DU∕TU, where a DU is equal to the radius of the circle orbit
and a TU is the time to advance one radian in the unit circle orbit.
Colasurdo and Pastrone [32] found another solution with a lower cost
of ΔV 0.1638 DU∕TU also using four impulses, which is shown
in Fig. 8; the triangles show the locations where the impulses are
applied. The optimality of this mission structure can be verified using
the Pontryagin minimum principle through a switching function [33]
shown in Fig. 9. Primer vector theory requires the application of a
thrusting maneuver each time the switching function is greater
than or equal to zero, and a coast otherwise. The existence of
known solutions for this nontrivial problem makes it a good choice
for evaluating the effectiveness of the methods presented in this
work.
Although the problem as constructed by Prussing and Chiu [31]
allows only impulsive maneuvers, in this work it is modified to allow
low-thrust arcs [34]. In addition, the problem is solved accounting for
the difference in efficiency of the propulsion systems, i.e., that the
electric low-thrust engine is many times more efficient than a
chemical rocket in its use of propellant mass. The controlled
spacecraft position and velocity are defined in a polar coordinate
system, and canonical units are used, i.e., a DU is the radius of the
circular orbit and one TU is the time required to advance one radian in
the unit circle. At the initial time, the polar coordinates of the
controlled spacecraft are r 1 DU, and θ 0 rad. Assuming that
the circular orbit is geosynchronous and that the propulsion systems
used are the advanced space engine rocket (Isp 476 s) and a
standard ion electric engine (Isp 3000 s), the exhaust velocities
become 1.52 DU∕TU and 9.57 DU∕TU, respectively. The initial
thrust acceleration is assumed to be 0.03 DU∕TU2 and an upper
bound on the final thrust acceleration is set to 0.30 DU∕TU2. The
continuous optimal control problem is described in Eqs. (21) and (22)
with the following initial and boundary conditions and time
constraints:
x0 1 0 0 1 0.03 T
xf 1 0.8 n 2π 0 1 free T
n ∈ f 0; 1; 2; 3 g
t0 0; tNs1 4.6π
The goal of the hybrid optimizer is to find the mission structure that
minimizes the amount of propellant required to perform the
rendezvous. The maximum length of the event sequences Ns;max is
chosen to be 12. Because the cardinality of the categorical space is 5,
the total size of the discrete search space then becomes
4
P12
i 1 5i 1; 220; 703; 120. The transcription approach for the
outer-loop problem described in Sec. IVallows reducing the discrete
search space by considering only the event sequences that satisfy the
discrete constraints. In this case, the mission sequences can use up to
six thrusting events, so the chromosome for the outer-loop problem is
a string of six binary digits plus 1 bit for the specification of the
sequence length and 2 bits for the representation of the number of
revolutions. The size of the discrete search space has been reduced to
512. The GA population size is chosen to be 25, and the evolutionary
process is set to run for 20 generations.
For the inner-loop problem, the time mesh for each coast/thrust arc
consists of 30 segments to represent the time history of 5 continuous-
10 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
time states and 1 control variable (an additional parameter represents
the flight time). Consequently, each thrust arc uses 217 NLP
parameters and each coast arc uses 156 NLP parameters; there are
150 nonlinear constraints on each arc. For impulses, each knot uses
12 NLP parameters and has 5 constraints. There are 5 state continuity
constraints for each event transition, and 5 final constraints for the
boundary conditions and time constraint. The NLP feasibility and
optimality tolerances were set to 10−5
. The CP method is used for the
generation of the initial guesses for the NLP solver. The CP tolerance
was set to 10−1
and the control history during a thrust arc is
represented using 3 parameters and Hermite cubic interpolation. The
real GA used in the CP method is configured with a population size of
500 individuals. The evolutionary process is set to stop after reaching
500 generations or when 50 generations have had the same best
individual. The real GA search space for the magnitude of the
impulsive maneuvers is 0.002; 1.8 and for the thrust pointing
angle parameters is −π; π ; the search space for the duration of the
coast/thrust arcs is 0.5; 12 with the exception of the first arc,
which can collapse to 10−3. Because the geometrical configuration of
the system is not affected by an initial coast, the guess for the duration
of the initial coast is set to 10−3.
The mission structure that minimizes the propellant consumed is
c; s; c; s; c; s; c; t with two revolutions, which has a normalized
thrusting time of 0.6541 TU2
∕DU; the actual thrusting time
(6.2594 TU) can be found by multiplying the normalized metric by
the respective exhaust velocity. Finding the best event sequence
required the cumulative evaluation of 65 sequences in the outer-loop
as shown in Table 2. The optimal solution is found in the sixth
generation; 14 more generations are run (only 4 of these are shown)
but no improvement is seen. Note that for improved efficiency of the
outer-loop GA method, the evaluated sequences and their corres-
ponding costs are cached in memory to avoid solving the same
problems repeatedly if the sequences appear again in subsequent
generations. This explains why the number of “evaluated sequences”
in the table rapidly diminishes as the search converges to the solution.
The total computational time for the hybrid optimizer was approxi-
mately 16 days. As an example, finding the solution trajectory for the
best sequence in the inner-loop required 262 min for the CP to find an
initial guess and then 108 min for the NLP solver to converge from
this guess to the solution. The optimal trajectory and control history
are shown in Figs. 10 and 11, respectively. The optimality of the
mission structure can be verified through a switching function [7,33],
which can be computed using the NLP parameters corresponding to
the states and Lagrange multipliers from the NLP solution [7].
Figure 12 shows that the mission structure found is optimal; primer
vector theory requires the application of a thrust arc when the
Fig. 8 Optimal trajectory using four impulses and two revolutions for
the circle-to-circle rendezvous, Colasurdo and Pastrone solution [32].
Fig. 9 Switching function history for optimal trajectory using four
impulses and two revolutions for the circle-to-circle rendezvous.
Fig. 7 Initial spacecraft configuration for the circle-to-circle rendezvous.
AIAA Early Edition / CHILAN AND CONWAY 11
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
switching function is greater than zero and a coast otherwise (thus the
duration of the first arc of the sequence is collapsed to the lower
bound, 10−3
). The fact that the hybrid optimizer found that the
optimal mission sequence uses only low-thrust propulsion means that
the solver effectively took into account the much greater efficiency of
that engine vs the conventional rocket motor. As a comparison, note
that total cost for the four-impulse strategy found by Colasurdo and
Pastrone [32] in normalized thrusting time is 3.6065 TU2∕DU
(normalized ΔV of 0.1078) for the given propulsion parameters.
However, the low-thrust strategy used, placing the spacecraft into an
inner orbit to reduce the lead angle of the target, is similar to that of the
impulsivecase shownin Fig. 8. It can be said that the trajectory shown
in Fig. 10 is the low-thrust analogue of the impulsive trajectory. The
similarity of the trajectories is also shown by their switching
functions in Figs. 9 and 12.
VII. Example Problem with Free Final Time
A minimum-propellant Earth–Mars transfer was chosen as an
example of a problem with an unspecified (free) final time [34].
Typical missions to Mars have durations of less than a year, e.g., the
Hohmann transfer from Earth requires 9 months approximately;
therefore, an upper bound of 5 years was set on the total mission time.
The problem uses the J2000 heliocentric ephemeris [35] for the
computation of the position of the planets, and a coplanar rendezvous
is studied for the sake of simplicity. The spacecraft position and
velocity are defined in a heliocentric polar coordinate system, and
canonical units are used, i.e., 1 DU is equal to 1 astronomical unit
(au), and a TU is the corresponding time to advance one radian in a 1-
au circular orbit. The initial time is the J2000 epoch, and the initial
thrust acceleration is assumed to be 0.025 DU∕TU2
; an upper bound
on the final thrust acceleration is set to 0.300 DU∕TU2. The initial
and boundary states are obtained from the orbital elements resulting
from the ephemeris computation. The propulsion systems used
are a nuclear thermal rocket (Isp 850 s) and a standard ion
electric engine (Isp 3000 s), so the exhaust velocities become
0.280 DU∕TU and 0.988 DU∕TU, respectively. As before, the goal
of the hybrid optimizer is to find the mission structure that minimizes
the amount of propellant required to complete the mission. The
spacecraft can perform 0 through 3 revolutions. The configuration of
the outer- and inner-loop solvers is the same as that for the previous
Fig. 10 Optimal trajectory for the sequence c;s;c;s;c;s;c;t with two
revolutions for the circle-to-circle rendezvous. The bold segments
represent thrust arcs.
Fig. 11 Optimal control history for the sequence c;s;c;s;c;s;c;t with
two revolutions for the circle-to-circle rendezvous.
Fig. 12 Switching function history for the sequence c;s;c;s;c;s;c;t
with two revolutions for the circle-to-circle rendezvous.
Table 2 Progress of the outer-loop GA solver for the circle-to-circle rendezvous
Generation Evaluated
sequences
Cumulative
evaluations
Best normalized thrusting
time (TU2∕DU)
Best normalized ΔV
(dimensionless)
Best sequence
1 25 25 0.6977 0.0212 c; s; c; i; c; s; c; s; c; t 2 rev
2 14 39 0.6977 0.0212 c; s; c; i; c; s; c; s; c; t 2 rev
3 10 49 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev
4 9 58 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev
5 4 62 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev
6 3 65 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev
7 1 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev
8 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev
9 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev
10 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev
12 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
example, and the conditional penalty method is used to generate the
initial guesses for the NLP solver. The real GA search space for the
magnitude of the impulsive maneuvers is 0.003; 0.4 and for
the thrust-pointing angle parameters is −π; π ; the search space for
the duration of the coast/thrust arcs is 0.5; 25 with the exception
of the first arc, which can collapse to 10−3.
The best mission sequence found is c; s; c; s; c; t with two
revolutions and a normalized thrusting time of 6.8625 TU2∕DU
(actual thrusting time is 6.7802 TU); the duration of the mission is
2.83 years. Finding this solution required the cumulative evaluation
of 40 sequences as shown in Table 3; the optimal solution is found in
the second generation. The total computational time for the hybrid
optimizer was approximately 15 days. As an example, finding the
solution trajectory for the best sequence in the inner-loop required
235 min for the CP to find an initial guess andthen 73 min for the NLP
solver to converge from this guess to the solution. The corresponding
optimal trajectory and control history are shown in Figs. 13 and 14.
The switching function [7,33] in Fig. 15 shows the optimality of the
mission structure. The first and the second thrust arcs occur near
periapse, primarily in the direction of motion, which raises the
apoapse. In this way, the apoapse of the last transfer trajectory reaches
the orbit of Mars. Shortly before entering Mars orbit, the third and
final thrust arc begins to raise the periapse and complete the
rendezvous.
VIII. Conclusions
In this work, the problem of interest is the automated solution of
hybrid optimal control (HOC) problems. A HOC problem is an
optimization problem defined in terms of discrete and continuous
variables. Although in this work the nested-loop approach has been
followed, the solution of complex problems, such as the automated
design of multiphase space missions, requires new sophisticated
methods, because the problem structure is no longer static as in other
HOC problems. The discrete variables now represent events such as
impulses, coast, and thrust arcs, which means that the spacecraft
dynamics are described by different equations of motion during the
different phases of the trajectory.
Analysis was performed to reduce the discrete search space in the
outer-loop to only sequences that satisfy given discrete constraints.
The strategyof using a leading bit as a length marker was successfully
used in the outer-loop genetic algorithm (GA) when searching among
Table 3 Progress of the outer-loop GA solver for the Earth–Mars mission
Generation Evaluated
sequences
Cumulative
evaluations
Best normalized thrusting
time (TU2∕DU)
Best normalized ΔV
(dimensionless)
Best sequence
1 25 25 6.8705 0.1885 c; s; c; s; c; s; c; t 2 rev
2 15 40 6.8625 0.1882 c; s; c; s; c; t 2 rev
3 12 52 6.8625 0.1882 c; s; c; s; c; t 2 rev
4 5 57 6.8625 0.1882 c; s; c; s; c; t 2 rev
5 5 62 6.8625 0.1882 c; s; c; s; c; t 2 rev
6 2 64 6.8625 0.1882 c; s; c; s; c; t 2 rev
7 1 65 6.8625 0.1882 c; s; c; s; c; t 2 rev
8 0 65 6.8625 0.1882 c; s; c; s; c; t 2 rev
9 1 66 6.8625 0.1882 c; s; c; s; c; t 2 rev
10 0 66 6.8625 0.1882 c; s; c; s; c; t 2 rev
Fig. 13 Optimal trajectory for the sequence c;s;c;s;c;t with two
revolutions for the Earth–Mars mission. The bold segments represent
thrust arcs.
Fig. 14 Optimal control history for the sequence c;s;c;s;c;t with two
revolutions for the Earth–Mars mission.
Fig. 15 Switching function history for the sequence c;s;c;s;c;t with
two revolutions for the Earth–Mars mission.
AIAA Early Edition / CHILAN AND CONWAY 13
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
variable-length sequences using a fixed-length chromosome. In
addition, the strategy of caching the cost of evaluated event sequences
in memory provided significant savings in computation; the
evaluation of a single event sequence is computationally intensive,
because it requires solving an optimal control problem.
The automated construction of nonlinear programming (NLP)
problems of arbitrary structure in the inner-loop was made possible
because of the introduction of a new modular scheme. The basic
module consists of a mission event, which is represented by a set of
NLP parameters and constraints. For the generation of initial guesses
for the NLP problem, a new method based on real GA approximates
optimal control histories by incorporating boundary conditions
explicitly using a conditional penalty (CP) function. The quality of
the solutions found by the CP method allows the NLP solver to
robustly converge to a solution. However, multiphase trajectory
optimization problems have difficulties not found in single-phase
optimization problems. For instance, if every event is allowed to
collapse, some of them may collapse early during the search, yielding
a convergent solution that is feasible but suboptimal. To prevent this
problem, a small lower bound was set on the magnitude of the events;
the definition of what is “small” will depend on the nature and the
scaling of the problem. This strategy does not pose a major loss of
generality, because if an event should collapse to yield the optimal
solution, the outer-loop GA should call for the evaluation of a similar
sequence without the offending event. A second strategy used in
tandem is the definition of a low-accuracy tolerance in the CP method
to prevent overpenalization. Statistics show that the computational
times for the CP and the NLP methods are of the same order. The
implementation of these methods in future studies to find three-
dimensional trajectories is straightforward but should have longer
computational times due to the presence of additional search
parameters.
The solved problems included the minimum-propellant, time-
fixed circle-to-circle orbit rendezvous. The second solved problem
was a minimum-propellant time-free, coplanar Earth–Mars mission.
The application of normalized cost metrics and transformations
allowed the optimization of trajectories that employ different
propulsion systems. The optimality of the multiphase structures
found was verified using the Pontryagin minimum principle through
a switching function.
In this work, methods were developed that can be used for the
automated design of multiphase space missions but can also apply to
the solution of any dynamical HOC problem. Similarly, the CP
method, developed here for robustly finding approximate solutions to
be used as initial guesses for the NLP solver in the inner-loop of the
automaton, could also be used independently, e.g., when initial
guesses are needed for solutions of general optimal control problems.
References
[1] Vasile, M., Ceriotti, M., Radice, G., Becerra, V., Nasuto, S., and
Anderson, J., “Global Trajectory Optimisation: Can We Prune the
Solution Spacewhen Considering Deep Space Manoeuvres?” European
Space Agency Final Rept. No. 06-4101c, 2008.
[2] Englander, J., Conway, B. A., and Williams, T., “Automated Mission
Planning via Evolutionary Algorithms,” Journal of Guidance, Control,
and Dynamics, Vol. 35, No. 6, 2012, pp. 1878–1887.
doi:10.2514/1.54101
[3] Gad, A., and Abdelkhalik, O., “Hidden Genes Genetic Algorithm for
Multi-Gravity-Assist Trajectories Optimization,” Journal of Spacecraft
and Rockets, Vol. 48, No. 4, 2011, pp. 629–641.
doi:10.2514/1.52642
[4] Ceriotti, M., and Vasile, M., “Automated Multigravity Assist Trajectory
Planning with a Modified Ant Colony Algorithm,” Journal of
Aerospace Computing, Information, and Communication, Vol. 7, No. 9,
2010, pp. 261–293.
doi:10.2514/1.48448
[5] Ross, I. M., and D’Souza, C. N., “Hybrid Optimal Control Framework
for Mission Planning,” Journal of Guidance, Control, and Dynamics,
Vol. 28, No. 4, 2005, pp. 686–697.
doi:10.2514/1.8285
[6] Goldberg, D. E., Genetic Algorithms in Search, Optimization and
Machine Learning, Addison–Wesley, Reading, MA, 1989, pp. 6–14.
[7] Enright, P. J., and Conway, B. A., “Discrete Approximations to Optimal
Trajectories Using Direct Transcription and Nonlinear Programming,”
Journal of Guidance, Control, and Dynamics, Vol. 15, No. 4, 1992,
pp. 994–1002.
doi:10.2514/3.20934
[8] Battin, R. H., An Introduction to the Mathematics and Methods of
Astrodynamics, AIAA, New York, NY, 1987, pp. 295–342.
[9] Chilan, C. M., and Conway, B. A., “Using Genetic Algorithms for the
Construction of a Space Mission Automaton,” Paper 557, IEEE
Congress on Evolutionary Computation, IEEE Publications, Piscat-
away, NY, 2009, pp. 2316–2323.
[10] von Stryk, O., and Glocker, M., “Numerical Mixed-Integer
Optimal Control and Motorized Traveling Salesmen Problems,”
Journal European des Systemes Automatises, Vol. 35, No. 4, 2001,
pp. 519–533.
[11] Buss, M., Glocker, M., Hardt, M., von Stryk, O., Bulirsch, R., and
Schmidt, G., “Nonlinear Hybrid Dynamical Systems: Modeling,
Optimal Control, and Applications,” Lecture Notes in Control and
Information Sciences, Vol. 279, 2002, pp. 311–335.
[12] Chilan, C. M., and Conway, B. A., “A Space Mission Automaton Using
Hybrid Optimal Control,” Advances in the Astronautical Sciences,
Vol. 127, Univelt, San Diego, CA, 2007, pp. 259–276.
[13] Lawden, D. F., Optimal Trajectories for Space Navigation,
Butterworths, London, 1963, pp. 54–69.
[14] Rauwolf, G. A., and Coverstone–Carroll, V. L., “Near-Optimal Low-
Thrust Orbit Transfers Generated by a Genetic Algorithm,” Journal of
Spacecraft and Rockets, Vol. 33, No. 6, 1996, pp. 859–862.
doi:10.2514/3.26850
[15] Coverstone–Carrol, V., “Near-Optimal Low-Thrust Trajectories via
Micro-Genetic Algorithms,” Journal of Guidance, Control, and
Dynamics, Vol. 20, No. 1, 1997, pp. 196–198.
doi:10.2514/2.4020
[16] Vasile, M., Minisci, E., and Locatelli, M., “Analysis of Some Global
Optimization Algorithms for Space Trajectory Design,” Journal of
Spacecraft and Rockets, Vol. 47, No. 2, 2010, pp. 334–344.
doi:10.2514/1.45742
[17] Bryson, A. E., and Ho, Y. C., Applied Optimal Control, Hemisphere,
New York, 1975, pp. 47–89.
[18] 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.
doi:10.2514/3.20223
[19] Herman, A. L., and Conway, B. A., “Direct Optimization Using
Collocation Based on High-Order Gauss-Lobatto Quadrature Rules,”
Journal of Guidance, Control, and Dynamics, Vol. 19, No. 3, 1996,
pp. 592–599.
doi:10.2514/3.21662
[20] Gill, P. E., Murray, W., and Saunders, M. A., User’s Guide SNOPT
Version 7: Software for Large-Scale Nonlinear Programming, Stanford
Univ., Stanford, CA, 2007.
[21] Conway, B. A., Chilan, C. M., and Wall, B. J., “Evolutionary Principles
Applied to Mission Planning Problems,” Celestial Mechanics and
Dynamical Astronomy, Vol. 97, No. 2, 2007, pp. 73–86.
doi:10.1007/s10569-006-9052-7
[22] Prussing, J. E., and Conway, B. A., Orbital Mechanics, 2nd ed., Oxford
Univ. Press, New York, NY, 2013, pp. 103–107.
[23] Schoenauer, M., and Michalewics, Z., “Evolutionary Computation at
the Edge of Feasibility,” Lecture Notes in Computer Science, Vol. 1141,
1996, pp. 245–254.
[24] The MathWorks, Global Optimization Toolbox, http://www.mathworks
.com/products/global-optimization/, 2012 [accessed 3 Dec. 2012].
[25] Prussing, J. E., “A Class of Optimal Two-Impulse Rendezvous Using
Multiple-Revolution Lambert Solutions,” The Journal of the
Astronautical Sciences, Vol. 48, Nos. 2–3, 2000, pp. 131–148.
[26] Cantu–Paz, E., and Goldberg, D. E., “On the Scalability of Parallel
Genetic Algorithms,” Evolutionary Computation, Vol. 7, No. 4, 1999,
pp. 429–449.
doi:10.1162/evco.1999.7.4.429
[27] Hudson, J. S., and Scheeres, D. J., “Reduction of Low-Thrust
Continuous Controls for Trajectory Dynamics,” Journal of Guidance,
Control, and Dynamics, Vol. 32, No. 3, 2009, pp. 780–787.
doi:10.2514/1.40619
[28] Taheri, E., and Abdelkhalik, O., “Shape-Based Approximation of
Constrained Low-Thrust Space Trajectories Using Fourier Series,”
Journal of Spacecraft and Rockets, Vol. 49, No. 3, 2012, pp. 535–545.
doi:10.2514/1.A32099
[29] Coello Coello, C. A., “Constraint-Handling Using an Evolutionary
Multiobjective Optimization Technique,” Civil Engineering and
Environmental Systems, Vol. 17, No. 4, 2000, pp. 319–346.
14 AIAA Early Edition / CHILAN AND CONWAY
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
[30] TOMLAB Optimization, TOMLAB/SNOPT, http://tomopt.com/tomlab/
products/snopt/, 2012 [accessed 3 Dec. 2012].
[31] Prussing, J. E., and Chiu, J.-H., “Optimal Multiple-Impulse Time-Fixed
Rendezvous Between Circular Orbits,” Journal of Guidance, Control,
and Dynamics, Vol. 9, No. 1, 1986, pp. 17–22.
doi:10.2514/3.20060
[32] Colasurdo, G., and Pastrone, D., “Indirect Optimization Method for
Impulsive Transfers,” AIAA Paper 1994-3762, 1994.
[33] Prussing, J. E., “Primer Vector Theory and Applications,” Spacecraft
Trajectory Optimization, edited by Conway, B. A., Cambridge Univ.
Press, New York, 2010, pp. 16–36.
[34] Chilan, C. M., Automated Design of Multiphase Space Missions Using
Hybrid Optimal Control, Ph.D. Thesis, Univ. of Illinois at Urbana-
Champaign, Urbana, IL, 2009.
[35] Danby, J. M. A., Fundamentals of Celestial Mechanics, Willmann–Bell,
Richmond, VA, 1988, pp. 427–429.
AIAA Early Edition / CHILAN AND CONWAY 15
DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766

Mais conteúdo relacionado

Mais procurados

Mallory Daly - Honors Thesis
Mallory Daly - Honors ThesisMallory Daly - Honors Thesis
Mallory Daly - Honors ThesisMallory Daly
 
Mission Opportunies to Trans Neptunian Objects 3
Mission Opportunies to Trans Neptunian Objects 3Mission Opportunies to Trans Neptunian Objects 3
Mission Opportunies to Trans Neptunian Objects 3Jordan Kreitzman
 
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equation
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion EquationFast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equation
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equationijcga
 
Lattice Boltzmann methhod slides
Lattice Boltzmann methhod slidesLattice Boltzmann methhod slides
Lattice Boltzmann methhod slidesKrunal Gangawane
 
Functional Simulation of the Integrated Onboard System For a Commercial Launc...
Functional Simulation of the Integrated Onboard System For a Commercial Launc...Functional Simulation of the Integrated Onboard System For a Commercial Launc...
Functional Simulation of the Integrated Onboard System For a Commercial Launc...irjes
 
Closed-form Solutions of Generalized Greenshield Relations for the Social and...
Closed-form Solutions of Generalized Greenshield Relations for the Social and...Closed-form Solutions of Generalized Greenshield Relations for the Social and...
Closed-form Solutions of Generalized Greenshield Relations for the Social and...Michael Maroun
 
Flight path characteristics for decelerating from supercircular speed
Flight path characteristics for decelerating from supercircular speedFlight path characteristics for decelerating from supercircular speed
Flight path characteristics for decelerating from supercircular speedClifford Stone
 
Simulation requirements and relevant load conditions in the design of floatin...
Simulation requirements and relevant load conditions in the design of floatin...Simulation requirements and relevant load conditions in the design of floatin...
Simulation requirements and relevant load conditions in the design of floatin...Ricardo Faerron Guzmán
 
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...Kellen Betts
 
Current research on simulations of flaoting offshore wind turbines
Current research on simulations of flaoting offshore wind turbinesCurrent research on simulations of flaoting offshore wind turbines
Current research on simulations of flaoting offshore wind turbinesRicardo Faerron Guzmán
 
improvement of search strategy with knn approach for traffic state prediction
improvement of search strategy with knn approach for traffic state predictionimprovement of search strategy with knn approach for traffic state prediction
improvement of search strategy with knn approach for traffic state predictionMIDHUN XAVIER
 

Mais procurados (19)

Paper
PaperPaper
Paper
 
Mallory Daly - Honors Thesis
Mallory Daly - Honors ThesisMallory Daly - Honors Thesis
Mallory Daly - Honors Thesis
 
Mission Opportunies to Trans Neptunian Objects 3
Mission Opportunies to Trans Neptunian Objects 3Mission Opportunies to Trans Neptunian Objects 3
Mission Opportunies to Trans Neptunian Objects 3
 
Mobility Models
Mobility ModelsMobility Models
Mobility Models
 
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equation
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion EquationFast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equation
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equation
 
Wang dusdee2012
Wang dusdee2012Wang dusdee2012
Wang dusdee2012
 
Lattice Boltzmann methhod slides
Lattice Boltzmann methhod slidesLattice Boltzmann methhod slides
Lattice Boltzmann methhod slides
 
Koptreport
KoptreportKoptreport
Koptreport
 
Functional Simulation of the Integrated Onboard System For a Commercial Launc...
Functional Simulation of the Integrated Onboard System For a Commercial Launc...Functional Simulation of the Integrated Onboard System For a Commercial Launc...
Functional Simulation of the Integrated Onboard System For a Commercial Launc...
 
Closed-form Solutions of Generalized Greenshield Relations for the Social and...
Closed-form Solutions of Generalized Greenshield Relations for the Social and...Closed-form Solutions of Generalized Greenshield Relations for the Social and...
Closed-form Solutions of Generalized Greenshield Relations for the Social and...
 
Flight path characteristics for decelerating from supercircular speed
Flight path characteristics for decelerating from supercircular speedFlight path characteristics for decelerating from supercircular speed
Flight path characteristics for decelerating from supercircular speed
 
Carlotta Scudeler
Carlotta ScudelerCarlotta Scudeler
Carlotta Scudeler
 
Claude Mugler
Claude MuglerClaude Mugler
Claude Mugler
 
Adige modelling
Adige modellingAdige modelling
Adige modelling
 
Simulation requirements and relevant load conditions in the design of floatin...
Simulation requirements and relevant load conditions in the design of floatin...Simulation requirements and relevant load conditions in the design of floatin...
Simulation requirements and relevant load conditions in the design of floatin...
 
Damiano Pasetto
Damiano PasettoDamiano Pasetto
Damiano Pasetto
 
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...
Multi-Fidelity Optimization of a High Speed, Foil-Assisted Catamaran for Low ...
 
Current research on simulations of flaoting offshore wind turbines
Current research on simulations of flaoting offshore wind turbinesCurrent research on simulations of flaoting offshore wind turbines
Current research on simulations of flaoting offshore wind turbines
 
improvement of search strategy with knn approach for traffic state prediction
improvement of search strategy with knn approach for traffic state predictionimprovement of search strategy with knn approach for traffic state prediction
improvement of search strategy with knn approach for traffic state prediction
 

Semelhante a Automated design of multiphase space missions using hybrid optimal contro (1)

Oscar Nieves (11710858) Computational Physics Project - Inverted Pendulum
Oscar Nieves (11710858) Computational Physics Project - Inverted PendulumOscar Nieves (11710858) Computational Physics Project - Inverted Pendulum
Oscar Nieves (11710858) Computational Physics Project - Inverted PendulumOscar Nieves
 
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdf
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdfFinite_Element_Modeling_of_the_Arresting_Gear_and_.pdf
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdfAbdulMuneerA2
 
Optimal control of electrodynamic tether orbit transfers
Optimal control of electrodynamic tether orbit transfersOptimal control of electrodynamic tether orbit transfers
Optimal control of electrodynamic tether orbit transfersFrancisco Carvalho
 
Soft Computing Technique Based Enhancement of Transmission System Lodability ...
Soft Computing Technique Based Enhancement of Transmission System Lodability ...Soft Computing Technique Based Enhancement of Transmission System Lodability ...
Soft Computing Technique Based Enhancement of Transmission System Lodability ...IJERA Editor
 
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox users
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox usersM.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox users
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox usersProject KRIT
 
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_Code
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_CodeVKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_Code
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_CodeNorbert Gruen
 
TRBAM2020 Public Transit posters - University of Twente.
TRBAM2020 Public Transit posters - University of Twente.TRBAM2020 Public Transit posters - University of Twente.
TRBAM2020 Public Transit posters - University of Twente.Konstantinos Gkiotsalitis
 
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...Editor IJCATR
 
Compensation of Data-Loss in Attitude Control of Spacecraft Systems
 Compensation of Data-Loss in Attitude Control of Spacecraft Systems  Compensation of Data-Loss in Attitude Control of Spacecraft Systems
Compensation of Data-Loss in Attitude Control of Spacecraft Systems rinzindorjej
 
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization Technique
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization TechniqueDynamic Economic Dispatch Assessment Using Particle Swarm Optimization Technique
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization TechniquejournalBEEI
 
Control Synthesis for Marine Vessels in Case of Limited Disturbances
Control Synthesis for Marine Vessels in Case of Limited DisturbancesControl Synthesis for Marine Vessels in Case of Limited Disturbances
Control Synthesis for Marine Vessels in Case of Limited DisturbancesTELKOMNIKA JOURNAL
 
CFD Final Report-2
CFD Final Report-2CFD Final Report-2
CFD Final Report-2Dwight Nava
 
Compit 2013 - Torsional Vibrations under Ice Impact
Compit 2013 - Torsional Vibrations under Ice ImpactCompit 2013 - Torsional Vibrations under Ice Impact
Compit 2013 - Torsional Vibrations under Ice ImpactSimulationX
 
Application of Thunderstorm Algorithm for Defining the Committed Power Output...
Application of Thunderstorm Algorithm for Defining the Committed Power Output...Application of Thunderstorm Algorithm for Defining the Committed Power Output...
Application of Thunderstorm Algorithm for Defining the Committed Power Output...INFOGAIN PUBLICATION
 
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...Project KRIT
 

Semelhante a Automated design of multiphase space missions using hybrid optimal contro (1) (20)

LeSage2013_PhDDefense
LeSage2013_PhDDefenseLeSage2013_PhDDefense
LeSage2013_PhDDefense
 
Oscar Nieves (11710858) Computational Physics Project - Inverted Pendulum
Oscar Nieves (11710858) Computational Physics Project - Inverted PendulumOscar Nieves (11710858) Computational Physics Project - Inverted Pendulum
Oscar Nieves (11710858) Computational Physics Project - Inverted Pendulum
 
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdf
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdfFinite_Element_Modeling_of_the_Arresting_Gear_and_.pdf
Finite_Element_Modeling_of_the_Arresting_Gear_and_.pdf
 
Optimal control of electrodynamic tether orbit transfers
Optimal control of electrodynamic tether orbit transfersOptimal control of electrodynamic tether orbit transfers
Optimal control of electrodynamic tether orbit transfers
 
Space Tug Rendezvous
Space Tug RendezvousSpace Tug Rendezvous
Space Tug Rendezvous
 
S4101116121
S4101116121S4101116121
S4101116121
 
Soft Computing Technique Based Enhancement of Transmission System Lodability ...
Soft Computing Technique Based Enhancement of Transmission System Lodability ...Soft Computing Technique Based Enhancement of Transmission System Lodability ...
Soft Computing Technique Based Enhancement of Transmission System Lodability ...
 
30720130101005
3072013010100530720130101005
30720130101005
 
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox users
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox usersM.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox users
M.G.Goman and A.V.Khramtsovsky (1997 draft) - Textbook for KRIT Toolbox users
 
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_Code
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_CodeVKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_Code
VKI_RVAD_2005_Application_of_a_Lattice_Boltzmann_Code
 
TRBAM2020 Public Transit posters - University of Twente.
TRBAM2020 Public Transit posters - University of Twente.TRBAM2020 Public Transit posters - University of Twente.
TRBAM2020 Public Transit posters - University of Twente.
 
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...
Proposing a New Job Scheduling Algorithm in Grid Environment Using a Combinat...
 
Compensation of Data-Loss in Attitude Control of Spacecraft Systems
 Compensation of Data-Loss in Attitude Control of Spacecraft Systems  Compensation of Data-Loss in Attitude Control of Spacecraft Systems
Compensation of Data-Loss in Attitude Control of Spacecraft Systems
 
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization Technique
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization TechniqueDynamic Economic Dispatch Assessment Using Particle Swarm Optimization Technique
Dynamic Economic Dispatch Assessment Using Particle Swarm Optimization Technique
 
Control Synthesis for Marine Vessels in Case of Limited Disturbances
Control Synthesis for Marine Vessels in Case of Limited DisturbancesControl Synthesis for Marine Vessels in Case of Limited Disturbances
Control Synthesis for Marine Vessels in Case of Limited Disturbances
 
CFD Final Report-2
CFD Final Report-2CFD Final Report-2
CFD Final Report-2
 
Sanny omar esa_presentation_no_video
Sanny omar esa_presentation_no_videoSanny omar esa_presentation_no_video
Sanny omar esa_presentation_no_video
 
Compit 2013 - Torsional Vibrations under Ice Impact
Compit 2013 - Torsional Vibrations under Ice ImpactCompit 2013 - Torsional Vibrations under Ice Impact
Compit 2013 - Torsional Vibrations under Ice Impact
 
Application of Thunderstorm Algorithm for Defining the Committed Power Output...
Application of Thunderstorm Algorithm for Defining the Committed Power Output...Application of Thunderstorm Algorithm for Defining the Committed Power Output...
Application of Thunderstorm Algorithm for Defining the Committed Power Output...
 
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...
M.G.Goman, A.V.Khramtsovsky (2008) - Computational framework for investigatio...
 

Último

Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 

Último (20)

Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

Automated design of multiphase space missions using hybrid optimal contro (1)

  • 1. Automated Design of Multiphase Space Missions Using Hybrid Optimal Control Christian M. Chilan∗ and Bruce A. Conway† University of Illinois, Urbana, Illinois 61801 DOI: 10.2514/1.58766 A modern space mission is assembled from multiple phases or events such as impulsive maneuvers, coast arcs, thrust arcs, and planetary flybys. Traditionally, a mission planner would resort to intuition and experience to develop a sequence of events for the multiphase mission and to find the space trajectory that minimizes propellant use by solving the associated continuous optimal control problem. This strategy, however, will most likely yield a suboptimal solution, as the problem is sophisticated for several reasons. For example, the number of events in the optimal mission structure is not known a priori, and the system equations of motion change depending on what event is current. In this work a framework for the automated design of multiphase space missions is presented using hybrid optimal control. The method developed uses two nested loops: an outer-loop that handles the discrete dynamics and finds the optimal mission structure in terms of the categorical variables, and an inner-loop that performs the optimization of the corresponding continuous-time dynamical system and obtains the required control history. Genetic algorithms and direct transcription with nonlinear programming are introduced as methods of solution for the outer-loop and inner-loop problems, respectively. Automation of the inner-loop, continuous optimal control problem solver required two new technologies. The first is a method for the automated construction of the nonlinear programming problems resulting from the use of a transcription method for systems with different structures, including different numbers of categorical events. The method assembles modules, consisting of parameters and constraints appropriate to each event, sequentially according to the given mission structure. The other new technology is for a robust initial guess generator required by the inner-loop nonlinear programming problem solver. The method, based on a real genetic algorithm, approximates optimal control histories by incorporating boundary conditions explicitly using a conditional penalty function. The solution of representative multiphase mission design problems shows the effectiveness of the methods developed. Nomenclature A = adjacency matrix, or linear constraint matrix bL = vector of lower bounds for parameters and constraints bU = vector of upper bounds for parameters and constraints C = nonlinear constraint vector c = propulsion engine exhaust velocity, or coast event cc = exhaust velocity of the chemical rocket engine ce = exhaust velocity of the low-thrust electric engine D = set of binary matrices with column-sum equal to one d = Euclidean norm of the constraint violations F = discrete space of feasible event sequences f = system equation vector h = equality constraint i = impulsive event J = total cost of the mission K = infeasibility constant l = Lambert’s rendezvous event m = spacecraft mass m− = spacecraft mass immediately before a particular event m = spacecraft mass immediately after a particular event NQ = cardinality of Q NT = number of thrusting events in a particular q NT;max = maximum number of thrusting events for all q Ns = number of switches in a particular q Ns1 = Ns 1, i.e., number of events in a particular q Ns;max = maximum number of events for all q P = parameter vector Q = categorical space of events q = event sequence q = event qj = event in the j 1 place in the sequence r = spacecraft radial coordinate S = switching set s = boundary-free thrust arc event t = boundary-specified thrust arc event, or time te = duration of a particular thrust arc event tj = initial time for the event qj ts = switching time between events tol = feasibility tolerance for the conditional penalty method UD = set of discrete controllers that satisfy discrete con- straints u = control variable vector vr = radial component of spacecraft velocity vθ = tangential component of spacecraft velocity x = state variable vector x = state variable α = spacecraft thrust acceleration α0 = spacecraft thrust acceleration at the beginning of the mission αf = spacecraft thrust acceleration at the end of the mission α− = spacecraft thrust acceleration immediately before a particular event α = spacecraft thrust acceleration immediately after a particular event β = spacecraft thrust-pointing angle Δ = discrete controller ΔV = change in velocity ϕ = cost function θ = spacecraft angular coordinate Received 25 April 2012; revision received 4 December 2012; accepted for publication 12 December 2012; published online 20 June 2013. Copyright © 2012 by Christian M. Chilan and Bruce A. Conway. Published by the American Institute of Aeronautics and Astronautics, Inc., with permission. Copies of this paper may be made for personal or internal use, on condition that the copier pay the $10.00 per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923; include the code 1533-3884/ 13 and $10.00 in correspondence with the CCC. *Postdoctoral Research Associate, Department of Aerospace Engineering, 104 South Wright St. MC-236. Member AIAA. † Professor, Department of Aerospace Engineering, 104 South Wright St. MC-236. Associate Fellow AIAA. AIAA Early Edition / 1 JOURNAL OF GUIDANCE, CONTROL, AND DYNAMICS DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 2. I. Introduction MANY interesting problems in numerical optimization are hybrid optimal control (HOC) problems. HOC problems include both continuous-valued variables and categorical variables in the problem formulation. For the types of problems envisioned here, the categorical variables will specify the structure or sequence of events that qualitatively describes a space trajectory or mission. For example, for an interplanetary spacecraft trajectory, a mission could be described by the sequence of categorical variables: Earth departure, low-thrust heliocentric arc, Mercury arrival. An equally valid and perhaps lower-cost sequence might be: Earth departure, low-thrust heliocentric arc, coast arc, low-thrust heliocentric arc, Mercury arrival. The identities of the mission events and their order in the sequence are the discrete or categorical variables of the HOC problem. The time histories of the spacecraft position and velocity and of the spacecraft control (thrust-pointing angle) are the continuous-time variables of the HOC problem. The cost associated with a particular event sequence is found from the solution of the corresponding continuous optimal control problem. Finding the sequence of events with minimum cost requires searching a discrete space composed of the sequences resulting from the permutation of the mission events. Even by considering a catalog with only a few events, there may be several thousand possible mission designs. A simple approach to find the best mission structure is to perform a total enumeration of all the possible sequences. Although intuition on the part of the mission planner can reduce the size of the search space, total enumeration would still consume a significant amount of resources. A solver is needed for this type of problem, i.e., finding the best mission structure without performing total enumeration, andwith little or no intuition supplied (or required) on the part of the mission planner. Oneway to reduce the discrete search space is to apply pre-pruning with respect to some criteria; in this way, the remaining mission sequences are the only ones considered of interest [1]. Vasile et al. [1] also present an approach to automated mission planning, in which the mission is composed of elementary blocks that represent events such as Lambert maneuvers and flybys. Englander et al. [2] and Gad and Abdelkhalik [3] presented methods that find the flyby sequence and the optimal trajectory using genetic algorithms (GA). In their work, the governing dynamics do not change during the trajectory legs between flybys, i.e., such legs can be modeled with a single phase. Ceriotti and Vasile [4] propose the use of a modified ant colony optimization (ACO) algorithm for the automated mission planning using flybys and impulsive maneuvers. In this work, the problem of interest is the automated solution of HOCproblems that consistof different events or phases. Theproblem consists of finding the sequence composed of an unspecified number of events (coast arcs, thrust arcs, and impulses) that minimizes propellant consumption for a space trajectory with given initial and boundary conditions, conducted in free or fixed final time. A recent approach to solving HOC problems is to use two nested loops: an outer-loop that handles the discrete dynamics and finds a solution sequence in terms of the categorical variables, and an inner-loop that performs the optimization of the continuous-time dynamical system and obtains the required control history. Ross and D’Souza [5] present a general framework for the description of HOC problems and the corresponding mathematical formalism. The nested-loop approach is qualitatively similar to the solution of a discrete optimization problem using GA [6], where the objective is usually some known, analytic function of the discrete parameters of the GA that can be evaluated directly. In the HOC context, however, the cost cannot be found until an optimal control problem (with important event parameters supplied by the GA decision vector) is solved. This is much more difficult and time-consuming, e.g., analytic functions always return a cost value, but the routine used to solve the inner-loop problem inherits the difficulties associated with solving optimal control problems. The inner-loop solver finds the optimal trajectories for the continuous-time dynamical systems associated with the event sequences generated by the outer-loop. Note that distinct event sequences can constitute quite different optimal control problems. For instance, the equations of motion during a coast arc event are not the same as the equations of motion during a continuous thrust arc event. Similarly, the control parameters change in type and number; an impulse is defined by magnitude and direction parameters, while a thrust arc needs a flight time parameter and a continuous thrust- pointing angle (or angles). Because the outer-loop requests the evaluation of different sequences during the search, this work presents a scheme that allows the inner-loop to solve trajectory optimization problems with variable structures without a priori knowledge or experience. This is a challenging aspect of the problem because the determination of just a single optimal space trajectory with (possibly) multiple coast arcs and thrust arcs has not been considered a simple or straightforward problem. The optimal trajectory for a particular mission sequence is found using direct transcription with nonlinear programming (NLP) [7]. As a gradient-based optimization method, NLP requires an initial guess, which after several numerical iterations by the NLP problem solver should converge to a solution, i.e., satisfy specified tolerances on feasibility and optimality. Traditionally, the mission planner has had to resort to intuition and experience to generate such initial guesses. For example, solutions to Lambert’s problem [8] can provide good initial guesses for impulsive trajectories. If the solution process (outer-loop inner-loop) is to be automated, methods that generate high-quality guesses are needed to yield a robust behavior of the NLP problem solver. A new method was developed to generate the approximate low-thrust trajectories to be used as the initial guesses for the NLP solvers. The method, based on GA, directly approxi- mates optimal control histories by incorporating boundary conditions explicitly using a “conditional penalty” (CP) function [9]. II. Hybrid Optimal Control Problem The solution to the HOC problem consists of finding values for a set of discrete variables that minimize a cost function resulting from the trajectory optimization of a continuous-time dynamical system. One example of a HOC problem is the motorized traveling salesman [10]. The salesman drives a car in which the motion dynamics are described by a system of differential equations. He must visit a number of cities whose locations are specified in the problem. The objective is to find the ordered sequence of cities and the corresponding optimal trajectory that minimizes the travel time of the salesman. The identities of the cities and their order of visitation are the discrete or categoricalvariables of the HOC problem.The time histories of the car position and velocity and of the car controls (acceleration and turn rate) are the continuous-time variables of the HOC problem. This section presents the general formulation of a HOC problem using the formalism introduced by Ross and D’Souza [5]. A. Discrete Dynamics The discrete events represent the qualitative states or phases of a HOC problem. They can be grouped together into a categorical space Q of finite cardinality NQ ∈ N. The task of the mission planner is to assemble a sequence q of events q ∈ Q that fulfills the mission objectives and minimizes a cost function defined in the inner-loop. The construction of the sequence q incorporates constraints that form the finite dynamics of the problem. Such constraints can be modeled with a finite state automaton in the form of a directed graph or digraph as shown in Fig. 1. The nodes and the directed edges constitute the events and the allowed transitions between them, respectively. From the digraph, the categorical state space is Q fqa; qb; qcg with cardinality NQ 3. The subscript notation in qi identifies the state in the categorical space. To encode the information contained in the digraph, let a switching set be defined as the transition between states at time ts ∈ R S q; q0 f x; u; x0; u0; ts g (1) 2 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 3. where x ∈ RNx and u ∈ RNu are the continuous state and control vectors, respectively. If a transition is allowed from the event q to the event q0, then the switching set S q; q0 ≠ ∅; otherwise, the switching set is empty. All the possible switching sets can be encoded in the NQ × NQ adjacency matrix A, where Aij 1 if S qi; qj ≠ ∅ 0 if S qi; qj ∅ (2) Feasible event sequences can be obtained from the digraph. One example of such a sequence is q qa; qb; qa; qc; qa where the number of switches Ns 4. The digraph also shows transitions that are not allowed. For example, the automaton cannot move from the state qc to qb because there is not a directed edge in that direction. Thus, the switching set S qc; qb is empty. The number of events in a sequence, given by Ns1 Ns 1, is not fixed. In practice, however, an upper bound Ns;max on the length of the feasible sequences is given to constrain the problem to finite sequences and to reduce the computational complexity of the problem. Let Q be a 1 × NQ matrix whose components are the elements qi ∈ Q. Letalso the operation be definedoverthe Cartesian product Q × f0; 1g in the following way: q 0 ∅ and q 1 q; ∀ q ∈ Q Also, let D be defined by Dn×m ≡ n Δ ∈ f0; 1gn×m∶ Pn i 1 Δij ∈ f0; 1g ∀ j 1; : : : ; m o (3) where the column-sum property implies that the columns are composed mostly of zeros with only a single component equal to 1. The framework proposed originally does not consider the case where an event must not appear more than once in the solution sequence [5]. This constraint can be applied by requiring that D have full column rank. Finally, by including the following definitions: q ∅ q ∅ q; ∅ ∅ ∅ the transition map Q → q can be characterized through the discrete controller matrix Δ with Δ ∈ DNQ×Ns1 , as a matrix operation that generates an event sequence of length Ns1 q Q Δ (4) In constructing the discrete controller Δ, it is important to recall that not all transitions between the events of the categorical set are allowed. These constraints are encoded in the adjacencymatrix A as a model for the finite state automaton. Therefore, the controller Δ must satisfy Δi;j ∈ fAki; 0g for Δk;j−1 1; i 1; : : : ; NQ; j 1; : : : ; Ns (5) Let the superscript notation qj−1 identify the event in the j place in the sequence. Then, the condition in Eq. (5) indicates that if the current event qj−1 is qk, then the next event qj can be qi if Aki is equal to 1. If this were the case and the next event was chosen to be qi, then Δk;j−1 1; and Δi;j 1 where the rest of the elements in the columns j-1 and j of Δ are zero due to the column-sum property in Eq. (3). The first and last columns of Δ are not directly constrained by the adjacency matrix A, but they must satisfy discrete boundary conditions. Let Q0 ⊆ Q be the set of all the allowed initial events, and Qf ⊆ Q be the set of all permissible final events. Then, the initial event q0 of all feasible sequences belongs to Q0. In the same way, the last event qNs of all feasible sequences belongs to Qf. Finally, let UD ⊆ D be the set of discrete controllers Δ that satisfy adjacency and boundary constraints. Then, the problem to be solved by the outer-loop is a feasible integer programming (FIP) problem that can be stated as follows: Find Δ; Ns1 subject to Δ ∈ UD ⊆ DNQ×Ns1 ; Ns1 ≤ Ns;max ∈ N (6) Assuming that the inner-loop handling the continuous-time dynamics can find the optimal trajectory for any feasible sequence, then each candidate q will have an associated cost. The objective of the outer-loop solver is finding the sequence of events that has the optimal cost among all the feasible sequences with length Ns1 ≤ Ns;max. The complexity of the search space for the FIP is NQ Ns1 because Δ ∈ D. The fact that this type of problem is NP-complete [5,10] underscores the impracticality of total enumeration as a means to find the optimal feasible sequence. A more efficient approach known as branch-and-bound optimization has been used in the outer-loop to solve the FIP [10,11]. This work introduces use of the GA for the same purpose [12]. The GA [6] method is a relatively new technique (in comparison with the calculus of variations or primer vector theory [13]) that has been successfully applied to trajectory optimization problems [14,15]. The GA requires a population of individuals; an individual is a set of values for optimization parameters that is encoded as a string of binary digits (a chromosome). In a HOC problem, a typical string might consist of binary representations of states or events in a sequence. GA methods have features that make them appealing for use in an automated mission planner. For instance, planning intuition in the form of an incumbent solution sequence is not required. Although GA does not ensure that the solution found represents a global optimum [16], the fact that the method is randomized allows the search to continue even when a local minimum is found, unlike gradient-based methods. B. Continuous-Time Dynamics A modern space mission is usually composed of several events. Some of them have finite duration, such as thrust arcs, while others are instantaneous, such as impulsive maneuvers. The dynamics governing the system during any of the events q ∈ Q is defined by a set of differential equations _x f x; u; t; q (7) where x ∈ RNx and u ∈ RNu are the continuous state and control vectors, respectively. The dependence on q means that the system dynamics may change throughout the mission, e.g., a model could require switching from a thrust arc to a coast arc. Let q q0; q1; : : : ; qNs be a finite sequence of events where qj ∈ Q for j 0; 1; : : : ; Ns. Let t t0; t1; : : : ; tNs1 be a qa qc qb Fig. 1 Digraph for a finite state automaton. AIAA Early Edition / CHILAN AND CONWAY 3 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 4. real-valued matrix associated with q. Then, the cost functional is given by J x : ; u : ; t; q; Δ; Ns XNs j 0 ϕ x tj 1 ; tj 1; qj Z tj 1 tj L x t ; u t ; qj dt (8) where ϕ and L correspond to the Mayer and Lagrange costs of each phase. As with most optimal control problems of significant complexity, direct methods are preferred to avoid the difficulties associated with the derivation and solution of the two-point boundary value problem (TPBVP) resulting from the Euler–Lagrange conditions [17] of the calculus of variations (COV). There are two principal schemes that directly transform continuous-time optimal control problems into NLP problems: collocation and transcription. Both cause the equations of motion (EOM) to be satisfied by defining nonlinear constraint equations. Direct collocation describes such constraint equations with implicit rules, such as Hermite–Simpson [18] and Gauss–Lobatto [19], while direct transcription uses explicit rules, such as the fourth-degree Runge–Kutta (RK) method [7]. Given that NLP is a gradient-based method, it requires an initial guess of the solution, i.e., the vector of solution parameters, which can be obtained by intuition or experience. The robustness and accuracy of the method depends on the selected resolution level of the time mesh, the collocation or transcription scheme, and the quality of the initial guess, which means how closely the guess satisfies the constraints and the optimality conditions. For the implementation of the inner- loop solver, direct transcription with RK integration rules and a parallel-shooting scheme [7,12] is selected. The NLP parameters can then be arranged as a singlevector PT that collects all the continuous variables. For example, the parameter vector for a trajectory consisting of a single thrust arc becomes PT ZT where ZT xT 1 ; uT 1 ; xT 2 ; uT 2 ; : : : ; xT N 1; uT N 1; tf , xi ∈ RNx and ui ∈ RNu for i 1; 2; : : : ; N 1 are parameter vectors that represent the state and control variables at the nodes of the discrete time mesh, and N is the number of segments of the mesh [7]. In the same manner, the nonlinear constraints can be collected into a vector CT. The optimal control problem can then be restated as a NLP problem of the form: Minimize J P subject to bL ≤ 8 < : P AP C P 9 = ; ≤ bU where AP is formed by all the linear constraints of the problem, and bL and bU are the lower and upper bounds of the parameters and constraints. The upper and lower bounds for the great majority of the nonlinear constraints C P are usually set to zero, because this forces the solver to choose values for the parameters that satisfy the EOMs when they are integrated forward using the RK rule within each segment (there may be a small number of additional nonlinear constraints, e.g., boundary conditions). Once the NLP problem is clearly defined, it can be solved using dense or sparse solvers such as NPSOL and SNOPT [20]. SNOPT is selected because it can take advantage of the sparsity present in the constraint Jacobian [18]. III. Multiphase Mission Design as a Hybrid Optimal Control Problem The validity of the proposed GA NLP approach for the implementation of hybrid optimizers was shown by solving two sample problems: the motorized traveling salesman [12] and the interception of multiple asteroids [21]. However, these problems contain several simplifications that make them qualitatively different from multiphase missions. For instance, the categorical variables represent targets such as cities and asteroids, and the length of the categorical sequence is constant. This allowed a straightforward definition of the GA chromosome and a static NLP structure, i.e., the structure remained the same for any sequence, requiring only changing thevalue of the interception constraints in the inner-loop. In a multiphase mission, the categorical variables represent events such as coast arcs and thrust arcs, and the length of the mission sequence is variable. Therefore, approaches to accommodate variable-length sequences and to generate different NLP problem structures dynami- cally are needed. The problems of interest here are missions composed of an unspecified number of events with given initial and boundary conditions, and free or fixed final time. The discrete and continuous- time problems associated with the mission design will be described along with the proposed methods of solution. A. Discrete Dynamics The discrete events in a space mission plan can be maneuvers such as impulses, thrust arcs, and coast arcs, which can be grouped together into a categorical space Q of finite cardinality NQ ∈ N. Although it appears that only these three types of events need to be defined, considerations regarding the robustness of the trajectory optimization in the inner-loop, to be described in the following sections, warrant the definition of additional, more specifically defined events as shown in Table 1. Therefore, the categorical space becomes Q fq0; q1; q2; q3; q4g fc; i; s; l; tg (9) with cardinality NQ 5. The subscripts identify the event within the categorical space. The goal is to assemble a sequence q of events q ∈ Q that fulfills the mission objectives and minimizes a cost function defined in the inner-loop. The construction of the sequence q incorporates constraints that are consistent with the discrete dynamics of the problem. For instance, to satisfy state boundary conditions, only a Lambert’s rendezvous l or a boundary-specified thrust arc t can be the final event of the sequence [9]. Also, a coast is placed at the beginning of the mission and between thrusting maneuvers [9]; for example, sequences of the form i; i or s; s are not allowed. These constraints help reduce the size of the discrete search space. The discrete constraints can be modeled with a finite state automaton in the form of a directed graph or digraph, as shown in Fig. 2. The nodes and the directed edges constitute the mission events and the allowed transitions between them, respectively. The directed edge that does not start from a node indicates that the sequences start with event c; the double-circled nodes specify that the sequences end with events l or t. These constraints form the discrete boundary conditions Q0 fcg (10) Table 1 Categorical events for mission design Event (code) Description Coast arc c A finite coasting arc Impulse i An instantaneous impulsive maneuver Boundary-free thrust arc s A thrust arc without given boundary conditions, subject only to feasibility with respect to the EOMs Lambert’s rendezvous l A rendezvous composed of an impulse, a coast arc, and another impulse that satisfies given boundary conditions Boundary-specified thrust arc t A thrust arc with given boundary conditions 4 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 5. Qf fl; tg (11) Feasible event sequences can be obtained from the digraph. An example of a feasible sequence is q q0 ; q1 ; q2 ; q3 ; q4 ; q5 ; q6 ; q7 c; s; c; i; c; s; c; t where the number of switches Ns 7. The superscripts specify the place of the event in the sequence. The digraph also shows transitions that are not allowed. For example, the automaton cannot move from the event i to event s, because there is not a directed edge in that direction. The information contained in the digraph can be encoded following the notation and analysis shown in Sec. II for the definition of the switching sets and the adjacency matrix, which becomes, for the digraph of Fig. 2 A 2 6 6 6 6 4 0 1 1 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 7 7 7 5 (12) The number of events in a sequence, given by Ns1 Ns 1, is not fixed. An upper bound Ns;max is given to constrain the problem to finite sequences and to make the problem tractable. Let F be the set of all the feasible sequences, i.e., event sequences that satisfy the adjacency constraints and the discrete initial and boundary conditions. The problem to be solved by the outer-loop can then be stated as follows: minimize q ϕ q subject to q ∈ F; Ns1 ≤ Ns;max ∈ N The evaluation of the function ϕ is carried out by the inner-loop solver, which will provide the outer-loop with the optimal cost of the trajectory corresponding to the argument sequence. B. Continuous-Time Problem The continuous-time problem of multiphase mission design is to find the optimal trajectory that minimizes the objective function, usually propellant consumption or time offlight, satisfies giveninitial and boundary conditions for the continuous-time state variables, and has a given mission structure described by an event sequence. The total mission time can be specified or free. Because a multiphase trajectory can use an electric engine for providing a continuous thrust arc and a chemical rocket for impulses, parameters such as the initial thrust acceleration α0, and the exhaust velocities of the propulsion engines must be given. Using polar coordinates on a spacecraft-fixed basis, the equations of motion become [9] _r vr _θ vθ r _vr v2 θ r − 1 r2 f q α sin β _vθ − vθvr r f q α cos β _α f q α2 ce (13) where f q 0 if q c 1 if q ∈ fs; tg α is the thrust acceleration, ce is the exhaust velocity of the electric engine, and β is the control angle describing the direction of the thrust. Because the thrust magnitude provided by the electric engine is constant, and the rate of change of the thrust acceleration appears in the EOMs governing the finite events, it is convenient to use the thrust acceleration as a measure of the spacecraft’s mass throughout the trajectory. An impulsive maneuver is modeled as changing both mass and velocityinstantaneously.An equation relating such change isgiven in [22] m− − m m− 1 − e−ΔVc cc (14) where cc is the exhaust velocity of the chemical rocket, and the superscripts − and refer to instants immediately before and immediately following the event. Then, m− − m m− 1 − α− α (15) using Newton’s second law. Substituting Eq. (15) into Eq. (14), the states must satisfy the constraints [9]: r r− θ θ− vr v− r ΔVc sin β vθ v− θ ΔVc cos β α α−e ΔVc cc (16) where ΔVc is the impulse magnitude, and β is the direction of the impulse in a spacecraft fixed basis. An analytical expression for the thrust acceleration as a function of the thrusting time te t − t− can be obtained from Eq. (13) Z α α− da a2 Z te 0 dτ ce which yields α 1 1 α− − te ce (17) Minimizing the sum of the thrusting times can optimize a mission consisting of multiple thrust arcs. However, this approach is not appropriate if electric engines with different exhaust velocities are used, because their difference in efficiency is not taken into account. For instance, consider a trajectory with n thrust arcs where ti and ci represent the thrusting time and the exhaust velocity of the engine used during thrust arc i. Then, according to Eq. (17), the final thrust acceleration due to propellant consumption is given by [9] i sl t c Fig. 2 Digraph of a finite state automaton for mission design. AIAA Early Edition / CHILAN AND CONWAY 5 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 6. αf 1 1 α0 − Pn i 1 ti ci (18) Minimizing the sum of the normalized thrusting times ti∕ci as defined in Eq. (18) thus minimizes overall propellant consumption for the case when engines with different exhaust velocities are used. For impulsive maneuvers, the change invelocity ΔV has been used as a measure of the propellant consumed. Therefore, the total amount of propellant used in a trajectory that uses multiple impulses is described as the sum of the corresponding ΔVs. As with the low- thrust case, summing ΔVs provided by rockets with different exhaust velocities does not describe the total propellant used. Consider a trajectory with n impulses where ΔVi and ci represent the change in velocity of the spacecraft and the exhaust velocity of the rocket used during impulse i. According to Eq. (16), the total change in thrust acceleration due to propellant consumption is given by [9] αf α0e Pn i 1 ΔVi ci (19) Thus, the sum of the normalized change in velocity ΔVi∕ci is a better measure of propellant use, because values corresponding to different rockets can be added to determine the total change in mass. Optimizing a system that uses both low-thrust and chemical propulsion in the same trajectory requires a uniform metric to minimize. Equating the expressions for the thrust acceleration α in Eqs. (16) and (17) yields an expression that relates the normalized thrusting time te∕ce of the electric engine to the normalized change in velocity ΔVc∕cc provided by the chemical rocket. te ce 1 α− 1 − e−ΔVc cc (20) The mission planner can now choose which measure of propellant to minimize. In this work, the total normalized thrusting time is used as the objective. Thus, if impulsive maneuvers are used, their ΔVs are converted to normalized thrusting time using Eq. (20). Let q q0; q1; : : : ; qNs be the finite sequence of events provided by the outer-loop where qj ∈ Q for j 0; 1; : : : ; Ns. Let t t0; t1; : : : ; tNs1 be a real-valued time matrix associated with q. Then, the optimal control problem consists of minimizing the cost functional given by J x : ; u : ; t; q; Ns XNs j 0 g qj (21) where g qj 8 >>>>>< >>>>>: 0 if qj c 1 α− j 1 − e− ΔVc;j cc if qj i tj 1−tj ce if qj ∈ fs; tg P2 k 1 1 α− j;k 1 − e− ΔVc;j;k cc if qj l subject to Eqs. (13) and (16) and x t0 x0 (22a) x tNs1 xf tNs1 (22b) tj−1 ≤ tj ≤ tj 1; for j 1; : : : ; Ns (22c) t0 0 (22d) tNs1 free or fixed (22e) where x ∈ R5 and u ∈ R are the continuous state and control vectors, respectively. In view of the fact that the inner-loop solver is expected to find the optimal state trajectory for any given event sequence q, if it exists, robustness is more important than high accuracy. With this in mind, the proposed method of solution uses direct transcription with NLP using RK integration rules and a parallel-shooting scheme [7]. To maximize robustness for a given number of segments, only one RK step is used on each segment. The method used in the inner-loop to generate a good initial guess and to solve the continuous optimal control problem automatically with robustness and accuracy will be described in Sec. V. IV. Transcription of the Mission Event Sequence The discrete component of the HOC problem consists of finding the feasible categorical sequence that has minimum cost. In the mission design context, this means finding the sequence of events that achieves the mission objectives while minimizing propellant consumption. The successful solutions of the sample problems in [12] suggest the use of GA for the implementation of the outer-loop solver. In those problems, the discrete constraints were enforced by assigning a large constant cost to infeasible sequences. This approach is not practical for the multiphase problem because the discrete dynamics are more complex. A new model that transforms the constrained discrete optimization problem into an unconstrained problem [9] and searches for the solution only in the feasible discrete space ispresented. The proposedapproach also deals with categorical sequences of variable length. It is known that optimization algorithms improve their performance if the search is carried out only in the feasible space defined by the given constraints [23]. In the mission design problem the potential for improvement is significant, because the specified discrete constraints defineafeasiblespacethatismuchsmallerthanthetotaldiscretespace. Searching only in the feasible space requires the transformation of the constrained optimization problem into an unconstrained problem. The proposed GA model applies the specified constraints implicitly, allowing every individual to represent a feasible event sequence [9]. According to Fig. 2 only the thrusting events need to be described in a sequence because coast arcs are always to be placed between them and at the beginning of the sequence. Midcourse events can be modeled using a binary digit, because there are only two allowed event types (0fori,1fors).Similarly,abinarydigitcanalsorepresentthelastevent in a sequence (0 for l, 1 for t). As a result, a feasible sequence can be modeled using a binary string, in which every bit represents a thrusting event. The remaining issue is to determine how to handle sequences with a variable number of events. A fixed-size binary string can represent sequences with variable length by describing the number of thrusting events NT as the location of the leading 1-bit in the chromosome [9]. The leading 1-bit does not represent an event itself; it is just a marker stating that only the bits that followaretobetakenintoaccount.Inadditiontothesequenceevents,a categorical variable specific to mission design, to be included in the chromosome, is the number of revolutions to be performed by the spacecraft.If the maximum numberof revolutionsallowed isthree,itis necessary to add two bits to the chromosome. Figure 3 shows a sample 10-bitchromosomethatcanaccommodatesequenceswithamaximum number of thrusting events NT;max equal to 7 (1 bit for the length marker, 7 bits for thrusting events, and 2 bits for the number of revolutions). According to the convention of the previous paragraphs, the string in Fig. 3 is to be decoded as i; s; t . By adding the coast arcs that are assumed to precede each thrusting event, the resulting event sequence becomes c; i; c; s; c; t with two revolutions. Not all binary strings generated by GA are ready for decoding. For instance, consider the following possible 8-bit strings: 00000000 and 0 0 0 0 1 0 1 1 1 0 Thrusting events Number of revolutions Length marker Fig. 3 Sample chromosome for variable-length sequences. 6 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 7. 00000001. The former does not have the leading 1-bit, meaning that its length is undefined, and the latter does have the leading 1-bit, but does not contain any thrusting event. This issue can be handled by preprocessing every GA-generated binary string through a binary addition to 1000 before the decoding step, so that there is at least one thrusting event, and the number of revolutions is defined. The sample binary strings would then become 00001000 and 00001001, which represent the sequence c; l with 0 and 1 revolution, respectively. The outer-loop solver for the mission design problem will use this model in which everystring generated by the GA represents a feasible sequence. The GA solver used is the MATLAB Global Optimization Toolbox [24]. V. Method for the Solution of the Continuous-Time Optimal Control Problem The continuous-time component of the HOC problem consists of finding the optimal space trajectory that satisfies initial and final boundary conditions and a given mission structure. In [12], two sample problems were solved using GA and NLP for the implementation of the outer- and inner-loop solvers, respectively. In the motorized traveling salesman problem [12], the outer-loop searched for the optimal visitation sequence of three cities. During the search the outer-loop passed each candidate city sequence to the inner-loop, which solved the corresponding continuous-time optimal control problem and returned the cost to the outer-loop. That is, the inner-loop must solve every optimal control problem required by the outer-loop, or the hybrid optimizer may not find the optimal sequence. This motorized traveling salesman problem is, however, an unusually straightforward HOC problem, because even though the inner-loop had to solve optimization problems with different visita- tionsequences, the NLPproblem structure of parameters, constraints, and system EOMs was static, i.e., it did not change. The only required modification was setting the interception constraints with the locations of the cities corresponding to the given sequence. The mission design problem is qualitatively different from these sample problems, as the discrete variables now represent events such as impulses, coast arcs, and thrust arcs that, as will be shown, change the structure of the NLP problem. In addition, the number of events in the categorical sequence is not fixed; for example a mission might consist of a coast arc, an impulse, another coast arc, and a thrust arc. The same mission might be accomplished without the impulse, or with an additional coast arc/thrust arc combination. Conventional implementations of NLP solvers expect a static problem structure. For the dynamical assembly of events required for the NLP discretization of the mission design problem, a scheme that defines events as modules consisting of parameters and constraints is presented. The method assembles the respective events sequentially in time according to the given mission structure [9]. It was noted in the discussion of the solution process for the example problems [12,21] that the continuous-time problem, after transcription, requires an initial guess,i.e., an approximate solution to initialize the NLPproblem solver.If theguess is not sufficiently good, the NLP solver will not converge, and as mentioned previously, a suboptimal solution may be found or the HOC solution search could stop. Because the mission design problems are sophisticated and challenging, combining possibly lengthy sequences of events (coasts, impulses, thrust arcs), reliably finding an approximate solution of good quality is challenging. A new method was developed that approximates optimal low-thrust trajectories [9] and addresses these issues. The method, based on GA, approximates optimal control histories by incorporating boundary conditions explicitly using a CP function. The approximate solution from this method is given as an initial guess to an NLP problem solver to obtain an accurate optimal trajectory. A. Methods for the Approximate Optimization of Multiphase Impulsive Trajectories The proposed method to approximate an optimal solution is based on real GA. Real GA still uses binary representations and operations for the evolutionary processes but at a level that is transparent to the user. The approximate optimal trajectory is to be used as the initial guess for a more accurate optimization method, such as direct transcription with NLP. Because experience shows that penalty methods do not handle explicit constraints well in general, such constraints should be handled implicitly whenever possible, i.e., posing the optimization problem in such a way that it appears to be unconstrained from the standpoint of the GA. For instance, a compound event named “Lambert’s rendezvous” has been defined for trajectories that must satisfy rendezvous conditions using impulsive maneuvers. Its implementation is based on algorithms for Lambert’s problem, which consist of the determination of an orbit that connects two position vectors and has a specified transfer time. Battin [8] and Prussing [25] present algorithms for Lambert’s problem using single and multirevolution trajectories, respectively. Such algorithms yield the semimajor axis and eccentricity of the transfer orbit, which is sufficient to allow the determination of the velocity vectors at the beginning and the end of the transfer. Although the original definition of Lambert’s problem does not consider rendezvous maneuvers, it is possible to match required velocity vectors by computing the respective ΔVs using the resulting terminal velocity vectors. Because the interception or rendezvous constraints are handled by the Lambert’s problem algorithm, the GA can find optimal values for the respective parameters for the states and transfer time without explicitly dealing with any constraint. Foran entirely impulsive trajectory, the following eventsconstitute the categorical space Q: 1) A coast arc c is the most basic event to represent. It is characterized by only one GA parameter, the flight time. Its evaluation consists of integrating the EOMs in Eq. (13) from the initial state of the event for the duration of the flight time. The state at the end of the integration becomes the boundary state of the event. 2) An impulse i is also straightforward; it consists of two GA parameters, the direction, and magnitude of the impulse. Its evalua- tion applies the vector operation in Eq. (16) to the initial state of the event. The resulting vector is the boundary state of the event. 3) The Lambert’s rendezvous l is a compound event consisting of an impulse, a coast arc, and another impulse that is placed at the end of the mission to satisfy given boundary conditions. Although this compound event is equivalent to the sequence i; c; i , the Lambert’s rendezvous event was introduced because the coast arc c and the impulse i events would need explicit constraints to satisfy the given boundary conditions. The only GA parameter required is the transfer time, because the initial and target state vectors for the event are specified. The evaluation of the event yields the terminal velocities and hence the impulses required to perform the maneuver. Assembling the respective events, in this case, i, c, and l, sequentially in time constitutes a multiphase mission. Given that a few parameters represent each event, a GA individual can characterize an entire mission by collecting the parameters of all the constitutive events. For example, the sequence q q0; q1; q2; q3 c; i; c; l can be represented by the chromosome Coast Time0; Direction1; Magnitude1; Coast Time2; Transfer Time3 where the superscripts identify which event in the sequence the respective parameter belongs to. The cost determination of this individual starts by evaluating each of the component events from left to right, successively. Every event has a defined initial state at the moment of evaluation that corresponds to the boundary state of the previous event. The assessment of the last event concludes the evaluation of the individual and precedes the computation of the sequence cost. Forthe sample chromosome, it would be the sum of all the explicit impulse magnitudes, in this case just magnitude1, and the two impulse magnitudes resulting from solving Lambert’s problem. The addition of events that use low-thrust propulsion is more complex because they require continuous control histories. The next section presents a method to approximate optimal trajectories including these types of events. AIAA Early Edition / CHILAN AND CONWAY 7 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 8. B. Conditional Penalty Method for the Approximate Optimization of Multiphase Low-Thrust Trajectories A GA-based approach, the CP method [9], has been developed for the approximate optimization of multiphase low-thrust trajectories. In principle, any evolutionary algorithm such as particle swarm algorithms or genetic algorithms can be used with the CP formulation. Instead of using traditional penalty methods to satisfy explicit boundary conditions, a conditionally valued fitness function is introduced to first find a feasible trajectory, and then refine it into a trajectory that is also optimal. The approximate solution can then be used as an initial guess for a direct solver that converts the continuous optimal control problem into a NLP problem. The method inherits the parallel scalability of GA for use in parallel computing systems [26]. An important feature of this method is that it is not constrained to a particular choice of coordinate system. Also, the method allows considering actual mission features, such as the use of constant thrust, and the thrust acceleration increase as propellant is consumed. A space mission can be accomplished successfully by thrusting for the entire duration of the flight. However, primer vector theory shows that such a strategy is likely not optimal. Trajectories consisting of multiple low-thrust and coasting arcs, i.e., multiphase missions, can often satisfy similar boundary conditions using less propellant. The conditional penalty method described here optimizes this multiphase type of trajectory without a priori knowledge. It is illustrated by means of a sample minimum-propellant rendezvous using low thrust, whose state trajectory is shown in cartoon form in Fig. 4. Assuming that initial conditions are given, the state point A is specified. For a rendezvous, the state point D is also given or is determinable as a function of time. Intermediate points B and C are not specified directly but can be obtained by integrating the system with a control history during the first thrust arc and by coasting, respectively. Assuming that the mission events can be evaluated in chronological order, some general observations can be made at this point: 1) Every arc has initial conditions before its evaluation. 2) The thrust arc AB does not have terminal boundary conditions. 3) The thrust arc CD has given boundary conditions. 4) The flight times of each arc, including the coast, are free. A GA method can then optimize this mission by finding values for 1) control parameter vector uAB, 2) control parameter vector uCD, 3) flight time of thrust arc AB, 4) flight time of coast arc BC, and 5) flight time of thrust arc CD, that satisfy the rendezvous conditions while minimizing the total thrusting time. The control vectors consist of parameters that determine the thrust-pointing angle history during each thrust arc. The integration of the EOMs in a thrust arc requires many integration steps, which in turn calls for a rather large number of parameters to represent the respective control history. Such a large number of parameters in the GA model of an individual wouldrequire the use of very large populations, reducing the effectiveness of the method. A reduction in the number of parameters can be accomplished by representing the control history at only a few points in time. Interpolating the few control parameters using polynomials such as the Hermite cubic or a Fourier transform [9,27,28] yields the higher time resolution of the control history required for an accurate integration. A design of a chromosome for GA individuals, for the example shown in Fig. 4, would require the following vector P of parameters: P tAB; uAB; tBC; tCD; uCD The determination of the cost of each individual is accomplished by evaluating the mission phases successively using the parameter values. For instance, the first thrust arc has a defined initial point A that, with flight time tAB and control vector uAB, are used to obtain point B. Then,point B is used with tBC to find point C at the endof the coast. Finally, the evaluation of the second thrust arc requires the integration of the system starting from C, using flight time tCD and control vector uCD, to obtain point x tD . Although this approach ensures every individual satisfies the EOMs throughout the trajectory, the specified terminal conditions may not be achieved. An approach to address this issue is to use penalty methods in the fitness function. For example, the constrained optimization problem Minimize J P subject to hi P 0; i 1; 2; : : : ; n would become minimize J P k Xn i 1 Φ hi P where Φ is the penalty function, and k is the penalty coefficient. Experience shows that using a linear combination to minimize the cost and constraint violations simultaneously is not an effective technique [29]. Because the inner-loop in the HOC problem solver should be able to optimize a trajectory with any structure, an alternate, more robust method is needed. Coello Coello [29] presents a method that handles the constraints based on evolutionary multiobjective optimization (MOO). The method explicitly ranks the GA individuals in the population according to prescribed rules on their feasibility and optimality. The CP method [9] used in this work has a simpler implementation, but it is effective in finding solutions to constrained optimization problems. In the CPmethod, the constraint violations are mapped into a scalar distance d, i.e., the Euclidean distance between the boundary state x tD and the boundary conditions D. Figure 5 shows two boundary- specified thrust arcs identified by subscripts (1, 2) corresponding to the last thrust arcs of multiphase missions represented by different GA individuals. The last thrust arcs for individuals 1 and 2 terminate at x1 tD and x2 tD , respectively. If the distance d is greater than the specified tolerance, as is the case for individual 1, the trajectory is considered to be infeasible; the cost assigned to the individual is then the addition of a large infeasibility constant K and the distance d, which provides the search with directionality information even from infeasible individuals. If the trajectory is feasible, as results from the last thrust arc of individual 2, the cost assigned to the individual is no longer related to the distance d, but instead it is based on the original A B C D X1 X2 thrust coast thrust Fig. 4 State trajectory of multiphase low-thrust mission. X1 X2 C1 D x1(tD) d1 > tol d2 toltolerance region C2 x2(tD) Fig. 5 Feasibility determination of boundary-specified thrust arcs. 8 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 9. cost metric, i.e., the amount of propellant used in the entire mission. This method can be implemented using the following conditional fitness function: J K d if d > tolPNs j 0 g qj if d ≤ tol (23) The CP method requires the tuning of only two parameters. The infeasibility constant can be trivially set to a value that is higher than the expected cost of any feasible solution. In general, the tolerance should be set to low-accuracy values in the order of 10−1 to 10−2 for normalized problems, because evolutionary metaheuristics are less accurate than gradient-based deterministic methods such as NLP. High-accuracy tolerances are likely to cause overpenalization, i.e., convergence to a feasible solution with a cost that is significantly higher than the optimal cost. C. Methods of Solution for the Optimization of a Multiphase Space Trajectory Direct methods have become a popular choice for trajectory optimization problems because they avoid the difficulties related to the derivation and solution of the TPBVP resulting from the Euler–Lagrange equations of the COV. Unlike GA solutions, trajectories found using NLP satisfy optimality conditions to a specified tolerance, which yields accurate solutions. Schemes for the transformation include Hermite–Simpson collocation [18], Runge– Kutta transcription with parallel shooting [7], and Gauss–Lobatto collocation [19], which vary in their degree of accuracy and robustness. Regardless of the scheme chosen, the NLP trans- formation consists of discretizing time and modeling the continuous- time state and control variables at several points in time. The system dynamics and boundary conditions are satisfied by defining nonlinear constraints that relate nodal NLP parameters. Creating such a NLP structure of parameters and constraints is an involved process that the mission planner has to perform each time the optimization problem is formulated with a different structure. It is clear that this approach is not practical for a mission “automaton,” because the problem statement for the inner-loop calls for the optimization of trajectories with a variety of structures. Therefore, a modular scheme is needed for the automatic construction of NLP problems during runtime. The basic module in this work is the categorical event, which consists of a set of NLP parameters and constraints [9]. A property of every event is the presence of terminal nodes that allows representing initial and boundary states. This property, along with the definition of continuity constraints on the states during the event transitions, allows assembling the events successively in time regardless of their internal dynamics in a fashion similar to that described by von Stryk and Glocker [10] as shown in Fig. 6. The internal constitution of each event module depends on the type of event it represents [9]. The NLP representation of impulses is implemented as follows: 1) An impulse is represented by a knot, i.e., two nodes corresponding to the states immediately before and following the impulsive maneuver. 2) Two additional parameters are used for the direction and magnitude of the impulse. 3) Five nonlinear constraints ensure that the parameters satisfy the change in velocity and mass described in Eq. (16). In a similar way, the NLP representation for coast and thrust arcs is the following: 1) A coast/thrust arc is represented by a standard mesh for parallel- shooting using RK integration rule. One RK step per segment has been selected for maximum robustness. 2) An additional parameter is added for the flight time. 3) Five nonlinear constraints on each mesh segment ensure that the parameters satisfy the EOMs in Eq. (13). 4) Additional constraints may be imposed depending on the desired maneuver, e.g., interception or rendezvous. Note that there is no particular event definition for a Lambert’s rendezvous, because the NLP problem does not employ any of the algorithms to solve Lambert’s problem. When the inner-loop is assigned to optimize a trajectory containing this type of event, it assembles an impulse, a coast arc, and another impulse, and defines the nonlinear constraints required to satisfy the boundary conditions. By parsing the events provided by the outer-loop, this modular approach allows the inner-loop to set the vector of NLP parameters with suitable bounds and to compute the appropriate nonlinear constraints. The modeler has the discretion to define the upper and lower bounds for the parameters in a way that is appropriate for the problem in consideration; the boundsfor the GA and NLPeventsmay or may not be similar as long as the GA search space is a subset of the NLP search space. This is a necessary condition for the GA solution to be a feasible initial guess for the NLP problem. Regarding the terminal constraints, numerical experimentation shows that the NLP solver finds the optimal solution more robustly if the interception constraints, i.e., position matching, are transformed to Cartesian coordinates instead of directly using polar coordinates. The cost function is a measure of the propellant used throughout the trajectory. In this work, it has been constructed as the sum of the normalized thrusting times corresponding to the thrust arcs and those resulting from the transformation of the impulse magnitudes as defined in Eq. (20). It is important to note that a feasible trajectory may not exist for some values of the categorical variables, e.g., number of revolutions, and the constraints for the continuous variables, e.g., boundary conditions and flight time. For these cases, the inner-loop assigns a large constant cost to the event sequence provided by the outer-loop. D. Transformation of the Approximate GA Solution into the NLP Initial Guess The approximate solution for the trajectory optimization problem found using the conditional penalty method [9] is a good initial guess for the NLP problem solver, because the EOMs are satisfied and the propellant consumption has been minimized heuristically. However, such a solution cannot be used directly by the NLP solver, because the GA and NLP parameter representations are different. For example, the GA model does not use parameters to represent state variables; they are computed during the evaluation of each event taking as initial state the boundary state of the previous event. Therefore, a procedure is required to generate guess values for the respective NLP parameters from the approximate GA solution. For an impulse, the GA values for the initial state and the impulse direction and magnitude can be used directly as guess values for the NLP parameters corresponding to the state at initial node and the direction and magnitude of the impulse. The vector operations in Eq. (16) describe the impulse dynamics and generate guess values for the state at the boundary node of the event. For a coast arc, the GA values for the initial state and flight time can be used directly as guess values for the NLP parameters corresponding to the state at the initial node and the flight time. Performing an integration of the system in Eq. (13) yields guess values for the state parameters at the inner and boundary mesh nodes. Fora thrust arc, the GAvalues for the initial state and the flight time can again be used as guess values for the NLP parameters for the state at the initial node and the flight time. To obtain guess values for the states at the inner nodes, the few GA control parameters are t0= 0 tNs1= tf event q0 t1 t2 ti ti+1 event q1 event qi x = f(x,u,q0 ) x = f(x,u,q1 ) x = f(x,u,qi ) x(0) x(tf) Fig. 6 Assembly of events in a multiphase trajectory. AIAA Early Edition / CHILAN AND CONWAY 9 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 10. interpolated to achieve a resolution consistent with the transcription mesh; this provides the guess values for all the control parameters for the thrust arc. Then, the system in Eq. (13) can be integrated to obtain the state values for the inner and boundary nodes. This is a computationally practical approach, because the interpolation of the control history involves only a few GA parameters, and the integ- ration of the EOMs is an initial value problem (IVP) with a number of steps given by the resolution of the discrete time mesh. Finally, for a Lambert’s rendezvous, the GA model provides an initial state and a flight time; a target state is given in the problem definition. A Lambert’s problem algorithm can find the terminal velocities needed to perform the rendezvous, which in turn yield the magnitude and direction of the first and second impulsive maneuvers. With this information, guess values can be generated for the parameters of the events that compose the Lambert’s rendezvous in the NLP model, i.e., a first impulse, a coast arc, and a second impulse. The next paragraph shows an outline of the algorithm for the optimization of trajectories with different structures using NLP. As with the CP approximation method, the events are evaluated one at a time, and the locations of the respective event parameters and constraints in the GA vector, NLP parameter vector, and NLP constraint vector are determined through the use of an offset variable on each vector. Each offset variable indicates the location of the first element, e.g., parameter or constraint, for the event that is currently evaluated; the rest of the elements for the current event are recognized by their relative position with respect to the first element. After the evaluation of the event is complete, the number of elements (parameters or constraints) of the current event in the respective vector is added to the corresponding offset variable so that it indicates the location of the first element of the next event. This process continues successively until all events in the given sequence have been evaluated. MAIN PROGRAM initialize offsets on GA solution vector and NLP initial guess and bounds vectors FOR each event transform solution values of the GA event parameters into initial guess values for the NLP event parameters, and set them in the NLP initial guess vector set bounds for the respective NLP event parameters and constraints in the NLP bounds vectors advance offsets on GA parameters vector and NLP initial guess and bounds vectors to the next event END call NLP solver with initial guess vector, bounds vectors, and names for the OBJECTIVE FUNCTION and the NONLINEAR CONSTRAINTS FUNCTION OBJECTIVE FUNCTION initialize offset on NLP parameter vector FOR each event accumulate the cost contribution of the event advance offset on NLP parameter vector to the next event END return accumulated cost NONLINEAR CONSTRAINTS FUNCTION initialize offsets on NLP parameters and constraints vectors FOR each event compute values for the nonlinear constraints for the event and set them in the NLP constraints vector IF event is NOT first compute values for state continuity constraints and set them in the NLP constraints vector END IF event is terminal compute values for terminal constraints and set them in the NLP constraints vector END advance offsets on NLP parameters and constraints vectors to the next event END return NLP constraints vector VI. Example Problem with Specified Final Time A minimum-propellant time-fixed rendezvous between circular orbits was selected as a testbed for the GA NLP hybrid optimizer [9]. The GA and NLP solvers used are the MATLAB Global Optimization Toolbox [24] and TOMLAB/SNOPT [30], respec- tively. The computing system used to solve this problem is a 1.66- GHz Intel Core Duo. This problem was developed and solved by Prussing and Chiu [31] using primer vector theory [13]. In the problem, two spacecraft orbit a planet in coplanar circular orbits of unit radius. The target spacecraft has an initial lead angle of π rad with respect to the controlled spacecraft as shown in Fig. 7, and the transfer time is 2.3 orbit periods. Prussing and Chiu [31] found a locally optimal trajectory with four impulses and a cost of ΔV 0.1891 DU∕TU, where a DU is equal to the radius of the circle orbit and a TU is the time to advance one radian in the unit circle orbit. Colasurdo and Pastrone [32] found another solution with a lower cost of ΔV 0.1638 DU∕TU also using four impulses, which is shown in Fig. 8; the triangles show the locations where the impulses are applied. The optimality of this mission structure can be verified using the Pontryagin minimum principle through a switching function [33] shown in Fig. 9. Primer vector theory requires the application of a thrusting maneuver each time the switching function is greater than or equal to zero, and a coast otherwise. The existence of known solutions for this nontrivial problem makes it a good choice for evaluating the effectiveness of the methods presented in this work. Although the problem as constructed by Prussing and Chiu [31] allows only impulsive maneuvers, in this work it is modified to allow low-thrust arcs [34]. In addition, the problem is solved accounting for the difference in efficiency of the propulsion systems, i.e., that the electric low-thrust engine is many times more efficient than a chemical rocket in its use of propellant mass. The controlled spacecraft position and velocity are defined in a polar coordinate system, and canonical units are used, i.e., a DU is the radius of the circular orbit and one TU is the time required to advance one radian in the unit circle. At the initial time, the polar coordinates of the controlled spacecraft are r 1 DU, and θ 0 rad. Assuming that the circular orbit is geosynchronous and that the propulsion systems used are the advanced space engine rocket (Isp 476 s) and a standard ion electric engine (Isp 3000 s), the exhaust velocities become 1.52 DU∕TU and 9.57 DU∕TU, respectively. The initial thrust acceleration is assumed to be 0.03 DU∕TU2 and an upper bound on the final thrust acceleration is set to 0.30 DU∕TU2. The continuous optimal control problem is described in Eqs. (21) and (22) with the following initial and boundary conditions and time constraints: x0 1 0 0 1 0.03 T xf 1 0.8 n 2π 0 1 free T n ∈ f 0; 1; 2; 3 g t0 0; tNs1 4.6π The goal of the hybrid optimizer is to find the mission structure that minimizes the amount of propellant required to perform the rendezvous. The maximum length of the event sequences Ns;max is chosen to be 12. Because the cardinality of the categorical space is 5, the total size of the discrete search space then becomes 4 P12 i 1 5i 1; 220; 703; 120. The transcription approach for the outer-loop problem described in Sec. IVallows reducing the discrete search space by considering only the event sequences that satisfy the discrete constraints. In this case, the mission sequences can use up to six thrusting events, so the chromosome for the outer-loop problem is a string of six binary digits plus 1 bit for the specification of the sequence length and 2 bits for the representation of the number of revolutions. The size of the discrete search space has been reduced to 512. The GA population size is chosen to be 25, and the evolutionary process is set to run for 20 generations. For the inner-loop problem, the time mesh for each coast/thrust arc consists of 30 segments to represent the time history of 5 continuous- 10 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 11. time states and 1 control variable (an additional parameter represents the flight time). Consequently, each thrust arc uses 217 NLP parameters and each coast arc uses 156 NLP parameters; there are 150 nonlinear constraints on each arc. For impulses, each knot uses 12 NLP parameters and has 5 constraints. There are 5 state continuity constraints for each event transition, and 5 final constraints for the boundary conditions and time constraint. The NLP feasibility and optimality tolerances were set to 10−5 . The CP method is used for the generation of the initial guesses for the NLP solver. The CP tolerance was set to 10−1 and the control history during a thrust arc is represented using 3 parameters and Hermite cubic interpolation. The real GA used in the CP method is configured with a population size of 500 individuals. The evolutionary process is set to stop after reaching 500 generations or when 50 generations have had the same best individual. The real GA search space for the magnitude of the impulsive maneuvers is 0.002; 1.8 and for the thrust pointing angle parameters is −π; π ; the search space for the duration of the coast/thrust arcs is 0.5; 12 with the exception of the first arc, which can collapse to 10−3. Because the geometrical configuration of the system is not affected by an initial coast, the guess for the duration of the initial coast is set to 10−3. The mission structure that minimizes the propellant consumed is c; s; c; s; c; s; c; t with two revolutions, which has a normalized thrusting time of 0.6541 TU2 ∕DU; the actual thrusting time (6.2594 TU) can be found by multiplying the normalized metric by the respective exhaust velocity. Finding the best event sequence required the cumulative evaluation of 65 sequences in the outer-loop as shown in Table 2. The optimal solution is found in the sixth generation; 14 more generations are run (only 4 of these are shown) but no improvement is seen. Note that for improved efficiency of the outer-loop GA method, the evaluated sequences and their corres- ponding costs are cached in memory to avoid solving the same problems repeatedly if the sequences appear again in subsequent generations. This explains why the number of “evaluated sequences” in the table rapidly diminishes as the search converges to the solution. The total computational time for the hybrid optimizer was approxi- mately 16 days. As an example, finding the solution trajectory for the best sequence in the inner-loop required 262 min for the CP to find an initial guess and then 108 min for the NLP solver to converge from this guess to the solution. The optimal trajectory and control history are shown in Figs. 10 and 11, respectively. The optimality of the mission structure can be verified through a switching function [7,33], which can be computed using the NLP parameters corresponding to the states and Lagrange multipliers from the NLP solution [7]. Figure 12 shows that the mission structure found is optimal; primer vector theory requires the application of a thrust arc when the Fig. 8 Optimal trajectory using four impulses and two revolutions for the circle-to-circle rendezvous, Colasurdo and Pastrone solution [32]. Fig. 9 Switching function history for optimal trajectory using four impulses and two revolutions for the circle-to-circle rendezvous. Fig. 7 Initial spacecraft configuration for the circle-to-circle rendezvous. AIAA Early Edition / CHILAN AND CONWAY 11 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 12. switching function is greater than zero and a coast otherwise (thus the duration of the first arc of the sequence is collapsed to the lower bound, 10−3 ). The fact that the hybrid optimizer found that the optimal mission sequence uses only low-thrust propulsion means that the solver effectively took into account the much greater efficiency of that engine vs the conventional rocket motor. As a comparison, note that total cost for the four-impulse strategy found by Colasurdo and Pastrone [32] in normalized thrusting time is 3.6065 TU2∕DU (normalized ΔV of 0.1078) for the given propulsion parameters. However, the low-thrust strategy used, placing the spacecraft into an inner orbit to reduce the lead angle of the target, is similar to that of the impulsivecase shownin Fig. 8. It can be said that the trajectory shown in Fig. 10 is the low-thrust analogue of the impulsive trajectory. The similarity of the trajectories is also shown by their switching functions in Figs. 9 and 12. VII. Example Problem with Free Final Time A minimum-propellant Earth–Mars transfer was chosen as an example of a problem with an unspecified (free) final time [34]. Typical missions to Mars have durations of less than a year, e.g., the Hohmann transfer from Earth requires 9 months approximately; therefore, an upper bound of 5 years was set on the total mission time. The problem uses the J2000 heliocentric ephemeris [35] for the computation of the position of the planets, and a coplanar rendezvous is studied for the sake of simplicity. The spacecraft position and velocity are defined in a heliocentric polar coordinate system, and canonical units are used, i.e., 1 DU is equal to 1 astronomical unit (au), and a TU is the corresponding time to advance one radian in a 1- au circular orbit. The initial time is the J2000 epoch, and the initial thrust acceleration is assumed to be 0.025 DU∕TU2 ; an upper bound on the final thrust acceleration is set to 0.300 DU∕TU2. The initial and boundary states are obtained from the orbital elements resulting from the ephemeris computation. The propulsion systems used are a nuclear thermal rocket (Isp 850 s) and a standard ion electric engine (Isp 3000 s), so the exhaust velocities become 0.280 DU∕TU and 0.988 DU∕TU, respectively. As before, the goal of the hybrid optimizer is to find the mission structure that minimizes the amount of propellant required to complete the mission. The spacecraft can perform 0 through 3 revolutions. The configuration of the outer- and inner-loop solvers is the same as that for the previous Fig. 10 Optimal trajectory for the sequence c;s;c;s;c;s;c;t with two revolutions for the circle-to-circle rendezvous. The bold segments represent thrust arcs. Fig. 11 Optimal control history for the sequence c;s;c;s;c;s;c;t with two revolutions for the circle-to-circle rendezvous. Fig. 12 Switching function history for the sequence c;s;c;s;c;s;c;t with two revolutions for the circle-to-circle rendezvous. Table 2 Progress of the outer-loop GA solver for the circle-to-circle rendezvous Generation Evaluated sequences Cumulative evaluations Best normalized thrusting time (TU2∕DU) Best normalized ΔV (dimensionless) Best sequence 1 25 25 0.6977 0.0212 c; s; c; i; c; s; c; s; c; t 2 rev 2 14 39 0.6977 0.0212 c; s; c; i; c; s; c; s; c; t 2 rev 3 10 49 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev 4 9 58 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev 5 4 62 0.6688 0.0203 c; s; c; s; c; s; c; s; c; s; c; t 2 rev 6 3 65 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev 7 1 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev 8 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev 9 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev 10 0 66 0.6541 0.0198 c; s; c; s; c; s; c; t 2 rev 12 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 13. example, and the conditional penalty method is used to generate the initial guesses for the NLP solver. The real GA search space for the magnitude of the impulsive maneuvers is 0.003; 0.4 and for the thrust-pointing angle parameters is −π; π ; the search space for the duration of the coast/thrust arcs is 0.5; 25 with the exception of the first arc, which can collapse to 10−3. The best mission sequence found is c; s; c; s; c; t with two revolutions and a normalized thrusting time of 6.8625 TU2∕DU (actual thrusting time is 6.7802 TU); the duration of the mission is 2.83 years. Finding this solution required the cumulative evaluation of 40 sequences as shown in Table 3; the optimal solution is found in the second generation. The total computational time for the hybrid optimizer was approximately 15 days. As an example, finding the solution trajectory for the best sequence in the inner-loop required 235 min for the CP to find an initial guess andthen 73 min for the NLP solver to converge from this guess to the solution. The corresponding optimal trajectory and control history are shown in Figs. 13 and 14. The switching function [7,33] in Fig. 15 shows the optimality of the mission structure. The first and the second thrust arcs occur near periapse, primarily in the direction of motion, which raises the apoapse. In this way, the apoapse of the last transfer trajectory reaches the orbit of Mars. Shortly before entering Mars orbit, the third and final thrust arc begins to raise the periapse and complete the rendezvous. VIII. Conclusions In this work, the problem of interest is the automated solution of hybrid optimal control (HOC) problems. A HOC problem is an optimization problem defined in terms of discrete and continuous variables. Although in this work the nested-loop approach has been followed, the solution of complex problems, such as the automated design of multiphase space missions, requires new sophisticated methods, because the problem structure is no longer static as in other HOC problems. The discrete variables now represent events such as impulses, coast, and thrust arcs, which means that the spacecraft dynamics are described by different equations of motion during the different phases of the trajectory. Analysis was performed to reduce the discrete search space in the outer-loop to only sequences that satisfy given discrete constraints. The strategyof using a leading bit as a length marker was successfully used in the outer-loop genetic algorithm (GA) when searching among Table 3 Progress of the outer-loop GA solver for the Earth–Mars mission Generation Evaluated sequences Cumulative evaluations Best normalized thrusting time (TU2∕DU) Best normalized ΔV (dimensionless) Best sequence 1 25 25 6.8705 0.1885 c; s; c; s; c; s; c; t 2 rev 2 15 40 6.8625 0.1882 c; s; c; s; c; t 2 rev 3 12 52 6.8625 0.1882 c; s; c; s; c; t 2 rev 4 5 57 6.8625 0.1882 c; s; c; s; c; t 2 rev 5 5 62 6.8625 0.1882 c; s; c; s; c; t 2 rev 6 2 64 6.8625 0.1882 c; s; c; s; c; t 2 rev 7 1 65 6.8625 0.1882 c; s; c; s; c; t 2 rev 8 0 65 6.8625 0.1882 c; s; c; s; c; t 2 rev 9 1 66 6.8625 0.1882 c; s; c; s; c; t 2 rev 10 0 66 6.8625 0.1882 c; s; c; s; c; t 2 rev Fig. 13 Optimal trajectory for the sequence c;s;c;s;c;t with two revolutions for the Earth–Mars mission. The bold segments represent thrust arcs. Fig. 14 Optimal control history for the sequence c;s;c;s;c;t with two revolutions for the Earth–Mars mission. Fig. 15 Switching function history for the sequence c;s;c;s;c;t with two revolutions for the Earth–Mars mission. AIAA Early Edition / CHILAN AND CONWAY 13 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 14. variable-length sequences using a fixed-length chromosome. In addition, the strategy of caching the cost of evaluated event sequences in memory provided significant savings in computation; the evaluation of a single event sequence is computationally intensive, because it requires solving an optimal control problem. The automated construction of nonlinear programming (NLP) problems of arbitrary structure in the inner-loop was made possible because of the introduction of a new modular scheme. The basic module consists of a mission event, which is represented by a set of NLP parameters and constraints. For the generation of initial guesses for the NLP problem, a new method based on real GA approximates optimal control histories by incorporating boundary conditions explicitly using a conditional penalty (CP) function. The quality of the solutions found by the CP method allows the NLP solver to robustly converge to a solution. However, multiphase trajectory optimization problems have difficulties not found in single-phase optimization problems. For instance, if every event is allowed to collapse, some of them may collapse early during the search, yielding a convergent solution that is feasible but suboptimal. To prevent this problem, a small lower bound was set on the magnitude of the events; the definition of what is “small” will depend on the nature and the scaling of the problem. This strategy does not pose a major loss of generality, because if an event should collapse to yield the optimal solution, the outer-loop GA should call for the evaluation of a similar sequence without the offending event. A second strategy used in tandem is the definition of a low-accuracy tolerance in the CP method to prevent overpenalization. Statistics show that the computational times for the CP and the NLP methods are of the same order. The implementation of these methods in future studies to find three- dimensional trajectories is straightforward but should have longer computational times due to the presence of additional search parameters. The solved problems included the minimum-propellant, time- fixed circle-to-circle orbit rendezvous. The second solved problem was a minimum-propellant time-free, coplanar Earth–Mars mission. The application of normalized cost metrics and transformations allowed the optimization of trajectories that employ different propulsion systems. The optimality of the multiphase structures found was verified using the Pontryagin minimum principle through a switching function. In this work, methods were developed that can be used for the automated design of multiphase space missions but can also apply to the solution of any dynamical HOC problem. Similarly, the CP method, developed here for robustly finding approximate solutions to be used as initial guesses for the NLP solver in the inner-loop of the automaton, could also be used independently, e.g., when initial guesses are needed for solutions of general optimal control problems. References [1] Vasile, M., Ceriotti, M., Radice, G., Becerra, V., Nasuto, S., and Anderson, J., “Global Trajectory Optimisation: Can We Prune the Solution Spacewhen Considering Deep Space Manoeuvres?” European Space Agency Final Rept. No. 06-4101c, 2008. [2] Englander, J., Conway, B. A., and Williams, T., “Automated Mission Planning via Evolutionary Algorithms,” Journal of Guidance, Control, and Dynamics, Vol. 35, No. 6, 2012, pp. 1878–1887. doi:10.2514/1.54101 [3] Gad, A., and Abdelkhalik, O., “Hidden Genes Genetic Algorithm for Multi-Gravity-Assist Trajectories Optimization,” Journal of Spacecraft and Rockets, Vol. 48, No. 4, 2011, pp. 629–641. doi:10.2514/1.52642 [4] Ceriotti, M., and Vasile, M., “Automated Multigravity Assist Trajectory Planning with a Modified Ant Colony Algorithm,” Journal of Aerospace Computing, Information, and Communication, Vol. 7, No. 9, 2010, pp. 261–293. doi:10.2514/1.48448 [5] Ross, I. M., and D’Souza, C. N., “Hybrid Optimal Control Framework for Mission Planning,” Journal of Guidance, Control, and Dynamics, Vol. 28, No. 4, 2005, pp. 686–697. doi:10.2514/1.8285 [6] Goldberg, D. E., Genetic Algorithms in Search, Optimization and Machine Learning, Addison–Wesley, Reading, MA, 1989, pp. 6–14. [7] Enright, P. J., and Conway, B. A., “Discrete Approximations to Optimal Trajectories Using Direct Transcription and Nonlinear Programming,” Journal of Guidance, Control, and Dynamics, Vol. 15, No. 4, 1992, pp. 994–1002. doi:10.2514/3.20934 [8] Battin, R. H., An Introduction to the Mathematics and Methods of Astrodynamics, AIAA, New York, NY, 1987, pp. 295–342. [9] Chilan, C. M., and Conway, B. A., “Using Genetic Algorithms for the Construction of a Space Mission Automaton,” Paper 557, IEEE Congress on Evolutionary Computation, IEEE Publications, Piscat- away, NY, 2009, pp. 2316–2323. [10] von Stryk, O., and Glocker, M., “Numerical Mixed-Integer Optimal Control and Motorized Traveling Salesmen Problems,” Journal European des Systemes Automatises, Vol. 35, No. 4, 2001, pp. 519–533. [11] Buss, M., Glocker, M., Hardt, M., von Stryk, O., Bulirsch, R., and Schmidt, G., “Nonlinear Hybrid Dynamical Systems: Modeling, Optimal Control, and Applications,” Lecture Notes in Control and Information Sciences, Vol. 279, 2002, pp. 311–335. [12] Chilan, C. M., and Conway, B. A., “A Space Mission Automaton Using Hybrid Optimal Control,” Advances in the Astronautical Sciences, Vol. 127, Univelt, San Diego, CA, 2007, pp. 259–276. [13] Lawden, D. F., Optimal Trajectories for Space Navigation, Butterworths, London, 1963, pp. 54–69. [14] Rauwolf, G. A., and Coverstone–Carroll, V. L., “Near-Optimal Low- Thrust Orbit Transfers Generated by a Genetic Algorithm,” Journal of Spacecraft and Rockets, Vol. 33, No. 6, 1996, pp. 859–862. doi:10.2514/3.26850 [15] Coverstone–Carrol, V., “Near-Optimal Low-Thrust Trajectories via Micro-Genetic Algorithms,” Journal of Guidance, Control, and Dynamics, Vol. 20, No. 1, 1997, pp. 196–198. doi:10.2514/2.4020 [16] Vasile, M., Minisci, E., and Locatelli, M., “Analysis of Some Global Optimization Algorithms for Space Trajectory Design,” Journal of Spacecraft and Rockets, Vol. 47, No. 2, 2010, pp. 334–344. doi:10.2514/1.45742 [17] Bryson, A. E., and Ho, Y. C., Applied Optimal Control, Hemisphere, New York, 1975, pp. 47–89. [18] 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. doi:10.2514/3.20223 [19] Herman, A. L., and Conway, B. A., “Direct Optimization Using Collocation Based on High-Order Gauss-Lobatto Quadrature Rules,” Journal of Guidance, Control, and Dynamics, Vol. 19, No. 3, 1996, pp. 592–599. doi:10.2514/3.21662 [20] Gill, P. E., Murray, W., and Saunders, M. A., User’s Guide SNOPT Version 7: Software for Large-Scale Nonlinear Programming, Stanford Univ., Stanford, CA, 2007. [21] Conway, B. A., Chilan, C. M., and Wall, B. J., “Evolutionary Principles Applied to Mission Planning Problems,” Celestial Mechanics and Dynamical Astronomy, Vol. 97, No. 2, 2007, pp. 73–86. doi:10.1007/s10569-006-9052-7 [22] Prussing, J. E., and Conway, B. A., Orbital Mechanics, 2nd ed., Oxford Univ. Press, New York, NY, 2013, pp. 103–107. [23] Schoenauer, M., and Michalewics, Z., “Evolutionary Computation at the Edge of Feasibility,” Lecture Notes in Computer Science, Vol. 1141, 1996, pp. 245–254. [24] The MathWorks, Global Optimization Toolbox, http://www.mathworks .com/products/global-optimization/, 2012 [accessed 3 Dec. 2012]. [25] Prussing, J. E., “A Class of Optimal Two-Impulse Rendezvous Using Multiple-Revolution Lambert Solutions,” The Journal of the Astronautical Sciences, Vol. 48, Nos. 2–3, 2000, pp. 131–148. [26] Cantu–Paz, E., and Goldberg, D. E., “On the Scalability of Parallel Genetic Algorithms,” Evolutionary Computation, Vol. 7, No. 4, 1999, pp. 429–449. doi:10.1162/evco.1999.7.4.429 [27] Hudson, J. S., and Scheeres, D. J., “Reduction of Low-Thrust Continuous Controls for Trajectory Dynamics,” Journal of Guidance, Control, and Dynamics, Vol. 32, No. 3, 2009, pp. 780–787. doi:10.2514/1.40619 [28] Taheri, E., and Abdelkhalik, O., “Shape-Based Approximation of Constrained Low-Thrust Space Trajectories Using Fourier Series,” Journal of Spacecraft and Rockets, Vol. 49, No. 3, 2012, pp. 535–545. doi:10.2514/1.A32099 [29] Coello Coello, C. A., “Constraint-Handling Using an Evolutionary Multiobjective Optimization Technique,” Civil Engineering and Environmental Systems, Vol. 17, No. 4, 2000, pp. 319–346. 14 AIAA Early Edition / CHILAN AND CONWAY DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766
  • 15. [30] TOMLAB Optimization, TOMLAB/SNOPT, http://tomopt.com/tomlab/ products/snopt/, 2012 [accessed 3 Dec. 2012]. [31] Prussing, J. E., and Chiu, J.-H., “Optimal Multiple-Impulse Time-Fixed Rendezvous Between Circular Orbits,” Journal of Guidance, Control, and Dynamics, Vol. 9, No. 1, 1986, pp. 17–22. doi:10.2514/3.20060 [32] Colasurdo, G., and Pastrone, D., “Indirect Optimization Method for Impulsive Transfers,” AIAA Paper 1994-3762, 1994. [33] Prussing, J. E., “Primer Vector Theory and Applications,” Spacecraft Trajectory Optimization, edited by Conway, B. A., Cambridge Univ. Press, New York, 2010, pp. 16–36. [34] Chilan, C. M., Automated Design of Multiphase Space Missions Using Hybrid Optimal Control, Ph.D. Thesis, Univ. of Illinois at Urbana- Champaign, Urbana, IL, 2009. [35] Danby, J. M. A., Fundamentals of Celestial Mechanics, Willmann–Bell, Richmond, VA, 1988, pp. 427–429. AIAA Early Edition / CHILAN AND CONWAY 15 DownloadedbyUNIVERSITYOFLIVERPOOLonAugust29,2013|http://arc.aiaa.org|DOI:10.2514/1.58766