You are on page 1of 8

Available online at www.sciencedirect.

com

ScienceDirect
IFAC PapersOnLine 54-6 (2021) 99–106
Mixed-integer
Mixed-integer optimization-based
optimization-based planning
planning
Mixed-integer
for autonomous
Mixed-integer optimization-based
racing with planning
obstacles
optimization-based and
planning
for autonomous
Mixed-integer racing with obstacles
optimization-based and
planning
for autonomous racing with

 obstacles and
for autonomous rewards
for autonomous racing
racing with
rewardswith

obstacles
obstacles and
and
rewards
rewards 

Rudolf ∗ rewards ∗∗ ∗∗∗
Rudolf Reiter
Reiter ∗∗ MartinMartin Kirchengast
Kirchengast ∗∗∗∗
∗∗ Daniel
∗∗
Daniel Watzenig
Watzenig ∗∗∗ ∗∗∗
Rudolf Reiter ∗∗ Martin Moritz
Moritz Diehl
Kirchengast
Diehl ∗∗∗∗∗∗∗∗
∗∗∗∗
∗∗
∗∗ Daniel Watzenig ∗∗∗ ∗∗∗
Rudolf Reiter
Rudolf Reiter Martin ∗ Martin Kirchengast
Kirchengast ∗∗ Daniel Watzenig ∗∗∗
Moritz Diehl ∗∗∗∗ Daniel Watzenig
∗ Moritz
Moritz DiehlDiehl ∗∗∗∗ Austria, (e-mail:
∗ Virtual

Virtual Vehicle
Vehicle Research
Research Center,
Center, Graz,Graz, Austria, (e-mail:
∗ rudolf.reiter@imtek.uni-freiburg.de).
∗ Virtual Vehicle Research Center, Graz, Austria, (e-mail:
rudolf.reiter@imtek.uni-freiburg.de).
∗∗ ∗ Virtual Vehicle Research Center, Graz, Austria, (e-mail:
∗∗ Institute
∗∗ of Automation
Virtual Vehicle and Control,
Research Center,Graz
rudolf.reiter@imtek.uni-freiburg.de).Graz, University of Technology,
Austria, (e-mail:
∗∗ Institute Graz,of Automation
Austria, and Control,
(e-mail: Graz University of Technology,
rudolf.reiter@imtek.uni-freiburg.de).
martin.kirchengast@tugraz.at)
rudolf.reiter@imtek.uni-freiburg.de).
∗∗ Institute Graz,of Automation
Austria, (e-mail: and Control, Graz University
martin.kirchengast@tugraz.at) of Technology,
∗∗∗Institute
∗∗ of Automation and Control, Graz University of Technology,
∗∗∗ Institute
∗∗∗Institute Graz,
Institute ofof
of Automation
Automation
Austria,
Automation and
and
(e-mail:
and Control,
Control,
Control, Graz
Graz
Graz University
University
martin.kirchengast@tugraz.at)
University ofof Technology
of Technology,
Technology
∗∗∗ andGraz, Virtual
Graz, Austria,
Vehicle
Austria, (e-mail:
Research
(e-mail: martin.kirchengast@tugraz.at)
Center, Graz, Austria,
martin.kirchengast@tugraz.at) (e-mail:
Institute of Automation and Control, Graz
∗∗∗ and Virtual Vehicle Research Center, Graz, Austria, (e-mail: University of Technology
∗∗∗ Institute of Automation and Control, Graz University of Technology
Institute
and Virtualof Automation
Vehicle daniel.watzenig@v2c2.at)
and
Research Control,
Center,
daniel.watzenig@v2c2.at) GrazGraz, University
Austria, of Technology
(e-mail:
∗∗∗∗ and Virtual Vehicle Research Center, Graz, Austria, (e-mail:
∗∗∗∗ Department
∗∗∗∗ and Virtual of Microsystems
Vehicle
Department of Microsystems Research Engineering
Engineering and the Department of
Center,
daniel.watzenig@v2c2.at) Graz, and the
Austria, Department
(e-mail: of
∗∗∗∗
Mathematics, University daniel.watzenig@v2c2.at)
Freiburg, 79110
∗∗∗∗ Department
Mathematics, of Microsystems
University Freiburg,
∗∗∗∗ Department of Microsystems Engineering 79110 Freiburg,
daniel.watzenig@v2c2.at)
Engineering and Germany,
Freiburg,
and
the Department
Germany,
the Department
(e-mail:
(e-mail: of
of
Department
Mathematics, moritz.diehl@imtek.uni-freiburg.de)
of Microsystems
University Freiburg,Engineering
79110 Freiburg,
moritz.diehl@imtek.uni-freiburg.de) and Germany,
the Department (e-mail: of
Mathematics, University
Mathematics, University Freiburg, 79110 Freiburg, Germany,
Freiburg, 79110 Freiburg, Germany, (e-mail: (e-mail:
moritz.diehl@imtek.uni-freiburg.de)
moritz.diehl@imtek.uni-freiburg.de)
moritz.diehl@imtek.uni-freiburg.de)
Abstract:
Abstract: Trajectory planning with
Trajectory planning with the consideration of obstacles is a classical task in
the consideration
autonomous driving and robotics applications. This of obstacles is a solution
classicalapproach
task in
Abstract:
autonomous
Abstract:
Trajectory
Trajectory
planning
driving andplanning with
robotics applications.
with
the
the This paper
paper introduces
consideration
consideration
of obstacles
introduces
of obstacles
aa novel
is a solution
novel
is a
classicalapproach
classical
task in
task in
for the
Abstract:
autonomous
for the subclass of
Trajectory
driving
subclass of autonomous
roboticsracing
andplanning
autonomous with problems
applications.
racing problems Thiswhich
the considerationpaper
which is
is additionally
of obstacles
introduces
additionally a capable
novel
capable of
is a solution
of dealing
classical task
approach
dealing with
within
autonomous
reward
autonomous driving
objects. This
driving and
and robotics
special type
robotics applications.
of objects
applications. isThis paper
representing
This paper introduces
particular
introduces a
a novel
regions
novel solution
in
solution approach
state space,
approach
for the
reward subclass
objects. Thisof autonomous
special type racing problems
of objects which
is representing is additionally capable
particularcapableregions of of dealing
in dealing
state space, with
for
for the
whose subclass
the optional of
of autonomous racing problems which is
is additionally with
reward
whose objects. reaching
subclass
optional This autonomous
reachingspecialis somehow
typeracing beneficial
problems
of objects (e.g.
whichresults
is representing
(e.g. results in bonus
additionally
particular
in bonus points
regions during
capable
points of stateaa space,
in dealing
during race).
with
race).
reward
First,
reward a objects.
homotopy
objects. This
This special
class is
specialis somehow
type
selected
type of
of beneficial
objects
which
objects is representing
represents
is the
representing particular
left/right
particularand regions
catch/ignore
regions in
in state
state space,
decisions
space,
whose
First, optional
aoptional
homotopy reaching is somehow
class isisselected beneficial
which (e.g.
represents results
the in
left/right bonus points
and points
catch/ignoreduring a race).
decisions
whose
related to obstaclereaching
avoidance somehow
and beneficial (e.g. results in
in bonus during aa linear
race).
whose
First, aoptional
related
First, a
homotopy
to obstacle
homotopy
reaching
class
avoidance
class is and reward
isisselected
somehow
selected reward
which
collection,
beneficial
which (e.g. the
represents
collection,
represents
respectively.
results
left/right
respectively.
the left/right
For
bonus
and
and
this
this purpose,
For points
catch/ignoreduring decisions
purpose,
catch/ignore
race).
a linear
decisions
mixed-integer
First,
related a
mixed-integer homotopy
to problem
obstacle
problem classis posed
is
avoidance
is posed and such
selected
and that
which
reward
suchreward an approximated
represents
collection,
that ancollection,
approximated the combinatorial
left/right
respectively.
combinatorialand
For problem
catch/ignore
this purpose,
problem is solved
decisions
a
is solved and
linear
and
related
repetitive
related to
to obstacle
switching
obstacle avoidance
decisions
avoidance between
and reward solver calls
collection, are respectively.
avoided.
respectively. For
Secondly,
For this
this anpurpose,
optimal
purpose, aacontrol
linear
linear
mixed-integer
repetitive problem
switching is posed
decisions such
between that an
solverapproximated
calls are avoided. combinatorial
Secondly, problem
an optimalis solved and
control
mixed-integer
problem
mixed-integer (OCP) problem
based
problem is
on
is posed
a
posed such
such that
single-track
that an
an approximated
vehicle model
approximated is combinatorial
solved within
combinatorial problem
this
problem is
homotopy
is solved
solved and
class.
and
repetitive
problem switching
(OCP) based decisions between
on a single-track solver calls
vehicle are
model avoided. Secondly,
is solvedSecondly,
within this an optimal
homotopy control
class.
repetitive
In the
repetitive switching
corresponding
switching decisions
nonlinear
decisions between
program,
between solver
solver calls
homotopy
calls are avoided.
iterations
are avoided. are performed
Secondly, an
anon optimal
the
optimal race control
track
control
problem
In the (OCP)
corresponding based on a single-track
nonlinear program, vehicle
homotopy model is solved
iterations are within
performed this onhomotopy
the race class.
track
problem
boundaries
problem (OCP)
which
(OCP) based on
on a
correspond a tosingle-track
the vehicle
previously model
chosen is
is solved
homotopy within
class. This this
leads homotopy
to an improved class.
In
boundaries
In the whichbased
the corresponding
corresponding
nonlinear
correspond
nonlinear
single-track
to program,
the vehicle
homotopy
previously
program,
model
chosen
homotopy
iterations
homotopy
iterations
solved
are within
class.
are Thisthis
performed
performed leadson
on
homotopy
the
to
theanrace
improved
race
class.
track
track
convergence
In the
boundaries
convergence of
corresponding
which the
of the solver
nonlinear
correspond compared
to
solver compared program,
the to
previouslythe direct
homotopy
chosen
to the chosen approach.
iterations
homotopy
direct homotopy are
approach.class. The
class. mixed-integer
performed
This
The This leadson
mixed-integer the
to an method’s
race
improved
method’s track
boundaries
effectiveness
boundaries which
is
which correspond
demonstrated
correspond to
to the
within
the previously
a real-world
previously chosentest scenario
homotopy during
class. the
This leads to
autonomous
leads to an
an improved
racing
improved
convergence
effectiveness of
is the solver
demonstrated compared
within a to to the
real-worlddirect approach.
test approach.
scenario during The mixed-integer
the autonomous method’s
racing
convergence
competition of the
the solver compared the
the direct The mixed-integer method’s
effectiveness Roborace.
convergence
competition is
Roborace. Furthermore,
of demonstrated
solver
Furthermore, within its
compared a to
its combination
real-world
combination testwith
direct the
the OCP
approach.
scenario
with OCP Theas well
the as
as mixed-integer
during well the
the performance
autonomous
as method’s
performanceracing
effectiveness
gain resulting
effectiveness is demonstrated
isfrom the
demonstratedhomotopy within
within a real-world
iterations are
a real-world test
shown
testwithscenario
in during
simulation.
scenario during the
the as autonomous
autonomous racing
racing
competition
gain resulting Roborace.
from the Furthermore,
homotopy its combination
iterations are shown in the OCP
simulation. as well the performance
competition
competition Roborace.
Roborace. Furthermore,
Furthermore, its
its combination
combination with
with the
the OCP
OCP as
as well
well as
as the
the performance
performance
gain resulting
Copyright
gain © 2021
resulting
from
from
the homotopy
The Authors. iterations are shown in
article under
an open accessshown
This isiterations the CC BY-NC-ND license
simulation.
gain resulting from the
(http://creativecommons.org/
Keywords: optimal the homotopy
homotopy iterations are
licenses/by-nc-nd/4.0) are shown in in simulation.
simulation. robots, autonomous
Keywords: optimal trajectory,
trajectory, obstacle
obstacle avoidance,
avoidance, autonomous
autonomous mobile mobile robots, autonomous
vehicles,
Keywords:
vehicles, integer
optimal
integer programming, planning
trajectory, obstacle
programming, planning avoidance, autonomous mobile robots, autonomous
Keywords:
Keywords: optimal
optimal trajectory,
trajectory, obstacle
obstacle avoidance, autonomous mobile robots, autonomous
vehicles, integer programming, planningavoidance, autonomous mobile robots, autonomous
vehicles,
vehicles, integer
integer programming,
programming, planning
planning
1.
1. INTRODUCTION
INTRODUCTION demanding
demanding objectives
objectives from from one one event
event to to the
the other.
other. This
This
1. INTRODUCTION work
demanding
work addresses
addresses real-time
objectives
real-time from trajectory
one
trajectory event planning
to
planning the for lap
other.
for lap time
This
time
1. INTRODUCTION
1. poses
INTRODUCTION demanding
minimization
demanding objectives
while
objectives from
avoiding
from one event
obstacles
one event to
and
to the other.
thecollecting
other. This
re-
This
Autonomous racing great challenges
Autonomous racing poses great challenges for the develop- workfor the develop- work addresses real-time trajectory planning for lap time
minimization
wards. addresses
Whereas while
the avoiding
real-time
vehicle obstacles
trajectory
moves on a and
planning
real collecting
racefor lap
track, re-
time
the
ment of planning
Autonomous racing and control
poses greatalgorithms.
challenges for As the vehicles work
the develop- wards. addresses
minimizationWhereas real-time
while avoiding
the vehicle trajectory
obstacles
moves planning
on a real and for lap
collecting
race time
track, there-
ment of
Autonomous planning
racing and control
poses great algorithms.
challenges As
for the
the vehicles
develop- minimization
purely virtual while
obstaclesavoidingand obstacles
rewards, and collecting re-
move
ment of
move with
Autonomous high
racing
planning
with high velocities
andposes
control
velocities close
great to their
challenges
algorithms.
close to their physical
for
As the
physical limits,
the develop-
vehicles
limits,
minimization
wards.
purely Whereas
virtual while avoiding
the vehicle
obstacles and moves
rewards, on awhich
obstacles andrace
real
which translate
track,into
collecting
translate re-
the
into
ment of planning and control algorithms. As the vehicles wards.
lap
wards.time Whereas
penalties
Whereas the
the vehicle
and
vehiclebonusesmoves
moves on a
respectively,
on a real
real race
are
race track,
provided
track, the
the
nonlinear
ment
move of
with
nonlinear effects
planning
high
effects onandtheir
velocities
on system
control close
their system dynamics
algorithms.
to their
dynamics arise
As the
physical and must
vehicles
limits,
must lap
arise andlimits, purelytime virtual obstacles
penalties and
and bonuses rewards, which
respectively, translate
are providedinto
move with high velocities close to purely virtual obstacles and rewards, which
which translate into
already
move
nonlinear beeffects
with considered
high on during
velocities
their close
system to their
planning.
dynamics
planning.
physical
theirSudden
physical
arise and
Sudden must purely
obstacles
limits, to
lap
to the
time
the car’s
car’s software
virtual
penalties
software about
obstacles
and
about and 200
bonuses
200 m
m in
rewards, advance.
respectively,
in advance. The planning
translate
are provided
The into
planning
already
nonlinear be considered
effects on during
their system dynamics arise obstacles
and must lap time
algorithm
lap time penalties
not
penaltiesonly and
andhas bonuses
to
bonuses respectively,
compute a
respectively, are
trajectory
are provided
which
provided
or race opponents
nonlinear
already beeffects onwith
considered uncertain
their system
during behavior
dynamics
planning. require
arise and
Sudden evasion
must algorithm
obstacles to the car’s software
not only about
has to200 m
computein advance.
a The
trajectory planning
which
or race
already opponents
be withduring
uncertain behavior requireobstacles
evasion to the
the car’s software about 200 m in
in advance. The planning
or
or race be considered
overtaking
already
overtaking maneuvers,
considered
opponents withduring
maneuvers, uncertain
planning.
planned
planning.
planned in
behavior
Sudden
in real-time
Sudden on hard-
requireobstacles
real-time
eludes
to
hard- algorithm
evasion
onevasion eludes obstacles
car’s software
not
obstacles and
only is
is feasible
andabout
has to200
feasible mregarding
compute advance.
regarding vehicle
The kinemat-
a trajectory
vehicle planning
which
kinemat-
or race opponents with uncertain behavior require algorithm
ics and
algorithm not
dynamics
not only
onlyas has
well
has to
as
to compute
race
compute track a
a trajectory
geometry.
trajectory which
It also
ware
or
ware
or
with
race
overtakingtypically
opponents
with typically
overtaking
with
maneuvers,
maneuvers,
rather limited
uncertain
planned
rather planned computational
behavior
in require
real-time
limited computational
in real-time
on
on
power.
evasion
hard-
power.
hard-
eludes
ics obstacles
andobstacles
eludes dynamicsand and is
as iswellfeasible
as race
feasible
regarding vehicle
track geometry.
regarding vehicle Itwhich
kinemat-
also
kinemat-
As
or
ware part
withof typically
overtaking themaneuvers,
racing series
rather Roborace,
planned
limited the participating
in real-time
computational onpower. must
hard- eludes
ics
must and decide whether
obstacles
dynamics
decide whetherand
as isrewards
wellfeasible
rewards as are
race
are worth
regarding
track
worth gathering,
vehicle
geometry.
gathering, which
kinemat-
It also
which
As
ware part
withof the racing
typically series
rather Roborace,
limited the
computational participating
power. ics and
distinguishes dynamicsthe as well
considered as race
astask track geometry. It also
teams
ware
As part develop
with thesoftware
of typically
racing for
rather
seriesthe fully autonomous
limited
Roborace,computational
the participatingpower. ics
operation must and dynamics
decide
distinguishes whether
the as well
rewards
considered taskarefrom
race trackrelated
worth
from geometry.problems
gathering,
related Itwhich
problems in
also
in
teams
As develop
part of the software
racing for
seriesthe fully
Roborace,autonomous
the operation
participating must decide
literature.
must decide whether
The proposed
whether rewards
rewards are
algorithm
are worth
was
worth gathering,
successfully
gathering, which
used
which
of
As electric
teams
of part of race
develop
electric the
race cars
racing
software
cars and
and are
series
forare confronted
Roborace,
theconfronted
fully autonomouswith
the
with increasingly
participating distinguishes
operation literature.
increasingly The the considered
proposed task
algorithm fromwas related problems
successfully usedin
teams develop software for the fully autonomous operation distinguishes
in the Roborace
distinguishes the
the considered
competition
considered task
at
task from
the
from related
Bedford
related problems
race circuit
problems in
in
teams
of
 The develop
electric race
work race software
cars
was cars and
financiallyforarethe fully
confronted
supported autonomous
by the with operation
increasingly
Austrian funding literature.
in the Roborace The proposed
competition algorithm
at thewaswas
Bedford successfully used
race circuit
of

 electric
The work was and
financially are confronted
supported by with
the increasingly
Austrian funding literature.
December
literature. The
The proposed
2020. Figure
proposed algorithm
1 shows
algorithm the
was successfully
race car
successfully used
collect-
used
of
 electric
The
program work race
was
“Mobilitätcars and
financially are confronted
supported
der Zukunft”, by
the German with
the increasingly
Austrian funding in
in the
DecemberRoborace 2020.competition
Figure 1 at at
showsthe Bedford
the race
race race circuit
car collect-
The work
program was financially
“Mobilität der supported
Zukunft”, the by theFederal Ministry
Austrian for
funding in the Roborace competition the Bedford circuit

program
 “Mobilität
The work
Economic was and
Affairs derEnergy
Zukunft”,
financially the German
supported
(BMWi) German theFederal
Federal
by DyConPV
via
Ministry
Ministry
Austrian for
for
funding
(0324166B), ing
in aa virtual
the
DecemberRoborace reward
2020. object,
competition
Figure 1 which
at
showsthe was
Bedford
the live-streamed
race race circuit
car collect- as
program
Economic
Economic
“Mobilität
The work was and
Affairs
Affairs and
derEnergy
Zukunft”,
financially the German
supported
(BMWi) theFederal
by DyConPV
via Ministry
Austrian for
funding
(0324166B), ing
in virtual
December reward
2020. object,
Figure 1 which
shows was
the live-streamed
race car collect-as
program
the “Mobilität
project NewControl derEnergy
(GA (BMWi)
Zukunft”,
Nr. via DyConPV
the German
826653-2), (0324166B),
Federal Ministry
supported by ECSELfor augmented-reality
in
ing December
a virtual 2020.
reward animation
Figure
object, 1 during
shows
which the
was race.
race car
live-streamedcollect-as
Economic
program
the
the
Affairs
“Mobilität
project
project
and
NewControl
NewControl
derEnergy
(GA
(GA
(BMWi)
Zukunft”,
Nr.
Nr.
the via
German
826653-2),
826653-2),
DyConPV
Federal
supported
supported
(0324166B),
Ministry
by
by ECSEL
ECSEL
for augmented-reality
ing aa virtual reward animation
object, during
which the
was race.
live-streamed as
Economic
JU, Affairs
Horizon2020 and the
and Energy (BMWi)
Austrian via authority
funding DyConPV (0324166B),
FFG, and by ing virtual
augmented-reality reward object,
animation which
during was
the live-streamed
race. as
the
JU, project
Economic NewControl
Affairs
Horizon2020 and the
and (GA
Energy Nr. 826653-2),
(BMWi)
Austrian supported
via authority
funding DyConPV by ECSEL
(0324166B),
FFG, and
JU, project
the Horizon2020K2 and
NewControl the(GA
Austrian
Nr. funding
for authority
826653-2), supported FFG, and by
by ECSEL by augmented-reality animation during the race.
the
JU,
the
the
COMET
Horizon2020
project
COMET
Competence
and
NewControl
K2 the(GA
Austrian
Competence Nr. Centers
funding
826653-2),
Centers for
Excellent
authority
supported
Excellent FFG, Technologies
and by
by ECSEL
Technologies augmented-reality animation during the race.
the
JU, COMET
Horizon2020
Program. K2 and
Competence Centers
the Austrian for authority
funding Excellent FFG,
Technologies
and by
the
JU, COMET
Horizon2020
Program. K2 and
Competence Centers
the Austrian for authority
funding Excellent FFG,
Technologies
and by
Program.
the COMET K2 Competence Centers for Excellent Technologies
Program.
the COMET K2 Competence Centers for Excellent Technologies
Program.
2405-8963 Copyright © 2021 The Authors. This is an open access article under the CC BY-NC-ND license.
Program.
Peer review under responsibility of International Federation of Automatic Control.
10.1016/j.ifacol.2021.08.530
100 Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106

which side an obstacle should be bypassed is delegated to


a higher-level planner. Bergman et al. (2019) and Bergman
et al. (2020) consider the combinatorial problem by com-
bining optimal control with lattice-based path planning.
Their work addresses the same underlying problem, but
focuses on unstructured environment like parking lots.
Schouwenaars et al. (2001) and Richards et al. (2002)
illustrate how to integrate these binary decisions into a
single mixed-integer linear program (MILP) and show its
application to solve obstacle avoidance for vehicles and
spacecrafts. In the context of controller design Janeček
et al. (2017) use similar ideas in an MPC based on mixed-
integer QP (MIQP) for avoiding obstacles. Park et al.
(2015) first decompose the collision free space into convex
cells which are connected to distinct homotopy classes and
subsequently solve MIQPs for each of them. Thereby, the
globally optimal solution is selected from the local optima
of each homotopy class.
Fig. 1. Race car hitting an augmented reality reward at
the competition in Bedford, England.
1.2 Contribution
1.1 Related work
This paper proposes a planning procedure considering
obstacles and rewards which consists of both offline and
Trajectory planning with obstacle avoidance occurs in
online steps. Prior to the actual race, an optimal racing
many domains and consequently, different approaches
line for the given track geometry is computed, assuming
exist. Typically, in a certain situation there are in-
that there are no obstacles. This is done with an approach
finitely many trajectories fulfilling the feasibility condi-
similar to Heilmeier et al. (2020a), however, since it is
tions. Therefore, cost functions are used to choose an
not the focus of this paper, further details are omitted.
optimal one depending on the application. Graph-based
The online part is twofold: First, a MILP is formulated
methods perform a global search on the time- and space-
whose solution selects a homotopy class, i.e. which rewards
discretized configuration space to find the best trajectory.
are collected and on which side obstacles are eluded. This
However, their ability to find the global optimum strongly
homotopy class is represented by deformed boundaries of
depends on the chosen discretization and if that is fixed,
the original track. Secondly, a continuous optimization
even finding a feasible solution may fail, e.g. in narrow
problem is stated where deflections from the racing line
passages. Common graph search techniques include Dijk-
are minimized, considering the modified boundaries from
stra’s algorithm, A*, and D* with their variants (Paden
the MILP and vehicle constraints. The NMPC-like opti-
et al. (2016)). Exemplary, Rizano et al. (2013) describe
mization problem is not directly solved, instead homotopy
the graph construction for racing applications and use a
iterations are performed which gradually put more weight
Dijkstra-like search algorithm. Depending on the vehicle
on the modified boundaries’ adherence and improve the
model fidelity and the discretization grid size, the com-
convergence of the solver. The paper contributes with a
putation times of graph search quickly rise. Techniques
motion planning approach which is capable of solving time-
based on nonlinear continuous optimization (aka varia-
optimal motion planning problems with a combinatorial
tional methods) tend to perform better in these cases,
structure, without fully discretizing the state-space, as
although, they only provide locally optimal solutions un-
opposed to graph-based state-of-the-art algorithms.
less the initial guess is sufficiently close to the global
optimum (Paden et al. (2016)). An application within
the racing domain is shown in Heilmeier et al. (2020a), 2. VEHICLE AND OBJECT MODELS
where first a minimum curvature path is computed via
solving of a quadratic program (QP). Afterwards, the ve- Separating the trajectory optimization from the combina-
locity profile is generated such that the acceleration limits torial homotopy class selection facilitates using different
are not violated. Many variational methods have strong models. For solving the combinatorial obstacle and reward
similarities to nonlinear model predictive control (NMPC, problem, an utterly simplified geometric model is utilized
see e.g. Johansen (2011)), but instead of directly applying which represents a deviation from the racing line with
their predicted model inputs to the plant, their computed limited maximum steepness. The continuous optimization
trajectories serve as references for underlying controllers. problem is stated on basis of a single-track model.
Alcalá et al. (2020) demonstrate how to express an NMPC
formulation of the trajectory planning problem in a linear 2.1 Single-track model for continuous optimization
parameter varying form. In Liniger et al. (2015), a for-
mulation as model predictive contouring control problem The utilized kinematic model is given for instance in
leads to a progress maximization on the race track’s center Kloeser et al. (2020) and does not consider tire slip. In
line. Bergman and Axehill (2017) introduce a homotopy order to reduce the computation time of the optimizer
strategy to account for the strong nonlinearity of the later on, drifting motion is not considered during planning.
obstacles. In both papers obstacles are considered via vari- Instead, the subsequent trajectory following controller is
ations of the track boundaries. Thereby, the decision on assumed to take lateral and longitudinal tire slip into
Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106 101

account. The movement direction of the center of gravity on the normal distance state n now fully describe the road
(CG) with the vehicle mass m is given by the angle ψ + β, geometry. Fig. 3 shows the transformation of a point p
where ψ is the vehicle orientation. The side slip angle
 
lr
β = arctan tan δ (1)
lr + lf
is defined as depicted in Fig. 2 and gives the relative angle
of motion related to the vehicle coordinate system (Kloeser
et al. (2020)). The vehicle motion is governed by
ṗX = v cos(ψ + β) (2a)
ṗY = v sin(ψ + β) (2b)
v
ψ̇ = sin β (2c)
lr
Fd Fig. 3. Path-parametric model as in Kloeser et al. (2020).
v̇ = x cos β (2d)
m
in the Cartesian coordinate frame where v is the longitudi- with respect to the curve γ(s), normal distance n, the
nal velocity in movement direction of the CG. The vehicle’s error angle α and the heading angle ψr of γ(s). The path
geometry is described by the longitudinal position of the parameter s∗ corresponds to the parameter of the closest
CG with front distance lf and rear distance lr . The input point γ(s∗ ) to the given position p of the vehicle model.
force Fxd only acts on the rear wheel, whereas the steering The lateral acceleration of this model can be stated as
 
angle δ only deflects the front wheel. As second input the 1 Fd δlr
alat = v 2 δ + x sin . (4)
steering rate r = δ̇ is utilized to avoid discontinuities in the lf + lr m lf + lr
steering angle δ, which would arise with directly choosing
δ as an input. 2.3 Linear model for mixed-integer programming

For the integer problem an utterly simplified model is used,


which basically just accounts for a geometric offset from
the Frenet transformation line and is formulated in the
Frenet frame as well. The model lacks time dependency, it
rather depends on the path progress s, which is discretized
on a grid related to the obstacles and written as sk .
The discretization is performed to represent the obstacle
shape related to the racing line. The lateral distance nk is
limited based on the road constraints nk,left and nk,right .
The continuous control variable u relates the only state
variables nk to each other and is split into a negative
and positive part, due to the integer formulation of the
Fig. 2. Kinematic single-track model. optimization objective. The control variable u expresses
the steepness of the path deviation from the racing line
between two nodes and is limited by umax . The model can
2.2 Frenet transformation be written as
nk+1 = fk (upos neg
k , uk )
(5a)
System (2) is transformed into Frenet coordinates as = nk + (upos neg
k − uk )(sk+1 − sk )
described in Kloeser et al. (2020) with the difference 0 ≤ upos ≤ umax (5b)
that this transformation is performed along the racing k

line instead of the center path. The resulting nonlinear 0 ≤ uneg


k ≤ u max (5c)
dynamic system ẋ = f (x, u) now depends on the curvature nl,right ≤ nl ≤ nl,left (5d)
κ(s) and reads as for k = 0...Nd − 1 and l = 0...Nd , where Nd is the number
v cos(α + β) of discretizations of the longitudinal path variable s.
ṡ = (3a) This model describes a piece-wise linear path in Frenet
1 − nκ(s)
coordinates.
ṅ = v sin(α + β) (3b)
α̇ = ψ̇ − κ(s)ṡ (3c) 2.4 Object representation
Fd
v̇ = x cos(β) (3d) Objects are modeled in the two dimensional Frenet frame
m
δ̇ = r (3e) by means of polygons as shown in Fig. 4. A particular ob-

T stacle i of totally NO obstacles is represented by a polygon
T
with states x = [s, n, α, v, δ] and controls u = r . Fxd , with NpOi points and a reward d of NR rewards with NpRd
Path aligned states are used which describe the progress on points respectively. The object’s vertices are aligned with
the transformation path s(t), the normal distance to the the discretization of the longitudinal coordinate, which is
transformation path n(t) and the heading angle mismatch chosen such that it resembles the shape of the objects ”well
α(s, t) = ψ(t)−ψr (s). Note that κ(s) together with bounds enough”. Therefore, a vertex always has an opposite side
102 Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106

point with the same longitudinal coordinate. Right or left define a ”gate”, that is either switched active or inactive
sides are noted with {r, l}. The coordinate points in the by just one integer variable β d .
Frenet frame of the polygon characterizing each reward or
obstacle are written as The binary variables are subsequently used to adjust
 T boundaries forming a homotopy class for the gradient-
Rd,{r,l} Rd,{r,l}
pk = sRd
k n k
(6a) based optimization. Detailed considerations about homo-
 T topy classes in this context are shown in Bergman and
Oi,{r,l} Oi,{r,l} Oi,{r,l}
pk = sOi
k nk
(6b) Axehill (2017). Obstacle boundary values nk and its
binary variables ωi are related to state constraint on nk
with k as the global spatial index of the longitudinal Frenet with the inequalities
axis.
nk ≥ ω i nOi,r
k + (1 − ω i )nk,right = Hlow (k, ω) (8)
nk ≤ (1 − ω i
)nOi,l
k
i
+ ω nk,left = Hupp (k, ω), (9)
for k = 0...Nd where a binary state equal ”0” is defined
as ”passing left”. For relating the borders to the reward
polygon, the equations
nk ≥ βkd nRd,r
k − (1 − βkd )nk,right = Ilow (k, β) (10)
nk ≤ βkd nRd,l
k − (1 − βkd )nk,left = Iupp (k, β), (11)
are used, where the binary variable equal to ”1” is defined
as ”catch”. Fig. 5 shows the changed bounds due to the
integer variables.

Fig. 4. Object configuration in Frenet frame.

3. COMBINATORIAL OPTIMIZATION

3.1 Binary object-boundary relation

In order to find an optimal path through the obstacle


setting in the Frenet frame with the reduced model (5),
binary integer variables are used to construct a linear
mixed-integer problem. For each obstacle i, one binary
variable ω i indicates the passing side (left/right). Rewards
are treated differently because they could be catched on Fig. 5. Road bounds aligned to object integer variables.
different positions. For ”short” rewards (where ”short”
is related to the longitudinal extention of the reward)
one binary variable β d sufficiently specifies whether this 3.2 Decision-flickering avoidance
reward should be caught or ignored. For long rewards
”gates” with several binary variables βkd are used. For
During real-world conditions on vehicle hardware the
each long reward d, totally NpRd /2 binary variables are perception system receives slightly shifted versions of
used, which are indexed by l = 0 . . . (NpRd /2 − 1). Each the same problem, where just infrequently new objects
binary variable βld indicates, if boundaries are set to appear. Very often, two solutions nearly have the same
”gate” the corresponding lateral state variable at the cost (e.g. an obstacle in the middle of the road) which
particular longitudinal position of the reward. A logical could lead to jumping binary variables. For that reason,
OR connective of the binary ”gate” variables a penalty for changes to previous decisions is introduced
β̄ d =βkd ∨ · · · ∨ βk+N
d that is increasing with the number this decision was
Rd
p −1
(7)
computed previously by the algorithm and decreasing with
indicates the final binary state for reward d, which is the distance of the object to the vehicle. In other words,
then used to specifiy the associated cost. That means if binary re-decisions for objects that are far from the vehicle
at least one gate is ”closed” (meaning the binary variable and which have just appeared are ”cheaper” than re-
sets the boundaries active), the final path is crossing the decisions for closer and longer present objects. To account
reward polygon at some point. This formulation leads to for re-decisions, the binary values of cR O
i and ci are used to
a high number of decision variables, which is necessary if form a logic XOR connective between the binary decision
a reward can be caught at multiple positions. For example variables βi or ωi and the previous decisions β̂i or ω̂i .
a very long ”reward zone” aligned with the road might be
entered at very different positions. With known shapes of cR
i = βi (1 − β̂i ) + (1 − βi )β̂i (12)
the rewards, particularly where the longitudinal length in cO
i = ωi (1 − ω̂i ) + (1 − ωi )ω̂i (13)
Frenet frame is ”small” (e.g. smaller than 5 meters in the
setting used for the competition) (7) can be simplified by A parameter pi accounts for the weight that this decision
taking the left-most and the right-most polygon points to should be kept. The weight is updated iteratively and
Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106 103

related to the mentioned criteria of distance and decision Thirdly, negative costs are added for catching a reward by
account by  ext
  Crew , if lR ≥ ¯lR
∆si exp(a0 ci ) Crew = short . (20)
Crew , otherwise
pi =w0,bin max 1 − ,0 , (14)
d0 1 + exp(a0 ci ) These reward costs with their associated negative weight
ext
with w0,bin , d0 and a0 as scaling constants, ci as the wrew are split into extended costs Crew for long rewards
counter of decision repetitions for each binary variable and (with ”long” referring to the longitudinal dimension lR
short
∆si as the longitudinal distance of an obstacle correspond- in the Frenet frame) and simplified ones Crew for short
ing to the binary variable i to the vehicle position. In (26) ¯
rewards. A threshold lR is used for their classification.
the related cost function for re-decisions is stated. The simpler version of the problem for longitudinally short
rewards reads as
R −1
N
3.3 Cost functions short
Crew = wrew βi. (21)
i=0
The final cost function consists of several parts. First, the
L1-norm of the deviation from the Frenet-transformation In the extended reward formulation (25) the logic OR
line (i.e. the optimal racing line) is stated. It is propor- connective is needed. Auxiliary continuous optimization
tional by a weight wn to the area of absolute lateral error variables xRi for the cost reduction of reward i are intro-
in the Frenet frame and computed as duced. These auxiliary variables realize the OR connective
Nd
 between the l reward ”gates” associated with their binary
C n = wn |nk |. (15) ”gating” variable βli when being minimized in the overall
k=0 optimization problem. The set Krew restricts the auxiliary
cost variable to the (negative) weight value wrew as a
The L1-norm cannot be directly formulated as linear general lower bound or to 0 if all ”gates” are open, thus
function. Therefore (5) is used, with the splitting of u into their binary values are zero. This set reads as
a positive and negative part according to a reformulation 
shown in Boyd and Vandenberghe (2004). With ∆sk := Krew (β) = xR ∈ RNR |xRi ≥ wrew ,
sk+1 − sk , the variable nk = npos
k − nk
neg
and the cost Cn NRi /2−1
  (22)
can also be written as x Ri
≥ wrew βli , i = 0...NR − 1
Nd
l=0
Cn = wn npos
k + nk
neg
(16) with cost summarized as
k=0  
β = β 0 , . . . , β (NR −1) , (23)
with npos
k ≥ 0, nneg
k ≥ 0. (17)  
ω = ω 0 . . . , ω (NO −1) . (24)
The positive and negative parts of nk can be directly
obtained by summing up the associated controls uk . The The extended reward costs
inequalities (17) are therefore fulfilled with (5). The initial R −1
N
value n0 is a constant and can also be ”split” into a ext
Crew = xRi with xR ∈ Krew (β) (25)
positive npos
0 and a negative nneg
0 with n0 = npos0 − nneg
0 . i=0
Consequently, nk+1 can be decomposed according to the
following steps. are simply the sum of auxiliary variables realizing the OR
connective under their minimization.
nk+1 = nk + ∆sk uk (18a)
k Finally, the ”re-decision costs” Cbin penalize toggling of

nk+1 = n0 + ∆si ui (18b) binary variables. Here, the weights pi are different for every
i=0
binary variable, as described in (14). The variable cO,R i
k k for obstacles and rewards indicates if the binary variable
 
nk+1 = (npos ∆si upos neg
∆si uneg for the object has changed, which is equal to an XOR
0 + i ) − (n0 + i )
i=0 i=0
logic connective in (12) and (13). Please note that for each
(18c) reward there might be several binary variables, therefore
N̄R is used to account for all binary variables related to
nk+1 = npos neg
k+1 − nk+1 (18d) rewards.
The result (18d) is used to state (16) and therefore the R −1
N̄ O −1
N
cost in (15). Cbin = pi c R
i + pi c O
i (26)
i=0 i=0
Secondly, the steepness of the deviation from the racing
line defines the cost term C∆n with its associated cost
w∆n in a similar way by using the approach of Boyd 3.4 Final problem formulation
and Vandenberghe (2004) for the ”basis pursuit problem”.
Since the controls uk represent the steepness of deviation, For the ease of notation, the continuous optimization
the decomposed parts of (5) can be added as costs for the variables are combined in 
steepness by uneg . . . uneg
u = 0pos Nd −1
pos (27)
Nd
 u0 . . . uNd −1 .
C∆n = w∆n (upos neg
k + uk ). (19) With the set of binary numbers B = {0, 1}, the final mixed-
k=0 integer problem (28) is stated by combining the model (5)
104 Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106

with the cost model function (16) by using the result of incorporated as (29c) into the NLP. Inequality (29e) puts
(18c) splitting the race path deviation nk . box constraints on the states, which include maximum
min Cn (u) + C∆n (u) + Crew (xR ) + Cbin (β, ω) velocity and steering angle. The lateral state constraints
u∈R2×Nd , (29f) represent the road boundary and dependent on the
β∈BNβ , longitudinal state variable s. Slack variables ζk for violat-
ω∈BNω , ing (29f) are used. An iterative procedure increases their
xR ∈RNR
penalty weighting in consecutive optimization iterations,
(28a)
which we call homotopy iterations. The lateral acceleration
s.t. nk+1 = fk (upos neg
k , uk ), (28b) (4) is limited via (29g).
pos
0≤ uk ≤ umax , (28c) After nSQP sequential quadratic programming (SQP) it-
0≤ uneg
k ≤ umax , (28d) erations of the solver, the weighting parameters µi and νi
Ilow (k, β) ≤ nk ≤ Iupp (k, β), (28e) are increased as shown in Algorithm (1). Strictly increasing
Hlow (k, ω) ≤ nk ≤ Hupp (k, ω), (28f) scheduling functions αµ (i) and αν (i) govern the weighting
with k = 0, . . . , Nd − 1, of the boundary slack variables. This lets the weights for
the boundary slack variables ”grow”, which leads to a
xR ∈ Krew (β) (28g) smooth transition of the boundary non-linearity. With this
Also, the reduced costs for reward catching (21) as well as procedure, the convergence time is reduced, which is shown
the costs for keeping binary variables in (26) are included. in the results Section 5.2. As a drawback the re-weighting
Nβ and Nω denote the total count of all binary decision might be unnecessary for smooth obstacle boundaries and
variables for rewards and obstacles. takes additional time.

4. TRAJECTORY OPTIMIZATION i = 0;
while i ≤ imax do
After solving (28), a homotopy class is computed from µ ← αµ (i);
the object polygons and their associated binary states. ν ← αν (i);
The road bounds are described by n(s) and n(s) which solve NLP with nSQP iterations;
linearly interpolate the original road boundary points or i ← i + 1;
the associated object boundaries (see Fig. 5) according to end
the homotopy class. As described in Kloeser et al. (2020), Algorithm 1: Homotopy iterations for the NLP.
the optimal control problem (OCP) of time-optimal racing
can be described very generally by the following multiple
shooting nonlinear program (NLP) 5. REAL-WORLD AND SIMULATION RESULTS
N
 −1
min
2 2
xk − xk,ref Q + uk R + (29a) The presented strategies for combinatorial optimization by
x ,...,x ,
0 N mixed-integer programming (COMIP) and the trajectory
u0 ,...,uN −1 k=0
ζ0 ,...,ζN optimization of Section 4 (TO) are two independent algo-
2
µi ζk  + νi ζk 1 + xN − xN,ref QN
2 rithms, which were tested in two settings. Both, COMIP
and TO were tested in simulations together. The COMIP
s.t. x0 = x̄0 , (29b) algorithm was furthermore used on embedded hardware
xk+1 = F (xk , uk , ∆t), (29c) in the third Roborace competition in its so called ”season
u ≤ uk ≤ u, (29d) beta” (second series of competitions in 2020), where the
x ≤ xk ≤ x, (29e) presented TO was replaced by a simpler decoupled trajec-
tory planning algorithm. The competition took place on
n(sk ) − ζk ≤ nk ≤ n(sk ) + ζk , (29f)
the Bedford race circuit (England) in December 2020.
−alat ≤ alat (xk ) ≤ alat , (29g)
ζk ≥ 0, (29h) 5.1 Field test on the Bedford race circuit (COMIP only)
with k = 0, . . . , N − 1.
It represents a tracking problem of a vehicle model, where The proposed COMIP algorithm was tested on the
the final reference point xN,ref is set ”out-of-reach” to ob- NVIDIA DRIVE PX2, with Ubuntu 16.04. This electronic
tain approximate time-optimal trajectories. Here, the 1.2- control unit (ECU) provides two CPUs (4x ARM Denver,
fold maximum achievable distance was chosen for the final 8x ARM Cortex A57) and two GPUs (2x Tegra X2, 2x
reference point, where the maximum distance would cor- Pascal GPU). The open-source Coin-OR CBC solver was
respond to the distance obtained by the maximum speed used in a mixed Python/C++ ROS-framework for solving
driven for the given time interval (N + 1)∆t. Its structure problem (28) with a nominal rate of 0.5 Hz. A varying
of a tracking problem and the associated quadratic cost amount between 0 and 50 virtual objects was received in
function allows the usage of a fast Gauss-Newton Hes- generally random sizes but rectangular shapes in Carte-
sian approximation. As opposed to Kloeser et al. (2020), sian coordinates. The race car ”devbot” is described in
the reference in (29) is set as a previously approximated Roborace (2020). This algorithm was also tested in sim-
optimal racing path, rather than the center line of the ulations with the second setup, namely a HP Elitebook
road. The final values for the cost function weightings with an Intel Core i7-8550 CPU (1.8 GHz), which turned
were tuned by experiments and are shown in Table 2. out to be faster by a factor of 4-20. In this setup, the
The vehicle model (3) is discretized with an integration output of the COMIP was used together with a subse-
scheme F (xk , uk , ∆t) with fixed time intervals ∆t and quent algorithm for curvature minimization (which is a
Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106 105

simplified and decoupled approach compared to the one


described in Section 5.2). It obtained a minimum curvature
path approximation as well as a final analytical speed
maximization based on this minimum curvature path and
road friction parameters as shown in Subosits and Gerdes
(2015) and Kapania et al. (2016). According to Braghin
et al. (2008) and Heilmeier et al. (2020b), the minimum
curvature path is a good approximation for the optimal
race path. The curvature approximation was computed
with the algorithm described in Heilmeier et al. (2020b),
but with only first order differences for race line deviations.
Fig. 6 illustrates planning results from this event. Table 1
shows the maximum computation times for the combined
algorithm (due to logging limitations by the embedded
system), where the COMIP part accounts for 70% of the
computation time on average.

Fig. 7. Trajectory obtained by the presented algorithms in


a ROS simulation framework with obstacles (red) and
rewards (green).

Table 2. Parameters for Algorithm 1


Parameter Name Value
Fig. 6. Visualization of recorded data of an evasion maneu-  T
ver on the Bedford race circuit. The track boundaries Q 10−6 10−3 1 10−4 10−1
 T
are shown in blue and the racing line (Frenet trans- QN 10−2 10−1 10−2 10−4 2 · 10−3
formation line) in red. The car follows the computed  T
R 10−3 10−2
trajectory that is shown in green. αµ (i) 10i
αν (i) 0.1 · 100.7i
Table 1. Maximum computation times of the imax 3
overall optimization algorithm nSQP 2
alat 5m s
ECU Simulation N 100
max. comp. time 6.0s 0.4s ∆t 0.05s
av. comp. time 1.9s 0.2s
iterations are performed, with different weights for the
slack variables, accounting for the homotopy iterations.
5.2 Simulation in virtual environments (COMIP + TO) The algorithm was compared to a standard setting with
8 SQP iterations on the final slack weights according to
The COMIP algorithm was also tested extensively on dif- i = 3 in Table 2. With the constant slack weight setting
ferent race tracks with different object settings, including the NLP solver acados could not find solutions for several
up to 40 differently shaped objects simultaneously within obstacle configurations, where either QP iterations failed
a prediction horizon of 300 meters. The measured times or the solution trajectory got stuck in front of obstacles.
for the simulated algorithm on the Bedford race circuit With the presented homotopy iterations both problems
are shown in Table 1. were mitigated. The results are summarized in Table 3.
The proposed subsequent TO was tested on the same sim-
ulation setup. After COMIP, the boundaries in (29f) were Table 3. Results for Algorithm 1
approximated by linear splines with a spatial discretization Name Value
interval of the longitudinal coordinate s of 1 meter. For
solving the NLP in (29), the kinematic vehicle model of Single SQP iteration comp. time (mean) 0.009s
Single SQP iteration comp. time (min) 0.006s
Section 2.1 was used with a center of gravity at lengths
Single SQP iteration comp. time (min) 0.02s
lr = 1.4m and lf = 1.6m and parameters according to Ta-
Total SQP iterations 8
ble 2. The NLP was solved with acados (Verschueren et al. Total NLP solution time (mean) 0.072s
(2018)), where a Gauss-Newton Hessian approximation QP iterations (mean) 8
was used together with a two-stage implicit Runge-Kutta QP iterations (max) 10
integration scheme. For solving the quadratic program QP iterations (min) 6
(QP), the interior point solver HPIPM (Frison and Diehl
(2020)) was used. Altogether, with Algorithm (1) 8 SQP
106 Rudolf Reiter et al. / IFAC PapersOnLine 54-6 (2021) 99–106

6. CONCLUSION Janeček, F., Klaučo, M., Kalúz, M., and Kvas-


nica, M. (2017). Optiplan: A matlab toolbox
This work presents two contributions to the sophisticated for model predictive control with obstacle avoid-
sub-problems of trajectory planning for autonomous rac- ance. IFAC-PapersOnLine, 50(1), 531 – 536. doi:
ing. First, a novel approximation of the combinatorial https://doi.org/10.1016/j.ifacol.2017.08.057. 20th IFAC
problem as Frenet-frame based linear mixed-integer prob- World Congress.
lem is derived, which allows a fast and robust computa- Johansen, T.A. (2011). Introduction to nonlinear model
tion of a distinct homotopy class. Secondly, a homotopy predictive control and moving horizon estimation. In
strategy is presented to obtain robust convergence of a M. Huba, S. Skogestad, M. Fikar, M. Hovd, T.A. Jo-
consecutive NLP. By using these approaches on a real hansen, and B. Rohal’-Ilkiv (eds.), Selected Topics on
embedded setup, it is verified to achieve high performance Constrained and Nonlinear Control, chapter 5.
on novel autonomous race car competitions and provide an Kapania, N.R., Subosits, J., and Christian Gerdes, J.
alternative to the full state-space discretization of graph- (2016). A Sequential Two-Step Algorithm for Fast
search methods. Further considerations may include the Generation of Vehicle Racing Trajectories. Journal of
combination of homotopy iterations with the integer prob- Dynamic Systems, Measurement, and Control, 138(9),
lem and the extension to time varying objects. 091005. doi:10.1115/1.4033311. 00043.
Kloeser, D., Schoels, T., Sartor, T., Zanelli, A., Frison,
ACKNOWLEDGEMENTS G., and Diehl, M. (2020). NMPC for racing using
a singularity-free path-parametric model with obstacle
The authors thank Adrian Bürger (University of Freiburg avoidance. In Proceedings of the IFAC World Congress.
and Karlsruhe University of Applied Sciences) for his valu- Liniger, A., Domahidi, A., and Morari, M. (2015).
able input to integer optimization and the ”Autonomous Optimization-based autonomous racing of 1:43 scale RC
Racing Graz” team for developing the software stack that cars. Optimal Control Applications and Methods, 36(5),
embeds the presented algorithms. Furthermore, the au- 628–647. doi:10.1002/oca.2123.
thors thank Jonathan Frey (University of Freiburg) for his Paden, B., Čáp, M., Yong, S.Z., Yershov, D., and Fraz-
assistance integrating the acados solver. zoli, E. (2016). A survey of motion planning and con-
trol techniques for self-driving urban vehicles. IEEE
REFERENCES Transactions on Intelligent Vehicles, 1(1), 33–55. doi:
10.1109/TIV.2016.2578706.
Alcalá, E., Puig, V., and Quevedo, J. (2020). Lpv-mp Park, J., Karumanchi, S., and Iagnemma, K. (2015).
planning for autonomous racing vehicles considering ob- Homotopy-Based Divide-and-Conquer Strategy for Op-
stacles. Robotics and Autonomous Systems, 124, 103392. timal Trajectory Planning via Mixed-Integer Program-
doi:https://doi.org/10.1016/j.robot.2019.103392. ming. IEEE Transactions on Robotics, 31(5), 1101–
Bergman, K. and Axehill, D. (2017). Combining Homo- 1115. doi:10.1109/TRO.2015.2459373. 00054 Confer-
topy Methods and Numerical Optimal Control to Solve ence Name: IEEE Transactions on Robotics.
Motion Planning Problems. arXiv:1703.07546 [math]. Richards, A., Schouwenaars, T., How, J.P., and Feron, E.
00015 arXiv: 1703.07546. (2002). Spacecraft Trajectory Planning with Avoidance
Bergman, K., Ljungqvist, O., and Axehill, D. (2020). Im- Constraints Using Mixed-Integer Linear Programming.
proved Path Planning by Tightly Combining Lattice- Journal of Guidance, Control, and Dynamics, 25(4),
Based Path Planning and Optimal Control. IEEE 755–764. doi:10.2514/2.4943. 00492.
Transactions on Intelligent Vehicles, 1–1. doi: Rizano, T., Fontanelli, D., Palopoli, L., Pallottino, L., and
10.1109/TIV.2020.2991951. 00005. Salaris, P. (2013). Global path planning for competitive
Bergman, K., Ljungqvist, O., Glad, T., and Axehill, D. robotic cars. In 52nd IEEE Conference on Decision and
(2019). An Optimization-Based Receding Horizon Tra- Control, 4510–4516. doi:10.1109/CDC.2013.6760584.
jectory Planning Algorithm. arXiv:1912.05259 [math]. Roborace (2020). Roborace season beta. URL
00003 arXiv: 1912.05259. https://roborace.com/.
Boyd, S. and Vandenberghe, L. (2004). Convex Optimiza- Schouwenaars, T., De Moor, B., Feron, E., and How, J.
tion. Cambridge University Press, USA. (2001). Mixed integer programming for multi-vehicle
Braghin, F., Cheli, F., Melzi, S., and Sabbioni, E. (2008). path-planning. European Control Conf. 00580.
Race driver model. Computers & Structures, 86(13-14), Subosits, J. and Gerdes, J.C. (2015). Autonomous ve-
1503–1516. doi:10.1016/j.compstruc.2007.04.028. 00094. hicle control for emergency maneuvers: The effect of
Frison, G. and Diehl, M. (2020). Hpipm: a high- topography. In 2015 American Control Conference
performance quadratic programming framework for (ACC), 1405–1410. IEEE, Chicago, IL, USA. doi:
model predictive control. 10.1109/ACC.2015.7170930. 00018.
Heilmeier, A., Wischnewski, A., Hermansdorfer, L., Betz, Verschueren, R., Frison, G., Kouzoupis, D., van Duijkeren,
J., Lienkamp, M., and Lohmann, B. (2020a). Minimum N., Zanelli, A., Quirynen, R., and Diehl, M. (2018).
curvature trajectory planning and control for an au- Towards a modular software package for embedded
tonomous race car. Vehicle System Dynamics, 58(10), optimization. In Proceedings of the IFAC Conference on
1497–1527. doi:10.1080/00423114.2019.1631455. Nonlinear Model Predictive Control (NMPC), 374–380.
Heilmeier, A., Wischnewski, A., Hermansdorfer, L., Betz, Madison, Wisconsin (USA).
J., Lienkamp, M., and Lohmann, B. (2020b). Minimum
curvature trajectory planning and control for an au-
tonomous race car. Vehicle System Dynamics, 58(10),
1497–1527. doi:10.1080/00423114.2019.1631455. 00021.

You might also like