Cautious MPC with Gaussian Processes
Cautious MPC with Gaussian Processes
Abstract—Gaussian process (GP) regression has been widely learning the system dynamics as opposed to disturbances,
used in supervised machine learning due to its flexibility and however, imposes the challenge of propagating probability
inherent ability to describe uncertainty in function estimation. distributions of the state over the prediction horizon of the
In the context of control, it is seeing increasing use for modeling
of nonlinear dynamical systems from data, as it allows the direct controller. Efficient methods to evaluate GPs for Gaussian
inputs have been developed in [6], [7], [8]. By successively
arXiv:1705.10702v4 [[Link]] 29 Dec 2019
agating GP dynamics and uncertainties is provided and ex- Σw = diag([σ12 , . . . , σn2 d ]). We assume that both f and g are
tended to the additive combination with nominal dynamics. differentiable functions.
The approximate propagation enables a principled formulation The system is subject to state and input constraints X ⊆
of chance constraints on the resulting state distributions in Rnx , U ⊆ Rnu , respectively. The constraints are formulated
terms of probabilistic reachable sets [18]. In addition, the as chance constraints, i.e. by enforcing
nominal system description allows for reductin the GP model
learning to a subspace of states and inputs. We discuss sparse Pr(x(k) ∈ X ) ≥ px ,
GPs and a tailored selection of inducing points for MPC to Pr(u(k) ∈ U) ≥ pu ,
reduce the computational burden of the approach. The use
of some or all of these techniques is crucial to make the where px , pu are the associated satisfaction probabilities.
computationally expensive GP approach practically feasible
for control with sampling times in the millisecond range. C. Gaussian Process Regression
We finally present two application examples. The first is a
Gaussian process regression is a nonparametric framework
simulation of an autonomous underwater vehicle, illustrating
for nonlinear regression. A GP is a probability distribution
key concepts and advantages in a simplified setting. Second,
over functions, such that every finite sample of function values
we present a hardware implementation for autonomous racing
is jointly Gaussian distributed. We apply Gaussian processes
of remote controlled cars, showing the real-world feasibility
regression to infer the noisy vector-valued function g(x, u)
of the approach for complex high performance control tasks.
in (1) from previously collected measurement data of states
To the best of our knowledge this is the first hardware
and inputs {(xj , uj ), j = 0, . . . , M }. State-input pairs form
implementation of a Gaussian Process-based predictive control
the input data to the GP and the corresponding outputs are
scheme to a system of this complexity at sampling times of
obtained from the deviation to the nominal system model:
20 ms.
yj = g(xj , uj ) + wj = Bd† (xj+1 − f (xj , uj )) ,
II. P RELIMINARIES
A. Notation where Bd† is the Moore-Penrose pseudo-inverse. Note that the
measurement noise on the data points wj corresponds to the
The i-th element of a vector x is denoted [x]i . Similarly,
process noise in (1). With zj := [xTj , uTj ]T , the data set of the
[M ]ij denotes element ij of a matrix M , and [M ]·i , [M ]i·
GP is therefore given by
its i-th column or row, respectively. We use diag(x) to refer
to a diagonal matrix with entries given by the vector x. T
D = {y = [y0 , . . . , yM ] ∈ RM ×nd ,
The squared Euclidean norm weighted by M , i.e. xT M x T
z = [z0 , . . . , zM ] ∈ RM ×nz } .
is denoted kxk2M . We use boldface to emphasize stacked
quantities, e.g. a collection of vector-valued data in matrix Each output dimension is learned individually, meaning that
form. ∇f (z) is the gradient of f evaluated at z. The Pontryagin we assume the components of each yj to be independent, given
set difference is denoted A B = {a |a + b ∈ A ∀b ∈ B}. A the input data zj . Specifying a GP prior on g in each output
normally distributed vector x with mean µ and variance Σ dimension a ∈ {1, . . . , nd } with kernel k a (·, ·) and prior mean
is given by x ∼ N (µ, Σ). The expected value of x is E(x), function ma (·) results in normally distributed measurement
cov(x, y) is the covariance between vectors x and y, and the data with
variance var(x) = cov(x, x). We use p(x), (p(x|y)) to refer to [y]·,a ∼ N (m(z), Kzz a
+ Iσa2 ) , (2)
the (conditional) probability densities of x. Similary Pr(E),
(Pr(E | A)) denotes the probability of an event E (given A). where Kzz a
is the Gram matrix of the data points, i.e.
T
Realized quantities during closed loop control are time [Kzz ]ij = k a (zi , zj ) and ma (z) = [ma (z0 ), . . . , ma (zM )] .
a
indexed using parenthesis, i.e. x(k), while quantities in pre- The choice of kernel functions k a and its parameterization
diction use subscripts, e.g. xi is the predicted state i-steps is the determining factor for the inferred distribution of g
ahead. and is typically specified using prior process knowledge and
optimization [19], e.g. by optimizing the likelihood of the
B. Problem formulation observed data distribution (2). Throughout this paper we
consider the squared exponential kernel function
We consider the control of dynamical systems that can be
represented by the discrete-time model
2 1 T −1
k (zi , zj ) = σf,a exp − (zi − zj ) La (zi − zj ) , (3)
a
where x(k) ∈ Rnx is the system state and u(k) ∈ Rnu the in which La is a positive diagonal length scale matrix and
control inputs at time k. The model is composed of a known
2
σf,a the signal variance. It is, however, straightforward to use
nominal part f and additive dynamics g that describe initially any other (differentiable) kernel function.
unknown dynamics of the system, which are to be learned The joint distribution of the training data and an arbitrary
from data and are assumed to lie in the subspace spanned by test point z in output dimension a is given by
Bd . We consider i.i.d. process noise wk ∼ N (0, Σw ), which Kzz + Iσa2 Kzz
a a a
m (z)
is spatially uncorrelated, i.e. has diagonal variance matrix p([y]a , [y]·,a ) = N , , (4)
ma (z) Kzza a
Kzz
3
T
where [Kzz a
]j = k a (zj , z), Kzza
= (Kzza
) and similarly III. MPC C ONTROLLER D ESIGN
Kzz = k (z, z). The resulting distribution of [y]a condi-
a a
We consider the design of an MPC controller for system (1)
tioned on the observed data points is again Gaussian with using a GP approximation d of the unknown function g:
p([y]a | [y]·,a ) = N µda (z), Σda (z) and
xi+1 = f (xi , ui ) + Bd (d(xi , ui ) + wi ) . (8)
−1
µda (z) = Kzz
a a
(Kzz + Iσa2 ) [y]·,a , (5a)
At each time step, the GP approximation evaluates to a
−1
Σda (z) = Kzz
a a
− Kzz a
(Kzz + Iσa2 ) a
Kzz . (5b) stochastic distribution according to the residual model uncer-
tainty and process noise, which is then propagated forward
The resulting multivariate GP approximation of the unknown in time. A stochastic MPC formulation allows the principled
function g(z) is then simply given by stacking the individual treatment of chance constraints, i.e. by imposing a prescribed
output dimensions, i.e. maximum probability of constraint violation. Denoting a state
and input reference trajectory by X r = {xr0 , . . . , xrN }, U r =
d(z) ∼ N µd (z), Σd (z) (6)
{ur0 , . . . , urN −1 }, respectively, the resulting stochastic finite
time optimal control problem can be formulated as
with µd = [µd1 , . . . , µdnd ]T and Σd = diag([Σd1 , . . . , Σdnd ]T ).
−1
N
!
Evaluating mean and variance in (5) has cost O(nd nz M ) X
min E lf (xN −xrN ) + l(xi −xri , ui −uri ) (9a)
and O(nd nz M 2 ), respectively and thus scales with the number Π(x) i=0
of data points. For large amounts of data points or fast
s.t. xi+1 = f (xi , ui ) + Bd (d(xi , ui ) + wi ), (9b)
real-time applications this can limit the use of GP models.
To overcome these issues, various approximation techniques ui = πi (xi ), (9c)
have been proposed, one class of which is sparse Gaussian Pr(xi+1 ∈ X ) ≥ px , (9d)
processes using inducing inputs [20], briefly outlined in the Pr(ui ∈ U) ≥ pu , (9e)
following.
x0 = x(k) , (9f)
for all i = 0, . . . , N − 1 with appropriate terminal cost
D. Sparse Gaussian Processes lf (xN ) and stage cost l(xi , ui ), where the optimization is
carried out over a sequence of input policies Π(x) =
Many sparse GP approximations make use of inducing
{π0 (x), . . . , πN −1 (x)}.
targets yind , inputs zind and conditional distributions to approx-
In the form (9), the optimization problem is computationally
imate the joint distribution (4) [21]. Many such approximations
intractable. In the following sections, we present techniques
exist, a popular of which is the Fully Independent Training
for deriving an efficiently solvable approximation. Specifically,
Conditional (FITC) [22], which we make use of in this
we use affine feedback policies with precomputed linear gains
paper. Given a selection of inducing inputs zind and using
−1 and show how this allows simple approximate propagation
the shorthand notation Qaζζ̃ := Kζz a
(Kzaind zind ) Kza ζ̃ the
ind ind of the system uncertainties in terms of mean and variance in
approximate posterior distribution is given by
prediction. Using these approximate distributions, we present
−1 a framework for reformulating chance constraints determin-
µ̃da (z) = Qazz (Qazz + Λ) [y]·,a , (7a)
istically and briefly discuss the evaluation of possible cost
−1
Σ̃da (z) = a
Kzz − Qazz (Qazz + Λ) Qzz (7b) functions.
with Λ = diag(Kzza
− Qazz + Iσa2 ). Concatenating the output
dimensions similar to (5) we arrive at the approximation A. Ancillary Linear State Feedback Controller
Optimization over general feedback policies Π(x) is an in-
˜ ∼ N µ̃d (z), Σ̃d (z) .
d(z) finite dimensional optimization problem. A common approach
that integrates well in the presented framework is to restrict
Several of the matrices used in (7) can be precomputed and the policy class to linear state feedback controllers
the evaluation complexity becomes independent of the number πi (xi ) = Ki (µxi − xi ) + µui ,
of original data points. With M̃ being the number of inducing
points, this results in O(nd nz M̃ ) and O(nd nz M̃ 2 ) for the where µxi is the predicted mean of the state distribution. Using
predictive mean and variance, respectively. pre-selected gains Ki , we then optimize over µui , the mean of
There are numerous options for selecting the inducing the applied input. Note that due to the ancillary control law the
inputs, e.g. heuristically as a subset of the original data points, input ui applied in prediction is a random variable, resulting
by treating them as hyperparameters and optimizing their from the affine transformation of xi .
location [22], or letting them coincide with test points [23], In Fig. 1, the effect of state feedback on the propagation of
which is often referred to as transductive learning. In Sec- uncertainty is exemplified. It shows the evolution over time of
tion III-C we make use of such transductive ideas and propose a double integrator with a quadratic friction term inferred by a
a dynamic selection of inducing points, with a resulting local GP. The right plot displays mean and 2-σ variance of a number
approximation tailored to the predictive control task. of trajectories from repeated simulations of the system with
4
0.5 open-loop where Σui = Ki Σxi KiT , Σxu i = Σxi KiT and ? denotes terms
1
closed-loop given by symmetry. Considering the covariances between
d([x]2 )
states, inputs and GP, i.e. Σxd and Σud , is of great importance
[x]1
0 0
for an accurate propagation of uncertainty when the GP
model d is paired with a nominal system model f . Using a
−1
−0.5 linearization of the nominal system dynamics around the mean
−2 0 2 0 10 20 x
x u x u x µ
[x]2 k f (x, u) ≈ f (µ , µ ) + ∇f (µ , µ ) − u ,
u µ
Fig. 1: Propagation of uncertainty for double integrator with similar to extended Kalman filtering, this permits simple
GP trained on a nonlinear friction term. The left plot displays update equations for the state mean and variance based on
the GP with 2-σ confidence bound, while the right plot shows affine transformations of the Gaussian distribution in (10)
the mean and 2-σ variance of repeated simulation runs of the
system under an open-loop control sequence and closed-loop µxi+1 = f (µxi , µui ) + Bd µdi ,
state feedback control. T
Σxi+1 = [∇f (µxi , µui ) Bd ] Σi [∇f (µxi , µui ) Bd ] .
x2
computationally feasible in the targeted millisecond sampling can be performed online. For brevity, we concentrate on state
times. Instead, inducing inputs are selected heuristically along constraints, as input constraints can be treated analogously.
the approximate state input trajectory, specifically we focus 1) Half-space constraints: Consider the constraint set X
here on the MPC solution computed at a previous time step. given by a single half-space constraint X hs := x hT x ≤ b ,
To illustrate the procedure, we consider a simple double h ∈ Rn , b ∈ R+ . Considering the marginal distribution of the
integrator system controlled by an MPC. Fig. 3 shows the error in the direction of the half-space hT exi ∼ N (0, hT Σxi h)
variance Σd (x) of a GP trained on the systems’ states. Addi- enables us to use the quantile function of a standard Gaus-
tionally, two successive trajectories from an MPC algorithm sian random variable φ−1 (px ) at the needed probability of
are displayed, in which the solid red line is the current constraint satisfaction px to see that
prediction, while the dashed line is the prediction trajectory q
from the previous iteration. The plot on the left displays the x x −1
T
R (Σi ) := e h e ≤ φ (px ) h Σi h
T x
b) PRS based on marginal distributions: Alternatively, Further examples include a saturating cost [8], risk sensitive
one can define a PRS based on the marginal distribution of costs [34] or radial basis function networks [17].
the error ex in each dimension, which therefore scales with the We refer to the evaluation of the expected value (9a) in
state dimension. We use Boole’s inequality (16) with Remark 2 terms of mean and variance as
directly on marginal distributions in each dimension of the
state to define a box-shaped PRS of probability level px E (l(xi − xri , ui − uri )) = c(µxi − xri , µui − uri , Σxi )
q and similarly cf (µxN − xrN , ΣxN ) for the terminal cost.
Rx (Σxi ) = e |[e]j | ≤ φ−1 (p̄) [Σxi ]j,j ∀j = 1, . . . , nx .
Remark 4. While many performance indices can be expressed
x+1
as expected values, there exist various stochastic cost mea-
with p̄ = 1 − n1x − p2n . To compute the Pontryagin
x sures, such as conditional value-at-risk. Given the approximate
difference (15) we make use of the following Lemma. state distributions, many can be similarly considered.
Lemma 1. Let A = {x |Hx ≤ b} be a polytope and
B = e −r ≤ e ≤ r, r ∈ Rn+ , a box in Rn . F. Tractable MPC Formulation with GP Model
Then A B = {x |Hx ≤ b − |H|r}, where |H| is the
By bringing together the approximations of the previous
element-wise absolute value.
sections, the following tractable approximation of the MPC
Proof. From definition of the Pontryagin difference we have problem (9) can be derived:
N −1
A B = {x |x + e ∈ A ∀e ∈ B} X
min cf (µxN −xrN , ΣxN ) + c(µxi −xri , µui −uri , Σxi )
= {x |H(x + e) ≤ b ∀e ∈ B} {µui } i=0
s.t. µxi+1 = f (µxi , µui ) + Bd µdi ,
= x [H]j,· x ≤ [b]j − max[H]j,· e ∀j = 1, . . . , n
e∈B T
Σxi+1 = [∇f (µxi , µui ) Bd ] Σi [∇f (µxi , µui ) Bd ] ,
= {x |[H]j,· x ≤ [b]j − |[H]j,· |r ∀j = 1, . . . , n}
µxi+1 ∈ Z(Σxi+1 ),
= {x |Hx ≤ b − |H|r} ,
µui ∈ V(Σxi ),
proving the result. µdi , Σi according to (10) and (12), (13) or (14),
The resulting tightened set is therefore µx0 = x(k), Σx0 = 0
n o (18)
Z p (Σxi ) = z Hz ≤ b̃(Σxi ) for i = 0, . . . , N − 1. The resulting optimal control law is
0
−2
B. GP-based Racing Controller
−4
0 10 20 30 40 We consider a race track given by its centerline and a fixed
time [s] track width. The centerline is described by a piecewise cubic
(b) Residual model error with GP-based MPC. Measured model error spline polynomial, which is parameterized by the path length
as black dots, 2-σ residual model uncertainty from GP shaded blue. Θ. Progress along the track is characterized by Θi , which
is introduced as an additional state and enters the considered
Fig. 5: Simulation results of GP-based MPC for autonomous
cost function linearly, encouraging a maximization of progress
underwater vehicle in an online learning scenario.
along the track. Given a Θi , we can evaluate the corresponding
T
centerline position C(Θ) = [Xc (Θ), Yc (Θ)] , such that the
V. AUTONOMOUS R ACING constraint for the car to stay within the track boundaries can
be expressed as
As a second example we consider an autonomous racing
scenario, in which the goal is to drive a car around a X (Θi ) := xXY
xXY − C(Θi )
≤ r ⊂ R2 ,
track as quickly as possible, while keeping the vehicle safe,
i.e. while avoiding collision with the track boundaries. The where r is half the track width.
controller is based on a model predictive contouring control Based on approximate Gaussian distributions of the state
formulation [42], [43] which has been applied to the problem in prediction we have for the position error eXY
i = xXY
i −
of autonomous racing in [44]. Preliminary simulations results µi ∼ N (0, Σi ) and define an ellipsoidal PRS as
XY XY
were published in [28].
−1
n o
Rell (ΣXY ) = eXY (eXY )T (ΣXY ) eXY ≤ χ22 (px ) ,
i i
A. Car Dynamics
The race cars are modeled by continuous-time nominal where χ22 (px ) is the quantile function of the chi-squared
dynamics ẋ = f c (x, u) obtained from a bicycle model distribution with two degrees of freedom. In order to simplify
with nonlinear tire forces given by a simplified Pacejka tire constraint tightening of X (Θi ) we find an outer approximation
model [45], which results in the following states and inputs by a ball Rb ⊆ Rell as
x = [X, Y, Φ, vx , vy , ω]T , u = [p, δ]T ,
b XY XY
XY
q 2
R (Σi ) = e XY
e ≤ λmax Σi χ2 (px ) ,
T
with position xXY = [X, Y ] , orientation Φ, longitudinal and
lateral velocities vx and vy , and yaw rate ω. The inputs to the
system are the motor duty cycle p and the steering angle δ.
For details on the system modeling please refer to [44], [28].
For use in the MPC formulation, we discretize the sys-
tem using a Runge-Kutta method with a sampling time of
Ts = 20 ms. In order to account for model mismatch due to
inaccurate parameter choices and limited fidelity of this simple
model, we add g(x, u) capturing unmodeled dynamics, as well Fig. 6: Illustration of the constraint tightening procedure.
as additive Gaussian white noise w. Due to the structure of the The effective track radius is adjusted based on the predicted
nominal model, i.e. since the dynamics of the first three states position uncertainty.
10
3 3
Velocity [m/s]
Velocity [m/s]
2 2
1 1
0 0
(a) Nominal controller (b) GP-based controller
Fig. 7: Comparison of racelines with nominal and GP-based controller. The color indicates the 2-norm of the velocity, the red
cross is the starting point of the race car.
where λmax (·) is the maximum eigenvalue which can be erratic and there are a number of small collisions with the track
readily computed since ΣXYi is a 2 by 2 matrix. The necessary boundaries. This can be observed in the racelines plotted in
constraint tightening can therefore be expressed as Fig. 7a showing 20 laps run with the nominal controller. Using
the collected data, we train the GP error model d using 325
Z(Θi , ΣXY
i ) = X (Θi ) Rb (ΣXY ) (19) data points. We infer the hyperparameters in (3) as well as the
XY
XY i
XY
= z
z − C(Θi ) ≤ r̃ Σi
, noise level Σw using maximum likelihood optimization. The
q resulting racelines of 20 laps with the GP-based controller
where r̃ ΣXY = r − χ22 (px )λmax ΣXY . Fig. 6 exem-
i i are displayed in Figure 7b, generally showing a much more
plifies the predicted evolution of the cars position and the consistent and safe racing behavior. In particular, it can be
resulting constraint tightening. seen that almost all of the systematic and persistent problems
The state is extended by previously applied inputs and large in the raceline of the nominal controller can be alleviated.
input changes are additionally penalized. We make use of the Fig. 8 shows the encountered dynamics error in the yaw-rate
Taylor approximation (13) to propagate uncertainties without and the predicted error during the first lap with the sparse GP-
the use of an ancillary state feedback controller, i.e. K = 0. based controller. Mean and residual uncertainty predicted by
The prediction horizon is chosen as N = 30 and we formulate the GP matches the encountered errors well. It is important
the chance constraints (19) with χ22 (px ) = 1. To reduce to note that the apparent volatility in the plot is not due to
conservatism of the controller, constraints are instead only overfitting, but is instead due to fast changes in the input
tightened for the first 20 prediction steps and are applied to the and matches the validation data, i.e. the measured errors. To
mean for the remainder of the prediction horizon, similar to the quantify performance of the proposed controllers we compare
method used in [46]. We reduce computation times by making in Table I average lap time T l , minimum lap time Tl,min as
use of the dynamic sparse approximations with 10 inducing well as the average 2-norm error in the system dynamics kek,
points as outlined in Section III-C, placing the inducing inputs i.e. the difference between the mean state after one prediction
regularly along the previous solution trajectory.
To ensure real-time feasibility of the approach for the
sampling time of 20ms two additional approximations are 4
applied. The variance dynamics are pre-evaluated based on the
previous MPC solution, which enables the pre-computation 2
dω [rad/s]
Controller T l [s] Tl,min [s] kek [−] Tc [ms] Tc < 20 ms [1] K. J. Hunt, D. Sbarbaro, R. Zbikowski, and P. J. Gawthrop, “Neural
networks for control systems-A survey,” Automatica, vol. 28, no. 6, pp.
Nominal 10.32 9.65 0.73 18.2 76.3% 1083–1112, 1992.
GP-based 9.61 9.27 0.33 17.2 99.8% [2] D. Nguyen-Tuong and J. Peters, “Model learning for robot control: a
survey,” Cognitive Processing, vol. 12, no. 4, pp. 319–340, Nov. 2011.
[3] O. Sigaud, C. Salan, and V. Padois, “On-line regression algorithms
for learning mechanical models of robots: A survey,” Robotics and
step and the realized state, e(k+1) = µx1 − x(k+1). We see Autonomous Systems, vol. 59, no. 12, pp. 1115–1129, 2011.
[4] G. Pillonetto, F. Dinuzzo, T. Chen, G. De Nicolao, and L. Ljung,
that the GP-based controller is able to improve significantly on “Kernel methods in system identification, machine learning and function
all these quantities, with an average lap time improvement of estimation: A survey,” Automatica, vol. 50, no. 3, pp. 657–682, 2014.
0.71 s, or almost 7%, which constitutes a large improvement [5] E. D. Klenske, M. N. Zeilinger, B. Schölkopf, and P. Hennig, “Gaussian
in the considered racing task. This is in part due to the process-based predictive control for periodic error correction,” IEEE
Transactions on Control Systems Technology, vol. 24, no. 1, pp. 110–
improved system model, as evident in the average dynamics 121, 2016.
error kek, but also due to the cautious nature of the controller, [6] J. Quionero-Candela, A. Girard, and C. Rasmussen, “Prediction at an
which helps to further reduce collisions and large problems uncertain input for Gaussian processes and relevance vector machines -
application to multiple-step ahead time-series forecasting,” Max Planck
in the raceline. Due to the cautious nature, the minimum lap Institute for Biological Cybernetics, Tübingen, Germany, Tech. Rep.
time gains are slightly less pronounced. In fact, the nominal IMM-2003-18, 2003.
controller consistently displays higher top speeds, which often [7] M. Kuß, “Gaussian process models for robust regression, classification,
and reinforcement learning,” Ph.D. dissertation, Technische Universität
times, however, lead to significant problems at the breakpoint Darmstadt, Darmstadt, 2006.
to a slow corner. Computation times are reported as average [8] M. Deisenroth, “Efficient reinforcement learning using Gaussian pro-
solve times T c and the percentage of solutions in under 20 ms, cesses,” Ph.D. dissertation, Karlsruhe Institute for Technology, Karl-
sruhe, 2010.
Tc < 20 ms. Average solution times of nominal and GP-based [9] J. Kocijan, R. Murray-Smith, C. E. Rasmussen, and A. Girard, “Gaussian
controller are similar. The percentiles of solutions in under process model based predictive control,” in American Control Confer-
20 ms, however, differ significantly. This is mainly due to ence, Jun. 2004, pp. 2214–2219.
frequent large re-planning actions occurring with the nominal [10] A. Grancharova, J. Kocijan, and T. A. Johansen, “Explicit stochastic
predictive control of combustion plants based on Gaussian process
controller. models,” Automatica, vol. 44, no. 6, pp. 1621–1631, 2008.
The results therefore demonstrate that the presented GP- [11] G. Cao, E. M.-k. Lai, and F. Alam, “Gaussian process model predic-
based controller can significantly improve performance while tive control of unmanned quadrotors,” in International Conference on
Control, Automation and Robotics, 2016.
maintaining safety in a hardware implementation of a complex [12] X. Yang and J. M. Maciejowski, “Fault tolerant control using Gaussian
system with small sampling times. processes and model predictive control,” International Journal of Ap-
plied Mathematics and Computer Science, vol. 25, no. 1, pp. 133–148,
2015.
VI. C ONCLUSION [13] C. J. Ostafew, A. P. Schoellig, T. D. Barfoot, and J. Collier, “Learning-
based nonlinear model predictive control to improve vision-based mobile
robot path tracking,” Journal of Field Robotics, vol. 33, no. 1, pp. 133–
The paper discussed the use of Gaussian process regression 152, 2016.
to learn nonlinearities for improved performance in model [14] C. J. Ostafew, A. P. Schoellig, and T. D. Barfoot, “Robust constrained
predictive control. Combining GP dynamics with a nominal learning-based NMPC enabling reliable mobile robot path tracking,” The
International Journal of Robotics Research, vol. 35, no. 13, pp. 1547–
system allows for learning only parts of the dynamics, which 1563, 2016.
is key for keeping the required number of data points and [15] G. Cao, E. M.-K. Lai, and F. Alam, “Gaussian process model predictive
computational complexity of the GP regression feasible for control of unknown non-linear systems,” IET Control Theory & Appli-
cations, vol. 11, pp. 703–713(10), 2017.
online control. Approximation methods for the propagation
[16] Y. Wang, C. Ocampo-Martinez, and V. Puig, “Stochastic model pre-
of the state distributions over the prediction horizon were dictive control based on Gaussian processes applied to drinking water
reviewed and it was shown how this enables a principled networks,” IET Control Theory Applications, vol. 10, no. 8, pp. 947–955,
treatment of chance constraints on both states and inputs. 2016.
[17] S. Kamthe and M. P. Deisenroth, “Data-efficient reinforcement learning
A simulation example as well as a hardware implementation with probabilistic model predictive control,” in International Conference
have shown how the proposed formulations provide cautious on Artificial Intelligence and Statistics, 2018.
control with improved performance for medium-sized systems [18] L. Hewing and M. N. Zeilinger, “Stochastic model predictive control
for linear systems using probabilistic reachable sets,” Conference on
with low sampling times. In particular, we have demonstrated Decision and Control, 2018, accepted.
in experiment that both performance and safety in an au- [19] C. E. Rasmussen and C. K. I. Williams, Gaussian processes for machine
tonomous racing setting can be significantly improved by using learning. The MIT Press, 2006.
[20] J. Quiñonero-Candela, C. E. Rasmussen, and C. K. Williams, “Approx-
cautious data-driven techniques. imation methods for Gaussian process regression,” Microsoft Research,
Tech. Rep. MSR-TR-2007-124, 2007.
[21] J. Quiñonero-Candela, C. E. Rasmussen, and R. Herbrich, “A unifying
ACKNOWLEDGEMENT view of sparse approximate Gaussian process regression,” Journal of
Machine Learning Research, vol. 6, pp. 1935–1959, 2005.
We would like to thank the Automatic Control Laboratory [22] E. Snelson and Z. Ghahramani, “Sparse gaussian processes using
(IfA) at ETH Zurich and in particular Alexander Liniger for his pseudo-inputs,” in Advances in Neural Information Processing Systems,
Y. Weiss, B. Schölkopf, and J. C. Platt, Eds., 2006, pp. 1257–1264.
valuable input and support with the hardware implementation [23] V. Tresp, “A Bayesian committee machine,” Neural Computation,
on the miniature race cars. vol. 12, no. 11, pp. 2719–2741, Nov. 2000.
12