  Distributed model predictive control (MPC) is either cooperative or
competitive, and control-theoretic properties have been less studied in the
competitive (e.g., game theory) setting. This paper studies MPC with linear
dynamics and a Stackelberg game structure: Given a fixed lower-level linear MPC
(LoMPC) controller, the bilevel linear MPC (BiMPC) controller chooses inputs to
steer LoMPC knowing that LoMPC is optimizing with respect to a different cost
function. After defining LoMPC and BiMPC, we give examples to demonstrate how
interconnections in a dynamic Stackelberg game can lead to loss/gain (as
compared to the same system being centrally controlled) of controllability or
stability. Then, we give sufficient conditions under an arbitrary finite MPC
horizon for stabilizability of BiMPC, and develop an approach to synthesize a
stabilizing BiMPC controller. Next, we define two (a duality-based technique
and an integer-programming-based technique) reformulations to numerically solve
the optimization problem associated with BiMPC, prove equivalence of these
reformulations to BiMPC, and demonstrate their useful by simulations of a
synthetic system and a case study of an electric utility changing electricity
prices to perform demand response of a home's air conditioner controlled by a
linear MPC.
