Professional Documents
Culture Documents
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
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
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.
3. COMBINATORIAL OPTIMIZATION
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