hp–pseudospectral method for solving continuous …
TRANSCRIPT
HP–PSEUDOSPECTRAL METHOD FOR SOLVING CONTINUOUS-TIME NONLINEAROPTIMAL CONTROL PROBLEMS
By
CHRISTOPHER L. DARBY
A DISSERTATION PRESENTED TO THE GRADUATE SCHOOLOF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OFDOCTOR OF PHILOSOPHY
UNIVERSITY OF FLORIDA
2011
ACKNOWLEDGMENTS
I would like to thank my advisor, Dr. Anil V. Rao for guiding me through the journey
of obtaining a PhD. He has taught me to pursue excellence in all that I do. I thank him for
his guidance. I thank him for never holding me to the standard, but instead, holding me
to a higher standard.
I would also like to thank the members of my committee: Dr. William Hager,
Dr. Warren Dixon, and Dr. Norman Fitz-Coy. Dr. Hager’s experience and wisdom
has given me new perspectives on how to continue to grow as a researcher and my
conversations with Dr. Dixon and Dr. Fitz-Coy have always given me motivation to
continue my work.
I would like to also thank my fellow members of VDOL. I will never forget the times
we have shared while I have been a member of this lab. While each member of our
laboratory has enriched my life, I would specifically like to thank Divya Garg for her
ever willingness to look into and answer or ponder questions I may have regarding our
research. No matter how easy or far fetched my questions may be, she is always willing
to ponder them with me.
Finally, I would like to thank my friends, family and Christie for being there to
support and encourage me not only during my pursuit for a PhD, but, in always being
there for me for all of my pursuits in life. I know that whatever I do and wherever I go,
they will always be my constant.
3
TABLE OF CONTENTS
page
ACKNOWLEDGMENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
CHAPTER
1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 MATHEMATICAL BACKGROUND . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1 Optimal Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.2 Finite-Dimensional Optimization . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1 Unconstrained Minimization of a Function . . . . . . . . . . . . . . 252.2.2 Equality Constrained Minimization of a Function . . . . . . . . . . . 282.2.3 Inequality Constrained Minimization of a Function . . . . . . . . . . 302.2.4 Inequality and Equality Constrained Minimization of a Function . . 312.2.5 Finite-Dimensional Optimization As Applied to Optimal Control . . 32
2.3 Numerical Quadrature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.3.1 Low-Order Numerical Integrators . . . . . . . . . . . . . . . . . . . 342.3.2 Gaussian Quadrature . . . . . . . . . . . . . . . . . . . . . . . . . 352.3.3 Multiple-Interval Gaussian Quadrature . . . . . . . . . . . . . . . . 412.3.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.4 Lagrange Polynomial Approximation . . . . . . . . . . . . . . . . . . . . . 442.4.1 Single-Interval Lagrange Polynomial Approximations . . . . . . . . 442.4.2 Multiple-Interval Lagrange Polynomial Approximations . . . . . . . 482.4.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3 MOTIVATION FOR AN HP–PSEUDOSPECTRAL METHOD . . . . . . . . . . . 52
3.1 Motivating Example 1: Problem with a Smooth Solution . . . . . . . . . . 523.2 Motivating Example 2: Problem with a Nonsmooth Solution . . . . . . . . 533.3 Discussion of Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4 HP–PSEUDOSPECTRAL METHOD . . . . . . . . . . . . . . . . . . . . . . . . 58
4.1 Multiple-Interval Continuous-Time Optimal Control Problem Formulation . 584.2 hp-Legendre-Gauss Transcription . . . . . . . . . . . . . . . . . . . . . . . 61
4.2.1 The hp–LG Pseudospectral Transformed Adjoint System . . . . . . 654.2.2 Sparsity of the hp–LG Pseudospectral Method . . . . . . . . . . . . 70
4.3 hp–Legendre-Gauss-Radau Transcription . . . . . . . . . . . . . . . . . . 734.3.1 The hp-LGR Pseudospectral Transformed Adjoint System . . . . . 78
4
4.3.2 Sparsity of the hp–LGR Pseudospectral Method . . . . . . . . . . . 824.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.4.1 Example 1 - Problem with a Smooth Solution . . . . . . . . . . . . 874.4.2 Example 2 - Bryson-Denham Problem . . . . . . . . . . . . . . . . 90
4.4.2.1 Case 1: Location of Discontinuity Unknown . . . . . . . . 934.4.2.2 Case 2: Location of Discontinuity Known . . . . . . . . . 93
4.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5 HP–MESH REFINEMENT ALGORITHMS . . . . . . . . . . . . . . . . . . . . . 100
5.1 Approximation of Errors in a Mesh Interval . . . . . . . . . . . . . . . . . . 1015.2 hp–Mesh Refinement Algorithm 1 . . . . . . . . . . . . . . . . . . . . . . . 103
5.2.1 Increasing Degree of Approximation or Subdividing . . . . . . . . . 1035.2.2 Location of Intervals or Increase of Collocation Points . . . . . . . 1055.2.3 Stopping Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065.2.4 hp–Mesh Refinement Algorithm 1 . . . . . . . . . . . . . . . . . . . 106
5.3 hp–Mesh Refinement Algorithm 2 . . . . . . . . . . . . . . . . . . . . . . . 1075.3.1 Increasing Degree of Approximation or Subdividing . . . . . . . . . 1075.3.2 Increase in Polynomial Degree in Interval k . . . . . . . . . . . . . 1085.3.3 Determination of Number and Placement of New Mesh Points . . . 108
5.4 hp–Mesh Refinement Algorithm 2 . . . . . . . . . . . . . . . . . . . . . . . 109
6 EXAMPLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.1 Example 1 - Motivating Example 1 . . . . . . . . . . . . . . . . . . . . . . 1136.2 Example 2 - Reusable Launch Vehicle Re-entry Trajectory . . . . . . . . . 1166.3 Example 3: Hyper-Sensitive Problem . . . . . . . . . . . . . . . . . . . . . 120
6.3.1 Solutions for tf = 50 . . . . . . . . . . . . . . . . . . . . . . . . . . 1206.3.2 Solutions for tf = 1000 . . . . . . . . . . . . . . . . . . . . . . . . . 1216.3.3 Solutions for tf = 5000 . . . . . . . . . . . . . . . . . . . . . . . . . 1236.3.4 Summary of Example 6.3 . . . . . . . . . . . . . . . . . . . . . . . 124
6.4 Example 4: Motivating Example 2 . . . . . . . . . . . . . . . . . . . . . . 1286.5 Example 5: Minimum Time-to-Climb of a Supersonic Aircraft . . . . . . . 1306.6 Discussion of Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
7 AEROASSISTED ORBITAL INCLINATION CHANGE MANEUVER . . . . . . . 138
7.1 Equations of Motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1397.1.1 Constraints On the Motion of the Vehicle . . . . . . . . . . . . . . . 140
7.1.1.1 Initial and final conditions . . . . . . . . . . . . . . . . . . 1417.1.1.2 Interior point constraints . . . . . . . . . . . . . . . . . . . 1417.1.1.3 Vehicle path constraints . . . . . . . . . . . . . . . . . . . 142
7.1.2 Trajectory Event Sequence . . . . . . . . . . . . . . . . . . . . . . 1427.1.3 Performance Index . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.2 Re-Formulation of Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 1457.3 Optimal Control Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1467.4 All-Propulsive Inclination Change Maneuvers . . . . . . . . . . . . . . . . 147
5
7.5 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1477.5.1 Unconstrained Heating Rate . . . . . . . . . . . . . . . . . . . . . . 1497.5.2 Constrained Heating Rate . . . . . . . . . . . . . . . . . . . . . . . 1537.5.3 Optimal Trajectory Structure . . . . . . . . . . . . . . . . . . . . . . 153
7.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8 CONCLUSIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
8.1 Dissertation Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1628.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
8.2.1 Continued Work on Mesh Refinement . . . . . . . . . . . . . . . . 1648.2.2 Discontinuous Costate . . . . . . . . . . . . . . . . . . . . . . . . . 165
REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
BIOGRAPHICAL SKETCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
6
LIST OF TABLES
Table page
3-1 Matrix Density and CPU Time for p– and h–LGR Methods for Example 2. . . . 57
6-1 Initial Grid used in Example 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6-2 Summary of Accuracy and Speed for Example 6.1 . . . . . . . . . . . . . . . . 115
6-3 Initial Grid used in Example 6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6-4 Summary of Accuracy and Speed for Example 6.2 . . . . . . . . . . . . . . . . 119
6-5 Initial Grid used in Example 6.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6-6 Summary of Accuracy and Speed for Example 6.3.1 . . . . . . . . . . . . . . . 121
6-7 Initial Grid used in Example 6.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6-8 Summary of Accuracy and Speed for Example 6.3.2 . . . . . . . . . . . . . . . 124
6-9 Initial Grid used in Example 6.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6-10 Summary of Accuracy and Speed for Example 6.3.3 . . . . . . . . . . . . . . . 127
6-11 Initial Grid used in Example 6.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
6-12 Summary of Accuracy and Speed for Example 6.4 . . . . . . . . . . . . . . . . 130
6-13 Initial Grid used in Example 6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6-14 Summary of Accuracy and Speed for Example 6.5 . . . . . . . . . . . . . . . . 134
7-1 Physical and Aerodynamic Constants. . . . . . . . . . . . . . . . . . . . . . . . 140
7
LIST OF FIGURES
Figure page
2-1 An Extremal Curve x∗(t) and a Comparison Curve x(t). . . . . . . . . . . . . . 23
2-2 eτ vs. τ and a Three Interval Trapezoid Rule Approximation. . . . . . . . . . . . 34
2-3 Error vs. Number of Intervals for Trapezoid Rule Approximation of Eq. (2-66). . 35
2-4 Legendre-Gauss Points Distribution. . . . . . . . . . . . . . . . . . . . . . . . . 39
2-5 Legendre-Gauss-Radau Points Distribution. . . . . . . . . . . . . . . . . . . . . 40
2-6 Error vs. Number of LG Points for Approximation of Eq. (2-66). . . . . . . . . . 41
2-7 Error vs. Number of LG or LGR Points for Approximation of Eq. (2-66) . . . . . 43
2-8 Approximation of f (τ) = 1/(1 + 25τ 2) Using Uniformly Spaced Support Points. 46
2-9 Approximation of f (τ) = 1/(1 + 25τ 2) Using LG Support Points. . . . . . . . . 47
2-10 Error vs. Number of Linear Approximating Intervals of Eq. (2-86) . . . . . . . . 49
2-11 Error vs. Number of Support Points for Approximating Eq. (2-86) . . . . . . . . 50
2-12 Error vs. Number of LG or LGR Intervals for Approximation of Eq. (2-86) . . . . 51
3-1 Error for p and h–LGR Approximation to Eqs. (3-1)–(3-3). . . . . . . . . . . . . 54
3-2 Error vs. Collocation Pts for p– and h–LGR Approximation to Eqs. (3-5)–(3-8) . 56
4-1 Collocation and Discretization Points by LG Methods. . . . . . . . . . . . . . . 65
4-2 Qualitative Representation of constraint Jacobian for LG points with Large Nk . 74
4-3 Qualitative Representation of constraint Jacobian for LG points with Small Nk . . 75
4-4 Collocation and Discretization Points by LGR Methods. . . . . . . . . . . . . . 79
4-5 Qualitative Representation of constraint Jacobian for LGR points with Large Nk . 85
4-6 Qualitative Representation of constraint Jacobian for LGR points with Small Nk . 86
4-7 Solution to Example 4.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4-8 Convergence Rates for LG Methods for Example 4.4.1. . . . . . . . . . . . . . 90
4-9 Convergence Rates for LGR Methods for Example 4.4.1. . . . . . . . . . . . . 91
4-10 Case 1: Convergence for LG methods for Example 4.4.2. . . . . . . . . . . . . 94
4-11 Case 1: Convergence for LGR methods for Example 4.4.2. . . . . . . . . . . . 95
8
4-12 Case 1: Solution by a Uniform h–2-Method. . . . . . . . . . . . . . . . . . . . . 96
4-13 Case 2: Convergence for p and h–3–LG and LGR Methods for Example 4.4.2 . 98
5-1 Location of Intervals if Subdivision is Chosen. . . . . . . . . . . . . . . . . . . . 105
5-2 Location of Intervals based on Curvature. . . . . . . . . . . . . . . . . . . . . . 110
6-1 State vs. Time on the Final Mesh for Example 6.2 . . . . . . . . . . . . . . . . 118
6-2 State and Control vs. Time on the Final Mesh for Example 6.3.1 . . . . . . . . 122
6-3 State and Control vs. Time on the Final Mesh for Example 6.3.3. . . . . . . . . 125
6-4 State vs. Time on the Final Mesh for Example 6.3.3. . . . . . . . . . . . . . . . 126
6-5 Control vs. Time on the Final Mesh for Example 6.4. . . . . . . . . . . . . . . . 131
6-6 State vs. Time on the Final Mesh for Example 6.5 for hp(2)–3 and ǫ = 10−4 . . . 133
7-1 Schematic of Trajectory Design for Aeroassisted Orbital Transfer Problem. . . . 144
7-2 Schematic of All-Propulsive Single Impulse and Bi-Parabolic Transfers. . . . . . 148
7-3 ∆Vmin, vs. if , and m(tf )/m0 vs. n. . . . . . . . . . . . . . . . . . . . . . . . . . 150
7-4 ∆V1, ∆V2, ∆V3, and ∆VD Impulses vs. n. . . . . . . . . . . . . . . . . . . . . . . 151
7-5 Change in i by Atmosphere, ∆iaero, and transfer time, T , vs. n for Q =∞. . . . 152
7-6 ∆Vmin, vs. n for Various Max Heating Rates and Final Inclinations. . . . . . . . 154
7-7 m(tf )/m0, vs. n for Various Qmax, and if = (20, 40, 60, 80) deg. . . . . . . . . . 155
7-8 Smax, vs. n, for Various Qmax and if = (20, 40, 60, 80) deg. . . . . . . . . . . . . 156
7-9 h vs. v , Q vs. t, and h vs. γ for if = 40-deg. . . . . . . . . . . . . . . . . . . . . 157
7-10 α and σ vs. t for n = 1 and if = 40 deg. . . . . . . . . . . . . . . . . . . . . . . 158
7-11 h vs. v for n = (1, 2, 3, 4) and if = 40 deg and Qmax = 400 (W/cm2). . . . . . . . 159
7-12 Q, vs. t for n = (1, 2, 3, 4), if = 40 deg and Qmax = 400 (W/cm2). . . . . . . . . 160
9
Abstract of Dissertation Presented to the Graduate Schoolof the University of Florida in Partial Fulfillment of theRequirements for the Degree of Doctor of Philosophy
HP–PSEUDOSPECTRAL METHOD FOR SOLVING CONTINUOUS-TIME NONLINEAROPTIMAL CONTROL PROBLEMS
By
Christopher L. Darby
May 2011
Chair: Anil V. RaoMajor: Mechanical Engineering
In this dissertation, a direct hp–pseudospectral method for approximating the
solution to nonlinear optimal control problems is proposed. The hp–pseudospectral
method utilizes a variable number of approximating intervals and variable-degree
polynomial approximations of the state within each interval. Using the hp–discretization,
the continuous-time optimal control problem is transcribed to a finite-dimensional
nonlinear programming problem (NLP). The differential-algebraic constraints of the
optimal control problem are enforced at a finite set of collocation points, where the
collocation points are either the Legendre-Gauss or Legendre-Gauss-Radau quadrature
points. These sets of points are chosen because they correspond to high-accuracy
Gaussian quadrature rules for approximating the integral of a function. Moreover,
Runge phenomenon for high-degree Lagrange polynomial approximations to the state is
avoided by using these points. The key features of the hp–method include computational
sparsity associated with low-order polynomial approximations and rapid convergence
rates associated with higher-degree polynomials approximations. Consequently, the
hp–method is both highly accurate and computationally efficient. Two hp–adaptive
algorithms are developed that demonstrate the utility of the hp–approach. The
algorithms are shown to accurately approximate the solution to general continuous-time
optimal control problems in a computationally efficient manner without a priori knowledge
of the solution structure. The hp–algorithms are compared empirically against local (h)
10
and global (p) collocation methods over a wide range of problems and are found to be
more efficient and more accurate.
The hp–pseudospectral approach developed in this research not only provides a
high-accuracy approximation to the state and control of an optimal control problem,
but also provides high-accuracy approximations to the costate of the optimal control
problem. The costate is approximated by mapping the Karush-Kuhn-Tucker (KKT)
multipliers of the NLP to the Lagrange multipliers of the continuous-time first-order
necessary conditions. It is found that if the costate is continuous, the hp–pseudospectral
method is a discrete representation of the continuous-time first-order necessary
conditions of the optimal control problem. If the costate is discontinuous, however,
and a mesh point is at the location of a discontinuity, the hp–method is an inexact
discrete representation of the continuous-time first-order necessary conditions.
The computational efficiency and accuracy of the proposed hp–method is
demonstrated on several examples ranging from problems whose solutions are smooth
to problems whose solutions are not smooth. Furthermore, a particular application
of a multiple-pass aeroassisted orbital maneuver is studied. In this application, the
minimum-fuel transfer of a small maneuverable spacecraft between two low-Earth
orbits (LEO) with an inclination change is analyzed. In the aeroassisted maneuvers,
the vehicle deorbits into the atmosphere and uses lift and drag to change its inclination.
It is found that the aeroassisted maneuvers are more fuel efficient than all-propulsive
maneuvers over a wide range of inclination changes. The examples studied in this
dissertation demonstrate the effectiveness of the hp–method.
11
CHAPTER 1INTRODUCTION
The objective of an optimal control problem is to determine the state and control
that optimize a performance index subject to dynamic constraints, boundary conditions,
and path constraints. The performance index generally represents a desired metric or
combination of metrics (e.g., fuel consumption, time, energy). Solving optimal control
problems fundamentally has its roots in the calculus of variations. Variational calculus
is used to formulate a set of necessary conditions that define extremal solutions to
an optimal control problem [1–3]. Using the calculus of variations, analytic solutions
can be found to a narrow range of simple optimal control problems. Unfortunately, in
practice, analytic solutions to general optimal control problems are difficult or impossible
to determine. Instead, such problems must be solved numerically.
Numerical methods for optimal control fall into two categories: indirect and direct
methods [4, 5]. In an indirect method, the necessary conditions from the calculus
of variations are derived and these necessary conditions result in a Hamiltonian
boundary-value problem (HBVP). Examples of indirect methods include shooting,
multiple shooting [6, 7], finite difference [8], and collocation [9, 10]. Indirect methods
are highly accurate and optimality of the continuous-time system is readily verifiable
because these methods compute extremal solutions. It is noted, however, that indirect
methods are impractical. The first disadvantage is that the necessary conditions from
the calculus of variations must be formulated which is difficult for problems of even
simple to moderate complexity. Next, the first-order optimality conditions are most often
extremely difficult to solve. Furthermore, an indirect method can only be used if good
initial guesses to the state and costate (a quantity inherent in the necessary conditions)
are provided. In particular, guesses on the costate are very difficult to generate because
the costate has no physical interpretation. Finally, for problems whose solutions have
12
active path constraints, a priori knowledge of the switching structure of the solution must
be known.
In a direct method, the optimal control problem is transcribed into a finite-dimensional
nonlinear programming problem (NLP). Many well-known and robust algorithms exist
to solve NLPs [11–13]. In a direct method, the necessary conditions from the calculus
of variations are not formulated. Moreover, direct methods do not require guesses on
the costate. In general, direct methods are not as accurate as indirect methods and
in general the first-order necessary conditions from the calculus of variations are not
satisfied.
Direct shooting [14–16] is a method which has been extensively used for launch
vehicle and orbit transfer applications [4]. A well-known computer implementation
of direct shooting is POST [17]. Successful direct shooting methods approximate
the optimal control problem using a few number of NLP variables. The success of
direct shooting methods in optimizing trajectories for launch vehicle and orbit transfer
applications is largely due to the fact that many of these problems are simple enough
that their solutions can be accurately approximated using a small number of optimization
parameters. As the number of variables used in a direct shooting method grows, the
ability to successfully use a direct shooting method rapidly declines. Furthermore,
when using a direct shooting method, the switching structure of inactive and active path
constraints must be known a priori.
Another class of a direct methods are direct collocation methods [5, 14, 18–23].
In a direct collocation method, the state is approximated using a set of trial (basis)
functions and a set of differential-algebraic constraints are enforced at a finite number
of collocation points. In contrast to indirect methods and direct shooting, a direct
collocation method does not require an a priori knowledge of the active and inactive arcs
for problems with inequality path constraints. Furthermore, direct collocation methods
are much less sensitive to initial guess than the aforementioned indirect methods
13
and direct shooting method. Some examples of computer implementations of direct
collocation methods are SOCS [24], OTIS [18], DIRCOL [25], and GPOPS [26].
In the past two decades, direct collocation methods have become more widely used
in approximating the solutions of general nonlinear optimal control problems. Typically,
direct collocation methods for optimal control are developed as h (local) methods. In an
h–method, fixed low-degree approximations are used and the problem is divided into
many subintervals. Most often, the class of Runge-Kutta methods [4, 19, 21, 27–30] are
used for h–discretization and convergence of the numerical discretization is achieved by
increasing the number of subintervals [19, 30, 31]. h–methods are utilized extensively
in approximating the solution to optimal control problems because the resulting NLP
is sparse. For a specified problem size, sparsity in the NLP greatly increases the
computational efficiency. A drawback to h–methods, however, is that convergence is at
a polynomial rate, and therefore, an excessively large number of subintervals may be
required to accurately approximate the solution. For example, in the design of an optimal
low-thrust trajectory to the moon, Ref. [32] required an approximating NLP of 211031
variables and 146285 constraints.
In contrast to h–methods, the class of direct collocation p–methods uses a
small fixed number of approximating intervals (often only a single interval is used).
Convergence to the exact solution by a p–method is achieved by increasing the
degree of the polynomial approximation in each interval. In optimal control, single
interval p–methods have been developed synonymously as pseudospectral methods
[22, 26, 33–52]. In a pseudospectral method, the collocation points are defined as
the points from highly accurate Gaussian quadratures rules. Furthermore, the basis
functions are typically Chebyshev or Lagrange polynomials. For problems whose
solutions are smooth and well-behaved, a pseudospectral method converges at an
exponential rate [53–55].
14
The most well developed pseudospectral methods are the Gauss pseudospec-
tral method (GPM) [22, 35], the Radau pseudospectral method (RPM) [38–40],
and the Lobatto pseudospectral method (LPM) [33]. In these methods, the set of
collocation points are the Legendre-Gauss (LG), Legendre-Gauss-Radau (LGR), and
the Legendre-Gauss-Lobatto (LGL) points. Furthermore, these three sets of points
are defined on the interval τ ∈ [−1, 1] and differ primarily in how the end points are
incorporated. The LG points do not include either endpoint, the LGR points include only
one end point, and the LGL points include both endpoints. Because optimal control
problems generally have boundary conditions at both the initial and terminal times,
the LGL points are the most obvious of the three sets of Gaussian quadrature points
to use. Although LGL points are the most obvious choice, recent research shows
that they may not be the most appropriate. Ref. [42] shows that the costate estimate
using LGL points tends to be noisy. In particular, it was explained in Ref. [40] that
the LGL discrete costate approximation is rank-deficient and the noisy LGL costate
approximation is due to the oscillations about the exact solution, and these oscillations
have the same behavior as the null space of the LGL approximation. Furthermore, it
was shown in Ref. [40] that not only is the LGL approximation to the costate inaccurate,
but the approximation to the control may also be inaccurate. Finally, it is noted that
when using the LG or LGR methods [22, 40], the resulting discrete approximations are
high-accuracy approximations to the solution of the optimal control problem.
While p–methods converge at an exponential rate for problems whose solutions are
smooth and well-behaved, p–methods have several limitations. First, if the solution of
a problem is not smooth, exponential convergence does not hold and the convergence
rates to the exact solution are significantly lower. Furthermore, if the solution to a
problem is smooth but has very high-order behaviors, an accurate solution is obtained
only using an unreasonably high-degree polynomial approximation. Next, the NLP
arising from a p–method is dense. Because the density of the p–method NLP is
15
high, as the degree of polynomial approximation becomes large, the NLP becomes
computationally intractable.
A third class of direct collocation methods that has not received a significant amount
of attention in approximating the solutions to optimal control problems is the class of
hp–methods. An hp–method is one in which the number of intervals, placement of
intervals, and degree of polynomial approximation in each interval is allowed to vary.
Previously, hp–methods have been used in mechanics and fluid dynamics. In particular,
Refs. [56–60] describe the mathematical properties of h, p, and hp–methods for finite
elements. It should be noted that in the period from 1975 to 1995, more than 37,000
papers related to h–methods in finite elements have been published [57]. In that same
time period, less than 100 published papers related to either p or hp–methods in finite
elements exist [57]. Therefore, historically, the vast majority of research has been in
h–methods. Some commercially available h–finite element software programs are
MSC/NASTRAN, Cosmos/M, Abaqus, Aska, Adina, and Ansys [57]. With respect to p–
and hp–methods in finite elements, some available software programs are MSC/PROBE,
Applied Structure, PHLEX and STRIPE [57].
In order to combine the benefits of h and p–methods for approximating the solution
to general optimal control problems, that is, combine the sparsity of an h–method with
the exponential convergence rate of a p–method, in this research, an hp–approach
is developed using LG and LGR points. Furthermore, because this research utilizes
collocation at points defined by Gaussian quadrature, we call these hp–pseudospectral
methods. In addition to developing hp–pseudospectral methods that provide high
accuracy approximations to the state and control, we develop high accuracy costate
estimation methods using the hp–LG and LGR methods. By providing an approximation
to the costate and not just the state and control, verification of optimality of the
original continuous-time problem may be determined from the direct hp–method. The
mapping of the Karush-Kuhn-Tucker (KKT) multipliers of the NLP to the costate of the
16
continuous-time optimal control problem are shown by first deriving the KKT conditions
of the NLP, then deriving the transformed adjoint system, and then comparing the
transformed adjoint system to the first-order necessary conditions of the continuous-time
optimal control problem. Because of the continuity constraint on the state at the mesh
points, the mapping from the KKT multipliers to the costate have two forms. If the
costate is continuous, the hp–transformed adjoint system is a discrete representation
of the continuous-time first-order necessary conditions of the optimal control problem.
If, however, the costate is discontinuous, the transformed adjoint system is no longer
a discrete representation of the continuous-time first-order necessary conditions. It
is found, however, that high levels of accuracy are still obtained in approximating the
solution to the continuous-time optimal control problem if mesh points are placed at the
location of the costate discontinuities.
To demonstrate the utility of an hp–method, two hp–mesh refinement algorithms
are presented. Previous refinement algorithms have been developed for h–methods
[30, 61] while an example of a p–mesh refinement algorithm is given in Ref. [47].
Refinement algorithms for h–methods are designed to increase the number of low-order
approximating intervals where errors are largest in approximating the solution to
the continuous-time optimal control problem. By only increasing the number of
approximating intervals where errors are large, these refinement methods increase
the computational efficiency over naive h–method approximations (i.e., a uniformly
distributed grid of approximating subintervals). Next, in the p–refinement algorithm of
Ref. [47], the algorithm increased the accuracy of the approximation, but did not address
computational efficiency. Large, dense single-interval p–approximations are used on
every iteration of the algorithm except for the final one. Only on the final iteration of
the algorithm is the approximating mesh divided. By using large, dense single-interval
p–approximations, the NLP is solved in a computationally inefficient manner.
17
In the hp–algorithms of this research, the number of intervals, width of intervals, and
polynomial degree in each interval are allowed to vary on every iteration. A two-tiered
strategy is employed to determine the locations of intervals and degree of polynomial
within each interval to achieve a specified solution accuracy. If the solution being
approximated by an interval is smooth, then the degree of approximating polynomial is
increased. Otherwise, if the solution being approximated by an interval is non-smooth,
the interval is subdivided into more low-order subintervals. The two hp–algorithms are
different because the first algorithm is more p–biased, that is, increasing the degree
of an approximating polynomial is chosen more often, and the second algorithm is
more h–biased, that is, subdivision of approximating subintervals into more low-degree
subintervals is more often chosen. Furthermore, the hp–algorithms of this research are
significantly different from the aforementioned h and p–algorithms. The hp–algorithms
of this research are different from h–algorithms because the degree of polynomial
is allowed to vary in each approximating interval. Finally, the hp–algorithms of this
research are different from the p–algorithm of Ref. [47] because the number of intervals
and location of intervals are allowed to vary on each iteration.
The contributions of this dissertation are as follows. First, hp–direct collocation
methods are described using Legendre-Gauss and Legendre-Gauss-Radau points.
If the costate is continuous, the transformed adjoint systems of the hp–LG and LGR
methods are demonstrated to be discrete representations of the continuous-time
first-order optimality conditions of an optimal control problem. As a result, high-accuracy
approximations for the state, control and costate of the solution to an optimal control
problem are obtained. Next, the hp–methods of this research combine the computational
sparsity of h–methods and the exponential convergence rates of p–methods on intervals
whose solution is sufficiently smooth. Therefore, the hp–methods result in highly efficient
and highly accurate approximations.
18
Two hp–adaptive algorithms are presented. No a priori knowledge of the solution
structure of an optimal control problem is required in order for these algorithms to
efficiently obtain highly accurate solutions. The algorithms iteratively refine the
approximating mesh using a two-tiered strategy to either increase the degree of
polynomial approximation in an interval or to subdivide the interval into more low-degree
approximating subintervals. The first algorithm presented is a p–biased algorithm,
while the second algorithm presented is an h–biased algorithm. The two algorithms
are used to solve several examples and the utility of each algorithm is demonstrated.
Furthermore, the hp–algorithms of this research are compared against each other and
with p and h–methods. It is demonstrated that the flexibility of an hp–approach adds
considerable robustness to efficiently approximating optimal control problems to a
high level of accuracy regardless of the structure of the solution of an optimal control
problem.
This dissertation is divided into the following chapters. Chapter 2 defines the
mathematical background necessary to understand the hp–methods presented. A
nonlinear optimal control problem is stated and the continuous-time first-order necessary
conditions for this problem are derived. Next, finite-dimensional optimization of a
function subject to equality and inequality constraints is examined and the KKT system
is derived. Finally, numerical integration and polynomial interpolation are examined.
Chapter 3 provides motivation for an hp–method. It is demonstrated that the method that
best approximates a general nonlinear optimal control problem is problem dependent.
Therefore, strict h or p–methods may be computationally expensive for a specific
problem type. Chapter 4 defines the hp–LG and hp–LGR discrete approximation to
the continuous-time optimal control problem. For the hp–LG and hp–LGR methods,
the KKT conditions are derived and are related to the first-order necessary conditions
of the optimal control problem. Finally, the sparsity pattern of the NLP defined by the
hp–methods of this research are examined. It is shown that the sparsity of the hp–LG
19
and LGR methods is dependent upon the degree of approximating polynomial in each
interval. Chapter 5 describes the two hp–adaptive algorithms of this dissertation. First, a
description is given on how errors are assessed in any approximating interval. Second,
the two hp–algorithms are described in detail. The first algorithm refines the mesh by
examining the relative distribution of error within each approximating interval and the
second algorithm refines the mesh by analyzing the curvature of the state. Chapter 6
presents several examples that are solved by the two hp–algorithms of this dissertation
as well as h and p–methods. It is demonstrated that the hp–algorithms are robust to
problem type and result in computationally efficient, high accuracy solutions to a wide
range of problems. In Chapter 7, a particular application of a multiple-pass aeroassisted
orbital maneuver is studied. The optimal minimum-fuel transfer of a small maneuverable
spacecraft between two low-Earth orbits with an inclination change is analyzed. Optimal
aeroglide maneuvers are compared with all-propulsive maneuvers over a wide range
of inclination change. Furthermore, a variable heating rate constraint is enforced for
the aeroglide maneuvers. It is demonstrated that an optimal aeroglide maneuver is
more fuel efficient than an all-propulsive maneuver. Finally, Chapter 8 summarizes the
contributions of this dissertation and suggests future research directions.
20
CHAPTER 2MATHEMATICAL BACKGROUND
This chapter describes the mathematical background necessary to understand the
hp–method presented in this research. The advancements of this research are founded
on optimal control theory and generating highly accurate, computationally efficient NLP
approximations to a continuous-time optimal control problem. Numerical approximation,
function approximation, and quadrature approximation theory are also foundations of
this research and are discussed in detail.
2.1 Optimal Control
The objective of an optimal control problem is to determine the state and control
that optimize a performance index subject to dynamic constraints, boundary conditions,
and path constraints. The optimal control problem studied in this research is given in
Bolza form as follows. Minimize the cost functional
J = Φ(x(t0), t0, x(tf ), tf ) +
∫ tf
t0
g(x(t),u(t))dt, (2–1)
subject to the dynamic constraints
x(t) ≡ dxdt= f(x(t),u(t)), (2–2)
the inequality path constraints
C(x(t),u(t)) ≤ 0, (2–3)
and the boundary conditions
φ(x(t0), t0, x(tf ), tf ) = 0, (2–4)
where x(t) ∈ Rn is the state, u(t) ∈ R
m is control, f : Rn×Rm −→ R
n, C : Rn×Rm −→ R
s ,
φ : Rn × R × Rn × R −→ R
q and t is time. Furthermore, Φ : Rn × R × Rn × R −→ R
is the Mayer cost and g : Rn × Rm −→ R is the Lagrangian. To determine an extremal
solution, the calculus of variations is used. The calculus of variations is used to generate
21
a set of first-order necessary conditions that must be satisfied for a candidate optimal
solution (also known as an extremal solution). An extremal solution may be a minimum,
maximum, or saddle. Second-order sufficiency conditions must be checked to verify that
an extremal solution is a minimum. The continuous-time first-order necessary conditions
for the optimal control problem defined by Eqs. (2–1)–(2–4) are now derived.
First, the constraints are adjoined to the cost functional to form an augmented cost
functional as
Ja = Φ(x(t0), t0, x(tf ), tf )−ψT
φ(x(t0), t0, x(tf ), tf ) (2–5)
+
∫ tf
t0
[g(x(t),u(t))− λT(t)(x(t)− f(x(t),u(t)))− γT(t)C(x(t),u(t))]dt,
where λ(t) is the costate and γ(t) and ψ are the Lagrange multipliers corresponding
to Eqs. (2–3), and (2–4), respectively. The first-order variation with respect to all free
variables is given as
δJa =∂Φ
∂x(t0)δx0 +
∂Φ
∂t0δt0 +
∂Φ
∂x(tf )δxf +
∂Φ
∂tfδtf (2–6)
−δψTφ−ψT ∂φ
∂x(t0)δx0 −ψ
T ∂φ
∂t0δt0 −ψ
T ∂φ
∂x(tf )δxf −ψ
T ∂φ
∂tfδtf
+((g − λT(x− f)− γTC)|t=tf )δtf − ((g − λT
(x− f)− γTC)|t=t0)δt0
+
∫ tf
t0
[
∂g
∂xδx+
∂g
∂uδu− δλ
T
(x− f) + λT ∂f∂xδx+ λ
T ∂f
∂uδu
−λTδx− δγT
C− γT ∂C∂x
δx− γT ∂C∂u
δu
]
dt.
Next, integrating by parts the term containing δx such that it can be expressed in terms
of δx(t0), δx(tf ), and δx gives
∫ tf
t0
−λTδxdt = −λT(tf )δx(tf ) + λT
(t0)δx(t0) +
∫ tf
t0
λT
δxdt. (2–7)
22
Two relationships relating δxf to δx(tf ) and δx0 to δx(t0) are given as
δx0 = δx(t0) + x(t0)δt0 (2–8)
δxf = δx(tf ) + x(tf )δtf . (2–9)
The relationships given in Eq. (2–8) and (2–9) are interpreted by examining Fig. 2-1.
In Fig. 2-1, x∗(t) represents an extremal curve and x(t) represents a neighboring
comparison curve where t0 and x0 are fixed. δx(tf ) is the difference between x∗(t) and
x(t) evaluated at tf . δxf is the difference between x∗(t) and x(t) evaluated at the end of
each curve, respectively. As can be seen in Fig. 2-1, Eq. (2–9) represents a first-order
approximation to δxf . The same result holds for free initial conditions on t0 and x0, giving
the relationship of Eq. (2–8). Substituting Eqs. (2–7), (2–8) and (2–9) into Eq. (2–6) and
Figure 2-1. An Extremal Curve x∗(t) and a Comparison Curve x(t).
23
grouping terms, the variation of Ja is given as
δJa =
(
∂Φ
∂x(t0)−ψT ∂φ
∂x(t0)+ λ
T
(t0)
)
δx0 (2–10)
+
(
∂Φ
∂x(tf )−ψT ∂φ
∂x(tf )− λT(tf )
)
δxf
−δψTφ
+
(
∂Φ
∂t0−ψT ∂φ
∂t0− g(t0)− λ
T
(t0)f(t0) + γT
(t0)C(t0)
)
δt0
+
(
∂Φ
∂tf−ψT ∂φ
∂tf+ g(tf ) + λ
T
(tf )f(tf )− γT
(tf )C(tf )
)
δtf
+
∫ tf
t0
[
(∂g
∂x+ λ
T ∂f
∂x− γT ∂C
∂x+ λ)δx+ (
∂g
∂u+ λ
T ∂f
∂u− γT ∂C
∂u)δu
−δλT(x− f)− δγT
C]
dt.
The first-order optimality conditions are formed by setting the variation of Ja equal to
zero with respect to each free variable. In order to write these conditions in a convenient
form, first, the augmented Hamiltonian is defined. Defining the augmented Hamiltonian
as
H(x(t),u(t),λ(t),γ(t)) = g(x(t),u(t))+λT
(t)f(x(t),u(t))−γT(t)C(x(t),u(t)), (2–11)
the first-order optimality conditions are then expressed as
xT
(t) =∂H
∂λ(2–12)
λT
(t) = −∂H∂x
(2–13)
0 =∂H
∂u(2–14)
λT
(t0) = − ∂Φ
∂x(t0)+ψ
T ∂φ
∂x(t0)(2–15)
λT
(tf ) =∂Φ
∂x(tf )−ψT ∂φ
∂x(tf )(2–16)
H(t0) = −ψT ∂φ∂t0+∂Φ
∂t0(2–17)
H(tf ) = ψT ∂φ
∂tf− ∂Φ
∂tf. (2–18)
24
Furthermore, using the complementary slackness condition, γ takes the value
γi(t) = 0,when Ci(x(t),u(t)) < 0, i = 1, ... , s (2–19)
γi(t) < 0,when Ci(x(t),u(t)) = 0, i = 1, ... , s. (2–20)
The negativity of γi when Ci = 0 is interpreted such that improving the cost may only
come from violating the constraint [2]. Furthermore, γi(t) = 0 when Ci < 0 states that
this constraint is inactive, and therefore, ignored. The continuous-time first-order
optimality conditions of Eqs. (2–12)–(2–20) define a set of necessary conditions
that must be satisfied for an extremal solution of an optimal control problem. The
second-order sufficiency conditions can be inspected to determine whether the extremal
solution is a minimizing solution.
2.2 Finite-Dimensional Optimization
In a direct collocation approximation of an optimal control problem, the continuous-time
optimal control problem is transcribed into a nonlinear programming problem (NLP).
While the continuous-time optimal control problem is an infinite-dimensional problem of
finding continuous-time functions that minimize a cost functional subject to differential
and algebraic constraints, an NLP is a finite-dimensional problem of finding a vector of
static parameters that minimize a cost function subject to algebraic constraints. In this
section the topics of unconstrained minimization, equality constrained minimization, and
inequality constrained minimization of a function are discussed. Moreover, an iterative
Newton method is shown for determining a minimum of a function.
2.2.1 Unconstrained Minimization of a Function
Consider the following problem of determining the minimum of a function subject to
multiple variables without any constraints. Minimize the objective function
J(x), (2–21)
25
where xT= (x1, ... , xn). For x∗ to be a locally minimizing point, the objective function
must be greater when evaluated at any neighboring point, i.e.,
J(x) > J(x∗). (2–22)
In order to develop a set of sufficient conditions defining a locally minimizing point x∗,
first, a three term Taylor series expansion about some point, x, is used to approximate
the objective function as
J(x) = J(x) + gT
(x)(x− x) + 12(x− x)TH(x)(x− x) + higher order terms (2–23)
where the gradient vector, g(x), is
g(x) ≡ ∇xJ ≡(
∂J
∂x
)T
=
∂J∂x1
∂J∂x2
...
∂J∂xn
(2–24)
and the symmetric n × n Hessian matrix is
H(x) ≡ ∇xxJ ≡∂2J
∂x2=
∂2J∂x21
∂2J∂x1∂x2
... ∂2J∂x1∂xn
∂2J∂x2∂x1
∂2J∂x22
... ∂2J∂x2∂xn
...
∂2J∂xn∂x1
∂2J∂xn∂x2
... ∂2J∂x2n
. (2–25)
For x∗ to be a local minimizing point, two conditions must be satisfied. First, a necessary
condition is that g(x∗) must be zero, i.e.,
g(x∗) = 0. (2–26)
The necessary condition by itself only defines an extremal point which can be a local
minimum, local maximum, or saddle point. In order to ensure x∗ is a local minimum, then
26
an additional condition that must be satisfied is
(x− x∗)TH(x∗)(x− x∗) > 0. (2–27)
Eqs. (2–26) and (2–27) together define sufficient conditions for a local minimum.
In order to iteratively find a minimum of the objective function, first, consider again
the approximation of Eq. (2–23) using a Taylor series expansion about some point x(i),
such that an approximation at a new point x(i+1) is given as
J(x(i+1)) ≈ J(x(i)) + g(i)T(x(i+1) − x(i)) + 12(x(i+1) − x(i))TH(i)(x(i+1) − x(i)) (2–28)
where g(i) = g(x(i)) and H(i) = H(x(i)). Next, defining the search direction, p(i+1) =
x(i+1) − x(i), the approximation to J(x(i+1)) can then be written as
J(x(i+1)) ≈ J(x(i)) + g(i)Tp(i+1) + 12p(i+1)
T
H(i)p(i+1). (2–29)
In order to find a minimum of J(x), the Taylor series expansion in Eq. (2–29) is
differentiated with respect to x(i+1) and this derivative is set to zero such that
g(i+1) = 0 = g(i) +H(i)p(i+1). (2–30)
Rearranging Eq. (2–30), the Newton search direction is given as
p(i+1) = −H(i)−1g(i). (2–31)
Finally, to ensure that the search is for a minimum and not a stationary point or a
maximum, the descent condition is enforced,
g(i)T
p(i+1) < 0. (2–32)
Eq. (2–31) is then applied iteratively from some initial guess x(i) such that a new point
x(i+1) is found. If,
J(x(i+1)) < J(x(i)), (2–33)
27
for each iteration, i , then Eq. (2–31) is applied iteratively until a minimum is found.
2.2.2 Equality Constrained Minimization of a Function
Consider finding the minimum of the objective function
J(x) (2–34)
subject to a set of m ≤ n constraints
f(x) = 0. (2–35)
Finding the minimum of an objective function subject to equality constraints uses an
approach similar to the calculus of variations approach for determining the extremal of
functionals. Define the Lagrangian as
L(x,λ) = J(x)− λTf(x) (2–36)
where λT
= (λ1, ... ,λm) are the Lagrange multipliers. Then, a necessary condition for
the minimum of the Lagrangian is that the point (x∗,λ∗) satisfies
∇xL(x∗,λ∗) = 0 (2–37)
∇λL(x∗,λ∗) = 0. (2–38)
Furthermore, the gradient of L with respect to x and λ is
∇xL = g(x)− GT(x)λ (2–39)
∇λL = −f(x) (2–40)
28
where the Jacobian matrix, G(x), is defined as
G(x) ≡ ∂f
∂x=
∂f1∂x1
∂f1∂x2
... ∂f1∂xn
∂f2∂x1
∂f2∂x2
... ∂f2∂xn
...
∂fm∂x1
∂fm∂x2
... ∂fm∂xn
. (2–41)
It is noted that at a minimum of the Lagrangian, the equality constraint of Eq. (2–35) is
satisfied. Next, this necessary condition alone does not specify a minimum, maximum or
saddle point. In order to specify a minimum, first, define the Hessian of the Lagrangian
as
HL = ∇xxL = ∇xxJ −m∑
i=1
λi∇xxfi . (2–42)
Then, a sufficient condition for a minimum is that
vTHLv > 0 (2–43)
for any vector v in the constraint tangent space.
In order to iteratively find a minimum of the Lagrangian, a two-term Taylor series
expansion of Eqs. (2–39) and (2–40) about some point (x(i),λ(i)) is equated to zero
giving
0 = g(i) − G(i)Tλ(i) +H(i)L (x(i+1) − x(i))− G(i)T
(λ(i+1) − λ(i)) (2–44)
0 = −f(i) − G(i)(x(i+1) − x(i)) (2–45)
where G(i) = G(x(i)) and H(i)L = HL(x(i)). After simplification, these equations lead to the
following linear system of equations:
H(i)L G(i)
T
G(i) 0
−p(i+1)
λ(i+1)
=
g(i)
f(i)
. (2–46)
29
It is noted that Eq. (2–46) is called the Karush-Kuhn-Tucker (KKT) system [19] which
is implemented in an NLP such as SNOPT [11]. Eq. (2–46) is solved iteratively until a
minimum to the Lagrangian is found. It is noted that Eq. (2–46) only defines an extremal
point. In order to find a locally minimizing point, Eq. (2–43) must also be satisfied. In
determining a minimum to the Lagrangian, a minimum to J(x) subject to the constraints
f(x) = 0 is found.
2.2.3 Inequality Constrained Minimization of a Function
Consider the problem of minimizing the objective function
J(x) (2–47)
subject to the inequality constraints
c(x) ≤ 0. (2–48)
Inequality constrained problems are solved by dividing the inequality constraints into a
set of active constraints, and a set of inactive constraints. At the solution x∗, some of the
constraints are satisfied as equalities, that is
ci(x∗) = 0, i ∈ A (2–49)
where A is called the active set, and some constraints are strictly satisfied, that is
ci(x∗) < 0, i ∈ A′ (2–50)
where A′ is called the inactive set.
By separating the inequality constraints into an active set and an inactive set, the
active set can be dealt with as equality constraints as described in the previous section,
and the inactive set can be ignored. The added complexity of inequality constrained
problems is in determining which set of constraints are active, and which are inactive. If
the active and inactive sets are known, an inequality constrained problem becomes an
30
equality constrained problem stated as minimize the objective function
J(x) (2–51)
subject to the constraints
ci(x) = 0, i ∈ A (2–52)
and the same methodology is applied as in the previous section to determine a
minimum.
2.2.4 Inequality and Equality Constrained Minimization of a Function
Finally, consider the problem of finding the minimum of the objective function
J(x) (2–53)
subject to the equality constraints
f(x) = 0 (2–54)
and the inequality constraints
c(x) ≤ 0. (2–55)
Define the Lagrangian as
L(x,λ,ψ(A)) = J(x)− λTf(x)−ψ(A)Tc(A)(x) (2–56)
where λ are the Lagrange multipliers with respect to the equality constraints and ψ(A)
are the Lagrange multipliers associated with the active set of inequality constraints.
Furthermore, note that ψ(A′) = 0, and therefore, the inactive set of of constraints are
ignored. A necessary condition for the minimum of the Lagrangian is that the point
(x∗,λ∗,ψ(A)∗) satisfies
∇xL(x∗,λ∗,ψ(A)∗) = 0 (2–57)
∇λL(x∗,λ∗,ψ(A)∗) = 0 (2–58)
∇ψ(A)L(x∗,λ∗,ψ(A)∗) = 0. (2–59)
31
Next, applying a two-term Taylor series approximation to the necessary conditions of
Eqs. (2–57)–(2–59) gives
0 = g(i) − G(i)Tf λ(i) − G(i)Tc(A)ψ(i)(A) +H
(i)L (x
(i+1) − x(i)) (2–60)
−G(i)Tf (λ(i+1) − λ(i))− G(i)T
c(A)(ψ(i+1)(A) −ψ(i)(A))
0 = −f(i) − G(i)f (x(i+1) − x(i)) (2–61)
0 = −c(i)(A) − G(i)c(A)(x(i+1) − x(i)) (2–62)
where Gf(x) is the Jacobian with respect to the equality constraints and Gc(A)(x) is the
Jacobian with respect to the active inequality constraints. Furthermore, HL in this case is
defined as
HL = ∇2xxL = ∇2xxJ −m∑
i=1
λi∇2xxfi −q
∑
i=1
ψ(A)i ∇2xxc (A)i (2–63)
where q is the number of active inequality constraints. Therefore, the resulting KKT
system is given as
H(i)L G
(i)T
f G(i)T
c(A)
G(i)f 0 0
G(i)
c(A)0 0
−p(i+1)
λ(i+1)
ψ(i+1)(A)
=
g(i)
f(i)
c(i)(A)
. (2–64)
For the problem of minimizing an objective function subject to equality and inequality
constraints, the KKT system of Eq. (2–64) is solved iteratively such that a minimizing
points (x∗,λ∗,ψ(A)∗) is found. Again it is noted that for (x∗,λ∗,ψ(A)∗) to be a minimizing
point, Eq. (2–43) must be satisfied as well.
2.2.5 Finite-Dimensional Optimization As Applied to Optim al Control
NLPs are used to approximate a continuous-time optimal control problem by a direct
collocation method such that the finite-dimensional optimization techniques of Section
2.2 can be used and the difficult problem of solving the continuous-time first-order
necessary conditions is avoided. The KKT system of Eq. (2–46) or Eq. (2–64) is solved
iteratively until a minimum is found for the objective function. There are two primary
32
considerations in constructing NLPs that approximate continuous-time optimal control
problems. The first and most important consideration is if the discrete approximation will
provide an accurate approximation to the solution of a continuous-time optimal control
problem. The second consideration is that if the discrete approximation is accurately
approximating the solution of a continuous-time optimal control problem, is it also a
computationally efficient problem to solve. If the KKT system of Eq. (2–46) or Eq. (2–64)
grows large, that is, the number of variables and / or number of constraints is large,
iteratively solving Eq. (2–46) or Eq. (2–64) will become excessively computationally
expensive. Furthermore, if the Hessian or Jacobian matrices are very dense, that
is, a large number of their entries are non-zero, then again, the problem will become
excessively computationally expensive. In order to maintain computational tractability
of the NLP, the KKT system should be constructed to be simultaneously as small and
sparse as possible while providing an accurate approximation of the continuous-time
optimal control problem.
2.3 Numerical Quadrature
Two concepts are important in constructing the discretized finite-dimensional
optimization problem of this research from the continuous-time optimal control problem.
These two concepts are numerical quadrature (numerical integration) and polynomial
interpolation. Numerical quadrature can generally be described as sampling an
integrand at a finite number of points and using a weighted sum of these points to
approximate the integral. In this section, first, low-order numerical integrators are briefly
discussed. Next, Gaussian quadrature rules are presented and it is shown that the
quadrature rules associated with the LG points are the most accurate quadrature rules.
Moreover, the quadrature rules associated with the LGR points are the second most
accurate quadrature rules.
33
2.3.1 Low-Order Numerical Integrators
A common technique used to approximate the integral of a function is to use
many low-degree approximating subintervals that are each easily integrated. The
approximation to the integral of a function is then the sum of the integral of each
approximating subinterval. A well-known low-order method is the composite trapezoidal
rule [62]. The composite trapezoid rule divides a function into many uniformly distributed
subintervals and each subinterval is approximated by a straight line approximation that
passes through the function at the ends of the subinterval. Fig. 2-2 shows exp(τ), τ ∈
[−1, 1], and a three interval composite trapezoid rule approximation of the function. For
f (τ) = exp(τ)
f(τ)
Approximation
τ
00
1.5
2
2.5
3
−1 −0.5
0.5
0.5
1
1
Figure 2-2. eτ vs. τ and a Three Interval Trapezoid Rule Approximation.
N approximating intervals, the composite trapezoid rule is given as [62]
∫ tf
t0
f (t)dt ≈ tf − t02N
(f (t0) + 2f (t1) + 2f (t2) + · · ·+ 2f (tN−1) + f (tN)) (2–65)
34
where tT= (t0, ... , tN) are the grid points such that points (ti−1, ti) define the beginning
and end of the i th interval. Consider using the composite trapezoid rule to approximate
∫ 1
−1
exp(τ)dτ . (2–66)
Fig. 2-3 shows the log10 error from the trapezoid rule for approximating Eq. (2–66) as a
function of the log10 number of approximating intervals. As seen in Fig. 2-3, in order to
achieve high levels of accuracy in the approximation, many approximating intervals are
required. For one hundred thousand approximating intervals, the error is O(10−10).
2 2.5 3 4 5
−4
−6
−8
−10
−12
log10
Err
or
log10 Number of Approximating Intervals
n
3.5 4.5
Figure 2-3. Error vs. Number of Intervals for Trapezoid Rule Approximation ofEq. (2-66).
2.3.2 Gaussian Quadrature
In contrast to low-order piecewise approximating methods such as the composite
trapezoid rule, another quadrature method is to use highly accurate Gaussian quadratures.
35
In using an n point Gaussian quadrature, two quantities must be specified for each
point, namely, the location of the point, and, a weighting factor multiplying the value
of the function evaluated at this point. The three sets of points defined by Gaussian
quadrature are the Legendre-Gauss (LG), Legendre-Gauss-Radau (LGR), and the
Legendre-Gauss-Lobatto (LGL) points. For the LG points, the points are free to be
placed anywhere on the domain τ ∈ [−1, 1], for the LGR, one end point is fixed at
τ1 = −1 and for the LGL, both end points are fixed at (τ1, τn) = (−1, 1). The goal of a
Gaussian quadrature is to construct an n point approximation
n∑
i=1
wi fi (2–67)
where wi is the quadrature weight associated with point τi and fi = f (τi), such that
the approximation in Eq. (2–67) is exact for polynomials f (τ) of as large a degree
as possible [62]. Let En(f ) be the error between the integral of f (τ) and an n point
quadrature approximation to the integral of f (τ), that is,
En(f ) =
∫ 1
−1
f (τ)dτ −n
∑
i=1
wi fi . (2–68)
First, it is noted that for
En(a0 + a1τ + · · ·+ amτm) = a0En(1) + a1En(τ) + · · ·+ amEn(τm) (2–69)
that En(f ) = 0 for every polynomial of degree ≤ m if and only if
En(τi) = 0, (i = 0, 1, ... ,m). (2–70)
Next, consider the construction of a quadrature to be exact for a polynomial of as
large a degree as possible while requiring τ1 = −1 (that is, consider the construction
of the LGR points). Two examples are provided to demonstrate how this quadrature is
constructed.
36
Example 1: n = 1: For n = 1, there is one free parameter, w1, and τ1 = −1 is fixed.
Because there is one free parameter, the goal is to have zero error for a zeroth degree
polynomial, i.e.,
En(1) = 0. (2–71)
From Eq. (2–71), there is one equation to determine the unknown weight w1 given as
∫ 1
−1
1dτ − w1 = 0. (2–72)
In order to satisfy this equation, w1 = 2.
Example 2: n = 2: For n = 2, there are three free parameters, w1,w2, and t2 and
again t1 = −1 is fixed. Because there are three free parameters, it is desired to have
zero error for a second degree polynomial, i.e.,
En(1) = 0, (2–73)
En(τ) = 0, (2–74)
En(τ2) = 0. (2–75)
This leads to the set of equations
w1 + w2 = 2, (2–76)
−w1 + w2t2 = 0, (2–77)
w1 + w2t22 =
2
3. (2–78)
In solving Eqs. (2–76) and (2–78) for w1, w2, and t2 it is found that w1 = 0.5,w2 = 1.5,
and τ2 = 1/3. As n is increased, a similar approach is used; 2n − 1 free parameters
are determined such that the quadrature is exact for polynomials of degree 2n − 2. In
constructing sets of points in this fashion, the LGR quadrature points and weights are
constructed. Similarly, for the LG method, because t1 is not fixed, for n points, the LG
quadrature rule has 2n free parameters to determine in order to construct quadrature
37
approximations accurate for functions of degree up to and including 2n − 1. As a
result, for a given number of points, the LG method provides the highest accuracy
quadrature approximation of any quadrature rules, while the LGR method provides the
next highest precision. The LGL quadrature rule, for n points, has 2n− 2 free parameters
and are accurate for polynomials of degree up to and including 2n − 3. It should be
noted once again that the LG and LGR points are studied in this research because the
LGL points have previously been demonstrated to result in inaccurate pseudospectral
approximations to continuous-time optimal control problem [40, 42]. As n becomes
large, determining the LG, LGR, or LGL points and weights becomes increasingly
more difficult by the method exemplified in the aforementioned two examples. The
resulting set of equations are nonlinear and their solutions are not obvious. Fortunately,
it has also been shown that the LG, LGR, and LGL points are also defined by a linear
combination of a Legendre polynomial and / or its derivatives [63]. The n LG points are
defined as the roots of an nth–degree Legendre polynomial
Pn(τ) =1
2nn!
dn
dτ n[
(τ 2 − 1)n]
(2–79)
and the corresponding n weights are given as
wi =2
1− τ 2i[
Pn(τi)]2, (i = 1, ... , n) (2–80)
where Pn is the derivative of the nth–degree Legendre polynomial. Furthermore, the n
LGR points are defined as the roots of the sum of the nth and (n− 1)th–degree Legendre
polynomials, i.e., Pn(τ) + Pn−1(τ), and the corresponding quadrature weights for the
LGR points are
w1 =2
n2, (2–81)
wi =1
(1− τi)[
Pn−1(τi)]2, (i = 2, ... , n). (2–82)
38
Figs. 2-4 and 2-5 show the LG and LGR points for various values of n. First, it is
noted that for the LG points the end points, τ = (−1,+1), are not included and for
the LGR points the initial point, τ = −1, is included. Furthermore, both sets of points
demonstrate a similar profile of having more points near the ends of the interval. Finally,
it is noted that the LG points are symmetric about the origin and the LGR points are
asymmetric.
00−1 −0.5 0.5 1
5
10
τ
Num
ber
ofLG
Poi
nts
15
20
25
30
Figure 2-4. Legendre-Gauss Points Distribution.
The accuracy of the LG and LGR points are now demonstrated on approximating
the integral given in Eq. (2–66). Fig. 2-6 shows the log10 error for the approximation
of Eq. (2–66) versus the number of LG and LGR points. It is seen that as the number
of LG or LGR points is increased, the accuracy in approximation rapidly increases.
Furthermore, the rate of convergence by the LG and LGR quadratures to the exact
solution is exponential. For eight LG or LGR points, the approximation is exact with
39
00−1 −0.5 0.5 1
5
10
15
20
25
30
τ
Num
ber
ofLG
RP
oint
s
f
Figure 2-5. Legendre-Gauss-Radau Points Distribution.
respect to numerical round off. Whereas the trapezoid rule required one hundred
thousand approximating intervals (i.e., one hundred thousand and one evaluations of
exp(τ)) to approximate the integral of exp(τ) to O(10−10), only six points are required to
achieve this same level of accuracy using LG or LGR points (i.e., only six evaluations
of exp(τ)). Therefore, for approximating the integral of Eq. (2–66), the LG or LGR
quadratures are significantly more accurate than a low-order method such as the
composite trapezoid rule. Finally, it is noted that the LG points result in a quadrature
approximation that is slightly more accurate than the LGR points for approximating
Eq. (2–66). This is consistent with the fact that the LG quadrature is exact for a
polynomial one degree higher than the LGR points for any given number of quadrature
points.
40
0
2 4
−2
−4
−6
−8
−10
−12
−14
−166 8 10 12 14 16
Number of LG Points
log10
Err
orLG Pts
LGR Pts
Figure 2-6. Error vs. Number of LG Points for Approximation of Eq. (2-66).
2.3.3 Multiple-Interval Gaussian Quadrature
Gaussian quadrature may also be implemented in a multiple-interval sense such
that a highly accurate Gaussian quadrature is applied to each approximating interval.
While the points defined by Gaussian quadrature are on the domain τ ∈ [−1, 1], it is
noted that the integral of a function over an arbitrary time domain t ∈ [ta, tb] may be
approximated as
∫ tb
ta
f (t)dt =tb − ta2
∫ 1
−1
f (tb − ta2
τ +ta + tb2)dτ ≈ tb − ta
2
n∑
i=1
wi f (tb − ta2
τi +ta + tb2).
(2–83)
Next, consider approximating Eq. (2–66) again using uniformly distributed multiple-interval
LG or LGR quadratures. The approximation to exp(τ), τ ∈ [−1, 1] using K uniformly
41
distributed intervals is
∫ +1
−1
exp(τ)dτ ≈K∑
k=1
tk − tk−12
n∑
i=1
wi f (tk − tk−12
τi +tk + tk−12
) (2–84)
where tk−1 and tk define the beginning and end of the k th approximating interval,
respectively, and n are the number of LG or LGR quadrature points in each interval.
Figs. 2-7A and 2-7B show the log10 error versus the total number of LG or LGR points,
Kn, for LG and LGR quadrature approximations using n = (2, 3, 4). In Figs. 2-7A and
2-7B, it is seen that high levels of accuracy are obtained by using a multiple-interval
Gaussian quadrature. Furthermore, for n = 2, two hundred LG points result in an
approximation of accuracy O(10−10) as opposed to the one hundred thousand points
necessary to obtain this level of accuracy using the trapezoid rule. Furthermore, as n is
increased, fewer total points are required to obtain high levels of accuracy. For n = 3,
the approximation is exact for 150 LG points, and for n = 4, the approximation is exact
for 40 LG points. In Fig. 2-7B it is seen that the multiple-interval LGR quadrature is
less accurate than the multiple-interval LG quadrature. Because the LG quadrature is
accurate for a polynomial of one degree higher, for low and mid-degree approximations,
the difference in accuracy is quite noticeable. For n = 4, the multiple-interval LG
quadrature is exact for 40 LG points, whereas the LGR quadrature requires 100 points
before providing an exact approximation with respect to numerical round off.
2.3.4 Summary
Numerical integration methods have been discussed. First, the composite trapezoid
rule is given as an example of a low-order approximation method. Furthermore, this
rule is used to approximate Eq. (2–66) and it is seen that many approximating intervals
are required to achieve high levels of accuracy. Next, Gaussian quadrature rules
are discussed. Gaussian quadrature rules are constructed such that polynomials
of as high a degree as possible are approximated using a set of n points and n
weighting factors. It is shown that very high levels of accuracy are obtained for very
42
0
0
−10
10050 150 200
−5
−15
Number of Multi-Interval LG Points
log10
Err
or
n = 2
n = 3
n = 4
A LG Points.
0
0
−10
10050 150 200
−5
−15
Maxim
n = 2
n = 3
n = 4
Number of Multi-Interval LGR Points
log10
Err
or
B LGR Points.
Figure 2-7. Error vs. Number of Multiple-Interval LG or LGR Points for Approximation ofEq. (2–66).
43
few points by using LG or LGR points to approximate the integral of Eq. (2–66).
Finally, multiple-interval Gaussian quadrature are discussed. High levels of accuracy
in quadrature approximation are obtained again for this case for a few number of
approximating points when compared with the composite trapezoid rule. Furthermore,
the LG quadrature is more accurate than the LGR quadrature. It is noted that while
more points are required to accurately approximate Eq. (2–66) using a multiple-interval
Gaussian quadrature than a single interval, a thorough motivation is given as to why a
multiple-interval Gaussian quadrature is desired in constructing the hp–pseudospectral
method of this research in Chapter 3 and Chapter 4.
2.4 Lagrange Polynomial Approximation
The next important concept used in constructing the discretized finite-dimensional
optimization problem of this research is polynomial interpolation. In this research,
Lagrange polynomials are used as a continuous-time approximation to the state
equations of the continuous-time optimal control problem. In a Lagrange polynomial
approximation, a set of n support points, (t1, ... , tn), are used and a polynomial of
degree n− 1 is fitted to these points. A Lagrange polynomial approximation to a function,
f (t), is given by
f (t) =
n∑
j=1
fjLj(t), Lj(t) =
n∏
l=1l 6=j
t − tltj − tl
, (2–85)
where fj = f (tj). It is noted that at the support points tj for j = (1, ... , n), fi = fi .
2.4.1 Single-Interval Lagrange Polynomial Approximations
It is well known that Runge phenomenon exists for Lagrange polynomials for an
arbitrary set of support points. Runge phenomenon is the occurrence of oscillations in
the approximating function, f , between support points. As the number of support points
grows, the magnitude of the oscillations between support points also grows. Runge
phenomenon can be demonstrated on the function
f (τ) =1
1 + 25τ 2, τ ∈ [−1,+1]. (2–86)
44
Fig. 2-8 shows the Lagrange polynomial approximation to this function utilizing n =
(8, 32) uniformly distributed support points. It is seen that as the number of points are
increased, the approximation near the ends of the interval become increasingly worse.
Next, consider a Lagrange polynomial approximation to the same function utilizing
n = (8, 32) LG support points. This approximation is shown in Fig. 2-9 and it is seen
that by using LG support points, Runge phenomenon is avoided, and the approximations
become better as the number of support points are increased. Insight into the behavior
of the Lagrange polynomial approximations is exemplified by the following theorem [62].
Theorem: Let t0, t1, ... , tn be distinct real numbers, and let f be a given real valued
function with n + 1 continuous derivatives on the interval It = H(t, t0, t1, ... , tn), with t
some given real number. Then there exists ζ ∈ It such that
f (t)− f (t) = (t − t0) · · · (t − tn)(n + 1)!
f n+1(ζ). (2–87)
Eq. (2–87) defines a limit on the error between the function being approximated and a
Lagrange polynomial approximation of the function. It should be noted at any support
point, the error is zero. In designing an n point Lagrange polynomial approximation,
the only design freedom is in placement of the support points, i.e., changing the
behavior of the numerator term in Eq. (2–87). For uniformly distributed points, the
numerator term becomes excessively large at the ends of the intervals. This results
in the Runge phenomenon that is seen in Fig. 2-8. Furthermore, points defined by
Gaussian quadrature have a structure that they are more densely placed near the ends
of the interval (see again Figs. 2-4 and 2-5). This distribution reduces the magnitude
of the numerator term in Eq. (2–87) at the ends of the intervals, therefore, reducing
the effects of Runge phenomenon. Fig. 2-11 shows the log10 maximum error as a
function of degree of approximating Lagrange polynomial for uniformly distributed
support points and support points defined by LG and LGR points for approximating
Eq. (2–86). It is seen that as the degree of polynomial increases, the Lagrange
45
00−1 −0.5 0.5
1
1
0.2
0.4
0.6
0.8
f (τ)
f (τ)f(τ)
τ
A 8 Uniform Support Points.
0
0−1 −0.5 0.5 1
200
400
600
800
−200
Maxim
f (τ)
f (τ)
f(τ)
τ
B 32 Uniform Support Points.
Figure 2-8. Approximation of f (τ) = 1/(1 + 25τ 2) Using Uniformly Spaced SupportPoints.
46
1.2
−0.2
0
0−1 −0.5 0.5
1
1
0.2
0.4
0.6
0.8
f (τ)
f(τ)
τ
f (τ)
A 8 LG Support Points.
00−1 −0.5 0.5
1
1
0.2
0.4
0.6
0.8
Each
f (τ)
f(τ)
τ
f (τ)
B 32 LG Support Points.
Figure 2-9. Approximation of f (τ) = 1/(1 + 25τ 2) Using LG Support Points.
47
polynomial approximation using a uniformly distributed set of support points diverges.
For a 100th degree polynomial defined with uniformly distributed support points, errors
are O(1030). For a Lagrange polynomial defined by either LG or LGR support points, the
approximation converges to the function in Eq. (2–86). For a 100th degree polynomial,
the errors in approximating this function are O(10−10). Furthermore, unlike the case
of using LG and LGR points for the approximation to integrals, it is noted that when
used as the support points to approximate the function in Eq. (2–86) by a Lagrange
polynomial, there is virtually no difference in approximation error by LG or LGR points.
2.4.2 Multiple-Interval Lagrange Polynomial Approximati ons
Consider approximating Eq. (2–86) using multiple-interval approximations of low
or medium degree. Without using LG or LGR points (or any other set of points that
minimizes Runge phenomenon in a Lagrange polynomial approximation), commonly,
Runge phenomenon is avoided by simply limiting the degree of approximation to be
small. Consider a uniformly distributed set of polynomial approximations such that the
degree of approximation is one, i.e., linear, in each interval. Furthermore, define the
support points for each interval to be the beginning and end of the interval. Fig. 2-11
shows the log10 maximum error in approximating Eq. (2–86) as a function of log10
number of approximating intervals. It is seen that for even one hundred thousand
approximating intervals, errors are still O(10−8).
Next, consider a uniformly distributed multiple-interval approximation utilizing LG
and LGR points as the support points in each interval to approximate Eq. (2–86). It is
noted that the LG and LGR points can be transformed from the time domain τ ∈ [−1, 1]
to an arbitrary time domain t ∈ [ta, tb] by the transformation
t =tb − ta2
τ +ta + tb2. (2–88)
Using n = (4, 6, 8) LG and LGR support points in each interval, Fig. 2-12B shows
the log10 maximum error in approximating Eq. (2–86) versus number of approximating
48
2 2.5 3 4 5
−2
−4
−6
−8
−10
f
3.5 4.5
log10
Max
imum
Err
or
log10 Number of Approximating Interval
Figure 2-10. Error vs. Number of Linear Approximating Intervals of Eq. (2–86).
intervals using a Lagrange polynomial defined by n = (4, 6, 8) LG or LGR support points
in each interval. It is seen that high levels of accuracy are obtained for a relatively few
number of intervals. Furthermore, as the number of support points are increased in
each interval, the approximation becomes increasingly accurate for a given number of
intervals. Finally, it is again noted that when using either LG or LGR points as support
points there is virtually no difference in the error of approximation.
2.4.3 Summary
A discussion on Lagrange polynomial approximation to a function is given.
Runge phenomenon is demonstrated to exist when using high-degree polynomial
approximations to a function using a set of uniformly distributed support points.
Furthermore, it is demonstrated that Runge phenomenon does not exist when using LG
49
0
0−10
10
40 60 80 100
20
20
30
f
Number of Support Points
log10
Max
imum
Err
or
Uniform Pts
LGR Pts
LG Pts
Figure 2-11. Error vs. Number of Support Points for Approximating Eq. (2–86).
or LGR support points and high-accuracy approximations are obtained for high-degree
Lagrange polynomials approximations. Next, in approximating a function using multiple
intervals, it is shown that a very low-order approximation requires a tremendous number
of approximating intervals to achieve high levels of accuracy. By using moderately
sized multiple-interval Lagrange polynomial approximations using LG or LGR points,
it is demonstrated that high levels of accuracy in approximating a function can be
obtained for many fewer approximating intervals than when using very low-degree
approximations.
50
0
0
−10
10050 150 200
−5
−15Number of Intervals with n Points In Each Interval
log10
Max
imum
Err
orn = 4
n = 6
n = 8
A LG Points.
0
0
−10
10050 150 200
−5
−15Number of Intervals with n Points In Each Interval
log10
Max
imum
Err
or
n = 4
n = 6
n = 8
B LGR Points.
Figure 2-12. Error vs. Number of LG or LGR Intervals for Approximation of Eq. (2–86).
51
CHAPTER 3MOTIVATION FOR AN HP–PSEUDOSPECTRAL METHOD
A motivation is given for developing an hp–pseudospectral method. The motivation
is to combine the computational sparsity of h–methods and the rapid rates of convergence
of p–methods. In order to motivate the desire for an hp–approach, two examples
with distinctly different solutions are provided. In the first example, a problem with a
smooth solution is studied. In the second example, a problem whose solution has
a discontinuous control is analyzed. Because of the discontinuity in the control, the
solution to this second problem is non-smooth.
3.1 Motivating Example 1: Problem with a Smooth Solution
Consider the following optimal control problem [64]. Minimize the cost functional
J = tf (3–1)
subject to the dynamic constraints
x = cos(θ) , y = sin(θ) , θ = u, (3–2)
and the boundary conditions
x(0) = 0 , y(0) = 0 , θ(0) = −π
x(tf ) = 0 , y(tf ) = 0 , θ(tf ) = π.(3–3)
The solution to the optimal control problem of Eqs. (3–1)–(3–3) is
(x∗(t), y ∗(t), θ∗(t), u∗(t)) = (− sin(t),−1 + cos(t), t − π, 1) (3–4)
where t∗f = 2π. This problem is now solved with a single-interval p–LGR method
[40] and a uniformly distributed multiple-interval h–LGR method that is described in
Chapter 4. The h–LGR approximation uses two collocation points in each interval,
i.e., a second degree polynomial approximation to the state. Because this problem has
a smooth solution, it is expected that a p–method will perform better when compared
52
to an h–method. Fig. 3-1A shows the log10 maximum error at the collocation points
versus the total number of collocation points for the single-interval p–LGR method. It
is seen that for 20 collocation points, the approximation is essentially exact (relative to
roundoff error). Next, Fig 3-1B shows the log10 maximum error at the collocation points
versus the log2 number of approximating intervals for a uniformly distributed h–LGR
approximation. Using the h–LGR method to approximate the solution, the convergence
rates are significantly slower than using a p–method. For an accuracy of O(10−8), the
h–LGR method requires 1024 approximating intervals and 2048 collocation points
while the p–method uses a single approximating interval with only 13 collocation points.
Strictly low-order methods are unable to obtain high levels of accuracy for this problem
in a computationally efficient manner. For this problem, high levels of accuracy in the
approximation are most easily achieved by using a p–method.
3.2 Motivating Example 2: Problem with a Nonsmooth Solution
Consider the following optimal control problem of a soft lunar landing as given in
Ref. [65]. Minimize the cost functional
J =
∫ tf
0
udt (3–5)
subject to the dynamic constraints
h = v , v = −g + u, (3–6)
the boundary conditions
(h(0), v(0), h(tf ), v(tf )) = (h0, v0, hf , vf ) = (10,−2, 0, 0), (3–7)
and the control inequality constraint
umin ≤ u ≤ umax, (3–8)
53
0
0
5
5
−10
10
−5
−1515 20 25
log10
Max
imum
Err
or
Number of Collocation Points
A p–LGR Approximation.
0
0 2 4
−2
−4
−6
−8
−106 8 10
Number of
log10
Max
imum
Err
or
log2 Number of Collocation Points
B h–LGR Approximation.
Figure 3-1. Error vs. Number of Collocation Points for p and h–LGR Approximation toEqs. (3–1)–(3–3).
54
where umin = 0, umax = 3, g = 1.5, tf is free. The optimal solution to this example is
(h∗(t), v ∗(t), u∗(t)) =
(−34t2 + v0t + h0,−32t + v0, 0), t < t∗s
(34t2 + (−3t∗s + v0)t + 3
2t∗s2 + h0,
32t + (−3t∗s + v0), 3), t > t∗s ,
(3–9)
where t∗s is
t∗s =t∗f2+v0
3(3–10)
with
t∗f =2
3v0 +
4
3
√
1
2v 20 +
3
2h0. (3–11)
For the boundary conditions given in Eq. (3–7), t∗s = 1.4154 and t∗f = 4.1641. First,
it is noted in Eq. (3–9) that the control is bang-bang, i.e., the control is at its minimum
value for t ∈ [0, t∗s ] and is at its maximum value for t ∈ [t∗s , t∗f ]. Because of the
discontinuity in the control, the exact solution for the state is non-smooth. Fig. 3-2 shows
the log10 maximum error at the collocation points versus the number of collocation points
for approximating this problem by p and uniformly distributed h–LGR methods. It is
seen that because the solution to the problem is non-smooth, the p–method does not
converge at an exponential rate. Furthermore, the rates of convergence of the p and
h–methods are essentially the same. Therefore, when comparing p and h–methods
with respect to number of collocation points, no significant difference exists between
a p or h–method approximation. The sparsity of the approximating NLPs using p and
h–methods are, however, quite different. A p–method results in a much more dense
NLP as compared to an h–method. Table 3-1 shows the density of the approximating
NLP by p and h–methods for a given number of collocation points. Furthermore, the
CPU time required to solve the given problem is also shown. It is seen in Table 3-1 that
for an equivalent number of collocation points, the p–method results in a problem that
is significantly more computationally expensive because of the density of the NLP. As
the number of collocation points grow for the p–method approximation, the CPU time
55
0
0
−1
1
−2
−410050 150 200
Error
−3
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
Figure 3-2. Error vs. Collocation Pts for p– and h–LGR Approximation toEqs. (3–5)–(3–8).
required to solve the NLP rapidly grows as well. For the h–method, because of the
sparsity of the NLP, the time required to solve the problem does not grow as rapidly
as with the p–method. Furthermore, it is noted that for 200 collocation points, the
h–method solution time is nearly equivalent to the solution time of the 40 collocation
point p–method. Therefore, if the exponential convergence of a p–method cannot be
guaranteed, a much more computationally efficient NLP is obtained using an h–method
approximation.
3.3 Discussion of Results
The two motivating examples demonstrate a key point in approximating the
solution to general optimal control problems by direct collocation methods: the best
approximation method is problem dependent. Furthermore, in some cases that are
56
Collocation Points p–Matrix Density h–Matrix Density p–CPU Time (s) h–CPU Time (s)20 0.37 0.10 0.07 0.0640 0.35 0.05 0.22 0.1160 0.35 0.037 0.38 0.1280 0.34 0.028 0.54 0.14100 0.34 0.023 0.88 0.16200 0.34 0.012 2.97 0.19
Table 3-1. Matrix Density and CPU Time for p– and h–LGR Methods for Example 2.
simple and smooth, a p–method approximation will provide the best approximating NLP.
In the case of a non-smooth problem without higher order behaviors in the solution, an
h–method approximation will provide the best approximating NLP. In the general case,
a solution to an optimal control problem will have mixed behaviors where some regions
of the trajectory will be smooth, and other regions will be non-smooth. Therefore, a
method that allows for the combination of the strength of either h or p–methods will
be capable of providing highly accurate solutions at a low computational cost. An
hp–pseudospectral method has the flexibility of using the computational sparsity of
low-order h–methods and the high convergence rates of p–methods. The hp–LG and
LGR methods are now described in Chapter 4.
57
CHAPTER 4HP–PSEUDOSPECTRAL METHOD
The hp–LG and LGR pseudospectral methods of this research are now described.
First, the continuous-time optimal control problem of Section 2.1 is reformulated in a
multiple-interval form and the continuous-time first-order necessary conditions are stated
for this multiple-interval formulation. The hp–LG and LGR pseudospectral discretizations
of the multiple-interval optimal control problem are then posed. The KKT conditions
are derived for the hp–LG and LGR methods. Then, the transformed adjoint system for
each method is derived from the KKT conditions and a mapping from the transformed
adjoint system of each method to the continuous-time first-order necessary conditions is
derived. Finally, the sparsity of the NLP defined by the hp–LG and LGR pseudospectral
methods is studied.
4.1 Multiple-Interval Continuous-Time Optimal Control Pro blem Formulation
Consider again the continuous-time optimal control problem of Section 2.1. That is,
minimize the cost functional
J = Φ(x(t0), t0, x(tf ), tf ) +
∫ tf
t0
g(x(t),u(t)) dt, (4–1)
subject to the dynamic constraints
x(t) = f(x(t),u(t)), (4–2)
the inequality path constraints
C(x(t),u(t)) ≤ 0, (4–3)
and the boundary conditions
φ(x(t0), t0, x(tf ), tf ) = 0. (4–4)
Next, consider dividing the problem defined in Eqs. (4–1)–(4–4) into K mesh intervals. A
mesh interval k is defined to begin at the mesh point tk−1 and end at the mesh point tk .
58
Furthermore, let t0 < t1 < t2 < · · · < tK where tK = tf . The time domain in each interval
k , t ∈ [tk−1, tk ], is changed to τ ∈ [−1, 1] by the transformation
τ =2t − (tk−1 + tk)tk − tk−1
. (4–5)
Furthermore, the inverse transformation is given as
t =tk − tk−12
τ +tk−1 + tk2
, (4–6)
and it is noted thatdt
dτ=tk − tk−12
. (4–7)
Next, let each mesh point tk be expressed as a function of the initial time, t0, final time,
tK , and a constant ak , k = (0, ... ,K), as
tk = t0 + ak(tK − t0), (k = 0, ... ,K). (4–8)
It is noted that for t0, a0 = 0 and for tK , aK = 1. Furthermore, because tk−1 < tk ,
ak−1 < ak for k = 1, ... ,K . By expressing each mesh point as a function of t0 and tK ,
the number of free variables corresponding to time is reduced from K + 1 free variables
corresponding to each mesh point to two free variables corresponding to the initial and
final times. This is important for constructing a concise set of necessary conditions for
the optimal control problem and for reducing the number of variables in the discretized
NLP. Let x(k)(τ) and u(k)(τ) be the state and control in the k th mesh interval. Finally,
it is noted that the continuity in the state is enforced at the interior mesh points and
therefore, x(k)(+1) = x(k+1)(−1), (k = 1, ... ,K − 1).
The continuous-time optimal control problem defined by Eqs. (4–1)–(4–4)
expressed as a K interval problem is then to minimize the cost
J = Φ(x(1)(−1), t0, x(K)(+1), tK) +K∑
k=1
tk − tk−12
∫ +1
−1
g(x(k)(τ),u(k)(τ)) dτ , (4–9)
59
subject to the dynamic constraints
dx(k)(τ)
dτ=tk − tk−12
f(x(k)(τ),u(k)(τ)), (k = 1, ... ,K) (4–10)
the inequality path constraints
tk − tk−12
C(x(k)(τ),u(k)(τ)) ≤ 0, (k = 1, ... ,K) (4–11)
the boundary conditions
φ(x(1)(−1), t0, x(K)(+1), tK) = 0, (4–12)
and the interior point constraints
x(k)(+1)− x(k+1)(−1) = 0, (k = 1, ... ,K − 1). (4–13)
It is noted thattk − tk−12
(4–14)
is added to Eq. (4–11) without affecting the constraint such that the optimality conditions
can be posed in a succinct manner.
The first-order optimality conditions of the multiple-interval continuous-time optimal
control problem of Eqs. (4–9)–(4–13) are now stated. Define the augmented Hamiltonian
in each interval k as
H(k)(x(k),λ(k),u(k),γ(k)) = g(k) + 〈λ(k), f(k)〉 − 〈γ(k),C(k)〉. (4–15)
where 〈·, ·〉 is used to denote the standard inner product between two vectors. Using this
definition of the augmented Hamiltonian in each interval, the continuous-time first-order
60
optimality conditions of the problem defined by Eqs. (4–9)–(4–13) are
dx(k)
dτ=tk − tk−12
∇λ(k)H(k), (k = 1, ... ,K), (4–16)
dλ(k)
dτ= −tk − tk−1
2∇x(k)H(k), (k = 1, ... ,K), (4–17)
0 = ∇u(k)H(k), (k = 1, ... ,K), (4–18)
λ(1)(−1) = −∇x(1)(−1) (Φ− 〈ψ,φ〉) , (4–19)
λ(k)(1) = λ(k+1)(−1) + ρ(k), (k = 1, ... ,K − 1) (4–20)
λ(K)(+1) = ∇x(K)(+1) (Φ− 〈ψ,φ〉) , (4–21)
0 =
K∑
i=1
ak−1 − ak2
∫ 1
−1
H(k)dτ +∇t0 (Φ− 〈ψ,φ〉) , (4–22)
0 =
K∑
i=1
ak − ak−12
∫ 1
−1
H(k)dτ +∇tf (Φ− 〈ψ,φ〉) . (4–23)
where ρ(k) is the difference in λ(k)(1) and λ(k+1)(−1) if the costate is discontinuous at a
mesh point k [2].
4.2 hp-Legendre-Gauss Transcription
The hp–LG pseudospectral method is now described. The hp–LG pseudospectral
method is constructed by discretizing the multiple-interval continuous-time optimal
control problem described by Eqs. (4–9)–(4–13). First, the state in each interval k of
the continuous-time optimal control problem is approximated by a Lagrange polynomial
using the initial point, τ (k)0 = −1, and the LG points, (τ (k)1 , ... , τ(k)Nk), where Nk is the
number of LG points used in interval k . The state approximation is then given as
x(k)(τ) ≈ X(k)(τ) =Nk∑
j=0
X(k)j L
(k)j (τ), (4–24)
where X(k)j = X(k)(τ (k)j ). Furthermore, it is noted that in this Chapter, all vector functions
of time are row vectors, i.e., X(k)(τ) = [X (k)1 (τ), ... ,X(k)n (τ)]. Next, an approximation to
the derivative of the state is given by differentiating the approximation of Eq. (4–24) with
61
respect to τ . Therefore, the derivative of the state approximation is given as
dX(k)(τ)
dτ=
Nk∑
j=0
X(k)j L
(k)j (τ). (4–25)
The collocation conditions for interval k are formed by collocating the derivative of the
state approximation with the right hand side of the dynamic constraints of Eq. (4–10) at
the Nk LG points as
Nk∑
j=0
X(k)j D
(k)ij −
(
tk − tk−12
)
f(k)i = 0, (i = 1, ... ,Nk), (4–26)
where f(k)i = f(X(k)i ,U
(k)i ), U(k)i = U(k)(τ (k)i ) is the discretized control approximation, and
D(k)ij = L
(k)j (τ
(k)i ), (i = 1, ... ,Nk , j = 1, ... ,Nk + 1) (4–27)
is the Nk × (Nk + 1) Gauss pseudospectral differentiation matrix [22, 26, 35, 36] in the
k th mesh interval. It should be noted that the state approximation is a continuous-time
Lagrange polynomial approximation with Nk + 1 support points while the control is
calculated discretely at the Nk collocation points. The inequality path constraints of
Eq. (4–11) are enforced at the Nk collocation points in each interval k as
tk − tk−12
C(k)(X(k)i ,U
(k)i ) ≤ 0, (i = 1, ... ,Nk). (4–28)
Next, it is noted that thus far the state approximation only uses the initial point, τ0 = −1,
and the Nk LG points in each interval. No discrete approximation as of yet has been
made for the state at the final point in each interval, τ (k)Nk+1 = +1. In order to approximate
the state at the final point in each interval, the following LG quadrature is used
X(k)Nk+1
= X(k)0 +
tk − tk−12
Nk∑
i=1
w(k)i f
(k)i . (4–29)
62
where w (k)j are the Legendre-Gauss weights in interval k . Next, the state is enforced to
be continuous between mesh intervals, i.e.,
X(k)Nk+1
= X(k+1)0 , (k = 1, ... ,K − 1). (4–30)
In order to increase the computational efficiency of the approximating NLP, a single
variable is used for X(k)Nk+1 and X(k+1)0 for k = (1, ... ,K − 1). Therefore, Eq. (4–29) is then
expressed as
X(k+1)0 = X
(k)0 +
tk − tk−12
Nk∑
i=1
w(k)i f
(k)i , (k = 1, ... ,K − 1) (4–31)
X(K)NK+1
= X(K)0 +
tK − tK−12
NK∑
i=1
w(K)i f
(K)i
and Eq. (4–30) can be ignored as it is being explicitly taken into account. Finally, the
cost functional of Eq. (4–9) is approximated using a multiple-interval LG quadrature as
J ≈ Φ(X(1)0 , t0,X(K)NK+1, tK) +K∑
k=1
Nk∑
j=1
(
tk − tk−12
)
w(k)j g
(k)j , (4–32)
where g(k)j = g(X(k)j ,U
(k)j ).
The discretized hp–LG pseudospectral approximation to the continuous-time
optimal control problem of Eqs. (4–9)–(4–13) is now stated. The hp–LG pseudospectral
approximation is to minimize the cost
J = Φ(X(1)0 , t0,X
(K)NK+1, tK) +
K∑
k=1
Nk∑
j=1
(
tk − tk−12
)
w(k)j g
(k)j , (4–33)
subject to the collocation conditions
Nk∑
j=0
X(k)j D
(k)ij −
(
tk − tk−12
)
f(k)i = 0, (i = 1, ... ,Nk , k = 1, ... ,K − 1), (4–34)
the inequality path constraints
tk − tk−12
C(k)(X(k)i ,U
(k)i ) ≤ 0, (i = 1, ... ,Nk , k = 1, ... ,K − 1), (4–35)
63
the quadrature constraints
X(k+1)0 = X
(k)0 +
tk − tk−12
Nk∑
i=1
w(k)i f
(k)i , (k = 1, ... ,K − 1) (4–36)
X(K)NK+1
= X(K)0 +
tK − tK−12
NK∑
i=1
w(K)i f
(K)i ,
and the boundary conditions
φ(X(1)0 , t0,X
(K)NK+1, tK) = 0. (4–37)
The problem defined by Eqs. (4–33)–(4–37) is the discrete hp–LG pseudospectral
approximation to the continuous-time optimal control problem defined by Eqs. (4–9)–(4–13).
It is noted that the formulation presented allows for an arbitrary number of intervals, with
arbitrary placement, and with an arbitrary number of LG collocation points in each
interval. That is, the hp–LG method presented has the flexibility of approximating a
continuous-time optimal control problem in any manner desired by using LG points.
A few key properties of the hp–LG pseudospectral method are now stated. First, the
discretization points are defined as the points at which the state is approximated. The
discretization points in an interval k , therefore, are the Nk + 2 points, (τ (k)0 , ... , τ(k)Nk+1).
It is noted that control is approximated at the Nk collocation points, (τ (k)1 , ... , τ(k)Nk).
Next, a well-defined Nthk –degree polynomial approximation to the state is given by
Eq. (4–24). However, no well-defined approximating polynomial is given for the control.
It is interesting to note how the discretization points and collocation points differ for
the hp–LG pseudospectral method. When using a single approximating interval as
shown in Fig. 4-1A, the discretization points differ from the collocation points in that the
discretization points are the collocation points plus the end points. Furthermore, for a
multiple-interval discretization as is seen in Fig. 4-1B, the discretization points differ from
the collocation points in that the discretization points include the collocation points and
64
7
9
03−1 −0.5 0.5 1
4
5
6
8
10
Pol
ynom
ialD
egre
e Collocation Points
Discretization Points
t
A Single-Interval Collocation Points and DiscretizationPoints.
7
02
3
−1 −0.5 0.5 1
4
5
6
8
Collocation Points
Discretization Points
t
Num
ber
ofIn
terv
als
B Multiple-Interval Collocation Points and DiscretizationPoints.
Figure 4-1. Collocation and Discretization Points by LG Methods.
all the mesh points. It is interesting to note that the collocation points do not include any
mesh points for the hp–LG pseudospectral method.
4.2.1 The hp–LG Pseudospectral Transformed Adjoint System
The hp–LG transformed adjoint system is now derived. It is shown that the hp–LG
transformed adjoint system is a discrete representation of the continuous-time first-order
65
necessary conditions of Eqs. (4–16)–(4–23) if the costate of the optimal control problem
is continuous. First, the Lagrangian of the continuous-time optimal control problem
defined by the hp–LG pseudospectral method is given as
L = Φ(X(1)0 ,X
(K)NK+1)− 〈Ψ,φ(X(1)0 ,X(K)NK+1〉 (4–38)
+
K∑
k=1
Nk∑
j=1
(
tk − tk−12
(w(k)j g
(k)j − 〈Γ(k)j ,C
(k)j 〉)
−〈Λ(k)j ,D(k)j ,1:NkX(k)1:Nk+D
(k)j ,0 X
(k)0 − tk − tk−1
2f(k)j 〉
)
−K−1∑
k=1
〈π(k),X(k+1)0 − X(k)0 − tk − tk−12
Nk∑
j=1
w(k)j f
(k)j 〉
−〈π(K),X(K)Nk+1 − X(K)0 − tK − tK−1
2
NK∑
j=1
w(K)j f
(K)j 〉,
where Λ(k), Γ(k), π(k), and Ψ are the multipliers associated with Eqs. (4–34), (4–35),
(4–36), and (4–37). Furthermore, D(k)j ,1:Nk is the j th row and first through Nthk columns
of D(k) and X(k)1:Nk are the first through Nthk rows of X(k). Next, the KKT conditions are
given by differentiating the Lagrangian with respect to X(k)j , j = 1, ... ,NK + 1 and
U(k)j , j = 1, ... ,Nk in each interval k as well as t0 and tK and setting these derivatives
66
equal to zero. The KKT conditions are
0 = ∇U
(
w(k)j g
(k)j + 〈Λ(k)j + w
(k)j π(k), f
(k)j 〉 (4–39)
−〈Γ(k)j ,C(k)j 〉
)
, (k = 1, ... ,K , j = 1, ... ,Nk)
D(k)T
j Λ(k) =tk − tk−12
∇X(
w(k)j g
(k)j + 〈Λ(k)j + w
(k)j π(k), f
(k)j 〉 (4–40)
−〈Γ(k)j ,C(k)j 〉
)
, (k = 1, ... ,K , j = 1, ... ,Nk)
D(1)T
0 Λ(1) − π(1) = ∇
X(1)0(Φ− 〈Ψ,φ〉), (4–41)
D(k)T
0 Λ(k) − π(k) = −π(k−1), (k = 2, ... ,K), (4–42)
π(K) = ∇X(K)NK+1
(Φ− 〈Ψ,φ〉), (4–43)
0 = ∇t0(Φ− 〈Ψ,φ〉) (4–44)
+
K∑
k=1
Nk∑
j=1
(
ak−1 − ak2
(w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 − 〈Γ(k)j ,C
(k)j 〉)
)
K−1∑
k=1
ak−1 − ak2
〈π(k),Nk∑
j=1
w(k)j f
(k)j 〉+ aK−1 − aK
2〈πK ,
NK∑
j=1
w(K)j f
(K)j 〉
(k = 1, ... ,K , j = 1, ... ,Nk)
0 = ∇tf (Φ− < Ψ,φ >) (4–45)
+
K∑
k=1
Nk∑
j=1
(
ak − ak−12
(w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 − 〈Γ(k)j ,C
(k)j 〉)
)
+
K−1∑
k=1
ak − ak−12
〈π(k),Nk∑
j=1
w(k)j f
(k)j 〉+ aK − aK−1
2〈πK ,
NK∑
j=1
w(K)j f
(K)j 〉
(k = 1, ... ,K , j = 1, ... ,Nk)
where DT
j is the j th row of DT. In comparing Eq. (4–41) with Eq. (4–19), the costate
approximation at t = t0 is given as
λ(1)0 = −D(1)T0 Λ(1) + π(1) (4–46)
Next, in comparing Eq. (4–43) with Eq. (4–21), the costate approximation at t = tf is
given as
λ(K)NK+1
= π(K). (4–47)
67
Consider the change of variables
ψ = Ψ, (4–48)
γ(k)j =
Γ(k)j
w(k)j
, (k = 1, ... ,K , j = 1, ... ,Nk) (4–49)
λ(k)j =
Λ(k)
w(k)j
+ π(k), (k = 1, ... ,K , j = 1, ... ,Nk), (4–50)
and define the matrix D(k)† [40] as
D(k)†ij = −
w(k)j
w(k)i
D(k)ji , (k = 1, ... ,K , j = 1, ... ,Nk) (4–51)
D(k)†i ,Nk+1
= −Nk∑
j=1
D(k)†ij , (i = 1, ... ,Nk). (4–52)
D(k)† defines the differentiation matrix associated with a Lagrange polynomial using the
LG points, (τ (k)1 , ... , τ(k)Nk) and the final point τ (k)Nk+1 in an interval k [40]. Substituting the
change of variables given in Eqs. (4–46)–(4–52) into (4–39)–(4–43), the LG transformed
68
adjoint system is given as
(D(k)†j ,1:Nk
λ(k) +D(k)†j ,Nk+1
π(k)) = −tk − tk−12
∇XH(X(k)j ,U(k)j ,γ
(k)j ,λ
(k)j ), (4–53)
(k = 1, ... ,K , j = 1, ... ,Nk)
0 = ∇UH(X(k)j ,U
(k)j ,γ
(k)j ,λ
(k)j ), (4–54)
(k = 1, ... ,K , j = 1, ... ,Nk)
λ(1)0 = −∇
X(1)0(Φ− 〈ψ,φ〉), (4–55)
λ(K)NK+1
= ∇X(K)NK+1
(Φ− 〈ψ,φ〉), (4–56)
π(k) − π(k−1) = −tk − tk−12
Nk∑
j=1
w(k)j ∇XH(X(k)j ,U
(k)j ,γ
(k)j ,λ
(k)j ),(4–57)
(k = 2, ... ,K),
0 =
K∑
k=1
ak−1 − ak2
Nk∑
j=1
w(k)j H(X
(k)j ,U
(k)j ,γ
(k)j ,λ
(k)j ) (4–58)
+∇t0(Φ− 〈γ,ψ〉),
0 =
K∑
k=1
ak − ak−12
Nk∑
j=1
w(k)j H(X
(k)j ,U
(k)j ,γ
(k)j ,λ
(k)j ) (4–59)
+∇tf (Φ− 〈γ,ψ〉),
where it is noted that Eq. (4–57) is formed by comparing Eqs. (4–40) and (4–42) and the
identity [40]
D(k)i ,0 = −
Nk∑
j=1
D(k)ij , (i = 1, ... ,Nk). (4–60)
From Eq. (4–57), noting that λ(K)NK+1 = π(K) ,
λ(K)0 = π(K−1). (4–61)
Suppose the costate is continuous at mesh point K − 1. This then implies λ(K)0 = λ(K−1)Nk+1
and using Eq. (4–57) again, we obtain
λ(K−1)0 = π(K−2). (4–62)
69
Next, suppose the costate is continuous at all the mesh points k = 1, ... ,K − 1. Then the
costate at the mesh points are given as
λ(k+1)0 = λ
(k)Nk+1
= π(k), (k = 1, ... ,K − 1). (4–63)
In the case where the costate is continuous at every mesh point, the transformed
adjoint system is a discrete representation of the continuous-time first-order necessary
conditions.
Next, suppose that the costate is discontinuous at a mesh point M ∈ [1, ... ,K − 1].
Then
π(M) = λ(M+1)0 = λ
(M)NM+1
− ρ(M) (4–64)
where ρ(M) is the difference between λ(M)NM+1 and λ(M+1)0 . If the costate is discontinuous
at mesh point M, π(M) 6= λ(M)NM+1 in Eq. (4–53). Therefore, Eq. (4–53) is not a discrete
approximation to the continuous-time costate dynamics. As a result, the transformed
adjoint system given in Eqs. (4–53)–(4–59) is not a discrete representation of the
first-order optimality conditions given in Eqs. (4–16)–(4–23).
4.2.2 Sparsity of the hp–LG Pseudospectral Method
The sparsity of the hp–LG pseudospectral method is now described. It is noted that
the only dense blocks of non-zero numbers that occur in the NLP defined by the hp–LG
pseudospectral method are a result of the Lagrange polynomial approximation to the
state in each interval in Eq. (4–34) and also the quadrature constraints of Eq. (4–36).
The size of these dense blocks are dependent upon the degree of approximating
polynomial, Nk , in each interval. The constraint Jacobian for the hp–LG pseudospectral
method is now described in detail. First, define the total number of collocation points as
N =
K∑
i=1
Ni . (4–65)
Next, the total vector of NLP variables corresponding to the discretized state, control,
and initial and final time is constructed. Define the (N + K + 1)n × 1 vector zx as the
70
vector containing each component of the state at all the discretization points, i.e.,
zx =
χ1...
χn
(4–66)
where χi is the (N + K + 1) × 1 vector corresponding to the i th component of the state
evaluated at the discretization points. Furthermore, define the Nm × 1 vector zu as the
vector containing each component of the control evaluated at the collocation points, i.e.,
zu =
σ1
...
σm
(4–67)
where σi is the N × 1 vector corresponding to the i th component of the control at all of
the collocation points. Therefore, the total vector of NLP variables is
z =
zx
zu
t0
tf
(4–68)
and the total number of NLP variables is (N + K + 1)n + Nm + 2.
Next, the total vector of NLP constraints are constructed. Define the Nn × 1 vector
yD as the vector containing the collocation conditions for each component of the state,
i.e.,
yD =
ζ1...
ζn
(4–69)
where ζ i is the N × 1 vector corresponding to the collocation conditions for the i th
component of the state. Next, define the Ns × 1 vector yC as the vector containing the
71
inequality path constraints:
yC =
η1...
ηs
(4–70)
where ηi is the N×1 vector corresponding to the i th inequality path constraint. Define the
Kn × 1 vector yQ to be the vector of quadrature constraints in Eq. (4–36). Finally, define
the q × 1 vector yE to be the vector of boundary conditions in Eq. (4–37). Therefore, the
total vector of constraints for the hp–LG method is
y =
yD
yC
yQ
yE
(4–71)
and the total number of NLP constraints is Nn + Ns + Kn + q. It is interesting to note
for the hp–LG pseudospectral method, the size of the NLP problem (i.e., the number
of variables and constraints) are dependent upon the number of collocation points, N,
and the number of approximating intervals, K . As the number of collocation points or
number of approximating intervals grows large for the hp–LG pseudospectral method, so
do the number of variables and constraints in the NLP. Finally, the constraint Jacobian
for the hp–LG pseudospectral method is given as
G(z) =∂y
∂z. (4–72)
The density of the constraint Jacobian is now examined. For the constraints
associated with yC , each row corresponds to an inequality path constraint evaluated
at a collocation point. By inspection of Eq. (4–35), it is seen that at each collocation
point, the inequality path constraints are only a function of the state and control at that
collocation point and the initial and final time. Therefore, the rows of yC are sparse (i.e., ,
only n + m + 2 elements in any row are non-zero; the remaining (N + K)n + (N − 1)m
72
elements are zero). Furthermore, yE is only a function of the state at the initial and final
time and the initial and final time. Therefore, the rows of yE are sparse as well.
yD and yQ introduce the density of the hp–LG pseudospectral method. It is seen in
Eq. (4–34) that the collocation condition for any component of the state evaluated at any
collocation point is a function of the state and control at that collocation point, the initial
and final time, and Nk additional variables corresponding to the Lagrange polynomial
approximation to the state. Therefore, as Nk grows large in any approximating interval,
the number of non-zero elements in any row of yD grows large as well. Finally, it is
seen in Eq. (4–36) that for each quadrature constraint, the constraint is a function of
Nkn variables corresponding to the state, Nkm variables corresponding to the control,
the initial and final time, and two additional variables corresponding to the initial state
and final state in interval k . Therefore, again, as Nk grows large in any approximating
intervals, so does the number of non-zero entries in any row of yQ .
Figs. 4-2 and 4-3 shows a qualitative representation of the constraint Jacobian
for the hp–LG pseudospectral method. Fig. 4-2 represents an hp–LG pseudospectral
approximation where Nk is large in each approximating interval and Fig.4-3 represents
an hp–LG pseudospectral approximation where Nk is small in each approximating
interval. It is seen that for large Nk , large, dense blocks arise in the constraint Jacobian
corresponding to the rows of yD and yQ . For small values of Nk , the dense blocks are
much smaller. Therefore, the sparsity of an hp–LG pseudospectral method is dependent
upon Nk , or, the degree of polynomial approximation within any interval. Low-degree
approximations result in a sparse NLP while high-degree approximations result in a
dense NLP.
4.3 hp–Legendre-Gauss-Radau Transcription
The hp–LGR pseudospectral method is now described. The hp–LGR pseudospectral
method is constructed by discretizing the continuous-time optimal control problem
described by Eqs. (4–9)–(4–13). First, the state in each interval k of the continuous-time
73
Figure 4-2. Qualitative Representation of constraint Jacobian for LG points with LargeNk .
optimal control problem is approximated by a Lagrange polynomial using the Nk LGR
points, (τ (k)1 , ... , τ(k)Nk), and the final point, τ (k)Nk+1 = +1. It is noted that τ (k)1 = −1. The
state approximation is then given as
x(k)(τ) ≈ X(k)(τ) =Nk+1∑
j=1
X(k)j L
(k)j (τ). (4–73)
74
Figure 4-3. Qualitative Representation of constraint Jacobian for LG points with SmallNk .
Next, the derivative of the state approximation is given by differentiating the approximation
of Eq. (4–73) with respect to τ . The derivative of the state approximation is then given as
dX(k)(τ)
dτ=
Nk+1∑
j=1
X(k)j L
(k)j (τ). (4–74)
75
The collocation conditions are then enforced at the Nk LGR points as
Nk+1∑
j=1
X(k)j D
(k)ij − tk − tk−1
2f(k)i = 0, (i = 1, ... ,Nk , k = 1, ... ,K), (4–75)
where
D(k)ij = L
(k)j (τ
(k)i ), (i = 1, ... ,Nk , j = 1, ... ,Nk + 1), (4–76)
is the Nk × (Nk + 1) Radau pseudospectral differentiation matrix [39] in the k th mesh
interval. The inequality path constraints of Eq. (4–11) are enforced at the Nk collocation
points in each interval k as
tk − tk−12
C(k)(X(k)i ,U
(k)i ) ≤ 0, (i = 1, ... ,Nk , k = 1, ... ,K). (4–77)
Next, the state is enforced to be continuous between mesh intervals, i.e.,
X(k)Nk+1
= X(k+1)1 . (4–78)
In order to increase the computational efficiency of the approximating NLP, a single
variable is used for X(k)Nk+1 and X(k+1)1 for k = (1, ... ,K − 1). Therefore, Eq. (4–75) is then
written as
D(k)j ,1:NkX(k)1:Nk+D
(k)j ,Nk+1
X(k+1)1 − tk − tk−1
2f(k)j = 0 (k = 1, ... ,K − 1), (4–79)
D(K)j ,1:NK
X(K)1:NK+D
(K)j ,NK+1
X(K)NK+1
− tK − tK−12
f(K)j = 0
and Eq. (4–78) can be ignored as it is being explicitly taken into account. Finally,
the cost functional of Eq. (4–9) is then approximated using a multiple-interval LGR
quadrature as
J ≈ Φ(X(1)1 , t0,X(K)NK+1, tK) +K∑
k=1
Nk∑
j=1
(
tk − tk−12
)
w(k)j g
(k)j , (4–80)
where w (k)j are the Legendre-Gauss-Radau weights [63] in interval k .
76
The discretized hp–LGR pseudospectral approximation to the continuous-time
optimal control problem is now stated. The hp–LGR pseudospectral approximation is to
minimize the cost
J = Φ(X(1)1 , t0,X
(K)NK+1, tK) +
K∑
k=1
Nk∑
j=1
(
tk − tk−12
)
w(k)j g
(k)j , (4–81)
subject to the collocation conditions
D(k)j ,1:NkX(k)1:Nk+D
(k)j ,Nk+1
X(k+1)1 − tk − tk−1
2f(k)j = 0 (k = 1, ... ,K − 1), (4–82)
D(K)j ,1:NK
X(K)1:NK+D
(K)j ,NK+1
X(K)NK+1
− tK − tK−12
f(K)j = 0,
the inequality path constraints
tk − tk−12
C(k)(X(k)i ,U
(k)i ) ≤ 0, (i = 1, ... ,Nk , k = 1, ... ,K). (4–83)
and the boundary conditions
φ(X(1)1 , t0,X
(K)NK+1, tK) = 0. (4–84)
The problem defined by Eqs. (4–81)–(4–84) is the discrete hp–LGR pseudospectral
approximation to the continuous-time optimal control problem defined by Eqs. (4–9)–(4–13).
It is noted that the formulation presented allows for an arbitrary number of intervals, with
arbitrary placement, and an arbitrary number of LGR collocation points in each interval.
Therefore, this method has the flexibility of approximating a continuous-time optimal
control problem in any manner desired by using LGR points.
A few key properties of the hp–LGR pseudospectral method are now stated. First,
the discretization points are defined as the points at which the state is approximated.
The discretization points in an interval k , therefore, are (τ (k)1 , ... , τ(k)Nk+1). It is noted that
the control is approximated at the collocation points, (τ (k)1 , ... , τ(k)Nk). Next, an Nthk degree
polynomial approximation to the state is given by Eq. (4–73). The control on the other
hand, is discretely approximated at the Nk collocation points within each interval. The
77
discretization points and collocation points are now compared for the hp–LGR method.
When using a single approximating interval as is shown in Fig. 4-4A, the discretization
points differ from the collocation points only at the final mesh point, tK . Furthermore,
for a multiple-interval discretization as seen in Fig. 4-4B, again, the discretization
points differ from the collocation points only at the final mesh point. While the hp–LG
pseudospectral method did not approximate the control at any mesh points, the hp–LGR
pseudospectral method approximates the control at every mesh point except the final
mesh point.
4.3.1 The hp-LGR Pseudospectral Transformed Adjoint System
The KKT conditions of the NLP defined by the hp–LGR pseudospectral method are
now derived. The Lagrangian of the hp-LGR pseudospectral method is given as
L = Φ(X(1)1 ,X
(K)NK+1)− 〈Ψ,φ(X(1)1 ,X(K)NK+1〉 (4–85)
+
K∑
k=1
Nk∑
j=1
tk − tk−12
(w(k)j g
(k)j − 〈Γ(k)j ,C
(k)j 〉)
−K−1∑
k=1
Nk∑
j=1
〈Λ(k)j ,D(k)j ,1:NkX(k)1:Nk+D
(k)j ,Nk+1
X(k+1)1 − tk − tk−1
2f(k)j 〉
−NK∑
j=1
〈Λ(K)j ,D(K)j ,1:NK
X(K)1:NK+D
(K)j ,NK+1
X(K)NK+1
− tK − tK−12
f(K)j 〉
where Λ(k), Γ(K), and Ψ are the multipliers associated with Eq. (4–82), Eq. (4–83), and
Eq. (4–84) in mesh interval k , respectively. The KKT conditions of the multiple-interval
Legendre-Gauss-Radau discretization are then given as
D(1)T
j Λ(1) =t1 − t02
∇X(
w(1)j g
(1)j + 〈Λ(1)j , f
(1)j 〉 (4–86)
−〈Γ(1)j ,C(1)j 〉
)
− δ1j
(
−∇X(1)1Φ+∇
X(1)1〈Ψ,φ〉
)
, (j = 1, ... ,N1),
D(k)T
j Λ(k) =tk − tk−12
∇X(
w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 (4–87)
−〈Γ(k)j ,C(k)j 〉
)
− δ1jD(k−1)TNk−1+1
Λ(k−1), (k = 2, ... ,K , j = 1, ... ,Nk).
D(K)T
NK+1Λ(K) = ∇
X(K)NK+1
(Φ− 〈Ψ,φ〉), (4–88)
78
7
9
02
3
−1 −0.5 0.5 1
4
5
6
8
10
Discretization Points
Collocation Points
Pol
ynom
ialD
egre
e
t
A Single-Interval Collocation Points and Discretization Points.
7
02
3
−1 −0.5 0.5 1
4
5
6
8
Discretization Points
Collocation Points
t
Num
ber
ofIn
terv
als
B Multiple-Interval Collocation Points and Discretization Points.
Figure 4-4. Collocation and Discretization Points by LGR Methods.
0 = ∇U
(
w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 − 〈Γ(k)j ,C
(k)j 〉
)
, (4–89)
(k = 1, ... ,K , j = 1, ... ,Nk),
0 = ∇t0(Φ− < Ψ,φ >) (4–90)
+
K∑
k=1
Nk∑
j=1
(
ak − ak−12
(w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 − 〈Γ(k)j ,C
(k)j 〉)
)
0 = ∇tf (Φ− < Ψ,φ >) (4–91)
+
K∑
k=1
Nk∑
j=1
(
ak − ak−12
(w(k)j g
(k)j + 〈Λ(k)j , f
(k)j 〉 − 〈Γ(k)j ,C
(k)j 〉)
)
79
Next, consider the change of variables
ψ = Ψ, (4–92)
γ(k)j =
Γ(k)j
w(k)j
, (k = 1, ... ,K , j = 1, ... ,Nk), (4–93)
λ(k)j =
Λ(k)j
w(k)j
, (k = 1, ... ,K , j = 1, ... ,Nk), (4–94)
π(k) = D(k)TNk+1Λ(k), (k = 1, ... ,K). (4–95)
Furthermore, define the matrix D(k)† [40] as
D(k)†11 = −D(k)11 − 1
w(k)1
, (4–96)
D(k)†ij = −
w(k)j
w(k)i
D(k)ji otherwise. (4–97)
D(k)† is the corresponding differentiation matrix for a Lagrange polynomial approximation
using the Nk LGR points as support points in interval k . Substituting Eqs. (4–92)–(4–97)
into Eqs. (4–86)–(4–91), the transformed adjoint system is given as
D(1)†j λ(1) = −t1 − t0
2∇XH(X(1)j ,U
(1)j ,λ
(1)j ,γ
(1)j ) (4–98)
+δ1j
w(1)1
(−∇X(1)1(Φ− 〈ψ,φ〉)− λ(1)1 ),
D(k)†j λ(k) = −tk − tk−1
2∇XH(X(k)j ,U
(k)j ,λ
(k)j ,γ
(k)j ) (4–99)
+δ1j
w(k)1
(π(k−1) − λ(k)1 ), (k = 2, ... ,K , j = 1, ... ,Nk)
0 = ∇UH(X(k)j ,U
(k)j ,λ
(k)j ,γ
(k)j ), (k = 1, ... ,K , j = 1, ... ,Nk) (4–100)
π(K) = ∇X(K)NK+1
(Φ− 〈ψ,φ〉) (4–101)
0 =
K∑
k=1
ak−1 − ak2
Nk∑
j=1
w(k)j H(X
(1)j ,U
(1)j ,λ
(1)j ,γ
(1)j ) (4–102)
+∇t0(Φ− 〈γ,ψ〉),
0 =
K∑
k=1
ak − ak−12
Nk∑
j=1
w(k)j H(X
(1)j ,U
(1)j ,λ
(1)j ,γ
(1)j ) (4–103)
+∇t0(Φ− 〈γ,ψ〉),
80
where D(k)†j is the j th row of D(k)†. From the results of Ref. [39], we expand Eq. (4–95)
using Eqs. (4–86) and (4–87) to obtain the following relationships:
−∇X(1)1(Φ + 〈ψ,φ〉) = π(1) + t1 − t0
2
N1∑
j=1
w(1)j ∇xH(X(1)j ,U
(1)j ,λ
(1)j ,γ
(1)j ). (4–104)
π(k−1) = π(k) +tk − tk−12
Nk∑
j=1
w(k)j ∇XH(X(k)j ,U
(k)j ,λ
(k)j ,γ
(k)j ). (k = 2, ... ,K) (4–105)
By comparing Eq. (4–21) and Eq. (4–101), the costate approximation at t = tf is given
as
λ(K)NK+1
= π(K). (4–106)
For k = K , the right-hand side of Eq. (4–105) is then an approximation to λ(K)1 .
Therefore,
λ(K)1 = π(K−1). (4–107)
Furthermore, using Eq. (4–107), the final term in Eq. (4–99) disappears for k = K . Next,
let the costate be continuous at mesh point k = K − 1. Then,
λ(K−1)NK−1+1
= λ(K)1 = π(K−1), (4–108)
and for k = K − 1, the right hand side of Eq. (4–105) becomes an approximation to
λ(K−1)1 . Therefore,
λ(K−1)1 = π(K−2), (4–109)
and the final term in Eq. (4–99) disappears for k = K − 1. If the costate is continuous at
every mesh point, then
λ(k)Nk+1
= λ(k+1)1 = π(k), 1 ≤ k ≤ K − 1 (4–110)
and the final term in Eq. (4–99) disappears for k = 2, ... ,K . Furthermore, the left hand
side of Eq. (4–104), then, is an approximation to the costate at t0 and therefore,
λ(1)1 = −∇
X(1)1(Φ + 〈ψ,φ〉) (4–111)
81
and the final term in Eq. (4–98) disappears. Therefore, for the case when the costate
is continuous at every mesh point, the final term in Eqs. (4–98) and (4–99) disappears
and the transformed adjoint system is a discrete representation of the continuous-time
first-order optimality conditions.
Next, suppose that the costate is discontinuous at a particular mesh point M ∈
[1, ... ,K − 1]. Then
π(M) = λ(M+1)1 = λ
(M)NM+1
− ρ(M) (4–112)
where ρ(M) is the difference between λ(M)NM+1 and λ(M+1)1 . Therefore, if the costate
is discontinuous at mesh point M, π(M−1) 6= λ(M)1 in Eq. (4–99). As a result, the
transformed adjoint system given in Eqs. (4–98)–(4–103) is not a discrete representation
of the first-order optimality conditions given in Eqs. (4–16)–(4–23).
4.3.2 Sparsity of the hp–LGR Pseudospectral Method
The sparsity of the hp–LGR pseudospectral method is now described. It is noted
that the only dense blocks of non-zero numbers that occur in the NLP defined by the
hp–LGR pseudospectral method are a result of the Lagrange polynomial approximation
to the state in each interval in Eq. (4–82). The size of these dense blocks are dependent
upon the degree of approximating polynomial, Nk , in each interval. The constraint
Jacobian for the hp–LGR pseudospectral method is now described in detail. The total
vector of NLP variables corresponding to the discretized state, control and initial and
final time is constructed. Define the (N + 1)n × 1 vector zx as the vector containing each
component of the state at all the discretization points, i.e.,
zx =
χ1...
χn
(4–113)
where χn is the (N + 1)× 1 vector corresponding to the i th component of the state at the
discretization points. Furthermore, define the Nm × 1 vector zu as the vector containing
82
each component of the control at all the collocation points, i.e.,
zu =
σ1
...
σm
(4–114)
where σi is the N × 1 vector corresponding to the i th component of the control at the
collocation points. Therefore, the total vector of NLP variables is
z =
zx
zu
t0
tf
(4–115)
and the total number of NLP variables is (N + 1)n + Nm + 2. Next, the total vector of
NLP constraints are constructed. Define the Nn × 1 vector yD as the vector containing
the collocation conditions for each component of the state, i.e.,
yD =
ζ1...
ζn
(4–116)
where ζ i is the N × 1 vector corresponding to the collocation conditions for the i th
component of the state. Next, define the Ns × 1 vector yC as the vector containing the
the inequality path constraints:
yC =
η1...
ηs
(4–117)
where ηi is the N × 1 vector corresponding to the i th inequality path constraint. Finally,
define the q × 1 vector yE to be the vector of boundary conditions in Eq. (4–84).
83
Therefore, the total vector of constraints for the hp–LGR method is
y =
yD
yC
yE
(4–118)
and the total number of NLP constraints is Nn + Ns + q. It is noted that unlike the
hp–LG pseudospectral method, there is no dependence on the number of variables or
number of constraints on the total number of mesh intervals. Therefore, as the number
of approximating mesh intervals grows large, it does not affect the size of the NLP
defined by the hp–LGR pseudospectral method. Finally, the constraint Jacobian for the
hp–LGR pseudospectral method is given as
G(z) =∂y
∂z. (4–119)
The density of the constraint Jacobian is now examined. For the constraints
associated with yC , each row corresponds to an inequality path constraint evaluated at a
collocation point. Examining Eq. (4–83), at each collocation point, yC is only a function
of the state and control at that collocation point and the initial and final time. Therefore,
the rows of yC are sparse. Furthermore, yE is only a function of the state at the initial
and final time, and the initial and final time. Therefore, the rows of yE are sparse as well.
The density of an LGR pseudospectral method is a result of the rows of the
constraint Jacobian corresponding to yD . It is seen in Eq. (4–82) that for any collocation
point, Eq. (4–82) is a function of the state and control at that collocation point, the initial
and final time, and Nk additional variables corresponding to the Lagrange polynomial
approximation to the state. Therefore, as Nk grows large in any approximating interval,
the number of non-zero elements in any row of yD grows large as well.
Figs. 4-5 and 4-6 shows a qualititive representation of the constraint Jacobian for
the hp–LGR pseudospectral method. Fig. 4-5 represents an hp–LGR pseudospectral
approximation where Nk is large in each approximating interval and Fig. 4-6 represents
84
an hp–LGR pseudospectral approximation where Nk is small in each approximating
interval. It is seen that for large Nk , large, dense blocks arise in the constraint Jacobian.
For small values of Nk , these dense blocks are much smaller. Therefore, the sparsity of
an hp–LGR pseudospectral method is dependent upon Nk , or, the degree of polynomial
approximation within any interval. For low-degree approximations, a sparse NLP is
obtained. For high-degree approximations, the NLP is much more dense.
Points
Figure 4-5. Qualitative Representation of constraint Jacobian for LGR points with LargeNk .
85
Time
Figure 4-6. Qualitative Representation of constraint Jacobian for LGR points with SmallNk .
4.4 Examples
The hp–LG and LGR pseudospectral methods are now applied to two optimal
control problems with analytic solutions. In the first example, the optimal state, control
and costate are smooth, while in the second example, the state, control and the second
component of the costate are non-smooth and continuous, and the first component of
the costate is discontinuous. The purpose of the examples is to assess the accuracy of
the multiple-interval LG and LGR methods for approximating state, control and costate.
86
The problems are solved by either p or h–methods. For p–method problems, the number
of intervals is fixed and the degree of approximation within each interval is allowed to
vary. For h–method problems, the degree of approximation is fixed within each interval
and the number of intervals is allowed to vary. Finally, the terminology “h–x” denotes an
h–method with x collocation points in every mesh interval.
4.4.1 Example 1 - Problem with a Smooth Solution
Consider the following optimal control problem [39]. Minimize the cost functional
J =1
2
∫ tf
0
(y + u2)dt (4–120)
subject to the dynamic constraint
y = 2y + 2u√y (4–121)
and the boundary conditions
y(0) = 2 (4–122)
y(tf ) = 1 (4–123)
where tf = 5. The exact solution to the optimal control problem is given as
y ∗(t) = x2(t) (4–124)
λ∗y(t) =λx2√y
(4–125)
u∗(t) = −2λ∗(t)√
y ∗(t) (4–126)
where x(t) and λx(t) are given as
x(t)
λx(t)
= exp(At)
x0
λx0
(4–127)
87
where
A =
1 −1
−1 −1
(4–128)
and
x0 =√2 (4–129)
xf = 1 (4–130)
λx0 =xf − B11x0B12
(4–131)
B =
B11 B12
B21 B22
= exp(Atf ). (4–132)
The convergence rates for p and uniformly distributed h–2, h–3, and h–4–LG
and LGR methods are analyzed. Furthermore, the p–method uses only a single
approximating interval. Because the problem has a smooth solution, it is expected that a
p–method will demonstrate the fastest convergence rates for this problem. Furthermore,
because the problem has a continuous costate, it is expected that the multiple-interval
LG and LGR methods will provide accurate approximations to the continuous-time
optimal control problem.
Fig. 4-7 shows the state, costate, and control solution for this problem. As is seen
in Fig. 4-7, the state, costate, and control are all smooth. Figs. 4-8A, 4-8B, and 4-8C
show the maximum state, control, and costate error at the collocation points as a
function of the number of collocation points, respectively, for both the p–LG method
and h–x–LG methods. Furthermore, the maximum state, control, and costate error at
the collocation points as a function of the number of collocation points for p–LGR and
h–x–LGR methods are shown in Figs 4-9A, 4-9B, and 4-9C. Because the solution to
this problem is smooth, for both LG and LGR methods, the p–method demonstrates the
most rapid rate of convergence to the exact solution. Furthermore, it is noted that the
p–methods converge exponentially. Next, it is seen that the h–methods converge
88
0
0
2
2 3
−1
1
1 4 5
−2
−4
−3
Sol
utio
n
Time
y∗(t)
λ∗y (t)
u∗(t)
Error
Figure 4-7. Solution to Example 4.4.1.
at a significantly slower rate as compared with the p–methods. In this example,
by either LG or LGR method, convergence is achieved much more rapidly using a
p–method. Moreover, as the degree of polynomial approximation is increased utilizing
the h-methods, the rate of convergence is increased as well. It is also noted that there
is virtually no difference between the convergence rates of the LG and LGR methods
for the state and control. Furthermore, because the multiple-interval LGR method is
a more computationally efficient NLP for a given number of collocation points, if only
an accurate state and control are desired, this result implies that the LGR method
should be used. Interestingly, the error in the costate for the h–LG methods is noticeably
smaller than the h–LGR methods for this problem. This result implies that if an accurate
costate approximation is required by a multiple-interval LG or LGR method, the LG
method should be used.
89
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2h–3h–4
A State Error.
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2h–3h–4
B Control Error.
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2h–3h–4
C Costate Error.
Figure 4-8. Convergence Rates Utilizing p, h–2, h–3, h–4–LG Methods for Example4.4.1.
4.4.2 Example 2 - Bryson-Denham Problem
Consider the problem to minimize the cost functional [2]
J =1
2
∫ 1
0
a2dt (4–133)
subject to the dynamic equations
x = v (4–134)
v = a (4–135)
90
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
ph–2h–3h–4
A State Error.
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
ph–2h–3h–4
B Control Error.
0
0
2
−2
−4
−6
−810050 150 200
log10
Max
imum
Err
or
Number of Collocation Points
ph–2h–3h–4
C Costate Error.
Figure 4-9. Convergence Rates Utilizing p, h–2, h–3, h–4–LGR Methods for Example4.4.1.
the boundary conditions
x(0) = x(1) = 0 (4–136)
v(0) = −v(1) = 1 (4–137)
and the constraint x(t) ≤ l .
91
The solution to this problem is given as
x =
l [1− (1− t3l)3] : 0 ≤ t ≤ 3l
l : 3l ≤ t ≤ 1− 3l
l [1− (1− 1−t3l)3] : 1− 3l ≤ t ≤ 1
(4–138)
v =
(1− t3l)2 : 0 ≤ t ≤ 3l
0 : 3l ≤ t ≤ 1− 3l
−(1− 1−t3l)2 : 1− 3l ≤ t ≤ 1
(4–139)
a =
− 23l(1− t
3l) : 0 ≤ t ≤ 3l
0 : 3l ≤ t ≤ 1− 3l
− 23l(1− 1−t
3l) : 1− 3l ≤ t ≤ 1
(4–140)
λx =
29l2
: 0 ≤ t ≤ 3l
0 : 3l ≤ t ≤ 1− 3l
− 29l2: 1− 3l ≤ t ≤ 1
(4–141)
λv =
23l(1− t
3l) : 0 ≤ t ≤ 3l
0 : 3l ≤ t ≤ 1− 3l23l(1− 1−t
3l) : 1− 3l ≤ t ≤ 1
(4–142)
Unlike the previous example that had a smooth solution and a continuous costate,
the solution to this problem is only piecewise smooth and has a discontinuous costate
solution for λx . Within any piecewise interval, the highest order behavior in the exact
solution is order three. Therefore, the only difficulty in accurately approximating the
solution to this problem is in approximating the nonsmooth features at t = 3l and
92
t = 1− 3l and the fact that λx is discontinuous at t = 3l and t = 1− 3l . In this example,
l = 1/12.
4.4.2.1 Case 1: Location of Discontinuity Unknown
p–LG and LGR collocation methods and uniformly distributed h–2–LG and LGR
collocation methods are used to approximate the solution to this problem in the case
that the location of discontinuity in λx is assumed not to be known. In this case, mesh
points will, in general, not be at the location of the discontinuity in λx . Figs. 4-10A–4-10D
and Figs. 4-11A–4-11D show the convergence rates for state, control, and costate for
this problem as a function of collocation points for p and h–2–LG methods and p and
h–2–LGR methods, respectively. First, it is seen that there is essentially no difference
in the convergence rates of the p and h–2–methods. Because this problem has a
non-smooth solution, exponential convergence rates from a p–method do not exist.
Furthermore, it is seen that there is no substantial difference in accuracy between
LG and LGR methods. It is also noted that the state, control, and λv do converge
to the exact solution as the number of collocation points are increased. It is also
noted that λx does not converge as the number of collocation points are increased.
Figs. 4-12A–4-12E show the approximation for the h–2–method utilizing 150 collocation
points. Visually, the problem is reasonably approximated except for λx . The difficulty
in approximating λx is isolated to the regions near the discontinuities (i.e., the point at
approximately t = 0.25).
4.4.2.2 Case 2: Location of Discontinuity Known
Next, the solution to the problem is approximated knowing the exact locations of
discontinuities in λx . p and h–3–LG and LGR methods are used to approximate the
solution to this problem. First, define the time domains T1 ∈ [0, 3l ], T2 ∈ [3l , 1 − 3l ],
and T3 ∈ [1 − 3l , 1]. For the p–method approximations, a single approximating
interval is used for each of T1, T2, and T3 with a variable degree polynomial in each
interval. Furthermore, for the h–3–method, a variable number of uniformly distributed
93
0
0
−1
−2
−410050 150
−3
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
t)
A Maximum Error in the State.
−1.5
0
0
−1
−0.5
−210050 150
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
B Maximum Error in the Control.
0
1.5
0.5
1
10050 150
plog10
Max
imum
Err
or
Number of Collocation Points
p
h–2
C Maximum Error in λx .
−1.5
0
0
−1
−0.5
0.5
1
−210050 150
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
D Maximum Error in λv .
Figure 4-10. Case 1: Convergence for p– and Uniformly Spaced h–2–LG methods forExample 4.4.2.
approximating intervals of third degree are used in T1 and T3, while T2 is approximated
using a single interval of third degree. Figs. 4-13A–4-13F show the maximum errors at
the collocation points when the approximation to the solution of the problem is divided
in the manner described. In Figs. 4-13A, 4-13C, and 4-13E, the x-axis denotes the
number of intervals in T1 and T3. In Fig. 4-13B, 4-13D, and 4-13F, the x-axis denotes
the degree of approximating polynomial in T1, T2, and T3. First, it is noted that the
maximum degree of the exact solution is three. Therefore, the p and h–3–methods
should exactly approximate the solution of this problem. Any deviation from an exact
94
0
0
−1
−2
−410050 150
−3
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
t)
A Maximum Error in the State.
−1.5
0
0
−1
−0.5
0.5
1
−210050 150
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
B Maximum Error in the Control.
1.4
1.6
1.2
0
1
10050 1500.8
plog10
Max
imum
Err
or
Number of Collocation Points
p
h–2
C Maximum Error in λx .
−1.5
0
0
−1
−0.5
0.5
1
−210050 150
log10
Max
imum
Err
or
Number of Collocation Points
p
h–2
D Maximum Error in λv .
Figure 4-11. Case 1: Convergence for p– and Uniformly Spaced h–2–LGR Methods forExample 4.4.2.
approximation is due to the fact that the transformed adjoint systems are an inexact
discrete representation of the continuous-time first-order optimality conditions if mesh
points are at the locations of discontinuity in the costate.
It is seen that by either p or h–3–LG method approximations, the error for the
state, control and costate are all near machine precision for either a low number of
intervals or degree of approximating polynomial. As the number of intervals or degree of
polynomial is increased, the approximation accuracy becomes worse. Furthermore, by
p or h–3–LGR methods, the error as a function of number of approximating intervals or
95
00 10.2 0.4 0.6 0.8
Sol
utio
n
Time
x∗(t)
x(t)
0.02
0.04
0.06
0.08
0.1
A x∗(t) and x(t).
0
0−1
−0.5
0.5
1
10.2 0.4 0.6 0.8
Sol
utio
n
Time
v∗(t)v(t)
B v∗(t) and v(t).
0
0
2
1
−2
−4
−6
−8
−100.2 0.4 0.6 0.8
Sol
utio
n
Time
t)
a∗(t)
a(t)
C a∗(t) and a(t).
Time
0
0 1
40
60
0.2 0.4 0.6 0.8
20
λ∗x(t)λx(t)
λx(t)
−20
−40
D λ∗x(t) and λx(t).
0
0
2
1
4
−2
6
8
10
0.2 0.4 0.6 0.8
Sol
utio
n
Time
λ∗v (t)λv (t)
E λ∗v (t) and λv (t).
Figure 4-12. Case 1: Solution by a Uniform h–2-Method Using 150 Collocation PointsCompared with the Exact Solution.
96
degree of approximating polynomial neither converges nor diverges. Rather, errors are
banded between O(10−4) and O(10−16). While high levels of accuracy are demonstrated
by p and h–3–LG and LGR methods, the behaviors of these methods with respect to
this case are erratic because the transformed adjoint system is an inexact discrete
representation of the continuous-time first-order optimality conditions.
4.5 Summary
The hp–LG and LGR pseudospectral methods for approximating a nonlinear
continuous-time optimal control problem have been posed. LG and LGR points are
used because they provide highly accurate quadrature approximations and avoid Runge
phenomenon in the Lagrange polynomial approximation of the state. Furthermore, the
hp–LG and LGR methods have been posed such that an arbitrary number of intervals,
with arbitrary location, and an arbitrary number of collocation points per interval may be
used. Over regions where the solution is smooth, increasing the number of collocation
points in approximating intervals will result in efficient high-accuracy approximations.
For regions of the trajectory where the solution is non-smooth, increasing the number of
low-order approximating intervals will result in computationally efficient approximations
of these non-smooth regions. Next, the KKT conditions of the hp–LG and LGR methods
are derived. The transformed adjoint systems are derived from the KKT conditions
and are shown to be discrete representations of the continuous-time first-order
necessary conditions if the costate is continuous. If the costate is discontinuous, then
the transformed adjoint systems are not discrete representations of the continuous-time
first-order necessary conditions. Two examples are used to demonstrate the accuracy
of approximation of the hp–LG and LGR methods. The solution to the first example
is smooth and has a continuous costate while the solution to the second example is
nonsmooth and has a discontinuous costate. It is seen in the first example that as
the number of approximating intervals or degree of approximation in any interval is
increased, the accuracy in approximating the state, control, and costate is increased as
97
−18
0
−6
−8
−10
−12
−14
−16
10 40 5020 30
LG Ptslog10
Max
imum
Err
ort)
Number of Intervals
LGR Pts
A State Error by LG and LGR h–3–Methods.
−18
0
−6
−8
−10
−12
−14
−16
10 40 5020 30
LG Pts
log10
Max
imum
Err
or
Number of Collocation Points
LGR Pts
B State Error by LG and LGR p–Methods.
0
−4
−6
−8
−10
−12
−14
−1610 40 5020 30
LG Pts
plog10
Max
imum
Err
or
Number of Intervals
LGR Pts
C Control Error by LG and LGR h–3–Methods.
0
−4
−6
−8
−10
−12
−14
−1610 40 5020 30
LG Ptslog10
Max
imum
Err
or
Number of Collocation Points
LGR Pts
D Control Error by LG and LGR p–Methods.
0
−4
−6
−8
−10
−12
−1410 40 5020 30
LG Pts
ointslog10
Max
imum
Err
or
Number of Intervals
LGR Pts
E Costate Error by LG and LGR h–3–Methods.
0
−2
−4
−6
−8
−10
−12
−1410 40 5020 30
LG Pts
log10
Max
imum
Err
or
Number of Collocation Points
LGR Pts
F Costate Error by LG and LGR p–Methods.
Figure 4-13. Case 2: Convergence for p and h–3–LG and LGR Methods for Example4.4.2.
98
well. Furthermore, there is little difference in the approximation accuracy of the state
and control using LG or LGR points, but, the costate approximation is significantly more
accurate using LG points. Next, the second example studies a problem whose solution
has a discontinuous costate. It is demonstrated that if mesh points are not located at
the location of discontinuity in the costate, significant errors exist in approximating the
discontinuity. Furthermore, if mesh points are located at the locations of discontinuity
in the costate, high levels of accuracy are obtained in the approximation although the
trends are quite erratic. For the LG methods, a few number of approximating intervals
or low-degree approximations best approximated the solution to the problem. For the
LGR methods, the errors are banded within a large range from O(10−4) to O(10−16).
Therefore, if the costate is discontinuous, it is best to put mesh points at the exact
location of discontinuity, but, guaranteeing high-accuracy by the proposed hp–LG or
LGR methods is difficult for the case of discontinuous costate solutions. Finally, the
sparsity of the hp–LG and LGR methods is studied. It is seen that as the number of
collocation points within an interval grows, so does the density of the approximating NLP.
Therefore, there is a trade off that exists between increasing the number of collocation
points in an interval in order to obtain higher accuracy solutions that also increases the
density of the NLP. If an interval is approximating a smooth region of a solution, the
rapid rates of convergence by increasing the number of LG or LGR points far outweigh
the increase in NLP density. If an interval is approximating a non-smooth region of a
solution, then it is more efficient to increase the accuracy of the approximating NLP
by dividing the problem into more low-order, sparse, approximating intervals. Finally,
it is seen that the size of the hp–LG method is dependent upon both the number of
collocation points and the number of mesh intervals whereas the size of the hp–LGR
method is only dependent upon the number of collocation points. Therefore, if a large
number of mesh intervals are to be used, the hp–LGR method results in a more efficient
NLP.
99
CHAPTER 5HP–MESH REFINEMENT ALGORITHMS
In this chapter, two hp-mesh refinement algorithms are presented using the
hp–LG and LGR methods of Chapter 4. In each algorithm, a naive initial mesh is
selected. Because it is assumed that no a priori knowledge of the solution structure
of a continuous-time optimal control problem being approximated is known, the naive
initial meshes are either a single-interval of moderate degree or relatively few uniformly
distributed intervals of low-degree. From this naive approximation, both algorithms
assess the approximation errors in each interval. If the accuracy of the approximation
in an interval needs to be improved, either the degree of approximation in the interval
is increased or the interval is subdivided into more approximating subintervals. These
strategies are then repeated iteratively until an accurate approximation is obtained.
Because a known exact solution is not generally available, solution errors in an
interval are approximated by examining how closely the differential-algebraic constraint
equations are satisfied between collocation points.
The first mesh refinement algorithm is more heavily weighted as a p–biased
hp–mesh refinement algorithm. An interval is subdivided only if it is believed that
exponential convergence does not hold in that interval. The second algorithm is an
h–biased hp–mesh refinement algorithm. In this second algorithm, subdivision of an
interval is chosen much more frequently and an increase in degree of polynomial
approximation is chosen only if the solution in an interval is considered smooth. First,
a discussion on assessment of the errors in an approximating grid are discussed.
Next, hp–mesh refinement algorithm 1 and 2 are described. It is noted that hp–mesh
refinement algorithm 1 and 2 are adaptations of the algorithms presented in Refs. [66]
and [67].
100
5.1 Approximation of Errors in a Mesh Interval
Consider an hp–LG or LGR approximation to the solution of a continuous-time
optimal control problem as defined in Chapter 4 with K mesh intervals. Furthermore,
let t0 < t1 < ... < tK be the mesh points such that tk−1 defines the beginning of
the k th mesh and tk defines the end of the k th mesh. Next, let Nk be the number of
collocation points in mesh interval k . In designing the hp–mesh refinement algorithms
an assessment of the approximation accuracy of each approximating interval k must
be made without knowledge of the exact solution to a continuous-time optimal control
problem.
In order to provide an assessment on the accuracy of the approximation without
knowledge of the exact solution, the satisfaction of the differential-algebraic constraints
between collocation points are examined. At the collocation points, the differential-algebraic
equations are enforced. However, if an approximating hp–pseudospectral approximation
is accurately approximating the continuous-time optimal control problem, then the
differential-algebraic constraints should be nearly satisfied at an arbitrary point. In
order to evaluate the differential-algebraic constraints between collocation points, the
state and control must be interpolated to an arbitrary point. The state is defined at an
arbitrary point in an interval k by the Lagrange polynomial of Eqs. (4–24) or (4–73)
for the hp–LG or LGR methods, respectively. The control on the other hand, is only
calculated at the collocation points and does not have a unique underlying polynomial
approximation. Therefore, any control approximation that matches the value of the
control at the collocation points is a valid approximation (e.g., linear, cubic, spline,
Lagrange polynomial). In this research, a Lagrange polynomial approximation of
the control is used. If the state is being approximated by a high-accuracy Lagrange
polynomial, then it is counter-productive to use a low-order, less accurate approximation
to the control. Therefore, in either the hp–LG or LGR method, the Lagrange polynomial
approximation of the control with support points at the Nk collocation points in interval k
101
is given as
U(k)(τ) =Nk∑
i=1
U(k)i L(k)i (τ). (5–1)
Using the aforementioned state and control approximations, the differential-algebraic
constraints can now be evaluated at an arbitrary point in a mesh interval k . In order to
sample the differential-algebraic constraints between the collocation points, define
L points in interval k as t(k) = (t(k)1 , ... , t(k)L ) ∈ [tk−1, tk ]. The differential-algebraic
constraints can then be evaluated at these L points as
∣
∣
∣X(k)i (t
(k)l )− f
(k)i (X
(k)l ,U
(k)l )
∣
∣
∣= a
(k)li , (5–2)
C(k)j (X
(k)l ,U
(k)l ) = b
(k)lj , (5–3)
where i = 1, ... , n, j = 1, ... , s , and l = 1, ... ,L. Next, define e(k)max as the maximum
element of a(k)li or b(k)lj . If e(k)max is less than a specified error tolerance, ǫ, then the solution
in the interval is considered accurate. It is noted that Eq. (5–2) is the magnitude of
the violation in the collocation equations while Eq. (5–3) is simply an evaluation of the
inequality path constraints at L points. If the inequality path constraints are inactive,
the left hand side of Eq. (5–3) will be negative, and therefore, be less than ǫ. When the
path constraints are active, between collocation points the left hand side of Eq. (5–3)
may become positive thus violating the path constraint. If any element a(k)li or b(k)lj is
greater than ǫ, then the interval is considered inaccurate and must be refined such
that a more accurate approximation is made. The two hp–mesh refinement algorithms
are now presented that determine how to refine inaccurate approximating intervals. In
hp–mesh refinement algorithm 1, the errors estimated in Eqs. (5–2)–(5–3) are used
directly to determine if an inaccurate interval should be subdivided or if the degree of
approximation should be increased. In hp–mesh refinement algorithm 2, an h–biased
strategy is used. The curvature of the state in an interval is used to determine the
placement of the mesh points and whether to subdivide an interval or increase the
degree of the approximating polynomial within an interval. Even when it is chosen to
102
increase the degree of the approximating polynomial, the degree of the approximation
remains small.
5.2 hp–Mesh Refinement Algorithm 1
A description of hp–mesh refinement algorithm 1 is now given. It is noted that
hp–mesh refinement algorithm 1 is similar to the algorithm presented in Ref. [66] except
for the following differences. In Ref. [66], a cubic interpolation to the control was used.
In this dissertation, a Lagrange polynomial approximation to the control is used within
each interval. Furthermore, in Ref. [66], errors are assessed at the midpoints between
collocation points, whereas in this dissertation, errors are assessed at the arbitrary
points t(k) within each interval. Furthermore, Ref. [66] only modified the mesh based
upon analysis of the collocation conditions. In this dissertation, the collocation conditions
and path constraints are used to modify the mesh.
5.2.1 Increasing Degree of Approximation or Subdividing
The fundamental and distinct property of an hp–mesh refinement algorithm is the
step that determines whether to increase the degree of polynomial approximation in an
inaccurate interval or to subdivide the interval. Consider again the matrices defining the
violation of the differential-algebraic constraint equations in Eqs. (5–2) and (5–3)
A(k) = a(k)li (5–4)
B(k) = b(k)lj , (5–5)
where the column i of A(k) and column j of B(k) defines the magnitude of violation
in the collocation equations for the i th component of the state and violation of the j th
path constraint equation, respectively, at t(k). Let the state X (k)m (t), m ∈ [1, n] be the
component of the state approximation with the maximum value of a(k)li . Furthermore,
let the constraint C (k)p p ∈ [1, s] be the pth inequality path constraint with the maximum
value of b(k)lj . The component of the state or inequality path constraint with maximum
error is always used to determine how to proceed with the mesh refinement. If e(k)max is
103
associated with the inequality path constraints, the interval is subdivided. It is assumed
that, if a path constraint becomes active in an interval, the trajectory is non-smooth
and, therefore, it is necessary to subdivide the interval. If the maximum error occurs
in the collocation equations, the following procedure is used to determine whether to
increase the degree of polynomial approximation or subdivide the interval. First, define
the column of A(k) that contains e(k)max as
e(k) =
e(k)1
...
e(k)L
=
a(k)1i
...
a(k)Li
. (5–6)
Next, define the arithmetic mean of e(k) as
e(k) =
∑L
i=1 ei
L. (5–7)
Finally, define β as
β =
β(k)1...
β(k)L
=
e(k)1 /e(k)
...
e(k)L /e(k)
. (5–8)
β then defines the ratio of the error at a point e(k)1 compared to the average error
e(k). Next, define a parameter ρ, where ρ is used to determine whether to increase
the degree of the approximation in the interval or to subdivide the interval. If every
element of β is less than ρ, then no particular point dominates the errors in interval k .
In this case, the degree of the polynomial approximation in the interval is increased.
Furthermore, if values of β are greater than ρ, then errors in the interval are dominated
at particular points. In this case, the problem is subdivided at these points of maximum
error.
104
5.2.2 Location of Intervals or Increase of Collocation Poin ts
Now that a determination has been made as to whether an inaccurate interval k is
to be modified by increasing the degree of the polynomial or subdivision of the interval,
the details of each choice are now discussed. Consider the case where e(k)max occurs in
the collocation equations and every element of β is less than ρ. In this case, the number
of collocation points in an interval is increased by a specified amount N(+), that is,
N(i+1)k = N
(i)k + N
(+) (5–9)
where N(i)k is the number of collocation points in interval k on grid iteration i . Next,
consider the case where some elements of β are greater than ρ or e(k)max occurs in
the path constraint equations. If e(k)max is in the collocation equations, the interval is
subdivided at every local maximum of β that is also greater than ρ. Fig. 5-1 shows how
to divide an interval for this case. Furthermore, the number of collocation points in each
new interval is set to N(0). If e(k)max occurs in the path constraint equations, the interval
is subdivided at the location of maximum violation of the path constraint and each new
interval has N(0) collocation points.
-
Figure 5-1. Location of Intervals if Subdivision is Chosen.
105
5.2.3 Stopping Criteria
The algorithm stops when the dynamic constraints and inequality path constraints
are satisfied to the tolerance ǫ in every interval at L points between the collocation
points.
5.2.4 hp–Mesh Refinement Algorithm 1
hp–Mesh Refinement Algorithm 1 is now stated.
1. If this is the first iteration, initialize the problem choosing N(0) collocation points andK = 1 number of intervals, where N(0) is chosen by the user. Otherwise, solve theNLP using the current mesh.Begin: For k = 1, ... ,K ,
2. If e(k)max ≤ ǫ, then do not modify interval k . Otherwise, continue to step 3.
3. If the maximum error occurs in the collocation equations and every elementof β(k) < ρ, then increase the degree of approximation of mesh interval k byN(+).
4. Otherwise, if errors are largest in the collocation equations, refine the intervalat the points defining the maximum errors in β. If errors are largest in thepath constraint equations, refine the interval at the point of maximum error.Furthermore, set the number of collocation points to N(0) = 5 in each newinterval.
End: For k = 1, ... ,K .
5. Return to Step 1.
Several important aspects of hp–mesh refinement algorithm 1 are now clarified. It
is noted that ρ serves as a tuning parameter that varies the amount of weighting from
h to p–biases. For very small values of ρ, the h–bias is increased. For large values of
ρ, the algorithm is more p–biased. ρ should be selected such that detection of large
isolated errors is made and the approximation can be subdivided about these points.
Next, for the problems analyzed in this dissertation, N(+) = 10 because increasing
by more than ten collocation points may make the NLP unnecessarily dense. Next, all
newly created intervals are initialized with five collocation points for two reasons. First,
if exponential convergence in a newly created interval holds, five collocation points may
106
provide high-accuracy solutions. Second, initializing a newly created interval with five
collocation points will keep the total number of collocation points small.
5.3 hp–Mesh Refinement Algorithm 2
hp–mesh refinement algorithm 2 is now defined. Different from hp–mesh refinement
algorithm 1, hp–mesh refinement algorithm 2 is designed to be a much more h–biased
algorithm. It is noted that hp–mesh refinement algorithm 2 is similar to the algorithm
presented in Ref. [67] with the only modification in this dissertation being how the control
is interpolated. In this dissertation, the control in interval k ∈ 1, ... ,K is interpolated by
a Lagrange polynomial using support points at the Nk collocation points. In Ref. [67],
the control is interpolated with a Lagrange polynomial with support points at the Nk
collocation points and one additional non-collocated point for k ∈ 1, ... ,K − 1 and by a
Lagrange polynomial with support points at the NK collocation points in the final interval
K .
5.3.1 Increasing Degree of Approximation or Subdividing
If the solution in a mesh interval k is inaccurate, the first determination is whether
the degree of approximation in the interval should be increased or whether the interval
should be subdivided. Suppose that X (k)m (τ) is the component of the state approximation
in the k th mesh interval that corresponds to the maximum value of a(k)li . Furthermore, let
the curvature of the mth component of the state in mesh interval k be given by
κ(k)(τ) =|X (k)m (τ)|
∣
∣
∣
∣
[
1 + X(k)m (τ)2
]3/2∣
∣
∣
∣
. (5–10)
Next, define κ(k)max and κ(k) be the maximum and mean value of κ(k)(τ), respectively.
Furthermore, let rk be the ratio of the maximum to the mean curvature:
rk =κ(k)maxκ(k). (5–11)
107
If rk < rmax, where rmax > 0 is a user-defined parameter, then the curvature of mesh
interval k is considered uniform and the degree of approximation is increased within the
interval. If rk > rmax, then a large curvature relative to the remainder of the interval exists
and the interval is subdivided.
5.3.2 Increase in Polynomial Degree in Interval k
If rk < rmax, then the polynomial degree in mesh interval k needs to be increased.
Let M be the current degree of the approximating polynomial in the interval. The degree
Nk of the polynomial for the next grid iteration in mesh interval k is given by the formula
Nk = M + ceil(log10(e(k)max/ǫ)) + A (5–12)
where A > 0 is an arbitrary integer constant and ceil is the operator that rounds to the
next highest integer.
5.3.3 Determination of Number and Placement of New Mesh Point s
If rk > rmax, then mesh interval k is subdivided. Two quantities are now defined: The
number of subdivisions and the location of each subdivision. First, the new number of
mesh intervals, denoted nk , is computed as
nk = ceil(B log10(e(k)max/ǫ)), (5–13)
where B is an arbitrary integer constant. The locations of the new mesh points are
determined using the integral of a curvature density function in a manner similar to that
given in Ref. [30]. Specifically, let ρ(τ) be the density function [30] given by
ρ(τ) = cκ(τ)1/3, (5–14)
where c is a constant chosen so that
∫ +1
−1
ρ(ζ)dζ = 1.
108
Let F (τ) be the cumulative distribution function given by
F (τ) =
∫ τ
−1
ρ(ζ)dζ. (5–15)
The nk new mesh points are chosen so that
F (τi) =i − 1nk, 1 ≤ i ≤ nk + 1.
It is shown in Ref. [30] that placing the mesh points in this manner is results in the
smallest L1 norm error when a piecewise linear approximation of a curve is used. Finally,
it is noted that if nk = 1, then no subintervals are created. Therefore, the minimum value
for nk should be at least two. Figs. 5-2A and 5-2B show qualitatively how to divide an
interval into more intervals for a constant curvature in an interval and an interval with a
large curvature relative to the remainder of the interval, respectively.
5.4 hp–Mesh Refinement Algorithm 2
hp–mesh refinement algorithm 2 is now defined. The algorithm is initialized for a
coarse uniformly distributed mesh with a fixed, low-degree polynomial in each interval.
This approximation is solved, and then each mesh interval is analyzed. If errors are
less than ǫ, then the interval is not modified. Otherwise, if errors are greater than ǫ,
then the interval is modified according to the discussion of Sections 5.1 through 5.3.3.
The refinement process continues iteratively until a suitable approximating mesh is
constructed. hp–mesh refinement algorithm 2 is now given:
1. Solve the NLP using the current mesh.Begin: For k = 1, ... ,K ,
2. If e(k)max ≤ ǫ, do not modify interval k .
3. If either rk ≥ rmax or Nk > M, then refine the k th mesh interval into nksubintervals where nk is given by (5–13). Set the degree of the polynomialson each of the subintervals to be M and proceed to the next k .
4. Otherwise, set the degree of the polynomials on the k th subinterval to be Nk ,which is given in (5–12).
End: For k = 1, ... ,K .
109
A Constant Curvature.
B Variable Curvature.
Figure 5-2. Location of Intervals based on Curvature.
5. Return to Step 1.
Several important aspects of hp–mesh refinement algorithm 2 are now clarified.
hp–mesh refinement algorithm 2 is a h–biased algorithm. It is noted that unlike hp–mesh
refinement algorithm 1, an increase in the degree of polynomial approximation is
only allowed once within an interval. If the errors in approximation are still large after
increasing the degree of approximation, the interval is forced to subdivide as opposed
to increasing the degree of approximation again. Furthermore, Eq. (5–12) defines the
number of collocation points that are added to an interval based on a log10 difference in
110
the current error and desired error plus an arbitrary constant A. If the continuous-time
optimal control problem is known to have a smooth solution or if computational efficiency
on each mesh iteration is not a large concern, A can be chosen to be large. Next,
Eq. (5–13) defines the number of intervals created if subdivision is chosen. Eq. (5–13)
is a function of the log10 difference in the current error and the desired error and an
arbitrary multiplier B. A trade-off exists for large and small values of B. For small values
of B, fewer intervals will be created on each mesh iteration, but the number of mesh
iterations may grow large. For large values of B, more intervals will be created on each
mesh iteration, and the total number of mesh iterations may be reduced, but the number
of mesh intervals may grow large.
111
CHAPTER 6EXAMPLES
The hp–mesh refinement algorithms posed in Chapter 5 are now examined on
a variety of optimal control problems. The first example is the motivating example
of Section 3.1 whose solution, as we recall, is smooth. The second example is a
reusable launch vehicle entry problem whose solution appears to be smooth. The third
example is a problem where the timescale of the dynamics become fast as the final time
increases. The fourth example is the motivating example of Section 3.2 whose solution,
as we recall, is not smooth. Finally, the fifth example is a minimum time-to-climb of
a supersonic aircraft. This final example has two active path constraints along the
trajectory. The objective of this Chapter is to assess how well the hp–mesh refinement
algorithms perform relative to p and h–methods.
The examples were solved with modifications of the open-source optimal control
software GPOPS [37] using the NLP solver SNOPT [68]. All computations were
performed using a 2.5 GHZ Core 2 Duo Macbook Pro running Mac OS-X 10.5.8 with
MATLAB R2009b. Furthermore, analytic derivatives were used in the NLP solver. The
p–method discretizations were solved utilizing a single approximating interval with a
variable number of collocation points in the interval. The p–method simply assesses
the violations of Eqs. (5–2)–(5–3) at L uniformly distributed points between collocation
points where L = 1000. If errors are greater than ǫ, the number of collocation points
is increased by ten. Next, hp–mesh refinement algorithm 1 (hp(1)) uses ρ = 3.5 and
evaluates in each interval the violations of Eqs. (5–2)–(5–3) at L = 100 uniformly
distributed points between collocation points. hp–mesh refinement algorithm 2 (hp(2))
uses rmax = 2, A = 1, B = 2, and L = 30 uniformly distributed points between collocation
points. Finally, the h–method is an adaptation of hp–mesh refinement algorithm 2. For
the h–method, hp–mesh refinement algorithm 2 is used with rmax < 1, permitting only
segment division and preventing growth in the degree of the approximating polynomial.
112
The terminology “h–x–” denotes an h–method with x number of collocation points
in each interval while “hp(2)–x–” denotes the hp(2)–method with a minimum of x
collocation points in each interval. All examples were solved utilizing LGR points.
Finally, a maximum limit of 200 collocation points is given for the p–method. If a suitable
approximation is not obtained for 200 collocation points, then it is decided that an
accurate approximation cannot be obtained. Furthermore, for the hp(1), hp(2), and
h–methods, a mesh iteration limit of 40 is given. If a suitable approximation is not found
within 40 mesh iterations, then it is decided that an accurate approximation cannot be
obtained.
6.1 Example 1 - Motivating Example 1
Consider again the motivating example given by Eqs. (3–1)–(3–3). The problem is
now restated. Minimize the cost functional
J = tf (6–1)
subject to the dynamic constraints
x = cos(θ) , y = sin(θ) , θ = u, (6–2)
and the boundary conditions
x(0) = 0 , y(0) = 0 , θ(0) = −π
x(tf ) = 0 , y(tf ) = 0 , θ(tf ) = π.(6–3)
The solution to the optimal control problem of Eqs. (6–1)–(6–3) is
(x∗(t), y ∗(t), θ∗(t), u∗(t)) = (− sin(t),−1 + cos(t), t − π, 1) (6–4)
where t∗f = 2π. As was demonstrated in Section 3.1, a p–method results in most
efficient approximation to this problem. Therefore, it is expected that the p and hp(1)
strategies will perform the best. Table 6-1 shows the initial uniformly distributed grid for
each strategy studied and the number of collocation points in each interval. It is noted
113
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–2 2 10h–2 2 10
Table 6-1. Initial Grid used in Example 6.1 for Each Strategy Using Uniformly DistributedIntervals with Nk Collocation Points.
that the initial grid for all of the methods results in small NLPs that are solved efficiently.
Next, Table 6-2 shows the maximum absolute error evaluated at the collocation points
and the total CPU time required by the NLP to solve the problem for each value of ǫ.
Furthermore, the number of collocation points, mesh intervals, and NLP density on the
final grid are shown. First, it is noted for any value of ǫ, the maximum absolute error
using any strategy is less than ǫ. Next, it is noted that as ǫ is decreased, the maximum
absolute error by any method decreases. Examining the p and hp(1)–methods, it is
seen that the p and hp(1)–methods produce the exact same approximation grids for this
problem. Because the solution to this problem is smooth, the hp(1)–method chooses
to increase the degree of the approximating polynomial as opposed to subdividing the
initial interval. Moreover, when examining the results for hp(2)–2, again, it is noted that
an increase in the degree of the approximating polynomial was chosen in each interval
as opposed to subdividing the intervals. This is consistent with the fact that the solution
to this problem is smooth. Next, in comparing the CPU times for the hp(2)–2–method
with the hp(1) and p–methods, it is seen that the solutions times are similar for any value
of ǫ. Even though the hp(2)–2–method results in more collocation points than the hp(1)
or p–methods for any accuracy level, the increased NLP sparsity of the hp(2)–2–method
makes up for the increase in total number of collocation points.
Results are drastically different for the h–2–method. For ǫ = (10−2, 10−4), the CPU
time for the h–2–method is comparable to the CPU time of the other three methods. As
the accuracy tolerance is tightened, however, the h–2–method is seen to be significantly
less computationally efficient when compared with the other three methods. For ǫ =
114
ǫ Max Abs. Strategy CPU Colloc Mesh Mesh NLPError Time (s) Pts Interval Iterations Density
10−2 1.51× 10−5 p 0.0084 10 1 1 33.471.51× 10−5 hp(1) 0.0084 10 1 1 33.475.96× 10−3 hp(2)–2 0.0093 20 10 1 9.15.96× 10−3 h–2 0.0093 20 10 1 9.1
10−4 1.51× 10−5 p 0.0084 10 1 1 33.471.51× 10−5 hp(1) 0.0084 10 1 1 33.471.21× 10−7 hp(2)–2 0.025 50 10 2 5.31.39× 10−5 h–2 0.087 160 80 3 1.2
10−6 4.89× 10−15 p 0.027 20 1 2 29.644.89× 10−15 hp(1) 0.027 20 1 2 29.644.88× 10−11 hp(2)–2 0.034 70 10 2 4.51.98× 10−8 h–2 5.36 1568 784 5 0.13
10−7 4.89× 10−15 p 0.027 20 1 2 29.644.89× 10−15 hp(1) 0.027 20 1 2 29.648.51× 10−13 hp(2)–2 0.037 80 10 2 4.263.09× 10−10 h–2 104.60 5760 2880 5 0.035
Table 6-2. Summary of Accuracy and Speed for Example 6.1 Using Various CollocationStrategies and Accuracy Tolerances.
10−7, the p, hp(1), and hp(2)–2–methods all solve the problem in approximately 0.03
seconds. By comparison, the h–2–method requires 104.60 seconds to solve the problem
and 5760 collocation points are used.. Even though the NLP is only 0.035% dense, the
increased size makes the h–2–discretized NLP computationally inefficient.
It is demonstrated on this problem with a simple, smooth solution that a p–method
provides the most computationally efficient approximation. Furthermore, hp(1) behaves
exactly like the p–method. Next, it is seen that the performance of the h–biased
hp(2)–2–method is comparable to the p–method. By modestly increasing the degree
of polynomial within each approximating interval, efficient, sparse approximations are
obtained using relatively few collocation points for hp(2). Finally, for tight accuracy
tolerances, the h–2–method becomes much less computationally efficient when
compared with the other methods. The h–2–method for ǫ = 10−7 requires more than
3000 times the CPU time of the other methods presented in order to obtain an accurate
approximation.
115
6.2 Example 2 - Reusable Launch Vehicle Re-entry Trajectory
Consider the following optimal control problem [69] of maximizing the crossrange
during the atmospheric entry of a reusable launch vehicle. Minimize the cost functional
J = −φ(tf ) (6–5)
subject to the dynamic constraints
r = v sin γ,
θ =v cos γ sinψ
r cosφ,
φ =v cos γ cosψ
r,
v = −Dm
− g sin γ,
γ =L cos σ
mv−
(g
v− vr
)
cos γ,
ψ =L sinσ
mv cos γ+v cos γ sinψ tanφ
r,
(6–6)
and the boundary conditions
r(0) = 79248 + Re m , r(tf ) = 24384 + Re m,
θ(0) = 0 deg , θ(tf ) = Free,
φ(0) = 0 deg , φ(tf ) = Free,
v(0) = 7803 m/s , v(tf ) = 762 m/s,
γ(0) = −1 deg , γ(tf ) = −5 deg,
ψ(0) = 90 deg , ψ(tf ) = Free,
(6–7)
where r is the geocentric radius, θ is the longitude, φ is the latitude, v is the speed, γ
is the flight path angle, ψ is the azimuth angle, α is the angle of attack, σ is the bank
angle, and Re = 6371203.92 m is the radius of the Earth. More details for this problem,
including the aerodynamic model, can be found in Ref. [69]. Similar to Example 6.1,
this problem has a smooth solution. Figs. 6-1A–6-1F shows the state approximation for
ǫ = 10−6 for the hp(2)–3–method. It is seen that all six components of the state appear
116
to be smooth. Therefore, it is expected that a p–biased method will provide the most
computationally efficient approximations to this problem.
Table 6-3 shows the initial uniform grid and number of collocation points in each
interval for each of the methods studied. Next, Table 6-4 shows the results for each
method for various values of ǫ. For ǫ = 10−4, all methods perform comparably with a
slight advantage to the hp(2)–x– and h–2–methods. It is noted for this problem, unlike
the previous problem, the hp(1)–method does not increase the degree of approximation
from the initial interval, but instead, actually subdivides the initial interval into three
subintervals of five collocation points each that satisfy the accuracy criterion ǫ = 10−4.
For ǫ = 10−6, the hp(1) method, interestingly, performs the worst with respect to CPU
time. It is noted, however, that hp(1) also requires the most mesh iterations to obtain
a solution. Furthermore, it is noted that although the p–method results in the fewest
number of collocation points, it is not the most computationally efficient method for
ǫ = 10−6. The reduction in computational efficiency of the p–method is due to the fact
that the p–method NLP density for this problem is significantly greater than either the
hp(2)–x– or h–2–method NLP densities. Interestingly, the hp(2)–x and h–2–methods are
the most computationally efficient for ǫ = 10−6.
For ǫ = (10−7, 10−8), the h–2–method is significantly slower than the other methods.
Because of the large problem size, the resulting NLP becomes computationally
intractable. In comparing the p, hp(1) and hp(2)–x–methods, it is seen again that the hp(1)
method requires the greatest computational time because it requires the most number
of mesh iterations. For ǫ = 10−8, the p–method provides the fastest computational
speeds. For this problem, for very high levels of accuracy, the p–method is the most
computationally efficient. Next, in comparing the hp(2)–x–methods, it is seen that the
hp(2)–3 and hp(2)–4–methods perform twice as fast as the hp(2)–2–method. An increase
in one or two collocation points for high levels of accuracy, therefore, strongly affect the
CPU times by reducing the overall size of the problem for ǫ = 10−8. Finally, it is noted for
117
0
40
60
80
50
20
30
1000 2000500
70
1500 2500t (sec)
h(k
m)
A h (km) vs. Time.
00
40
60
80
20
1000 2000500 1500 2500t (sec)
θ(d
eg)
B θ (deg) vs. Time.
00
10
40
20
30
1000 2000
4985
500 1500 2500t (sec)
φ(d
eg)
C φ (deg) vs. Time.
00
2
4
6
8
1000 2000500 1500 2500t (sec)
v(k
m/s
)
D v (km/s) vs. Time.
0
0
2
−2
−4
−61000 2000500 1500 2500t (sec)
γ(d
eg)
E γ (deg) vs. Time.
00
40
60
80
100
20
1000 2000500 1500 2500t (sec)
ψ(d
eg)
F ψ (deg) vs. Time.
Figure 6-1. State vs. Time on the Final Mesh for Example 6.2.
118
Strategy Nk Number of Intervalsp 20 1hp(1) 20 1hp(2)–4 4 20hp(2)–3 3 15hp(2)–2 2 20h–2 2 20
Table 6-3. Initial Grid used in Example 6.2 for Each Strategy Using Uniformly DistributedIntervals with Nk Collocation Points.
ǫ Strategy CPU Time (s) Colloc Pts Mesh Interval Mesh Iterations NLP Density10−4 p 7.03 40 1 3 15.12
hp(1) 6.04 15 3 2 11.48hp(2)–4 1.58 44 11 2 3.86hp(2)–3 1.93 30 10 1 3.51hp(2)–2 1.16 42 20 2 3.52h–2 1.10 42 21 2 3.46
10−6 p 13.90 70 1 6 14.02hp(1) 32.05 145 11 10 2.31hp(2)–4 4.22 136 32 4 1.31hp(2)–3 3.91 119 30 3 1.49hp(2)–2 4.18 132 34 4 1.32h–2 5.34 256 128 4 0.58
10−7 p 45.37 80 1 7 13.82hp(1) 102.10 165 15 13 1.92hp(2)–4 30.33 254 61 3 0.70hp(2)–3 36.41 224 53 4 0.81hp(2)–2 56.01 272 64 4 0.66h–2 424.05 774 387 5 0.19
10−8 p 64.97 90 1 8 13.69hp(1) 201.78 210 18 13 1.56hp(2)–4 105.3 366 84 5 0.48hp(2)–3 111.2 479 112 5 0.38hp(2)–2 217.2 578 114 4 0.33h–2 1815.6 2480 1240 6 0.06
Table 6-4. Summary of Accuracy and Speed for Example 6.2 Using Various CollocationStrategies and Accuracy Tolerances.
ǫ = 10−8 that the CPU times using hp(2)–3 and hp(2)–4 are comparable to the CPU times
using the p–method.
119
6.3 Example 3: Hyper-Sensitive Problem
Consider the following hyper-sensitive [70–73] optimal control problem adapted from
Ref. [71]. Minimize the cost functional
J =1
2
∫ tf
0
(x2 + u2)dt (6–8)
subject to the dynamic constraint
x = −x3 + u (6–9)
and the boundary conditions
x(0) = 1 , x(tf ) = 1 (6–10)
where tf is fixed. This problem is the final example problem considered in this Chapter
whose solution is smooth. This problem has a “take-off’,” “cruise,” and “landing” structure
where all of the interesting behavior occurs in the “take-off” and “landing” segments
(i.e., the first ten and last ten time units of the solution). For further details, Ref. [71]
contains a more in-depth discussion of this problem. The solution to this problem is now
approximated for three different values of tf .
6.3.1 Solutions for tf = 50
The problem defined by Eqs. (6–8)–(6–10) is now studied for tf = 50. The initial
approximating grids are defined in Table 6-5 and results for the various approximation
methods are given in Table 6-6. The approximation to the state and control of this
problem for tf = 50 is shown for the hp(2)–2–approximation with ǫ = 10−4 in Figs. 6-2A
and 6-2B. It is seen that in Figs. 6-2A and 6-2B, the initial mesh during the “cruise”
segment was not modified. The only refinement that occurred was to more accurately
approximate the “take-off” and “landing” segments. Next, it is interesting to note, that
while the solution to this problem is smooth, the p–method was not able to obtain a
solution for ǫ = 10−6. Furthermore, each method has a similar CPU time for ǫ =
(10−2, 10−4). As with the previous two examples, for the tightest accuracy tolerance,
120
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–4 10 4hp(2)–3 10 3hp(2)–2 10 2h–2 10 2
Table 6-5. Initial Grid used in Example 6.3.1 for Each Strategy Using UniformlyDistributed Intervals with Nk Collocation Points.
ǫ Strategy CPU Time (s) Colloc Pts Mesh Interval Mesh Iterations NLP Density10−2 p 0.11 30 1 3 50.69
hp(1) 0.25 15 3 3 24.42hp(2)–4 0.12 56 14 3 6.75hp(2)–3 0.14 35 11 4 9.52hp(2)–2 0.15 30 14 4 9.43h–2 0.24 34 17 6 8.06
10−4 p 0.33 60 1 6 50.38hp(1) 1.01 55 7 7 12.37hp(2)–4 0.25 86 20 3 4.75hp(2)–3 0.31 74 20 4 5.19hp(2)–2 0.24 65 21 4 5.71h–2 0.69 162 81 6 1.82
10−6 p 7.74∗ 200∗ 1∗ 20∗ 50.12∗
hp(1) 2.15 100 10 9 7.98hp(2)–4 0.96 168 36 6 2.61hp(2)–3 1.26 147 31 6 3.08hp(2)–2 0.80 129 28 5 3.58h–2 74.15 1328 664 7 0.22
Table 6-6. Summary of Accuracy and Speed for Example 6.3.1 Using VariousCollocation Strategies and Accuracy Tolerances.
the h–2–method requires significantly more computational time in order to obtain an
accurate approximation when compared with the hp–methods. Furthermore, unlike
the previous two examples, the p–method is unable to obtain a solution for the tightest
accuracy tolerance. For this example, in order to obtain an efficient high-accuracy
solution, an hp–method is required.
6.3.2 Solutions for tf = 1000
The problem defined by Eqs. (6–8)–(6–10) is now examined for tf = 1000 with the
initial approximating grids defined in Table 6-7 and results for the various approximation
methods given in Table 6-8. First, the p–method is the most computationally inefficient
121
0
0
1
10 40 5020 30−0.2
0.2
0.4
0.6
0.8
1.2
x
t
A x vs. t.
0
0
1.5
2
2.5
−0.5
0.5
1
10 40 5020 30t
u
B u vs. t.
Figure 6-2. State and Control vs. Time on the Final Mesh for Example 6.3.1 for hp(2)–2and ǫ = 10−4.
122
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–4 10 4hp(2)–3 10 3hp(2)–2 10 2h–2 10 2
Table 6-7. Initial Grid used in Example 6.3.2 for Each Strategy Using UniformlyDistributed Intervals with Nk Collocation Points.
approximation for the lowest accuracy tolerance. The number of collocation points
for the p–method approximation is larger than the hp(1), hp(2)–x , and h–2–methods.
Furthermore, the NLP density of the p–method is much greater than any of the other
methods. Therefore, the p–method is the most computationally inefficient method.
Next, it is seen that the p–method is unable to obtain an approximation for the accuracy
tolerances of ǫ = (10−4, 10−6).
Finally, in studying the h–2 approximations, for ǫ = (10−2, 10−4), the h–2–method
performs similarly when compared with the hp–methods. Again it is noted for the
tightest accuracy tolerance, the h–2–method is significantly more inefficient, requiring
approximately 170 seconds to solve the problem using 9 mesh iterations and 664
approximating intervals on the final mesh. The hp–methods, however, required
approximately five seconds to solve the problem for ǫ = 10−6. For tf = 1000, again,
high-accuracy efficient solutions are only obtained by the hp–methods.
6.3.3 Solutions for tf = 5000
Finally, the problem is analyzed for tf = 5000 with the initial approximating grids
given by Table 6-9 and results given in Table 6-10. It is noted that for the p–method
approximation, L = 10000 in order to increase the resolution of the error assessment.
For this problem, the p–method is unable to obtain a solution for any value of ǫ. It is
again seen that for ǫ = (10−2, 10−4), the hp and h–methods perform comparably, and
for the tightest accuracy tolerance, the h–2–method again is much less computationally
efficient.
123
ǫ Strategy CPU Time (s) Colloc Pts Mesh Interval Mesh Iterations NLP Density10−2 p 8.56 90 1 9 50.26
hp(1) 0.71 30 6 5 13.49hp(2)–4 0.12 56 14 3 6.75hp(2)–3 0.27 56 18 6 6.06hp(2)–2 0.27 38 18 6 7.53h–2 0.37 46 23 8 6.10
10−4 p 9.53∗ 200∗ 1∗ 20∗ 50.12∗
hp(1) 1.97 70 10 8 9.05hp(2)–4 0.25 86 20 3 4.75hp(2)–3 1.17 141 43 7 2.57hp(2)–2 0.66 104 37 8 3.42h–2 1.03 184 92 8 1.60
10−6 p – – – – –hp(1) 4.05 125 15 9 5.84hp(2)–4 4.71 214 46 6 2.06hp(2)–3 5.93 246 59 7 1.73hp(2)–2 2.97 209 53 8 2.08h–2 169.55 1328 664 9 0.22
Table 6-8. Summary of Accuracy and Speed for Example 6.3.2 Using VariousCollocation Strategies and Accuracy Tolerances.
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–4 10 4hp(2)–3 10 3hp(2)–2 10 2h–2 10 2
Table 6-9. Initial Grid used in Example 6.3.3 for Each Strategy Using UniformlyDistributed Intervals with Nk Collocation Points.
Figs. 6-3A and 6-3B show the state and control approximation for ǫ = 10−4 using
the hp(2)–2–method and Figs. 6-4A and 6-4B show the state approximation for the first
15 and last 15 time units. As expected, it is seen that refinement occurs only at the start
and terminus of the solution.
6.3.4 Summary of Example 6.3
In Example 6.3, several interesting features are demonstrated for approximating
the solution of this problem by p, hp, and h–methods. As the final time increases,
the timescale of this problem defining the “take-off” and “landing” segments become
increasingly fast with respect to the total trajectory time. Consequently, as tf is
124
0
0
1x
t
−0.2
0.2
0.4
0.6
0.8
1.2
1000 2000 3000 4000 5000
A x vs. t.
0
0
1.5
2
2.5
−0.5
0.5
1
t
u
1000 2000 3000 4000 5000
B u vs. t.
Figure 6-3. State and Control vs. Time on the Final Mesh for Example 6.3.3 for hp(2)–2and ǫ = 10−4.
125
0
0
1
5 10 15
x
t
0.2
0.4
0.6
0.8
A x vs. t.
0
1
x
t
0.2
0.4
0.6
0.8
5000 5005 5010 50154985 4990 4995
B x vs. t.
Figure 6-4. State vs. Time on the Final Mesh for Example 6.3.3 for hp(2)–2 and ǫ = 10−4.
126
ǫ Strategy CPU Time (s) Colloc Pts Mesh Interval Mesh Iterations NLP Density10−2 p 13.11∗ 200∗ 1∗ 20∗ 50.12∗
hp(1) 0.84 45 7 6 12.74hp(2)–4 0.70 76 19 7 5.05hp(2)–3 0.42 68 22 8 5.02hp(2)–2 0.81 46 22 8 6.27h–2 0.38 54 27 8 5.25
10−4 p – – – – –hp(1) 1.41 70 10 9 9.05hp(2)–4 1.14 161 39 6 2.50hp(2)–3 1.21 151 46 8 2.42hp(2)–2 2.74 126 45 10 2.82h–2 1.12 200 100 9 1.48
10−6 p – – – – –hp(1) 3.73 110 12 9 7.78hp(2)–4 8.42 258 59 7 1.64hp(2)–3 5.69 217 55 8 1.93hp(2)–2 4.13 188 53 8 2.24h–2 107.91 1368 684 10 0.22
Table 6-10. Summary of Accuracy and Speed for Example 6.3.3 Using VariousCollocation Strategies and Accuracy Tolerances.
increased, the p–method becomes increasingly less capable of accurately approximating
the solution to this problem. For tf = 50, the p–method was able to approximate the
solution for ǫ = (10−2, 10−4) and for tf = 1000 the p–method was able to approximate the
solution for ǫ = 10−2. For tf = 5000, the p–method was unable to approximate solution to
the problem for any of the values of ǫ.
The h–2–method is much more insensitive than the p–method to the value of tf for
approximating the solution of this problem. Using a p–method, it is not possible to refine
the mesh specifically in regions where the error may be large. Because refinement
is necessary at the start and terminus of the solution, the h–2–method is much more
successful than the p–method in obtaining high-accuracy approximations to the solution
of this problem. However, because the h–2–method only uses low-order approximating
polynomials, when high accuracy is required, the number of approximating polynomials
is large. Even though the NLP is very sparse for the h–2–method, the size of the NLP
problem for high levels of accuracy results in a computationally inefficient NLP that
needs to be solved.
127
Finally, both hp–methods were able to obtain high accuracy solutions for this
problem for all the values of tf and all the values of ǫ studied. First, while being a more
p–biased method, the hp(1)–algorithm allows for subdivision of approximating intervals.
Because of the ability to subdivide the initial single-interval approximation, hp(1) is
able to densely collect intervals only at the ends of the trajectory regardless of final
time. Furthermore, by allowing higher degree collocation when compared with the
h–2–method, the problem size is much smaller than the h–2–approximation for high
levels of accuracy. Therefore, hp(1) results in an efficient approximation for any of the
accuracy requirements presented. hp(2) also demonstrates a similar capability. First,
the mesh is refined only at the ends of the trajectory. Second, because increases in
the degree of approximating polynomial are allowed within intervals, high accuracy
approximations are made with a much smaller NLP than the h–2–method. For this
problem, it is demonstrated that by allowing the number and location of mesh intervals
to vary and allowing the degree of approximating polynomial to vary, computationally
efficient approximations are obtained for a wide range of accuracy requirements with an
insensitivity to the duration of the trajectory.
6.4 Example 4: Motivating Example 2
Now we will revisit the optimal control problem of Section 3.2. To restate the
problem, this problem is to minimize
J =
∫ tf
t0
udt (6–11)
subject to
h = v
v = −g + u,(6–12)
the boundary conditions
h(0) = 10 , v(0) = −2
h(tf ) = 0 , v(tf ) = 0,(6–13)
128
and the control path constraint
0 ≤ u ≤ 3 (6–14)
where g = 1.5, and tf is free. The optimal solution to the optimal control problem given
in Eqs. (6–11)–(6–14) is
(h∗(t), v ∗(t), u∗(t)) =
(−34t2 + v0t + h0,−32t + v0, 0) , t ≤ s∗
(34t2 + (−3s∗ + v0)t + 3
2(s∗)2 + h0,
32t + (−3s∗ + v0), 3) , t ≥ s∗
(6–15)
where s∗ is given as
s∗ =t∗f2+v0
3(6–16)
with
t∗f =2
3v0 +
4
3
√
1
2v 20 +
3
2h0 (6–17)
For the boundary conditions given in Eq. (6–13), we have (s∗, t∗f ) = (1.4154, 4.1641).
It is seen that the optimal control for this problem is “bang-bang” in that it is at its
minimum-value for t < s∗ and at its maximum value for t > s∗. For this problem, the
solution is represented by two piecewise low-degree polynomials. The only difficulty,
therefore, in accurately approximating the solution of this problem is the discontinuity
in the control and the non-smoothness of the state at s∗. Table 6-11 shows the initial
grid for each approximation strategy and Table 6-12 summarizes the results from each
approximation method for a variety of values of ǫ. Because the solution to this problem is
not smooth, the p–method is unable to obtain an adequate approximation for any value
of ǫ. Furthermore, the hp(1) method performs significantly worse than either the hp(2)–2–
or h–2– methods. Moreover, for ǫ = 10−6, no solution was found by the hp(1) method.
Therefore, for this problem, the p–biased methods underperform.
Next, for each value of ǫ, the hp(2)–2– and h–2– methods performed comparably.
Furthermore, for each accuracy requirement, these methods provided highly efficient
approximations to the solution. For any accuracy level, the h–biased strategies provide
129
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–2 10 2h–2 10 2
Table 6-11. Initial Grid used in Example 6.4 for Each Strategy Using UniformlyDistributed Intervals with Nk Collocation Points .
ǫ Max Abs. Strategy CPU Colloc Mesh Mesh NLPError Time (s) Pts Interval Iterations Density
10−2 1.76× 10−2 p 4.68∗ 200∗ 1∗ 20∗ 33.78∗
3.02× 10−3 hp(1) 0.88 110 22 22 2.972.74× 10−2 hp(2)–2 0.037 20 10 1 10.502.74× 10−2 h–2 0.037 20 10 1 10.50
10−4 p – – – – –2.64× 10−3 hp(1) 1.18 155 31 25 2.125.20× 10−3 hp(2)–2 0.15 44 21 8 5.184.01× 10−3 h–2 0.094 32 16 5 6.82
10−6 p – – – – –3.57× 10−4 hp(1) 26.57∗ 580∗ 80∗ 40∗ 0.92∗
3.88× 10−5 hp(2)–2 0.72 60 30 19 3.758.15× 10−5 h–2 0.30 54 27 8 4.15
Table 6-12. Summary of Accuracy and Speed for Example 6.4 Using Various CollocationStrategies and Accuracy Tolerances.
the most efficient approximations. Fig. 6-5 shows the control approximation and the
exact solution for ǫ = 10−4 for the h–2–approximation. Because the only difficult
feature in this problem is in approximating the discontinuity in the control, it is seen that
significant refinement occurs near the control discontinuity.
6.5 Example 5: Minimum Time-to-Climb of a Supersonic Aircraft
Consider the following optimal control problem that is a variation of the minimum
time-to-climb of a supersonic aircraft [72, 74, 75] . Minimize the cost functional
J = tf (6–18)
subject to the dynamic constraints
h = v sin γ , v =T −Dm
− g sin γ , γ =g
v(n − cos γ), (6–19)
130
00
1.5
2
2
2.5
3
3
0.5
1
1 4 5
u
t
u∗(t)
u(t)
Figure 6-5. Control vs. Time on the Final Mesh for Example 6.4 Along with the ExactSolution.
the boundary conditions
h(0) = 0 , h(tf ) = 19995 m
v(0) = 129.31 m/s , v(tf ) = 295.09 m/s
γ(0) = 0 deg , γ(tf ) = 0 deg,
(6–20)
and the inequality path constraints
γ ≤ 45 deg, (6–21)
h ≥ 0 m,
where h is the altitude, v is the speed, γ is the flight path angle, g is the local acceleration
due to gravity, and n is the load factor (and is the control for this example). Further
131
details of the vehicle model and the numerical values of the constants for this model
can be found in Ref. [72] and [75]. In this problem, during some segments of the
trajectory, non-smooth features are encountered by the active path constraints of
Eq. (6–21). Furthermore, in other segments of the trajectory, the trajectory is smooth.
Figs. 6-6A–6-6C show the state approximation to the solution of this problem for
ǫ = 10−4 using the hp(2)–3–method. First, it is seen by examination of Fig. 6-6A and
6-6C that significant refinement occurs near the location of the active path constraints
in altitude and flight path angle. Furthermore, it is noted in the smooth regions of the
trajectory that a much more sparse grid of points is used. Most of the computational
effort is in approximating the non-smooth features (i.e., the switch between activity and
inactivity of the path constraints).
Table 6-13 shows the initial grids for each method and Table 6-14 shows the results
for approximating the solution of this problem by each strategy. For ǫ = 10−2, each
method performs comparably. For ǫ = 10−4, the p–method was unable to obtain a
solution. Furthermore, it is noted that for 200 collocation points, the p–method required
approximately 12 minutes to not obtain an accurate approximation.
Next, in comparing the h–2, hp(1), and hp(2)–x–methods, it is demonstrated that
for the highest accuracy requirement of ǫ = 10−6, the hp(2)–x–methods are the most
successful in efficiently approximating the solution of this problem. The hp(2)–x–methods
highly refine the mesh around the non-smooth regions of the trajectory. Furthermore,
in the smooth regions of the trajectory, higher degree collocation is used. Therefore,
the hp(2)–x–methods are able to combine the benefits of subdividing intervals and
increasing the degree of approximating polynomial. hp(1) is slower than hp(2) because of
the density of the NLP and the number of mesh iterations are greater when using hp(1)
as opposed to using hp(2). Finally, for high levels of accuracy, the h–2–method is slower
than hp(2) because of the excessive size of the NLP.
132
00
5
10
10050 150 200
15
20
h(k
m)
t (sec)
400
A h vs. t.
0100
10050 150
200
200t (sec)
v(m
/s)
300
400
500
B v vs. t.
0
0−10
10
40
100
50
50 150 200
20
30
t (sec)
γ(d
eg)
C γ vs. t.
Figure 6-6. State vs. Time on the Final Mesh for Example 6.5 for hp(2)–3 and ǫ = 10−4.
Strategy Nk Number of Intervalsp 10 1hp(1) 10 1hp(2)–4 10 4hp(2)–3 10 3hp(2)–2 10 2h–2 10 2
Table 6-13. Initial Grid used in Example 6.5 for Each Strategy Using UniformlyDistributed Intervals with Nk Collocation Points.
133
ǫ Strategy CPU Time (s) Colloc Pts Mesh Interval Mesh Iterations NLP Density10−2 p 0.63 40 1 4 27.43
hp(1) 0.60 35 7 4 7.46hp(2)–4 0.37 48 12 2 5.01hp(2)–3 0.44 36 12 4 5.94hp(2)–2 0.25 24 12 3 7.73h–2 0.21 24 12 2 7.73
10−4 p 707.67∗ 200∗ 1∗ 20∗ 25.51∗
hp(1) 4.20 125 15 9 4.30hp(2)–4 1.74 86 21 6 2.89hp(2)–3 0.28 69 20 6 3.42hp(2)–2 0.95 78 29 6 2.85h–2 0.87 110 55 4 1.79
10−6 p – – – – –hp(1) 69.70 245 17 18 7.56hp(2)–4 14.75 217 50 8 1.20hp(2)–3 19.84 241 62 10 1.06hp(2)–2 19.09 359 86 7 0.73h–2 115.01 934 467 6 0.21
Table 6-14. Summary of Accuracy and Speed for Example 6.5 Using Various CollocationStrategies and Accuracy Tolerances.
6.6 Discussion of Results
The results of the five examples demonstrate some of the key characteristics of
approximating problems by hp–mesh refinement algorithm 1 and hp–mesh refinement
algorithm 2. In Example 6.1, the solution is smooth and the p and hp(1) methods perform
exactly the same. As expected, the most efficient approximation to this problem is by
a p–method. Furthermore, as expected, for tight accuracy tolerances, the h–2–method
is computationally inefficient. hp–mesh refinement algorithm 2 had comparable CPU
times to the p–method for all values of ǫ. By a relatively modest increase in degree of
approximation coupled with the increased sparsity of the approximation in hp–mesh
refinement algorithm 2, efficient approximations to the solution of the first example
problem were obtained.
In Example 2, the solution to the problem appears to be smooth, but is more
complicated than Example 6.1. For this example, as the accuracy tolerance was
tightened, the p–method provided the best approximation. Furthermore, as the
accuracy tolerance was tightened, the h–2–method became computationally inefficient.
134
Surprisingly for this example, hp–mesh refinement algorithm 1 was less efficient than
hp–mesh refinement algorithm 2. The inefficiency of hp–mesh refinement algorithm 1
is largely due to the excessive number of mesh iterations required to find a solution.
Furthermore, while the p–method provides the most efficient solution approximation
to this problem for a high accuracy requirement, it is interesting to note that hp–mesh
refinement algorithm 2 does not significantly underperform. While a single high-degree
approximating interval provides the most efficient approximation to the solution of this
problem, it is interesting to note that many intervals of moderate degree also accurately
and efficiently approximate the solution of this problem. The combined affects of using
moderate degree intervals and a sparse NLP provides comparable efficiency to the
p–method.
Example 6.3 studies a problem for three different values of tf where the chosen
values of tf change the inherent timescale of the problem. In this problem, a p–method
has an increasingly difficult time finding a suitable approximation as the final time is
increased. Furthermore, for very high accuracy requirements, the h–2-method is again
seen to provide inefficient results. Finally, both hp–algorithms performed well for any
value of tf . The combined ability to refine the location of mesh intervals and the use of
a variable degree polynomial in each interval make the hp–algorithms successful for
approximating the solution of this problem.
The solution structure to Example 6.4 is significantly different from the previous
three examples. The solution to this problem is represented by two piecewise low-degree
polynomials. Because the control is discontinuous the connection between these two
piecewise polynomials is non-smooth. In this problem, a p–method was unable to find
an accurate approximation for any value of ǫ because of the non-smooth nature of the
solution to this problem. hp–mesh refinement algorithm 1 performed significantly worse
when compared with hp–mesh refinement algorithm 2 or the h–2–method and was not
135
able to find a solution for the tightest accuracy tolerance. For any value of ǫ, hp–mesh
refinement algorithm 2 or the h–2–method performed well.
The final example is a modified version of the minimum time-to-climb of a
supersonic aircraft. This example has non-smooth regions of the trajectory and smooth
regions of the trajectory. Because of the non-smoothness that exists, the p–method
was not able to find approximations for tight accuracy tolerances. Furthermore,
hp–mesh refinement algorithm 2 outperformed hp–mesh refinement algorithm 1 and
the h–2–method. hp–mesh refinement algorithm 2 more successfully simultaneously
handled non-smooth and smooth features than hp–mesh refinement algorithm 1 or the
h–method.
In summary, the method that will best approximates the solution of an optimal
control problem is problem dependent. If a problem is simple and smooth, a p–method
performs the best. In any other case, a p–method does not perform well. hp–mesh
refinement algorithm 1 improves upon the robustness of a strictly p–method for
approximating the solution to problems that may be non-smooth. For problems with
nonsmooth features, hp–mesh refinement algorithm 1 requires more computational time
than hp–mesh refinement algorithm 2 or the h–2–method.
By an h–method, low-accuracy solutions can be obtained to a wide variety of
problems in a computationally efficient manner. On the other hand, high-accuracy
solutions require a tremendous computational burden because of the large problem
size of the h–methods. hp–mesh refinement algorithm 2 performed much better.
Furthermore, for every example problem of this chapter, hp–mesh refinement algorithm
2 performed either better than the other methods or was comparable to the best
method for each problem (i.e., p for problems with simple smooth solutions or h for
problems with nonsmooth solutions with no high-order behaviors). It is demonstrated by
hp–mesh refinement algorithm 2 that high accuracy solutions to problems do not require
high-degree polynomials. The highest degree polynomial used by hp–mesh refinement
136
algorithm 2 in any of the examples is eighth order. If exponential convergence is
expected in a particular interval, a high-degree polynomial approximation should
not be required. Furthermore, because low and mid-degree polynomials are used,
hp–mesh refinement algorithm 2 results in an NLP that is sparse. Moreover, by
specifically refining only parts of an approximation with the largest errors, the distribution
of the mesh focuses only on those locations that need more mesh intervals or
mid-degree approximating polynomials. hp–mesh refinement algorithm 2 demonstrates
significant robustness irregardless of accuracy requirement or problem type on the
examples in this Chapter. As a starting point, hp–mesh refinement algorithm 2 utilizes
low-degree polynomials that ensure a sparse NLP. Refinement of the mesh occurs in
regions of large error, and mid-degree polynomials are used on intervals with smooth
solutions. Therefore, the computational efficiency of an h–method is combined with the
high-accuracy of a p–method.
137
CHAPTER 7AEROASSISTED ORBITAL INCLINATION CHANGE MANEUVER
In this Chapter, an aeroassisted orbital inclination change maneuver for a small
maneuverable spacecraft in low-Earth orbit (LEO) is studied. It is known that using
atmospheric force (namely, lift and drag) may significantly reduce the amount of fuel
required to change the inclination of the vehicle as compared to an all-propulsive
maneuver [76]. The survey papers of Ref. [77] and [78] summarize early work on
aeroassisted orbital transfers. Ref. [79] studied multiple-pass aeroassisted gliding
maneuvers with a large inclination change of a large spacecraft between geostationary
orbit (GEO) and LEO. A key result of Ref. [79] is that the aeroassisted maneuver was
much more fuel efficient than an all-propulsive maneuver. Furthermore, in Ref. [79],
it was demonstrated for highly constrained heating rates on the vehicle that the fuel
required to accomplish the maneuver decreased as the number of atmospheric passes
increased.
While previous research on aeroassisted orbital inclination change maneuvers has
been for large spacecraft, in this research, we consider a LEO to LEO aeroassisted
orbital transfer of a small maneuverable spacecraft. The aeroassisted maneuver is
compared against all-propulsive maneuvers. The multiple-pass aeroassisted glide
maneuvers are analyzed as functions of the number of atmospheric passes, the required
inclination change, and the maximum allowable heating rate on the vehicle. The results
of this Chapter are similar to the results found in Ref. [80].
138
7.1 Equations of Motion
The equations of motion over a spherical non-rotating Earth are given in spherical
coordinates as [19, 79, 81]
r = v sin γ,
θ =v cos γ cosψ
r cosφ,
φ =v cos γ sinψ
r,
v = −Dm
− µ
r 2sin γ,
γ =1
v
[
−L cos σm
−(
µ
r 2− v
2
r
)
cos γ
]
,
ψ =1
v
[
− L sinσm cos γ
− v2
rcos γ cosψ tanφ
]
,
(7–1)
where r is the geocentric radius, θ is the longitude, φ is the latitude, v is the speed, γ is
the flight path angle, ψ is the heading angle, D is the drag force, L is the lift force, µ is
the Earth gravitational parameter, and σ is the bank angle. Next, it is noted that drag and
lift are modeled, respectively, as [19]
D =1
2ρv 2ACD (7–2)
L =1
2ρv 2ACL (7–3)
where ρ is the atmospheric density, A is the vehicle reference area, CD is the coefficient
of drag, and CL is the coefficient of lift. The atmospheric density is modeled as an
exponential of the form
ρ = ρ0 exp(−βh), (7–4)
where ρ0 is the atmospheric density at sea level, β is the inverse of density scale height,
and h = r − Re is the altitude where Re is the radius of the Earth. The aerodynamic
139
Table 7-1. Physical and Aerodynamic Constants.Quantity Value
ρ0 1.225 kg/m3
1/β 7200 mA 0.32 mCD0 0.032
K 1.4
CLα 0.5699
m0 818 kgIsp 310 s˙Q 19987W/cm2
hatm 110 kmRe 6378145 mµ 3.986× 1014 m3/s2
g0 9.80665 m/s2
coefficients are modeled using a standard drag polar of the form [81]
CL = CLαα,
CD = CD0 + KC2L ,
(7–5)
where K is the drag polar constant, CD0 is the zero-lift drag coefficient, and CLα is the lift
slope. In this research we choose a generic high lift-to-drag ratio vehicle whose model
is taken from Ref. [82]. The aerodynamic data for the vehicle, along with the physical
constants, are given in Table 7-1.
7.1.1 Constraints On the Motion of the Vehicle
The following constraints are enforced on the motion of the vehicle during flight.
The initial and final conditions correspond to a circular low-Earth orbit of altitude h0.
The initial inclination is zero while the final inclination is if . During atmospheric flight,
constraints are enforced at the entrance and exit of the atmosphere on the flight path
angle such that upon atmospheric entry the vehicle must descend into the atmosphere
while upon atmospheric exit the vehicle must ascend. Furthermore, the angle of attack,
stagnation point heating rate, and altitude are all constrained during atmospheric flight.
140
7.1.1.1 Initial and final conditions
The initial conditions for this study correspond to a circular equatorial orbit of
altitude h0. The initial orbital conditions for this problem are given in terms of orbital
elements [83] as
a(t0) = Re + h0 , e(t0) = 0
i(t0) = 0 , Ω(t0) = 0
ω(t0) = 0 , ν(t0) = 0,
(7–6)
where a is the semi-major axis, i is the inclination, ω is the argument of perigee, e is the
eccentricity, Ω is the longitude of ascending node, and ν is the true anomaly. The values
for Ω(t0),ω(t0), and ν(t0) are arbitrarily set to zero. Furthermore, the final conditions for
this problem are for a circular orbit of altitude hf = h0 with an inclination if and are given
as
a(tf ) = Re + hf , e(tf ) = 0 , i(tf ) = if , (7–7)
Because the final orbit is circular and the location of the spacecraft in the terminal orbit
is not constrained, ω(tf ) is undefined and ν(tf ) and Ω(tf ) are free.
7.1.1.2 Interior point constraints
Along with the initial and final conditions on the vehicle, the following interior-point
constraints are enforced at every atmospheric entrance:
r (tatm0 ) = hatm + Re,
γ (tatm0 ) ≤ 0,
(7–8)
where tatm0 is the beginning of any atmospheric flight segment and hatm is the edge
of the sensible atmosphere. These constraints ensure that at the entrance of any
atmospheric flight segment the vehicle is descending into the atmosphere. Furthermore,
at the exit of any atmospheric flight segment, the following constraints are imposed such
141
that the vehicle is ascending upon atmospheric exit:
r (tatmf ) = hatm + Re,
γ (tatmf ) ≥ 0,
(7–9)
where t(atm)f is the time at the end of any atmospheric flight segment.
7.1.1.3 Vehicle path constraints
The following inequality path constraints are enforced during atmospheric flight. The
angle of attack is constrained as
0 ≤ α ≤ αmax. (7–10)
Next, the stagnation point heating rate is constrained. Using the Chapman equation [84],
the stagnation point heating rate, Q, is given as
Q = ˙Q(ρ/ρ0)0.5(v/vc)
3.15, (7–11)
where vc =√
µ/Re . Therefore, during atmospheric flight, the following constraint on
heating rate is imposed:
0 ≤ Q ≤ Qmax. (7–12)
Finally, during atmospheric flight, the altitude is constrained as:
0 ≤ h ≤ hatm (7–13)
or, alternatively,
Re ≤ r ≤ hatm + Re. (7–14)
7.1.2 Trajectory Event Sequence
The trajectory event sequence for a maneuver with n atmospheric passes is now
described. From the initial conditions of Eq. (7–6), a deorbit velocity impulse, ∆V1, is
applied to send the vehicle into the atmosphere. The vehicle then glides in and out of
the atmosphere n times. Upon the final atmospheric exit, a boost velocity impulse, ∆V2,
142
is applied to give the vehicle enough energy to reach the final orbit condition. Upon
reaching the final orbital altitude, a final recircularization velocity impulse, ∆V3 is applied
to recircularize the orbit. The trajectory event sequence is now described in detail (see
Figs. 7-1A–7-1C):
(i) Event: ∆V1 is applied to the initial orbital conditions in Eq. (7–6);
(ii) Phase: an exo-atmospheric glide that terminates at the edge of the sensibleatmosphere (hatm);
(iii) Phase: an atmospheric glide that terminates at the edge of the sensible atmosphere(hatm);
The following two phases are then repeated for the remaining n − 1 atmospheric passes:
(iv) Phase: an exo-atmospheric glide that terminates at the edge of the sensibleatmosphere (hatm);
(v) Phase: an atmospheric glide that terminates at the edge of the sensible atmosphere(hatm);
Upon the final atmospheric exit, the following events and phase occur:
(vii) Event: ∆V2 is applied at the maximum altitude of the sensible atmosphere;
(viii) Phase: an exo-atmospheric glide that terminates at the final orbital altitude;
(ix) Event: ∆V3 is applied at the final orbital altitude to re-circularize the orbit.
7.1.3 Performance Index
The cost functional for the multiple-pass aeroglide maneuver is to minimize the fuel
consumed during the maneuver. This corresponds to minimizing the negative of the final
mass, i.e.,
J = −m(tf ). (7–15)
Assuming impulsive thrust, ∆V ≡ ‖∆V‖, the mass after each impulse is then computed
from the Goddard rocket equation as
m+ = m− exp(−∆Vg0Isp
), (7–16)
143
A Deorbit and First Atmospheric Flight Segment.
B Intermediate Exo-Atmospheric and AtmosphericFlight Segments.
C Final Exo-Atmospheric Flight Segment.
Figure 7-1. Schematic of Trajectory Design for Aeroassisted Orbital Transfer Problem.
144
where m− and m+ are the values of the mass immediately before and after application
of the impulse. Therefore, the final mass after three velocity impulses is given as
m(tf ) = m(t0)exp(−(∆V1 + ∆V2 + ∆V3))
g0Isp. (7–17)
7.2 Re-Formulation of Problem
The manner in which the multiple-pass aeroassisted orbital transfer is solved
differs slightly from the formulation given in Section 7.1. Instead of using α and σ as the
controls, the quantities u1 and u2 are used as controls, where u1 and u2 are defined as
u1 = −CL sinσ,
u2 = −CL cos σ.(7–18)
In terms of u1 and u2, CL and σ are given as
CL =
√
u21 + u22 (7–19)
σ = tan−1(u1/u2). (7–20)
It is noted that u1 and u2 are used instead of the more obvious choices of coefficient
of lift and bank angle because u1 and u2 avoid the wrapping problem that arises
when using angles as controls [19]. In terms of u1 and u2, the differential equations
of Eq. (7–1) are given as
r = v sin γ,
θ =v cos γ cosψ
r cosφ,
φ =v cos γ sinψ
r,
v = −ρv2ACD
2m− µ
r 2sin γ,
γ =1
v
[
−ρv2A
2mu2 −
(
µ
r 2− v
2
r
)
cos γ
]
,
ψ =1
v
[
− ρv 2A
2m cos γu1 −
v 2
rcos γ cosψ tanφ
]
.
(7–21)
145
Next, because the coefficient of lift is linear in α, the constraint on α in Eq. (7–10) is
equivalently written as
0 ≤ CL ≤ CL, (7–22)
where CL denotes the maximum allowable value of CL. Therefore, the controls u1 and u2
are constrained as
− CL ≤ (u1, u2) ≤ CL, (7–23)
0 ≤ u21 + u22 ≤ C 2L . (7–24)
In this study the maximum allowable angle of attack is αmax ≈ 40 deg which corresponds
to CL = 0.4.
Next, the heating rate constraint of Eq. (7–11) is rewritten to be better behaved
computationally. Specifically, instead of constraining Q, we constrain the natural
logarithm of Q, log Q, as
−∞ ≤ log Q ≤ log Qmax, (7–25)
Using the above formulations, the optimal control problem corresponding to the
aeroassisted orbital transfer problem was solved in canonical units where length is
measured in Earth radii, time is measured in units of√
R3e /µ, speed is measured in units
of√
µ/Re , and mass is measured in units of m0, the initial mass of the vehicle. This
system of units is used because it is well-scaled.
7.3 Optimal Control Problem
The optimal control problem corresponding to the minimum-fuel aeroassisted orbital
transfer problem is now stated. Minimize the cost functional of Eq. (7–15) subject to the
dynamic constraints of Eqs. (7–21), the path constraints of Eqs. (7–14), (7–23), (7–24),
and (7–25), and the interior point constraints of Eqs. (7–8) and (7–9). The optimal
control problem is solved using the hp–mesh refinement algorithm of Ref. [67] which is
implemented in the software GPOPS [26, 67] and uses the NLP solver SNOPT [11, 68].
146
All NLP derivatives were computed using the Matlab automatic differentiator INTLAB
[85].
7.4 All-Propulsive Inclination Change Maneuvers
The following two all-propulsive transfers are studied in order to compared with the
aeroassisted orbital inclination change maneuver: (1) a single impulse direct change in
inclination via rotation of the initial velocity and (2) a two impulse bi-parabolic transfer.
Figs. 7-2A and 7-2B show the single impulse and bi-parabolic transfers, respectively. It
is seen that the single impulse transfer rotates the orbital velocity vector by an angle ∆i .
Next, the first impulse of the bi-parabolic transfer sends the orbit to an orbit of infinite
radius where the change in inclination is free. Upon return to the initial orbit, a second
impulse is applied to recircularize the orbit. For initial and terminal circular orbits of the
same size but with different inclinations, the direct impulse and total bi-parabolic impulse
required to change inclination by an amount ∆i are given, respectively, as [86]
∆V = 2v0 sin∆i2,
∆V = 2(√2− 1)v0,
(7–26)
where v0 is the initial orbital speed. By inspection, it is seen that the bi-parabolic
transfer is more efficient for ∆i > 49 degrees. Therefore, when comparing the optimal
aeroassisted orbital transfer fuel consumption with all-propulsive maneuvers, the
aeroassisted orbital transfer fuel consumption is compared with the single impulse
maneuver when ∆i ≤ 49 deg and is compared with the bi-parabolic transfer when
∆i > 49 deg.
7.5 Results
The multiple-pass aeroassisted orbital transfer optimal control problem summarized
in Section 7.3 was solved for n = (1, 2, 3, 4) atmospheric passes. Furthermore,
for each value of n, a change of inclination of if = (20, 40, 60, 80) deg subject to
Qmax = (400, 800, 1200,∞) W/cm2 is studied.
147
A Single Impulse Transfer.
B Bi-parabolic Transfer.
Figure 7-2. Schematic of All-Propulsive Single Impulse and Bi-Parabolic Transfers.
148
7.5.1 Unconstrained Heating Rate
The cost of the multiple-pass aeroassisted orbital transfer is first shown with no
constraint on heating rate. Fig. 7-3A shows the minimum impulse, ∆Vmin, required
to change the inclination of the orbital vehicle for one, two, three and four pass
aeroassisted maneuvers and the all-propulsive maneuvers. First, it is interesting to
note that because the bi-parabolic maneuver has a constant cost, the cost for the
60 deg and 80 deg all-propulsive inclination changes are equivalent. Next, it is seen
for very small inclination change (i.e., 1 deg), there is virtually no difference in cost
between aeroassisted maneuvers and all-propulsive maneuvers. For if = (20, 40, 60, 80)
deg, it is seen that the aeroassisted maneuvers can dramatically reduce costs when
compared with the all-propulsive maneuvers. The cost for a required inclination change
is insensitive to the number of atmospheric passes. For n = (1, 2, 3, 4), the costs are
nearly identical for any given value if . This is seen in Fig. 7-3B. In this figure, the final
mass fraction after completion of the aeroassisted maneuver is shown. It is seen that
for the range of inclination changes, a large fraction of the final mass is retained for the
vehicle after the maneuver is completed. For a 20 degree inclination change, more than
60% of the final mass is retained. Furthermore, for an 80 degree inclination change
maneuver, approximately 30% of the final mass is retained after completion of the
maneuver.
Next, Figs. 7-4A–7-4D show the impulses for ∆V1, ∆V2, and ∆V3 along with the total
loss of velocity from drag, ∆VD . First, it is noted that the deorbit and recircularization
impulses, ∆V1 and ∆V3, are very small. Regardless of the amount of inclination change
that is desired, these impulses are much smaller than the boost impulse, ∆V2. When
comparing Figs. 7-4B and 7-4D, it is seen that the majority of the boost impulse is used
to recover velocity lost due to atmospheric drag. Therefore, as expected, the cost of the
aeroassisted maneuver is largely due to recovering energy lost due to drag.
149
Tota
l∆V
(m/s
)
Inclination Change (deg)
One-Pass
Two-Pass
Three-Pass
Four-Pass
All-Propulsive
00
2000
4000
40 60 8020
6000
8000
max
A Minimum impulse, ∆Vmin vs. final inclination, if .
1.2
0
1
1 32 4
0.8
0.6
0.4
0.2
i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
m(tf)/m0
1.4
B Final mass fraction, m(tf )/m0, vs. number of atmospheric passes, n.
Figure 7-3. ∆Vmin, vs. if , and m(tf )/m0 vs. n.
150
1 328
32
34
36
38
30
2 4
i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
∆V1
(m/s
)
A ∆V1, vs. n.
1 31000
2000
3000
2 4
4000
5000
6000i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
∆V2
(m/s
)
B ∆V2, vs. n.
01 3
30
50
2 4
10
40
60
20
i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
∆V3
(m/s
)
C ∆V3, vs. n.
1 31000
2000
3000
2 4
4000
5000
6000i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
∆VD
(m/s
)
D ∆VD , vs. n.
Figure 7-4. ∆V1, ∆V2, ∆V3, and ∆VD Impulses vs. n.
Figs. 7-5A shows the total inclination change achieved by atmospheric forces as a
function of number of passes and required inclination change. It is seen that for each
required inclination change, the majority of the inclination change is performed by the
atmosphere. It is interesting to note for if = 80 deg that the four-pass maneuver has
less inclination change from the atmosphere as compared with the one, two or three
pass maneuvers. Nevertheless, the cost of the if = 80 deg maneuver is nearly the same
as the cost of the one, two or three pass maneuvers. Next, Fig. 7-5B shows the total
transfer time for n = (1, 2, 3, 4) for if = (20, 40, 60, 80). As expected, the total transfer
151
01 32 4
40
60
80
100
120
20
i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
∆i aero
(deg
)
A ∆iaero vs. n
01 3 3.51.5 2.52 4
200
400
100
300
i(tf ) = 20 deg
i(tf ) = 40 deg
i(tf ) = 60 deg
i(tf ) = 80 deg
Number of Atmospheric Passes
Traj
ecto
ryD
urat
ion
(min
utes
)
B T vs. n
Figure 7-5. Change in i by Atmosphere, ∆iaero, and transfer time, T , vs. n for Q =∞.
time increases as the number of atmospheric passes increases. Finally, it is noted for
a one-pass maneuver, the aeroassisted transfer requires approximately 100 minutes
regardless of desired inclination change.
152
7.5.2 Constrained Heating Rate
The effect of constraining the stagnation point heating rate on the small spacecraft
is now examined. Figs. 7-6A–7-6D shows the total required impulse, ∆Vmin as a
function of if and Qmax for if = (20, 40, 60, 80), Qmax = (∞, 1200, 800, 400) W/cm2,
and n = (1, 2, 3, 4). It is seen that, for any particular value of if , ∆Vmin increases as
Qmax decreases. Furthermore, it is noted again that the total cost is insensitive to the
number of atmospheric passes. Next, for even a highly constrained heating rate, the
aeroassisted maneuver is more fuel efficient than an all-propulsive maneuver. The only
case for which the aeroassisted maneuver has a greater cost than the all-propulsive
maneuver is for if = 80 degrees and Q = 400W/cm2. Figs. 7-7A–7-7D show the final
mass fraction after completion of the maneuvers for if = (20, 40, 60, 80) deg. Again, it
is seen that as Qmax decreases, more fuel is required to achieve a desired inclination
change.
Finally, Figs. 7-8A–7-8D show the maximum value of the sea level gravity-normalized
specific force, Smax, experienced by the vehicle during atmospheric flight, where S is
defined as
S =ρv 2A
2mg0
√
C 2D + C2L . (7–27)
For an unconstrained heating rate, Smax ranges from approximately three to twenty-five.
As the heating rate constraint is tightened, the magnitude of Smax decreases significantly
for all values of inclination change. For Q = 400W/cm2, Smax ≈ 1 for any desired
inclination change.
7.5.3 Optimal Trajectory Structure
The trajectory of the aeroassisted orbital inclination change maneuver is now
examined in detail. A 40 degree inclination change maneuver is used to examine the
structure of the optimal trajectory. Figs. 7-9A–7-9C show the altitude versus velocity,
heating rate versus time, and altitude versus flight path angle for Qmax = (∞, 800, 400)
W/cm2 for if = 40 deg for a one pass maneuver. It is seen for an unconstrained heating
153
All-Propulsive
1 31000
2000
3000
2 4
4000
5000
Number of Atmospheric Passes
∆Vmin
(m/s
)
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
A ∆Vmin vs. n for if = 20 deg.
All-Propulsive
1 32000
2 4
4000
6000
8000
Number of Atmospheric Passes
∆Vmin
(m/s
)
10000Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
B ∆Vmin vs. n for if = 40 deg.
All-Propulsive
1 3
12000
2 4
4000
6000
8000
Number of Atmospheric Passes
∆Vmin
(m/s
) 10000
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
C ∆Vmin vs. n for if = 60 deg.
All-Propulsive
1 3
12000
14000
2 4
4000
6000
8000
Number of Atmospheric Passes
∆Vmin
(m/s
)
10000
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
D ∆Vmin vs. n for if = 80 deg.
Figure 7-6. ∆Vmin, vs. n for Various Max Heating Rates and Final Inclinations.
rate, the vehicle dives deeply into the atmosphere once and then ascends back out of
the atmosphere. For the cases of Qmax = (800, 400)W/cm2, it is seen that the vehicle
descends until reaching the maximum value of the heating rate constraint. The vehicle
then glides at the maximum value of the heating rate constraint for a short duration
before re-ascending to near the edge of the atmosphere. The vehicle then descends
again to reach the heating rate constraint before reascending out of the atmosphere.
Therefore, for a one-pass maneuver with an active constraint on the heating rate, the
trajectory essentially becomes a two-pass maneuver. Figs. 7-10A and 7-10B show the
154
All-Propulsive
0
1
1 3
0.5
1.5
2 4Number of Atmospheric Passes
m(tf)/m0
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
A m(tf )/m0 vs. n for if = 20 deg.
1.2
All-Propulsive
0
1
1 32 4
0.8
0.6
0.4
0.2
Number of Atmospheric Passes
m(tf)/m0
1.4Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
B m(tf )/m0 vs. n for if = 40 deg.
All-Propulsive
0
1
1 32 4
0.8
0.6
0.4
0.2
Number of Atmospheric Passes
m(tf)/m0
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
C m(tf )/m0 vs. n for if = 60 deg.
All-Propulsive
0
1
1 32 4
0.8
0.6
0.4
0.2
Number of Atmospheric Passes
m(tf)/m0
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
D m(tf )/m0 vs. n for if = 80 deg.
Figure 7-7. m(tf )/m0, vs. n for Various Qmax, and if = (20, 40, 60, 80) deg.
angle of attack and bank angle for the vehicle for the one-pass maneuver. It is seen that
for each value of heating rate constraint, the vehicle enters and exits the atmosphere
with a near maximum value of angle of attack of approximately 40 deg. Furthermore, it
is seen that the vehicle enters at a nearly 90 deg bank angle, rotates 180 degrees, and
exits at a nearly -90 deg bank angle.
Figs. 7-11A–7-11D show the altitude versus velocity for one, two, three and four
pass maneuvers for if = 40 degrees and Qmax = 400W/cm2. It is interesting to note that
the profiles are nearly identical regardless of number of passes. For the one-pass
155
01 3
8
2
2
4
4
6
Number of Atmospheric Passes
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
Smax
(Dim
ensi
onle
ss)
A Smax vs. n for if = 20 deg.
01 3
5
15
2 4
10
Number of Atmospheric Passes
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
Smax
(Dim
ensi
onle
ss)
B Smax vs. n for if = 40 deg.
01 3
5
25
35
30
15
2 4
10
20
Number of Atmospheric Passes
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
Smax
(Dim
ensi
onle
ss)
C Smax vs. n for if = 60 deg.
01 3
30
50
2 4
10
40
20
Number of Atmospheric Passes
Qmax =∞ (W/cm2)
Qmax = 1200 (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
Smax
(Dim
ensi
onle
ss)
D Smax vs. n for if = 80 deg.
Figure 7-8. Smax, vs. n, for Various Qmax and if = (20, 40, 60, 80) deg.
maneuver, the vehicle descends and ascends to nearly the edge of the sensible
atmosphere. At this point, the vehicle descends again before exiting the atmosphere.
For the two-pass maneuver, the vehicle simply splits the one-pass maneuver between
each pass. For the three and four-pass maneuvers, these maneuvers collapse into a
two-pass maneuver. The second atmospheric pass for the three-pass maneuver and
the second and third atmospheric passes for the four pass maneuver never go deeply
into the atmosphere. Regardless of number of passes, the same general two-pass
profile is exhibited. In examining Figs. 7-12A–7-12D, the similarity of the maneuvers
156
12
Alti
tude
(km
)
Velocity (km/s)5 7 118 96 10
40
60
80
100
120
20
Qmax =∞ (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
A h, vs. v .
Time (sec)
Q(W
/cm2)
00
1000
1000
1500
1500
2000
2000
2500
2500
3000
3000 3500
500
500
Qmax =∞ (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
B Q, vs. t for if = 40-deg.
Alti
tude
(km
)
γ (deg)0 5−5 10
40
60
80
100
120
20
Qmax =∞ (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
C h vs. γ.
Figure 7-9. h vs. v , Q vs. t, and h vs. γ for if = 40-deg.
regardless of number of passes is seen again in examining the heating rate versus time
in the atmosphere. Regardless of number of passes, the same heating rate profile is
seen. The first time the maximum value of the heating rate is met, the vehicle rides
along the maximum value of the heating rate and then reascends. The second time the
vehicle achieves the maximum value of the heating rate constraint, it only touches it
before reascending. Again, it is seen that the interior passes for the three and four-pass
maneuvers collapse into passes that do not descend far into the atmosphere.
157
Time (sec)
Ang
leof
Atta
ck(D
eg)
00
30
50
1000 1500 2000 2500 3000 3500
10
500
40
20
Qmax =∞ (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
A α vs. t.
Time (sec)
Ban
kA
ngle
(Deg
)
0
0
−100
−2001000 1500 2000 2500 3000 3500
200
500
100
Qmax =∞ (W/cm2)
Qmax = 800 (W/cm2)
Qmax = 400 (W/cm2)
B σ vs. t.
Figure 7-10. α and σ vs. t for n = 1 and if = 40 deg.
158
Alti
tude
(km
)
7 7.5 8 8.5 9 9.540
60
80
100
120
Velocity (km/s)A h vs. v for n = 1 and if = 40 deg.
Alti
tude
(km
)
7 7.5 8 8.5 9 9.540
60
80
100
120
Velocity (km/s)
First Pass
Second Pass
B h vs. v for n = 2 and if = 40 deg.
Alti
tude
(km
)
7 7.5 8 8.5 9 9.540
60
80
100
120
Velocity (km/s)
First Pass
Second Pass
Third Pass
C h vs. v for n = 3 and if = 40 deg.
Alti
tude
(km
)
7 7.5 8 8.5 9 9.540
60
80
100
120
Velocity (km/s)
First Pass
Second Pass
Third Pass
Fourth Pass
D h vs. v for n = 2 and if = 40 deg.
Figure 7-11. h vs. v for n = (1, 2, 3, 4) and if = 40 deg and Qmax = 400 (W/cm2).
7.6 Discussion
The results of this study demonstrate several interesting features of using
aeroassisted glide maneuvers to change the inclination of a small spacecraft in LEO. For
an unconstrained heating rate, it is demonstrated that the total fuel required to change
the inclination of the small spacecraft is much less than for an all-propulsive maneuver.
As the heating rate is tightened, the cost of the aeroassisted maneuvers increase, but,
are still more efficient than the all-propulsive maneuvers except for the single case of
if = 80 degrees and Qmax = 400W/cm2. For an unconstrained heating rate, regardless
159
Q(W
/cm2)
00 1000 1500 2000 2500 3000
200
400
500
500
100
300
Time Since Atmospheric Entry (sec)A Q vs. t for n = 1 and if = 40 deg.
Q(W
/cm2)
00 1000 1500 2000 2500 3000
200
400
500
500
100
300
First Pass
Second Pass
Time Since Atmospheric Entry (sec)B Q vs. t for n = 2 and if = 40 deg.
Q(W
/cm2)
00 1000 1500 2000 2500 3000
200
400
500
500
100
300
First Pass
Second Pass
Third Pass
Time Since Atmospheric Entry (sec)C Q vs. t for n = 3 and if = 40 deg.
Q(W
/cm2)
00 1000 2000 3000
200
400
4000 5000
500
100
300
First Pass
Second Pass
Third Pass
Fourth Pass
Time Since Atmospheric Entry (sec)D Q vs. t for n = 4 and if = 40 deg.
Figure 7-12. Q, vs. t for n = (1, 2, 3, 4), if = 40 deg and Qmax = 400 (W/cm2).
of number of atmospheric passes, the vehicle dives deeply into the atmosphere only
once and affects all of the inclination change with this single atmospheric dive. For
the constrained heating rate cases, it is demonstrated that regardless of number of
atmospheric passes, the vehicle essentially conducts a two-pass maneuver. In the
first pass, the vehicle dives into the atmosphere and rides the heating rate constraint
for a finite duration. In the second pass, the vehicle merely touches the heating rate
constraint before reascending.
160
7.7 Conclusions
A study has been given on changing the inclination of a small high lift-to-drag ratio
spacecraft in low-Earth orbit using aeroassisted maneuvers. Three velocity impulses
(a de-orbit, boost, and re-circularization) are used along with lift and drag forces in the
atmosphere to change the inclination of the vehicle. It is found that the optimal solution
is insensitive to the number of atmospheric passes. For an unconstrained heating rate,
the solution reduces to a one-pass maneuver regardless of number of passes. For
highly constrained heating rates, the solution reduces to a two-pass maneuver. Finally,
it was found that for all but the highest inclination changes with the tightest heating rate
constraints that an aeroassisted maneuver was more fuel efficient than an all-propulsive
maneuver.
161
CHAPTER 8CONCLUSIONS
8.1 Dissertation Summary
Numerical methods for solving optimal control problems fall into two categories:
indirect and direct methods. An indirect method solves the continuous-time first-order
necessary conditions from the calculus of variations. While indirect methods in general
provide high-accuracy approximations, it is often hard to find a solution to these
necessary conditions. Direct collocation methods, on the other hand, are a more
robust numerical approximation technique. Direct collocation methods discretize the
original continuous-time optimal control problem such that the infinite-dimensional
continuous-time problem is transcribed into a finite-dimensional discrete problem, or
nonlinear programming problem (NLP). Direct methods have most commonly been
applied as h–methods. An h–method uses many low-degree approximating subintervals
and guarantees that the NLP is sparse. In contrast to h–methods, p–methods use a few
fixed number of intervals with a variable degree polynomial in each interval. A p–method
results in a dense NLP, but, if the solution to a problem is simple and smooth, high
accuracy approximations to the continuous-time optimal control problem are obtained
with small NLPs.
In this dissertation, an hp–direct collocation method has been presented. The
hp–method allows for a variable number of approximating intervals with a variable
degree approximation within each interval. The result is a method that is robust with
respect to the solution structure of a problem (that is, some optimal control problems are
better approximated by an h–biased method, while other optimal control problems are
better approximated by a p–biased method). The discrete approximation in each interval
is defined by the set of Legendre-Gauss or Legendre-Gauss-Radau points. These
points are used because they are defined by highly accurate quadrature rules and when
used as the support points in a Lagrange polynomial, do not exhibit Runge phenomenon
162
for high-degree approximations. Next, in analyzing the KKT conditions of the NLP, it
is found that the hp–method of this research results in a discrete representation of the
continuous-time first-order optimality conditions if the costate is continuous.
Two hp–mesh refinement algorithms have been presented. In each algorithm, the
accuracy of the approximation in each mesh interval is assessed by evaluating the
differential-algebraic constraints between collocation points. If an approximating interval
is inaccurate, the interval is modified by either increasing the degree of approximation
within the interval, or by subdividing the interval. The hp–mesh refinement algorithms
iteratively update the approximating grid until an approximation is accurate in every
approximating interval. The hp–mesh refinement algorithms are capable of utilizing
the best approximation strategy for different regions of a solution by modifying the
mesh either by increasing the degree of the approximating polynomial or increasing
the number of mesh intervals. The two hp–mesh refinement algorithms presented
in this research are distinctly different from one another because the first algorithm
is a p–biased algorithm while the second algorithm is an h–biased algorithm. Both
algorithms are compared with one another along with comparisons to p and h–methods
over several examples. It is demonstrated that the hp–methods are robust to problem
type and accurately solve the problems presented in a computationally efficient manner.
Furthermore, hp–mesh refinement algorithm 2 is the most successful strategy when
compared with p, h, and hp–mesh refinement algorithm 1 over the range of problems.
Utilizing the computational sparsity of an h–method as a starting point, hp–mesh
refinement algorithm 2 results in a sparse NLP. Furthermore, by using mid-degree
collocation only on smooth intervals, high accuracy approximations are obtained in a
computationally efficient manner. hp–mesh refinement algorithm 2 provides accurate
approximations to continuous-time optimal control problems with simultaneously small
and sparse NLPs.
163
Finally, an optimal aeroassisted orbital inclination change maneuver is studied.
In this study, a small maneuverable spacecraft in low-Earth orbit (LEO) uses the
aerodynamic forces of lift and drag to change the orbital inclination. The maneuver
is studied for a multiple number of atmospheric passes and variable heating rate
constraints. The aeroassisted maneuvers is demonstrated to be more fuel efficient
than all-propulsive inclination change maneuvers. Furthermore, it is found that the
aeroassisted maneuvers are insensitive to number of atmospheric passes.
8.2 Future Work
8.2.1 Continued Work on Mesh Refinement
Two hp–mesh refinement algorithms have been presented in this research. It is
believed that automatic mesh generation is a rich subject and many more advances
may be made. Typically, mesh refinement strategies are studied for h–methods. In
an h–method, there are only two degrees of freedom in refining a mesh, namely, the
number of mesh intervals and the placement of the mesh points. hp–mesh refinement
algorithms are significantly more complex, however, because there are three degrees
of freedom for refining a mesh, namely, the number of mesh intervals, the placement of
the mesh points, and the degree of the approximating polynomial within each interval.
Because of this extra degree of freedom in generating an approximating mesh, the
choice of how to refine a mesh is more complicated, but also more interesting and
fruitful. Presented in this research are two static refinement algorithms that only
increase the size of the NLP on every iteration. Two interesting future concepts to
explore are now stated. The first concept is a refinement process to decrease the size
of the NLP if any intervals are more accurate than the desired accuracy level, further
increasing the computational efficiency of the NLP. The second concept is to add a
dynamic mesh refinement component that can be used to exactly locate the switch in
activity between active and inactive path constraints. One of the strengths of a direct
collocation method is that the location of active and inactive constraint arcs does not
164
need to be known in order to approximate the solution of the problem. If the locations of
these arcs can be determined, however, the approximations can be made significantly
more accurate.
8.2.2 Discontinuous Costate
It has been demonstrated in this research that high-accuracy approximations are
achieved by the proposed hp–method if the costate is continuous. If mesh points are
at the location of discontinuity in the costate, the transformed adjoint system is an
inexact discrete representation of the continuous-time first-order necessary conditions.
For a dynamic refinement algorithm that will exactly locate the switch in activity of
inequality path constraints, it is likely that the costate may be discontinuous at mesh
points. It is necessary to determine how to make the transformed adjoint system a
discrete representation of the continuous-time first-order necessary conditions for a
discontinuous costate solution if mesh points are at the location of discontinuity in the
costate.
165
REFERENCES
[1] Kirk, D. E., Optimal Control Theory: An Introduction, Dover Publications, Mineola,New York, 2004.
[2] Bryson, A. E. and Ho, Y.-C., Applied Optimal Control , Hemisphere Publishing, NewYork, 1975.
[3] Pontryagin, L. S., Mathematical Theory of Optimal Processes, John Wiley & Sons,New York, 1962.
[4] Betts, J. T., “Survey of Numerical Methods for Trajectory Optimization,” Journal ofGuidnance, Control, and Dynamics, Vol. 21, No. 2, March–April 1998, pp. 193–207.
[5] von Stryk, O. and Bulirsch, R., “Direct and Indirect Methods for TrajectoryOptimization,” Annals of Operations Research, Vol. 37, 1992, pp. 357–373.
[6] Oberle, H. J. and Grimm, W., “BNDSCO: A Program for the Numerical Solutionof Optimal Control Problems,” Tech. rep., Institute of Flight Systems Dynamics,German Aerospace Research Establishment DLR, IB 515-89/22, Oberpfaffenhofen,Germany, 1990.
[7] Press, W. H., Flannery, B. P., Teukolsky, S., and Vetterling, W. T., NumericalRecipes: The Art of Scientific Computing, Cambridge University Press, 1990.
[8] Keller, H. B., Numerical Solution of Two Point Boundary Value Problems, SIAM,1976.
[9] Dickmanns, E. D. and Well, K. H., “Approximate Solution of Optimal ControlProblems Using Third Order Hermite Polynomial Functions,” Lecture Notes inComputational Science, Springer , Vol. 27, 1975.
[10] Russell, R. D. and Shampine, L. F., “A Collocation Method for Boundary ValueProblems,” Numerical Mathematics, Vol. 19, No. 1, 1972, pp. 1–28.
[11] Gill, P. E., Murray, W., and Saunders, M. A., “SNOPT: An SQP Algorithm forLarge-Scale Constrained Optimization,” SIAM Review , Vol. 47, No. 1, January2002, pp. 99–131.
[12] Biegler, L. T. and Zavala, V. M., “Large-Scale Nonlinear Programming Using IPOPT:An Integrating Framework for Enterprise-Wide Optimization,” Computers andChemical Engineering, Vol. 33, No. 3, March 2008, pp. 575–582.
[13] Byrd, R. H., Nocedal, J., and Waltz, R. A., “KNITRO: An Integrated Package forNonlinear Optimization,” Large Scale Nonlinear Optimization, Springer Verlag,2006, pp. 35–59.
166
[14] Kraft, D., On Converting Optimal Control Problems into Nonlinear ProgrammingCodes, Vol. F15 of NATO ASI Series, in Computational Mathematical Program-ming, Springer-Verlag, Berlin, 1985, pp. 261–280.
[15] Bock, H. G. and Plitt, K. J., “A Multiple Shooting Algorithm for Direct Solution ofOptimal Control Problems,” IFAC 9th World Congress, Budapest, Hungary, 1984.
[16] Schwartz, A., Theory and Implementation of Numerical Methods Based on Runge-Kutta Integration for Solving Optimal Control Problems, Ph.D. thesis, Department ofElectrical Engineering, University of California, Berkeley, 1996.
[17] Brauer, G. L., Cornick, D. E., and Stevenson, R., “Capabilities and Applications ofthe Program to Optimize and Simulate Trajectories,” Tech. Rep. NASA-CR-2770,National Aeronautics and Space Administration, 1977.
[18] Hargraves, C. R. and Paris, S. W., “Direct Trajectory Optimization Using NonlinearProgramming Techniques,” Journal of Guidance, Control, and Dynamics, Vol. 10,No. 4, July–August 1987, pp. 338–342.
[19] Betts, J., Practical Methods for Optimal Control and Estimation Using NonlinearProgramming, SIAM Press, Philadelphia, 2nd ed., 2009.
[20] Enright, P. J. and Conway, B. A., “Discrete Approximations to Optimal TrajectoriesUsing Direct Transcription and Nonlinear Programming,” Journal of Guidance,Control, and Dynamics, Vol. 19, No. 4, July–August 1996, pp. 994–1002.
[21] Hager, W. W., “Runge-Kutta Methods in Optimal Control and the TransformedAdjoint System,” Numerische Mathematik , Vol. 87, 2000, pp. 247–282.
[22] Benson, D. A., A Gauss Pseudospectral Transcription for Optimal Control, Ph.D.thesis, Department of Aeronautics and Astronautics, Massachusetts Institute ofTechnology, Cambridge, Massachusetts, 2004.
[23] Huntington, G. T., Benson, D. A., and Rao, A. V., “Optimal Configuration ofTetrahedral Spacecraft Formations,” The Journal of the Astronautical Sciences,Vol. 55, No. 2, April-June 2007, pp. 141–169.
[24] Betts, J. T. and Huffman, W. P., “Sparse Optimal Control Software – SOCS,” Tech.Rep. MEA-LR-085, Boeing Information and Support Services, Seattle, Washington,July 1997.
[25] von Stryk, O., User’s Guide for DIRCOL Version 2.1: A Direct Collocation Methodfor the Numerical Solution of Optimal Control Problems, Technische UniversitatDarmstadt, Darmstadt, Germany, 1999.
167
[26] Rao, A. V., Benson, D. A., Darby, C. L., Francolin, C., Patterson, M. A., Sanders,I., and Huntington, G. T., “Algorithm 902: GPOPS, A Matlab Software for SolvingMultiple-Phase Optimal Control Problems Using the Gauss PseudospectralMethod,” ACM Transactions on Mathematical Software, Vol. 37, No. 2, April–June2010, pp. 22:1–22:39.
[27] Dontchev, A. L., Hager, W. W., and Malanowski, K., “Error Bounds for the EulerApproximation and Control Constrained Optimal Control Problem,” NumericalFunctional Analysis and Applications, Vol. 21, 2000, pp. 653–682.
[28] Dontchev, A. L., Hager, W. W., and Veliov, V. M., “Second-Order Runge-KuttaApproximations In Constrained Optimal Control,” SIAM Journal on NumericalAnalysis, Vol. 38, 2000, pp. 202–226.
[29] Dontchev, A. L. and Hager, W. W., “The Euler Approximation in State ConstrainedOptimal Control,” Mathematics of Computation, Vol. 70, 2001, pp. 173–203.
[30] Zhao, Y. and Tsiotras, P., “A Density-Function Based Mesh Refinement Algorithmfor Solving Optimal Control Problems,” Infotech and Aerospace Conference, AIAAPaper 2009-2019, Seattle, Washington, April 2009.
[31] Jain, D. and Tsiotras, P., “Trajectory Optimization Using Multiresolution Techniques,”Journal of Guidance, Control, and Dynamics, Vol. 31, No. 5, September-October2008, pp. 1424–1436.
[32] Betts, J. T. and Erb, S. O., “Optimal Low Thrust Trajectories to the Moon,” SIAMJ. Appl. Dyn. Syst , Vol. 2, 2003, pp. 144–170.
[33] Elnagar, G., Kazemi, M., and Razzaghi, M., “The Pseudospectral Legendre Methodfor Discretizing Optimal Control Problems,” IEEE Transactions on AutomaticControl , Vol. 40, No. 10, 1995, pp. 1793–1796.
[34] Elnagar, G. and Razzaghi, M., “A Collocation-Type Method for Linear QuadraticOptimal Control Problems,” Optimal Control Applications and Methods, Vol. 18,No. 3, 1998, pp. 227–235.
[35] Benson, D. A., Huntington, G. T., Thorvaldsen, T. P., and Rao, A. V., “DirectTrajectory Optimization and Costate Estimation via an Orthogonal CollocationMethod,” Journal of Guidance, Control, and Dynamics, Vol. 29, No. 6,November-December 2006, pp. 1435–1440.
[36] Huntington, G. T., Advancement and Analysis of a Gauss Pseudospectral Tran-scription for Optimal Control , Ph.D. thesis, Massachusetts Institute of Technology,Cambridge, Massachusetts, 2007.
[37] Rao, A. V., Benson, D. A., Darby, C. L., Patterson, M. A., Sanders,I., and Huntington, G. T., User’s Manual for GPOPS Version 2.2,http://gpops.sourceforge.net/, June 2009.
168
[38] Kameswaran, S. and Biegler, L. T., “Convergence Rates for Direct Transcriptionof Optimal Control Problems Using Collocation at Radau Points,” ComputationalOptimization and Applications, Vol. 41, No. 1, 2008, pp. 81–126.
[39] Garg, D., Patterson, M. A., Darby, C. L., Francolin, C., Huntington, G. T.,Hager, W. W., and Rao, A. V., “Direct Trajectory Optimization and CostateEstimation of Finite-Horizon and Infinite-Horizon Optimal Control Problems viaa Radau Pseudospectral Method,” Computational Optimization and Applica-tions, Published Online: October 6, 2009. DOI 10.1007/s10589-009-9291-0.http://www.springerlink.com/content/n851q6n343p9k60k/.
[40] Garg, D., Patterson, M. A., Hager, W. W., Rao, A. V., Benson, D. A., and Huntington,G. T., “A Unified Framework for the Numerical Solution of Optimal Control ProblemsUsing Pseudospectral Methods,” Automatica, Published Online, August 2010.DOI:10.1016/j.automatica.2010.06.048.
[41] Fahroo, F. and Ross, I., “A Spectral Patching Method for Direct TrajectoryOptimization,” Journal of Astronautical Sciences, Vol. 48, No. 2-3, Apr.-Sept.2000, pp. 269–286.
[42] Fahroo, F. and Ross, I., “Costate Estimation by a Legendre PseudospectralMethod,” Journal of Guidance, Control, and Dynamics, Vol. 24, No. 2, 2001,pp. 270–277.
[43] Fahroo, F. and Ross, I., “Direct Trajectory Optimization by a ChebyshevPseudospectral Method,” Journal of Guidance, Control, and Dynamics, Vol. 25,No. 1, 2002, pp. 160–166.
[44] Fahroo, F. and Ross, I., “Pseudospectral Methods for Infinite-Horizon NonlinearOptimal Control Problems,” Journal of Guidance, Control, and Dynamics, Vol. 31,No. 4, 2008, pp. 927–936.
[45] Gong, Q., Kang, W., and Ross, I. M., “A Pseudospectral Method for the OptimalControl of Feedback Linearizable Systems,” IEEE Transactions on AutomaticControl , Vol. 51, No. 7, July 2006, pp. 1115–1129.
[46] Gong, Q., Ross, I. M., Kang, W., and Fahroo, F., “Connections Between theCovector Mapping Theorem and Convergence of Pseudospectral Methods,”Computational Optimization and Applications, Vol. 41, No. 3, December 2008,pp. 307–335.
[47] Gong, Q., Fahroo, F., and Ross, I. M., “Spectral Algorithm for PseudospectralMethods in Optimal Control,” Journal of Guidance, Control, and Dynamics, Vol. 31,No. 3, May-June 2008.
[48] Ross, I. and Fahroo, F., “Pseudospectral Knotting Methods for Solving OptimalControl Problems,” Journal of Guidance, Control, and Dynamics, Vol. 27, No. 3,2004, pp. 397–405.
169
[49] Ross, I. M. and Fahroo, F., “Legendre Pseudospectral Approximations ofOptimal Control Problems,” Lecture Notes in Control and Information Sciences,Springer-Verlag, 2003, pp. 327–342.
[50] Ross, I. and Fahroo, F., “Advances in Pseusospectral Methods for Optimal Control,”AIAA Guidance, Navigation, and Control Conference, AIAA Paper 2008-7309,Honolulu, Hawaii, August 2008.
[51] Ross, I. and Fahroo, F., “Convergence of the Costates Does Not ImplyConvergence of the Controls,” Journal of Guidance, Control, and Dynamics,Vol. 31, No. 4, 2008, pp. 1492–1497.
[52] Ross, I. M. and Fahroo, F., User’s Manual for DIDO 2001 α: A MATLAB Applicationfor Solving Optimal Control Problems, Department of Aeronautics and Astronautics,Naval Postgraduate School, Technical Report AAS-01-03, Monterey, California,2001.
[53] Canuto, C., Hussaini, M. Y., Quarteroni, A., and Zang, T. A., Spectral Methods inFluid Dynamics, Spinger-Verlag, Heidelberg, Germany, 1988.
[54] Fornberg, B., A Practical Guide to Pseudospectral Methods, Cambridge UniversityPress, 1998.
[55] Trefethen, L. N., Spectral Methods Using MATLAB, SIAM Press, Philadelphia,2000.
[56] Babuska, I. and Suri, M., “The p and hp Version of the Finite Element Method, anOverview,” Computer Methods in Applied Mechanics and Engineering, Vol. 80,1990, pp. 5–26.
[57] Babuska, I. and Suri, M., “The p and hp Version of the Finite Element Method,Basic Principles and Properties,” SIAM Review , Vol. 36, 1994, pp. 578–632.
[58] Gui, W. and Babuska, I., “The h, p, and hp Versions of the Finite Element Method in1 Dimension. Part I. The Error Analysis of the p Version,” Numerische Mathematik ,Vol. 49, 1986, pp. 577–612.
[59] Gui, W. and Babuska, I., “The h, p, and hp Versions of the Finite Element Method in1 Dimension. Part II. The Error Analysis of the h and h − p Versions,” NumerischeMathematik , Vol. 49, 1986, pp. 613–657.
[60] Gui, W. and Babuska, I., “The h, p, and hp Versions of the Finite Element Method in1 Dimension. Part III. The Adaptive h−p Version,” Numerische Mathematik , Vol. 49,1986, pp. 659–683.
[61] Betts, J. T. and Huffman, W. P., “Mesh Refinement in Direct Transcription Methodsfor Optimal Control,” Optimal Control Applications and Methods, Vol. 19, 1998,pp. 1–21.
170
[62] Atkinson, K. E., An Introduction to Numerical Analysis, John Wiley and Sons, NewYork, NY, 1989.
[63] Davis, P. J. and Rabinowitz, P., Methods of Numerical Integration, Academic Press,New York, 1984.
[64] Soueres, P. and Boissonnat, J. D., Robot Motion Planning and Control, Springer,Englewood Cliffs, NJ, 1998.
[65] Meditch, J., “On the Problem of Optimal Thrust Programming for a Soft LunarLanding,” IEEE Transaction on Automatic Control , Vol. 9, No. 4, 1964, pp. 477–484.
[66] Darby, C. L., Hager, W. W., and Rao, A. V., “An hp-Adaptive Pseudospectral Methodfor Solving Optimal Control Problems,” Optimal Control Applications and Methods,August 2010.
[67] Darby, C. L., Hager, W. W., and Rao, A. V., “Direct Trajectory Optimization by AVariable Low-Order hp-Adaptive Pseudospectral Method,” Journal of Spacecraftand Rockets, Accepted for Publication November 2010 (in press).
[68] Gill, P. E., Murray, W., and Saunders, M. A., User’s Guide for SNOPT Version 7:Software for Large Scale Nonlinear Programming, February 2006.
[69] Betts, J. T., Practical Methods for Optimal Control and Estimation Using NonlinearProgramming, SIAM Press, Philadelphia, 2010.
[70] Rao, A. V. and Mease, K. D., “Dichotomic Basis Approach to solvingHyper-Sensitive Optimal Control Problems,” Automatica, Vol. 35, No. 4, April1999, pp. 633–642.
[71] Rao, A. V. and Mease, K. D., “Eigenvector Approximate Dichotomic Basis Methodfor Solving Hyper-Sensitive optimal Control Problems,” Optimal Control Applicationsand Methods, Vol. 21, No. 1, January–February 2000, pp. 1–19.
[72] Rao, A. V., “Application of a Dichotomic Basis Method to Performance Optimizationof Supersonic Aircraft,” Journal of Guidance, Control, and Dynamics, Vol. 23, No. 3,May–June 2000, pp. 570–573.
[73] Rao, A. V., “Riccati Dichotomic Basis Method for solving Hyper-Sensitive optimalControl Problems,” Journal of Guidance, Control, and Dynamics, Vol. 26, No. 1,January–February 2003, pp. 185–189.
[74] Bryson, A. E., Desai, M. N., and Hoffman, W. C., “Energy-State Approximation inPerformance Optimization of Supersonic Aircraft,” AIAA Journal of Aircraft , Vol. 6,No. 6, 1969, pp. 481–488.
[75] Seywald, H. and Kumar, R. R., “Finite Difference Scheme for Automatic CostateCalculation,” Journal of Guidance, Control, and Dynamics, Vol. 19, No. 4, 1996,pp. 231–239.
171
[76] London, H. S., “Change of Satellite Orbit Plane by Aerodynamic Maneuvering,” IAS29th Annual Meeting, International Astronautical Society, New York, January 1961.
[77] Walberg, G. D., “A Survey of Aeroassisted Orbit Transfer,” Journal of Spacecraftand Rockets, Vol. 22, No. 1, 1985, pp. 3–18.
[78] Mease, K. D., “Aerossisted Orbital Transfer: Current Status,” The Journal of theAstronautical Sciences, Vol. 36, No. 1/2, 1988, pp. 7–33.
[79] Rao, A. V., Tang, S., and Hallman, W. P., “Numerical Optimization Study ofMultiple-Pass Aeroassisted Orbital Transfer,” Optimal Control Applications andMethods, Vol. 23, No. 4, July–August 2002, pp. 215–238.
[80] Darby, C. L. and Rao, A. V., “Minimum-Fuel Low-Earth Orbit Aeroassisted OrbitalTransfer of Small Spacecraft,” Journal of Spacecraft and Rockets, Accepted forPublication February 2011 (in press).
[81] Vinh, N.-X., Busemann, A., and Culp, R., Hypersonic and Planetary Entry FlightMechanics, Elsevier Science, New York, 1981.
[82] Clarke, K., Performance Optimization of a Common Aero Vehicle Using a LegendrePseudospectral Method , Ph.D. thesis, Department of Aeronautics and Astronautics,Massachusetts Institute of Technology, Cambridge, Massachusetts, 2003.
[83] Bate, R. R., Mueller, D. D., and White, J. E., Fundamentals of Astrodynamics, DoverPublications, 1971.
[84] Detra, R. W., Kemp, N. H., and Riddell, F. R., “Addendum to Heat Transfer ofSatellite Vehicles Re-entering the Atmosphere,” Jet Propulsion, Vol. 27, 1957,pp. 1256–1257.
[85] Rump, S. M., “INTLAB – INTerval LABoratory,” Developments in Reliable Com-puting, edited by T. Csendes, Kluwer Academic Publishers, Dordrecht, 1999, pp.77–104.
[86] Tewari, A., Atmospheric and Space Flight Dynamics, Birkhauser, Boston, 2007.
172
BIOGRAPHICAL SKETCH
Christopher Darby was born in 1983 in Gainesville, Florida. He received his
Bachelor of Science degree in mechanical engineering in December 2006, his Master of
Science degree in mechanical engineering in May 2010, and his Doctor of Philosophy
in mechanical engineering in May 2011. Each degree was earned at the University
of Florida. His research interests include numerical approximations to differential
equations, optimal control theory, and numerical approximations to the solution of
optimal control problems.
173