  Mixed-integer model predictive control (MI-MPC) requires the solution of a
mixed-integer quadratic program (MIQP) at each sampling instant under strict
timing constraints, where part of the state and control variables can only
assume a discrete set of values. Several applications in automotive, aerospace
and hybrid systems are practical examples of how such discrete-valued variables
arise. We utilize the sequential nature and the problem structure of MI-MPC in
order to provide a branch-and-bound algorithm that can exploit not only the
block-sparse optimal control structure of the problem but that can also be warm
started by propagating information from branch-and-bound trees and solution
paths at previous time steps. We illustrate the computational performance of
the proposed algorithm and compare against current state-of-the-art solvers for
multiple MPC case studies, based on a preliminary implementation in MATLAB and
C code.
