Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

JOURNAL OF GUIDANCE, CONTROL, AND DYNAMICS

Vol. 43, No. 6, June 2020

Engineering Notes
Online Feasible Trajectory Generation approaches is too high for online application. For example, [30,31]
describe the use of variants of the potential field method for designing
for Collision Avoidance in Fixed-Wing on-orbit assembly controllers, but the application discussed is com-
Unmanned Aerial Vehicles pletely different from that considered in this paper. Among the
advances in continuous time planning or polynomial trajectory gen-
eration, Bry et al. [32] have studied trajectory planning by combining
Min Prasad Adhikari∗ and Anton H. J. de Ruiter† a path search algorithm with polynomial trajectory optimization.
Ryerson University, Toronto, Ontario M5B 2K3, Canada Although they presented experimental results, the trajectory they
used was computed offline. Likewise, Nuske et al. [33] discussed
https://doi.org/10.2514/1.G004460 motion planning that allows a quadrotor UAV to navigate rivers using
SPARTAN, with an A -like approach employed for path searching in
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

the presence of obstacles. Although the solution time presented in


their paper is low, the problem considered is somewhat different from
that examined in the present paper. Similarly, Loianno et al. [34]
I. Introduction studied a planning method for aggressive flights in a quadrotor. They

T HIS study focuses on trajectory generation and autonomous


collision avoidance for fixed-wing unmanned aerial vehicles
(UAVs) that fly low among obstacles and remain close to a desired
jointly considered the estimation, control, and planning for quadrotor
UAVs, where continuous-time planning must be used for aggressive
maneuvers. The paper reports a dynamic model for the UAV in which
straight path between two points. Such a problem generally arises in only feasible trajectories are sought. Although experimental results
large-area geophysical surveys, where a UAV ideally flies at low are presented, no details of the solution time are disclosed. As far as
altitude to collect high-resolution data, and the area under survey is the present study is concerned, a feasible path generation method for
traced out by straight lines that become the desired paths [1]. Other fixed-wing aircraft was proposed by Bakolas et al. [35], whereby a
such applications of fixed-wing UAVs include the collection of data geometric approach is used to define a flight path, and this path is then
in large agricultural fields, crop dusting, and monitoring of plants in parameterized with respect to time to form a trajectory by solving a
forests. The solution to such problems should not only ensure the nonlinear programming problem. As their study did not focus on
safety of the UAV, but also increase productivity. However, onboard online trajectory generation, the rapid solvability of the problem was
trajectory generation for fixed-wing UAVs remains the subject of not a concern. Regarding the solution time for feasible trajectory
ongoing research [2]. generation, a custom solver that reduces the computation time for a
One aspect of the task is the generation of feasible trajectories from quadrotor swarm has been developed [36], with CVXGEN [37] used
an initial point to the target point so as to avoid obstacles, satisfy state to generate the solver and provide a solution for a small segment of
and control constraints, and meet the mission objectives; a second the swarm problem.
aspect concerns searching for the optimal trajectory. Although the In the present study, we consider trajectory generation as an
computational complexity of trajectory generation for a fixed-wing optimal control problem, allowing the direct incorporation of perfor-
UAV depends on the number of constraints imposed, determining the mance metrics and state–control constraints. In particular, we present
optimal solution is more expensive, in terms of computational load, a rapid feasible trajectory generation approach for fixed-wing UAVs
than finding a feasible solution for the same problem. Even though in which the trajectory is defined as a function of points x, y, and z
the optimal trajectory is obviously superior in terms of quality, a in three-dimensional (3D) space and velocity v. The definition of a
feasible trajectory that can be rapidly obtained is beneficial as it feasible trajectory with four optimization parameters leads to a faster
allows a UAV to fly safely in an obstacle-rich environment. solution time than for the original optimal control problem with more
A number of studies have considered trajectory generation for than four optimization parameters. A similar idea appears in [35],
UAVs, and several survey papers have been published [3–5]. Most where a semi-analytical method for generating an initial guess was
trajectory generation methods for the constrained UAV problem proposed for aircraft landing trajectory generation in the absence of
adopt either an optimization approach or a certain type of iterative obstacles. In contrast, we consider the scenario of flying from a start
approach [5–8]. Well-known examples are the cell decomposition point to a goal point in the presence of stationary and moving
method [9], road map method [10], artificial potential field method obstacles, with the goal of staying close to a reference flight path.
[11–14], rapidly exploring random tree method [15–18], and tran- In [35], the process of initial guess generation was divided into two
scription methods [19–24]. Other methods include linear interpola- steps. In the first step, path primitives (Dubins patterns) were used to
tion [25], B-spline parameterization [26], direct and indirect generate a path by solving the path planning problem separately in the
methods, dynamic programming [24], genetic algorithms [27], pseu- vertical and horizontal planes, resulting in a geometric path. In the
dospectral discretization and optimal control [28], and model pre- second step, the path was parameterized with respect to time using
dictive control methods [29]. Many of these studies do not address the inverse dynamics, such that the control constraints were not violated.
issue of the computation time, and the computational load of some In the present study, the states, controls, and constraints are para-
meterized as a function of position and velocity in space, and are
Received 23 March 2019; revision received 9 February 2020; accepted for solved as a single problem to generate time-parameterized feasible
publication 19 February 2020; published online 3 April 2020. Copyright © trajectories in the presence of obstacles and with certain objectives.
2020 by Min Adhikari and Anton de Ruiter. Published by the American The rapidly generated feasible trajectory can be used in its own right,
Institute of Aeronautics and Astronautics, Inc., with permission. All requests or can be used as an initial guess in the original optimal control
for copying and permission to reprint should be submitted to CCC at www problem to obtain a faster optimal trajectory. To study the online
.copyright.com; employ the eISSN 1533-3884 to initiate your request. See implementation of the proposed method, we have developed our own
also AIAA Rights and Permissions www.aiaa.org/randp.
*Ph.D. Student, Department of Aerospace Engineering, 350 Victoria
custom solver based on the sequential convex programming (SCP)
Street; minprasad.adhikari@ryerson.ca. method [38]. To the best of our knowledge, the simplification

Associate Professor and Canada Research Chair in Spacecraft Dynamics approach described in this paper is the first of its kind. However,
and Control, Department of Aerospace Engineering, 350 Victoria Street; there are various application-specific simplification approaches in the
aderuiter@ryerson.ca. literature, such as in [6,39]. While the semi-analytical approach of
1201
1202 J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES

Z
[35] supports various applications of fixed-wing UAVs, our simpli- tf
fication combined with the reduced-parameter optimization problem JX⋅;U⋅  βyt2 ηzt−zd 2 rXtdt; β > 0; η > 0
t0
handles online obstacle avoidance while remaining close to a desired
straight path between two points. (3)
The contributions of this study can be summarized as follows:
1) A simplification approach for the dynamical equations gov- subject to the dynamic equations (1) and the constraints
erning fixed-wing UAVs is introduced along with the associated
control constraints. This approach results in a simpler kinematic x; y; z; v; γ; ψt0   x0 ; y0 ; z0 ; v0 ; γ 0 ; ψ 0 ; x; y; ztf 
equation that preserves the bounds on the original dynamic controls.
The controls of the original dynamic equation can then be calculated  xf ; yf ; zf  (4)
from the controls of the simplified system equations.     
2) A trajectory generation problem (in 3D space) usually includes  x − xfc;tg pxj  y − yfc;tg pyj
hj x; y; z  ln   
 


states and controls as optimization parameters, whereas the proposed aj bj
method has only four optimization parameters x; y; z; v and pre-  p 
 z − zfc;tg  zj
serves the dynamic constraints. Thus, the proposed method uses   
 ≥ ϵs ; t ∈ t0 ; tf  (5)
fewer optimization parameters (which leads to a faster solution time) cj
than conventional methods.
The remainder of this paper is organized as follows. In Sec. II, the with 0 < ϵs ≪ 1, and
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

problem is stated and the dynamic equation for a fixed-wing UAV is


simplified. In Sec. III, the method for feasible trajectory generation is X ≤ Xt ≤ X; U ≤ Ut ≤ U; t ∈ t0 ; tf  (6)
derived. Section IV briefly discusses the solver customization, before
Sec. V presents the results of a Monte Carlo test and a numerical where upper and lower limits (⋅ and ⋅, respectively) are defined on
example. Finally, Sec. VI concludes the paper.
the states and the saturation of the controls. In the cost function (3),
we include the robustness function [44]
II. Problem Formulation
n 
X 
−hj x;y;z
In this paper, we consider a dynamic model for a fixed-wing UAV rX⋅  w ee −1 ; w>0 (7)
similar to that in [40–42], which can be written as j1

2 3 2 v cosψ cosγ 3 The optimal control problem presented above is the one for which
x_
we would ultimately like an optimal solution. However, as stated in
6 y_ 7 6 v sinψ cosγ 7
6 7 6 7 the Introduction, direct solutions may be computationally expensive,
6 7 6 7
6 z_ 7 6 v sinγ 7 especially in the absence of a good feasible initial guess. In the
6 76 7 (1)
6 v_ 7 6 7 following, we present a method for rapidly generating a feasible
M −D  T cosα − Mg sinγ
1
6 7 6 7
6 7 6 1 7 initial guess for this problem. This feasible initial guess may either
4 γ_ 5 4 Mv L cosϕ  T sinα cosϕ − Mg cosγ 5 be used as the flight trajectory in its own right, or may be used as
Mv cosγ L sinϕ  T sinα sinϕ
1
ψ_ initial guess to solve the given optimal control problem. We shall
demonstrate the benefits of both possibilities in Sec. V.
where x; y; z refers to position in space, v denotes the ground We develop a two-stage approach in this paper. In the first step,
speed, ψ denotes the yaw angle, γ denotes the flight path angle, described in Sec. II.B, we transform the stated optimal control problem
M is the mass of the aircraft, Llift force  1∕2ρv2 SCL , from a dynamic problem to a kinematic problem, while preserving
Ddragforce  1∕2ρv2 SCD , g is gravitational acceleration the original dynamic constraints. In the second step, presented in
9.81 m∕s2 , CD  CD0  KC2L is the drag coefficient, CL  CLα α Sec. III, we transform the new kinematic optimal control problem into
is the lift coefficient, and K  1∕πAe. Here, S is the wing surface a simplified geometric problem with fewer optimization parameters,
area, A is the aircraft’s aspect ratio (given by A  b2 ∕S), b is the and use this to obtain the feasible initial guess (or a feasible trajectory).
wing span, e is the Oswald efficiency, and ρ is the density of the air.
In the UAV model, α, ϕ, and T are considered as controls, where α B. Simplification of the System Dynamic Equation
is the angle of attack, ϕ is the roll/bank angle, and T represents thrust. We now simplify the last three equations of the dynamic equa-
In Eq. (1), the effect of thrust T has been added to the model derived tion (1). To do so, we introduce new control inputs and bounds that
in ([41] Chap. 3). We take X  x; y; z; v; γ; ψ as the state and guarantee the original control bounds in Eq. (6).
U  α; ϕ; T as the control. Typically, the angle of attack α for a wing in a fixed-wing UAV is
small compared with the bank angle ϕ. Therefore, it is assumed that α
A. Problem Definition lies within a small range such that sin α ≈ α and cos α ≈ 1,
The objective is for the UAV to start at initial time t0 from initial and neglect higher-order terms. We define a new set of control inputs
position x0 ; y0 ; z0  with velocity, flight path angle, and heading Us  a; ωγ ; ωψ  in terms of the acceleration a, rate of change of the
angle of v0 , γ 0 , and ψ 0 , respectively, and reach a target position flight path angle ωγ , and rate of change of the heading angle ωψ , such
xf ; yf ; zf  at final time tf (which can be freely selected), while that the dynamic equations (1) become
avoiding obstacles and staying close to a desired flight path. This
path is represented by a straight line at a certain height zd , parallel to x_  v cos γ cos ψ; y_  v cos γ sin ψ; z_  v sin γ
the x axis. We consider n obstacles, described by ([43] Chap. 4) v_  a; γ_  ωγ ; ψ_  ωψ (8)
     
 x − xfc;tg pxj  y − yfc;tg pyj  z − zfc;tg pzj
      ≤ 1 (2) where
 aj   bj   cj 
 
1 1
where xfc;tg ; yfc;tg ; zfc;tg  denotes the obstacle center position at time a − ρv2 SCD0  KC2Lα α2   T cosα − Mg sinγ (9a)
M 2
t, faj ; bj ; cj g gives the obstacle radius along each coordinate axis,
fpxj ; pyj ; pzj g ≥ 2 defines the obstacle shape, and j  1; 2; : : : ; n.   
1 1 2
The associated trajectory generation problem is posed as the ωγ  ρv SCLα α cosϕ  T sinα cosϕ − Mg cosγ
following optimal control problem: Find the state–control pair Mv 2
Xt; Ut and final time tf that minimizes the cost (9b)
J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES 1203

  
1 1 2 Using the simplified dynamics in Eq. (8), we pose a related optimal
ωψ  ρv SCLα α sinϕ  T sinα sinϕ (9c) control problem: Find the control–state pair X⋅; Us ⋅ that
Mv cosγ 2
minimizes the cost (3) subject to the dynamics (8), constraints (4)
Under the stated assumptions on α, inverting Eq. (9) gives the and (5), and control constraints Us ≤ Us ≤ Us with bounds given
original controls according to by Eq. (11).
As stated in the Introduction, rapid optimal trajectory generation
1 may be computationally intensive owing to the nature of Nonlinear
T  Ma  ρv2 SCD0  Mg sinγ (10a) Programming (NLP) algorithms. Nevertheless, a feasible trajectory
2
for the problem is also a challenge, as one cannot be easily obtained
  by simple expressions. The main advantages of simplifying the
v cosγωψ
ϕ  arctan (10b) system dynamic equation are that the simplified model is affine in
vωγ  g cosγ the control parameters, and that the parameters can be easily defined
  from the position of points with respect to the time parameter. Thus,
Mvωγ  Mg cosγ the problem size is reduced by introducing the feasible problem.
α (10c) Another advantage is that the solution to the simplified model is also a
cosϕ1∕2ρv2 SCLα  T
solution to the dynamic model, and therefore the trajectory solution
These equations are used to derive bounds on the new controls, as obtained by solving the simplified model can be implemented in the
stated below. Once the actual new controls Us have been obtained, the dynamic model. The following section describes our proposed
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

exact equations (9) are inverted to recover the original controls U. method for rapidly generating a feasible initial guess to this optimal
Given the constraints for the controls α: α ≤ α ≤ α; ϕ: ϕ ≤ ϕ ≤ control problem.
ϕ; T: T ≤ T ≤ T, limits on Us  a; ωγ ; ωψ  are now obtained such
that the bounds on the original controls are guaranteed to be satisfied III. Approach for Feasible Trajectory Generation
[based on Eq. (10)]. We introduce N points between the initial and the goal point in the
Assumptions: The aircraft mass M and the state parameters X are x–y–z space, so that the initial point and the goal point are x0 ; y0 ; z0 
known. T ≥ 0 N, ϕ  −ϕ, 0 < ϕ < π∕2 rad, α > 0 rad, v > 0 m∕s, and xN1 ; yN1 ; zN1 , respectively. The path between the initial
and cos γ > 0. As a result, jγj < π∕2 rad and cos ϕ > 0. point and the goal point connected by the set of N intermediate points
Using Eq. (10), we obtain the following bounds on the new should be determined to give a flyable trajectory (with obstacle
controls: avoidance). In order that the points arranged in space form a feasible
  path, they should satisfy the UAV’s state and control constraints.
1 1 2 Thus, in the following, expressions are developed that define the
a T − ρv SCD0 − Mg sinγ (11a) relationships between points in space and the UAV’s state and control
M 2
constraints. Figure 1 shows the distribution of N points between the
  initial point and the goal point. To relate the kinematic equation (8) of
1 1
a T − ρv2 SCD0 − Mg sinγ (11b) a fixed-wing UAV to the points in x–y–z space, it is assumed that the
M 2 UAV moves in a straight line between two consecutive free points. In
8 Fig. 1, x0 ; y0 ; z0  is the initial point, ψ 0 is the initial heading angle,
> g cosγ and γ 0 is the initial flight path angle. Similarly, xN ; yN ; zN  is the free
<−  ϵc ; α≤0
v point before xN1 ; yN1 ; zN1 , where ψ N and γ N are the heading
ωγ  where ϵc > 0
>
: α1∕2ρv 2
SC Lα  T g cosγ angle and flight path angle between points N and N  1, respectively.
− α>0 It is assumed that the directions of the heading angle and the flight
Mv v
(11c) path angle at points N and N  1 are the same, as the direction is
measured between points N and N  1.
Let xi ; yi ; zi  represent the location of the ith point in x–y–z space,
α cosϕ1∕2ρv2 SCLα  T − Mg cosγ
ωγ  (11d) and let vi be the velocity at that point, under the assumption that the
Mv velocity between points i and i  1 is the average of vi and vi1 .
Accordingly, the acceleration profile between the points is constant.
tanϕvωγ  g cosγ Define δsi to be the distance covered in time δti in 3D space, so that
ωψ  (11e) δsi and δti are given by
v cosγ
q
tanϕvωγ  g cosγ δsi  δx2i  δy2i  δz2i (12)
ωψ  (11f)
v cosγ
2δsi
δti  (13)
Under the given assumptions, it is necessary that jϕj ≤ π∕2 rad. vi  vi−1
Therefore, by Eq. (10), it is required that ωγ > −g cosγ∕v, and
this is satisfied if ωγ  −g cosγ∕v  ϵc for any ϵc > 0. This is the
reason that there are two cases for ωγ .
We can directly verify that a ≤ a ≤ a implies T ≤ T ≤ T
from Eq. (10). We now demonstrate that ωγ ≤ ωγ guarantees α ≤ α
for the case α > 0. By Eq. (11), it should hold that α ≤
Mvωγ  Mg cosγ∕A, where A  cosϕ1∕2ρv2 SClα  T >
0 under the stated assumptions. Therefore, it follows that
αA − Mg cosγ∕Mv ≤ ωγ . As

αA − Mg cosγ α1∕2ρv2 SCLα  T − Mg cosγ


≤  ωγ ≤ ωγ
Mv Mv

it follows that α ≤ Mvωγ  Mg cosγ∕A  α. The other cases


can be demonstrated in a similar manner. Fig. 1 N discrete points in 3D space.
1204 J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES

where δxi  xi − xi−1 , δyi  yi − yi−1 , and δzi  zi − zi−1 subject to the constraints
(i  1; : : : ; N  1) are the displacements between two consecutive
points on the x, y, and z axes, respectively, at the ith instant; δti is xi1 − xi 2  yi1 − yi 2  zi1 − zi 2  xi − xi−1 2
the time between two consecutive points, which is measured by
 yi − yi−1 2  zi − zi−1 2
the average velocity at consecutive points.
As ψ is the heading angle measured from the positive x axis to the i  1; : : : ; N (20)
positive y axis and γ is the flight path angle measured from the x–y
plane to the flight path, the expressions for ψ i and γ i between the       
 xi − xfc;tg pxj  yi − yfc;tg pyj  zi − zfc;tg pzj
i − 1th and ith instants can be written as ln   
 
 
 


a j b j c j
 
δyi ≥ ϵs > 0; i  1; : : : ; N (21)
ψ i  arctan (14)
δxi
X ≤ Xi ≤ X; Usi ≤ Usi ≤ Usi ; i  1; : : : ; N (22)
 
δzi
γ i  arctan p (15) where X i  xi ; yi ; zi ; vi ; γ i ; ψ i , Usi  ai ; ωγi ; ωψi , and
δx2i  δy2i
γ i ; ψ i ; ai ; ωγi ; ωψi are given by Eqs. (14–18), respectively. The bounds
where i  1; : : : ; N  1, ψ N1  ψ N , and γ N1  γ N . The control Usi ; Usi are given by Eq. (11).
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

constraints on a; ωγ ; ωψ are transformed as follows: Comparing the optimization problem given by Eq. (19) for
Eq. (22) with the optimal control problem given in Sec. II.B, it can
For v_  a, using the approximation v_ ≈ δv∕δt, one has
be seen that the cost function and the constraints are quite similar,
δv∕δt  a. Using δv  vi − vi−1 , the average acceleration between
although there are some differences. Specifically, comparing the
two consecutive points becomes vi − vi−1 ∕δti   v2i − v2i−1 ∕ costs in Eqs. (19) and (3), it can be seen that we have added a term
2δsi   a. Thus, [the last term on the right-hand side of Eq. (19)], which penalizes the
square of the overall length of the trajectory represented by the points.
v2i − v2i−1 This is to encourage the restriction of the path length, as well as to
ai  (16)
2δsi limit the path curvature. The other notable difference is the constraint
in Eq. (20), which forces the distance between adjacent pairs of points
For γ_  ωγ , one has δγ∕δt  ωγ . Using δγ  γ i − γ i−1 , the to be equal. This constraint is added to encourage the resulting
average rate of change in the flight path angle between two con- trajectory to be well-behaved and is found to be beneficial for the
secutive points becomes performance of our custom solver when finding solutions to the
optimization problems presented in this paper. Moreover, it helps
γ i − γ i−1 γ i − γ i−1 vi  vi−1  to determine a good starting point for the problem; this follows from
  ωγ [45] (Sec. 5.3), which states that the initialization process requires an
δti 2δsi
equality constraint along with other Karush–Kuhn–Tucker condi-
Thus, tions to find a good starting point, irrespective of the user-supplied
initial guess.
The presented optimization problem is an NLP problem with 4N
γ i − γ i−1 vi  vi−1 
ωγi  (17) variables xi ; yi ; zi ; vi . To solve this problem, an initial starting point
2δsi is required. Given the initial and goal points, the following is used as a
set of starting points:
Similarly, for ψ_  ωψ , one has δψ∕δt  ωψ . Using xi  equally spaced points from x0 to xN1 .
δψ  ψ i − ψ i−1 , the average rate of change in the heading angle yi  equally spaced points along the desired reference path from
between two consecutive points becomes y0 to yN1 .
zi  equally spaced points along the desired reference path from
ψ i − ψ i−1 ψ i − ψ i−1 vi  vi−1  z0 to zN1 .
  ωψ
δti 2δsi vi  minimum vi such that v ≤ vi ≤ v,  ∀ i  1; : : : ; N.
This initialization may introduce infeasible constraints. That is,
Thus, when these starting points are provided without considering the
obstacle locations, there is a possibility that these points in 3D space
ψ i − ψ i−1 vi  vi−1  may be inside an obstacle, which will cause the obstacle constraint
ωψi  (18) to be infeasible at the very beginning of the solution procedure.
2δsi
However, using the Quadratic Programming (QP) algorithm [45],
an obstacle-free feasible solution can be obtained, regardless of the
We now pose an optimization problem within this geometric frame-
solution procedure.
work, motivated by the simplified optimal control problem presented in
Once the problem described by Eqs. (19–22) has been solved to the
Sec. II.B. Given an initial condition x0 ; y0 ; z0 ; v0 ; γ 0 ; ψ 0  (note that this
required level of accuracy, a feasible trajectory for the original
places a constraint on x1 ; y1 ; z1 ), and the final condition
trajectory generation problem presented in Sec. II can be obtained
xN1 ; yN1 ; zN1 , find the parameters xi ; yi ; zi ; vi ji  1; : : : ; N
as follows. To recover the remaining states, Eqs. (12) and (13) are first
that minimize the cost used to compute the time associated with the node points, and then
Eqs. (14) and (15) are used to compute the heading angle ψ and the
X
N
flight path angle γ, respectively. To recover the controls, Eq. (16) is
JG ⋅  βy2i  ηz2i  rxi ; yi ; zi 
i1
used to determine the acceleration a, and Eqs. (17) and (18) give ωγ
and ωψ between consecutive node points, respectively. The original
X
N 1
κ xi − xi−1 2  yi − yi−1 2  zi − zi−1 2 ; controls for the original problem are then obtained by numerically
i1
solving Eq. (10) for T; ϕ; α. Although the SCP algorithm is used, the
simplification in Sec. II.B means that there is no guarantee that the
κ > 0; β > 0; η > 0; w > 0; solution to the simplified problem with the simplified model is locally
Xn h i optimal for the original problem with the dynamic model. Instead, we
−hj xi ;yi ;zi 
where; r xi ; yi ; zi   w ee −1 (19) have a suboptimal feasible solution. The details can be found in [46]
j1 (Sec. 3.4.3).
J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES 1205

IV. Customization of Solver Table 1 Physical and aerodynamic features of the Ascent
UAV [53]
The optimization problem posed in Sec. III is an NLP. Any direct
method of solving the optimal control problems posed in Sec. II will Ascent UAV’s parameter Value
also result in an NLP following a suitable discretization. Feasible Mass (M) 0.553 kg
trajectory generation for online applications requires a rapid solution Density of air ρ 1.225 kg∕m3
of the posed optimization problems. Moreover, online implementa- Wing surface area (S) 0.2135 m2
tion in an embedded system requires a solver that is suitable for an
Acceleration due to gravity g 9.81 m∕s2
embedded platform. Thus, to use the feasible trajectory generation
algorithm in an embedded platform, we require a robust algorithm Minimum drag coefficient Cd0  0.03 (assumed)
that can be easily implemented in an embedded system. In this paper, Wing span (b) 1.37 m
we describe a custom solver based on the SCP methodology [47]. Aspect ratio (A) b2 ∕S  8.79
Strictly speaking, we are not performing SCP, because the noncon- Oswald efficiency (e) [54] 1∕1.05  0.007πA  0.8043
vexity of the cost function in the presence of the robustness function Constant (K) 1∕πAe  0.045
means that the Hessian is not guaranteed to be convex. [Here, non- Clα 4.2
convexity refers to the nonconvex nature of the cost functions (3) and Thrust-to-weight ratio (T∕W) 0.7 (assumed)
(19) following the addition of the robustness function (7).] As the
robustness function is not necessarily convex, the addition of the
robustness function to the cost does not guarantee that the overall cost
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

function is convex. However, in all of the numerical examples we


attempted, the minimum eigenvalue of the Hessian of the overall cost
Table 2 State constraints for the Ascent UAV
function was very small in magnitude, and the custom SCP solver
worked very well, even in worst-case scenarios when the initial State Lower bound Upper bound
guesses were infeasible and passed through one or more obstacles. x, m −1 110
There are various methods for solving a standard quadratic y, m −50 50
programming problem, for example, the interior point method [38],
z, m 0 50
the active set method [48], [49], and the primal-dual method [45].
According to [50] (Sec. 5.2), for the range of quadratic problems, the γ, rad −π∕4 π∕4
primal barrier method in the primal-dual algorithm with the Mehrotra ψ, rad −π π
predictor–corrector offers consistent performance. Moreover, Boyd v, m∕s 8 12
and Vandenberghe have shown that a quadratic problem can be
solved reliably in 25 iterations with reasonable accuracy using an
interior-point method [51].
Therefore, to solve the quadratic problem considered in this study,
the primal barrier method is selected based on the primal-dual interior Table 3 Control constraints for the Ascent UAV
point algorithm with the Mehrotra predictor–corrector, as given by
Vandenberghe [45]. This method is further customized to reduce the Control Lower bound Upper bound
computation time. The use of a custom solver reduces the memory α, rad 0 15π∕180
requirements of the proposed approach and the number of floating- ϕ, rad −π∕4 π∕4
point operations required to solve the problem compared with a T, N 0 3.7975
general QP solver. A brief outline of the customization methods
and numerical adaptations for secure (i.e., no division by zero)
computation is given in [50,52]. We have written a custom solver
generation program based on the work described in [45]. It is written
in C and uses a set of customized optimization parameters (which We use the method of pseudospectral discretization [28], with
can be defined before or after the code generation) and expressions N  30 nodes, to solve the simplified problem in Sec. II.B. The
to solve a QP problem with only four mathematical operators geometric problem is solved using N  30 points. For the third
(; −; ×; ∕); furthermore, it has no external library dependencies. method, the feasible trajectory/controls are converted to a feasible
A detailed illustration of the customization algorithm is available in initial guess using an interpolation scheme known as Pchip ([55]
[46] (Sec. 2.3). Chap. 4), to obtain the state/control Legendre–Gauss–Lobatto points.
In the process, the feasible trajectory/controls are first interpolated
V. Numerical Example and then the state/control at Legendre–Gauss–Lobatto points is
extracted. We shall compare the methods in terms of computational
The UAV parameters for which a trajectory among obstacles will
time (denoted Cti , where i  1; 2; 3 are the three approaches outlined
be generated are first introduced. For the numerical test, parameters
such as mass, wing surface area, and wingspan of a fixed-wing above), number of iterations (denoted Iti ), cost [denoted Ci and
electric-powered UAV (Ascent [53]) are considered. Table 1 shows computed according to Eq. (3)], and average deviation (denoted
the UAV parameters, which are representative of a fixed-wing elec- Adi ) of the trajectory resulting from integrating the obtained controls
tric-powered UAV (Ascent [53]). Tables 2 and 3 show the state and (using Runge–Kutta ordinary differential equation (ODE) 45) into
control limits, respectively. the system dynamics, compared with the trajectory obtained from the
The corresponding control limits for the simplified optimal control problem solution (either geometric points or pseudospectral points).
problem in Eq. (11) are given in Table 4. A Monte Carlo test with The average deviation is a measure of the quality of discretization
various obstacle configurations will be performed. To demonstrate used. For a fair comparison, all problems are solved using our custom
the benefit of the proposed approach, we shall generate UAV trajec- solver, so that they are solved as quickly as possible, without any
tories by three different approaches: computational overhead. As will be demonstrated, the second
1) Solving the simplified problem in Sec. II.B directly, without approach provides the most rapid trajectory generation, whereas
finding a good feasible initial guess first. the third approach is still significantly quicker than the first. It will
2) Solving the geometric problem in Sec. III to obtain a feasible also be demonstrated that the feasible trajectories obtained by solving
trajectory. the geometric problem in Sec. III are reasonable compared with the
3) Solving the simplified problem in Sec. II.B but this time optimal solutions of the simplified problem in Sec. II.B. All compu-
first solving the geometric problem in Sec. III to obtain a feasible tations are performed on a 1.8 GHz (Intel Core i5) laptop with 4 GB
initial guess. (1600 MHz DDR3) of RAM.
1206 J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES

Table 4 Control constraints for the simplified model


Parameter Lower bound Upper bound
a, m∕s2 −1∕M1∕2ρv2 SCD0  Mg sinγ 1∕M3.7975 − 1∕2ρv2 SCD0 − Mg sinγ
p
ωγ , rad∕s −g cosγ∕v  ϵc 3πρvSCLα ∕72 2M − g cosγ∕v
ωψ , rad∕s −ϵc ∕cosγ ϵc ∕ cosγ

For the Monte Carlo test, 100 scenarios will be randomly designed
Table 5 Parameter values
as follows. In all problems, the initial point at 0; 0; 10 m, initial for the simplified optimal
velocity v0  8 m∕s, initial flight path angle γ 0  0 rad, initial control problem
heading angle ψ 0  0 rad, and the goal point at 100; 0; 10 m are
fixed. In all scenarios, the aim is to find the trajectory that avoids Parameter Value
obstacles and remains close to the predefined reference path defined w 0.5
by y  0, z  10 m. The number of obstacles and their locations, β, 1∕m2 2.0
sizes, and shapes are randomly generated. Each scenario is initialized η, 1∕m2 2.0
with state–control pairs (as given in Sec. III) and obstacle location
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

(random initialization by a uniform distribution over the 3D space,


including shape and size). The obstacle locations are generated from
a uniform distribution over the range 30–80 m along the positive x Table 6 Parameter values for the
axis (to avoid obstacles near the initial and the goal point), −40 to geometric problem
40 m along the y axis, and 0–30 m along the z axis. In Eq. (30), its
center distances (along each axis) ai , bi , and ci are generated from a Parameter Value
uniform distribution over the range 5–15 m, and the exponent terms κ, 1∕m2 0.7
px , py , and pz can range from 2 to 10. Both stationary and moving β, 1∕m2 0.1
obstacles are included. For moving obstacles, let xo ; yo ; zo be the η, 1∕m2 0.1
position, vo be the velocity, and ψ o and γ o be the heading angle and w 0.1
the velocity path angle, respectively; then the moving obstacle N 30
satisfies ϵs 0.7
ϵc , rad∕s 0.4
x_ o  vo cosψ o  cosγ o  y_ o  vo sinψ o  cosγ o 
z_o  vo sinγ o 
interpolation time), where for all instances Ct3 < Ct1 . The outcome
where the parameters are randomly generated from the uniform in the computation time is as expected because Ct2 has the advantage
distributions as follows: vo is in the range 1–5 m∕s, ψ o in the range of starting with a feasible starting point. Similarly, Fig. 9 compares
−π to π rad, and γ o in −π∕2 to π∕2 rad. It1 with It3 . As the computation time is directly proportional to the
The number of obstacles in the simulation is limited to 20 (the
number of iterations, a similar trend is observed for the number
number of stationary and moving obstacles is randomly selected each
of SCP iterations. Although not shown in any figures, it was found
in between 4 and 10). Tables 5 and 6 contain all the parameters used
for the optimization problems. We comment on the choice of ϵc .
To change the flight path angle γ, bounds ωγ and ωγ are required C1
such that ωγ < 0, ωγ < ωγ , and ωγ > 0. From ωγ < 0, ϵc must satisfy C2
ϵc < g cosγ∕v. To find a maximum value of ϵc satisfying this Cost Comparision
10 4
condition, and the bounds of γ and v, the right-hand side is mini-
mized, yielding ϵc < 0.5781. However, the lower and the upper
bounds of ωψ in Table 4 depend directly on ϵc . Therefore, for a
Cost

reasonable rate of change of the heading angle, ϵc is set slightly lower 10 3


than the allowable limit. In the following, the results are discussed
and compared. Figure 2 shows the comparison of the cost between C1
and C2 . The cost of the feasible solution C2 is approximately 10 times
as high compared with the optimal solution C1 . Figure 3 shows the 10 2
0 20 40 60 80 100
comparison between Ad1 and Ad2 . It can be seen that the average Instants
deviation Ad1 for the optimal control problem is less than 0.796 m, Fig. 2 Cost comparison.
whereas Ad2 exhibits the maximum average deviation 1.16 m. That
is, Ad1 is always lower than Ad2 except for few cases. Figure 4
compares Ct1 and Ct2 , showing a significantly faster solution for the
geometric problem, compared with the optimal control problem. Ad 1
Similarly, Fig. 5 shows the comparison of It1 and ItIG , which is Average Deviation (Ad) Ad 2
similar. It is interesting to note that the geometric problem generally
Average Deviation (m)

only needs two iterations to converge. Next, we compare the results 10


0
for solving the optimal control problem by first computing a feasible
starting point using the geometric method (approach 3), with the
solution of the optimal control problem without a feasible starting
point (approach 1). Figure 6 shows the comparison of C1 and C3 . As
for both cases the stopping criteria are the same, the cost does not vary
significantly. Similarly, Fig. 7 shows the comparison of Ad1 and Ad3 . -1
10
Similarly, the average deviations are similar, remaining within 0 20 40 60 80 100
0.796 m for both cases. Figure 8 shows the comparison between Instants
computation time Ct1 and Ct3 (Ct3 is a summation of the Ct2 and the Fig. 3 Average deviation comparison.
J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES 1207

Ct Ct 1
1
Ct 2 Ct
Time Comparision Time Comparision 3
5
10
Time (s)

Time (s)
0 10
10

-5
10
0 20 40 60 80 100 10 -1
0 20 40 60 80 100
Instants Instants
Fig. 4 Computation time comparison. Fig. 8 Computation time comparison between Ct1 and Ct3 .

It
1

Iteration Comparision It 2 It 1
40
It
Iteration Comparison
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

3
40
SCP Iterations

30

SCP Iterations
20 30

10
20
0
0 20 40 60 80 100
Instants 10
0 20 40 60 80 100
Fig. 5 Iteration comparison. Instants
Fig. 9 Iteration Comparison between It1 and It3 .

C1

Cost Comparision C3 Table 7 Nodes number effect in the trajectory


10 3 generation problem
Node (N) SCP iterations Computation time, ms Cost
5 6 4.5 5185.9
Cost

2
10 10 8 18.1 3314.6
15 8 35.2 1344.4
20 8 75.4 1009.3
30 10 261.1 767.0
1
10
0 20 40 60 80 100
Instants
Fig. 6 Cost comparison.
generation with two stationary and two moving obstacles (the
obstacle scenario for this case is defined as in the Monte Carlo above).
Ad 1 As shown in Table 7, higher nodes number needs more SCP
iterations and also the more computation time, but results in a low-
Average Deviation (Ad) Ad 3
cost trajectory. Besides the above statistical results, other results such
Average Deviation (m)

0.8 as the comparison between the original and the simplified problem,
comparison of the solver used in this paper with other solvers, an
0.6 example scenario with the state and control variables time history,
and some challenging cases of the trajectory generation problem are
shown in [46] (Sec. 3.4).
0.4

0.2 VI. Conclusions


0 20 40 60 80 100
Instants This paper has described an approach for rapid feasible trajectory
Fig. 7 Average deviation comparison. generation whereby the dynamic equation of a UAV is simplified and
the bounds on the simplified controls are derived. The states γ, ψ and
the controls ωγ ; ωψ ; a are then transformed as functions of the spatial
that all obtained solutions were feasible according to the given coordinates x; y; z and the velocity v. Thus, the transformed problem
constraints. can be solved iteratively using the SCP algorithm and a custom
These results demonstrate that using the proposed approach for solver for the QP problem. This method applies to cases in which
generating a feasible trajectory is beneficial for generating a rapid the dynamic equation can be simplified to a kinematic model, as
trajectory in its own right, as well as obtaining significantly quicker discussed in Sec. II.B. The use of a custom solver reduces the
optimal trajectories. The number of nodes affects the computational computation time to tens of milliseconds on a laptop computer,
time and the convergence speed of the trajectory generation problem. making the approach applicable for rapid feasible trajectory gener-
Therefore, in the following the evaluation of the nodes number effect ation. Moreover, the method can be used to find a feasible starting
is shown. Table 7 shows the comparison between the nodes number, point for solving the original problem, thus reducing the total com-
SCP iterations, solution time, and the cost to the problem of trajectory putation time.
1208 J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES

Acknowledgments Vehicles (UAVs),” MDPI: Aerospace, Vol. 4, No. 2, 2017, p. 27.


https://doi.org/10.3390/aerospace4020027
This research was supported by the Natural Sciences and [18] Zheng, H., Guo, J., and Yan, P., “A Hybrid Trajectory Planning Algo-
Engineering Research Council of Canada through a Discovery Grant rithm for UAVs in Cluttered Environments,” Nineth International
(grant number RGPIN-2016-03923) and Collaborative Research and Conference on Mechanical and Aerospace Engineering (ICMAE),
Development Grant (grant number CRDPJ 507797-16). Budapest, 2018, pp. 389–393.
https://doi.org/10.1109/ICMAE.2018.8467706
[19] Von Stryk, O., and Bulirsch, R., “Direct and Indirect Methods for
References Trajectory Optimization,” Annual Operational Research, Vol. 37,
[1] Owlia, S., and de Ruiter, A., “Autonomous Obstacle Avoidance for No. 1, 1992, pp. 335–354.
Fixed-Wing Unmanned Aerial Vehicles,” Aeronautical Journal, https://doi.org/10.1007/BF02071065
Vol. 119, No. 1221, 2015, pp. 1415–1436. [20] Bollino, K. P., and Lewis, L. R., “Collision-Free Multi-UAV Optimal Path
https://doi.org/10.1017/S0001924000011325 Planning and Cooperative Control for Tactical Applications,”
[2] Kalvins, E., and Zagursky, V., “Unmanned Aerial Vehicle Movement AIAA Guidance, Navigation, and Control, AIAA Paper 2008-7134, 2008.
Trajectory Detection in Open Environment,” Procedia Computer Sci- https://doi.org/10.2514/6.2008-7134
ence, Vol. 104, Jan. 2017, pp. 400–407. [21] Ross, I. M., and Fahroo, F., “Issues in the Real-Time Computation of
https://doi.org/10.1016/j.procs.2017.01.152 Optimal Control,” Mathematical and Computer Modelling, Vol. 43,
[3] Goerzen, C., Kong, Z., and Mettler, B., “A Survey of Motion Planning Nos. 9–10, 2006, pp. 1172–1188.
Algorithms from the Perspective of Autonomous UAV Guidance,” https://doi.org/10.1016/j.mcm.2005.05.021
Journal of Intelligent and Robotic Systems, Vol. 57, Nos. 1–4, 2010, [22] Falcone, P., Tufo, M., Borrelli, F., Asgari, J., and Tseng, H., “A Linear
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

pp. 65–100. Time Varying Model Predictive Control Approach to the Integrated
https://doi.org/10.1007/s10846-009-9383-1 Vehicle Dynamics Control Problem in Autonomous Systems,” Proceed-
[4] Coutinho, W. P., Battarra, M., and Fliege, J., “The Unmanned Aerial ings of the 46th IEEE Conference on Decision and Control, New
Vehicle Routing and Trajectory Optimization Problem, a Taxonomic Orleans, LA, 2007, pp. 2980–2985.
Review,” Computer and Industrial Engineering, Vol. 120, June 2018, https://doi.org/10.1109/CDC.2007.4434137
pp. 116–128. [23] Wang, X., Yadav, V., and Balakrishnan, S. N., “Cooperative UAV For-
https://doi.org/10.1016/j.cie.2018.04.037 mation Flying with Obstacle/Collision Avoidance,” IEEE Transactions
[5] Zhao, Y., Zheng, Z., and Liu, Y., “Survey on Computational-Intelli- on Control Systems Technology, Vol. 15, No. 4, 2007, pp. 672–679.
gence-Based UAV Path Planning,” Knowledge-Based Systems, Vol. 158, https://doi.org/10.1109/TCST.2007.899191
Oct. 2018, pp. 54–64. [24] Betts, J. T., “Survey of Numerical Methods for Trajectory Optimiza-
https://doi.org/10.1016/j.knosys.2018.05.033 tion,” Journal of Guidance, Control, and Dynamics, Vol. 21, No. 2,
[6] Yao, W., Qi, N., and Liu, Y., “Online Trajectory Generation with 1998, pp. 193–207.
Rendezvous for UAVs Using Multistage Path Prediction,” Journal of https://doi.org/10.2514/2.4231
Aerospace Engineering, Vol. 3, No. 30, 2017, Paper 04016092. [25] Farid, G., Mo, H., Zahoor, M. I., and Liwei, Q., “Computationally
https://doi.org/10.1061/(ASCE)AS.1943-5525.0000694 Efficient Algorithm to Generate a Waypoints-Based-Trajectory for a
[7] Hehn, M., and D’Andrea, R., “Quadrocopter Trajectory Generation and Quadrotor UAV,” Chinese Control and Decision Conference (CCDC),
Control,” 18th IFAC World Congress, The International Federation of IEEE, New York, 2018, pp. 4414–4419.
Automatic Control, Elsevier Ltd., Milano, Italy, 2011, pp. 1485–1491. https://doi.org/10.1109/CCDC.2018.8407894
https://doi.org/10.3182/20110828-6-IT-1002.03178 [26] Stoican, F., Prodan, I., Popescu, D., and Ichim, L., “Constrained
[8] Albert, A., Leira, F. S., and Imsland, L., “UAV Path Planning Using Trajectory Generation for UAV Systems Using a B-Spline Param-
MILP with Experiments,” Norwegian Society of Automatic Control: etrization,” 25th IEEE Mediterranean Conference on Control and
Modeling, Identification and Control, Vol. 38, No. 1, 2017, pp. 21–32. Automation (MED), Inst. of Electrical and Electronics Engineers, New
https://doi.org/10.4173/mic.2017.1.3 York, 2017, pp. 613–618.
[9] Kambhampati, S., and Davis, L. S., “Multiresolution Path Planning for https://doi.org/10.1109/MED.2017.7984185
Mobile Robots,” IEEE Journal of Robotics and Automation, Vol. 2, [27] Krishnakumar, K., and Goldberg, D. E., “Control System Optimization
No. 3, 1986, pp. 135–145. Using Genetic Algorithm,” Journal of Guidance, Control, and Dynam-
https://doi.org/10.1109/JRA.1986.1087051 ics, Vol. 15, No. 3, 1992, pp. 735–740.
[10] Chandler, P., Rasmussen, S., and Pachter, M., “UAV Cooperative Path https://doi.org/10.2514/3.20898
Planning,” AIAA Guidance, Navigation, and Control Conference, [28] Ross, I. M., and Fahroo, F., “Legendre Pseudospectral Approxima-
AIAA Paper 2000-4370, 2000, pp. 1301–1306. tions of Optimal Control Problems,” New Trends in Nonlinear
https://doi.org/10.2514/6.2000-4370 Dynamics and Control and Their Applications, Lecture Notes, edited
[11] Khatib, O., “Real Time Obstacle Avoidance for Manipulators and by W. Kang, C. Borges, and M. Xiao, Springer–Verlag, Berlin, 2003,
Mobile Robots,” Proceedings of IEEE International Conference on pp. 327–342.
Robotics and Automation, St. Louis, MO, Vol. 2, 1985, pp. 500–505. https://doi.org/10.1007/978-3-540-45056-6_21
https://doi.org/10.1109/ROBOT.1985.1087247 [29] Camacho, E. F., and Alba, C. B., Model Predictive Control, Springer,
[12] Lihua, Z., Xianghong, C., and Fuh-Gwo, Y., “A 3D Collision Avoidance New York, 1996, pp. 13–30.
Strategy for UAV with Physical Constraints,” Measurement, Vol. 77, [30] Chen, T., Wen, H., Hu, H., and Jin, D., “On-Orbit Assembly of a Team of
Jan. 2016, pp. 40–49. Flexible Spacecraft Using Potential Field Based Method,” Acta Astro-
https://doi.org/10.1016/j.measurement.2015.09.006 nautica, Vol. 133, April 2017, pp. 221–232.
[13] Ge, S., and Cui, Y., “Dynamic Motion Planning for Mobile Robots https://doi.org/10.1016/j.actaastro.2017.01.021
Using Potential Field Method,” Autonomous Robots, Vol. 13, No. 3, [31] Badawy, A., and McInnes, C. R., “On-Orbit Assembly Using Super-
2002, pp. 207–222. quadric Potential Fields,” Journal of Guidance, Control, and Dynamics,
https://doi.org/10.1023/A:1020564024509 Vol. 31, No. 1, 2008, pp. 30–43.
[14] Chang, D. E., and Marsden, J. E., “Gyroscopic Forces and Collision https://doi.org/10.2514/1.28865
Avoidance with Convex Obstacles,” New Trends in Nonlinear Dynam- [32] Bry, A., Richter, C., Bachrach, A., and Roy, N., “Aggressive Flight of
ics and Control and Their Applications, edited by W. Kang, C. Borges, Fixed-Wing and Quadrotor Aircraft in Dense Indoor Environments,”
and M. Xiao, Vol. 295, Springer, Berlin, 2003, pp. 145–159. International Journal of Robotics Research, Vol. 34, No. 7, 2015,
10.1007/978-3-540-45056-6_9 pp. 969–1002.
[15] Jun, M., and D’Andrea, R., “Path Planning for Unmanned Aerial Vehicles https://doi.org/10.1177/0278364914558129
in Uncertain and Adversarial Environments,” Cooperative Control: Mod- [33] Nuske, S., Choudhury, S., Jain, S., Chambers, A., Yoder, L., Scherer, S.,
els, Applications and Algorithms, edited by S. Butenko, R. Murphey, and Chamberlain, L., Cover, H., and Singh, S., “Autonomous Exploration
P. M. Pardalos, Vol. 1, Springer, Boston, MA, 2003, pp. 95–110. and Motion Planning for an Unmanned Aerial Vehicle Navigating
https://doi.org/10.1007/978-1-4757-3758-5_6 Rivers,” Journal of Field Robotics, Vol. 32, No. 8, 2015, pp. 1141–1162.
[16] Lin, Y., and Saripalli, S., “Sampling-Based Path Planning for UAV https://doi.org/10.1002/rob.21596
Collision Avoidance,” IEEE Transactions on Intelligent Transportation [34] Loianno, G., Brunner, C., McGrath, G., and Kumar, V., “Estimation,
Systems, Vol. 18, No. 11, 2017, pp. 3179–3192. Control, and Planning for Aggressive Flight with a Small Quadrotor
https://doi.org/10.1109/TITS.2017.2673778 with a Single Camera and IMU,” IEEE Robotics and Automation
[17] Salamat, B., and Tonello, A. M., “Stochastic Trajectory Generation Letters, Vol. 2, No. 2, 2017, pp. 404–411.
Using Particle Swarm Optimization for Quadrotor Unmanned Aerial https://doi.org/10.1109/LRA.2016.2633290
J. GUIDANCE, VOL. 43, NO. 6: ENGINEERING NOTES 1209

[35] Bakolas, E., Zhao, Y., and Tsiotras, P., “Initial Guess Generation for [45] Vandenberghe, L., “The Cvxopt Linear and Quadratic Cone Pro-
Aircraft Landing Trajectory Optimization,” AIAA Guidance, Naviga- gram Solvers,” 2010, http://www.seas.ucla.edu/~vandenbe/publications/
tion, and Control Conference, AIAA Paper 2011-6689, 2011. coneprog.pdf [retrieved 15 March 2017].
https://doi.org/10.2514/6.2011-6689 [46] Adhikari, M. P., “Real-Time Autonomous Obstacle Avoidance for
[36] Honig, W., Preiss, J. A., Kumar, T. S., Sukhatme, G. S., and Ayanian, N., Unmanned Aerial Vehicles,” Ph.D. Thesis, Ryerson Univ., Toronto,
“Trajectory Planning for Quadrotors Swarms,” IEEE Transactions on June 2020.
Robotics, Vol. 34, No. 4, 2018, pp. 856–869. [47] Boyd, S., “Sequential Convex Programming,” Lecture Notes: EE364b,
https://doi.org/10.1109/TRO.8860 July 2018, http://web.stanford.edu/class/ee364b/lectures.html [retrieved
[37] Mattingley, J., “CVXGEN: A Code Generator for Embedded Convex 1 July 2018].
Optimization,” https://cvxgen.com/docs/index.html [retrieved 31 Oct. [48] Wong, E., “Active-Set Methods for Quadratic Programming,” Ph.D.
2017]. Thesis, Univ. of California, San Diego, CA, 2011.
[38] Bryd, R. H., Gilbert, J. C., and Nocedal, J., “A Trust Region Method [49] Gill, P. E., and Wong, E., “Methods for Convex and General Quadratic
Based on Interior Point Techniques for Nonlinear Programming,” Math- Programming,” Mathematical Programming Computation, Vol. 7,
ematical Programming, Vol. 89, No. 1, May 2000, pp. 149–185. No. 1, 2015, pp. 71–112.
https://doi.org/10.1007/PL00011391 https://doi.org/10.1007/s12532-014-0075-x
[39] Barry, A. J., “High-Speed Autonomous Obstacle Avoidance with [50] Mattingley, J., and Boyd, S., “CVXGEN: A Code Generator for
Pushbroom Stereo,” Ph.D. Thesis, Massachusetts Inst. of Technology, Embedded Convex Optimization,” Optimization and Engineering,
Cambridge, MA, Feb. 2016. Vol. 13, No. 1, March 2012, pp. 1–27.
[40] Napolitano, M. R., Aircraft Dynamics: From Modeling to Simulation, https://doi.org/10.1007/s11081-011-9176-9
edited by L. Ratts, John Wiley and Sons, Inc., Chichester, West Sussex, [51] Boyd, S., and Vandenberghe, L., Convex Optimization, Cambridge
Downloaded by GEORGIA INST OF TECHNOLOGY on May 27, 2020 | http://arc.aiaa.org | DOI: 10.2514/1.G004460

2012, Chap. 1. Univ. Press, Cambridge, 2004, pp. 609–615.


[41] Kampoon, J.-W., “Wind Field Estimation and Its Utilization in https://doi.org/10.1017/CBO9780511804441
Trajectory and Input Prediction,” Ph.D. Thesis, Univ. of Texas, Arling- [52] Domahidi, A., Chu, E., and Boyd, S., “ECOS: An SOCP Solver for
ton, TX, Dec. 2014. Embedded Systems,” 2013 European Control Conference (ECC),
[42] Peters, M., and Konyak, M. A., “The Engineering Analysis and Zurich, 2013, pp. 3071–3076.
Design of the Aircraft Dynamics Model for the FAA Target Generation https://doi.org/10.23919/ECC.2013.6669541
Facility,” Rept. 99162-01, Air Traffic Engineering Co., LLC, Palermo, NJ, [53] Selig, M. S., “Modeling Full-Envelope Aerodynamics of Small UAVs in
Oct. 2012, https://www.faa.gov/about/office_org/headquarters_offices/ Realtime,” AIAA Atmospheric Flight Mechanics 2010 Conference,
ang/offices/tc/about/campus/faa_host/labs/tgf/media/AircraftDynamics AIAA Paper 2010-7635, 2010.
Model.pdf. https://doi.org/10.2514/6.2010-7635
[43] Lewis, L. P. R., “Rapid Motion Planning and Autonomous Obstacles [54] Nita, M., and Scholz, D., Estimating the Oswald Factor from Basic
Avoidance for Unmanned Vehicles,” Ph.D. Thesis, Naval Postgraduate Aircraft Geometrical Parameters, Deutscher Luft- und Raumfahrtkon-
School, Monterey, CA, Dec. 2006, http://hdl.handle.net/10945/2460. gress, Estrel, Berlin, 2012, https://www.fzt.haw-hamburg.de/pers/Scholz/
[44] Hurni, M. A., Sekhavat, P., and Ross, I. M., “Autonomous Trajectory OPerA/OPerA_PUB_DLRK_12-09-10.pdf [retrieved 18 March 2019].
Planning Using Real-Time Information Updates,” AIAA Guidance, [55] Kahaner, D., Moler, C., and Nash, S., Numerical Methods and Software,
Navigation, and Control Conference and Exhibit, AIAA Paper 2008- Prentice Hall, Englewood Cliffs, NJ, 1989, pp. xii, 496.
6305, 2008. https://doi.org/10.1137/1033033
https://doi.org/10.2514/6.2008-6305

You might also like