  In this paper we present a Learning Model Predictive Controller (LMPC) for
autonomous racing. We model the autonomous racing problem as a minimum time
iterative control task, where an iteration corresponds to a lap. In the
proposed approach at each lap the race time does not increase compared to the
previous lap. The system trajectory and input sequence of each lap are stored
and used to systematically update the controller for the next lap. The first
contribution of the paper is to propose a LMPC strategy which reduces the
computational burden associated with existing LMPC strategies. In particular,
we show how to construct a safe set and an approximation to the value function,
using a subset of the stored data. The second contribution is to present a
system identification strategy for the autonomous racing iterative control
task. We use data from previous iterations and the vehicle's kinematics
equations to build an affine time-varying prediction model. The effectiveness
of the proposed strategy is demonstrated by experimental results on the
Berkeley Autonomous Race Car (BARC) platform.
