Model predictive control (MPC) is a powerful control strategy where control actions are computed by optimizing a cost function which is chosen in order to achieve a control task. Constraints on states, inputs and outputs can be seamlessly incorporated into such a framework. When the system dynamics is linear, the constraints are affine and the cost functions are quadratic, the associated optimization problem is a quadratic program. There exists a mature machinery of convex optimization algorithms [1]}, [2]} which are fast, robust and possess global convergence guarantees which can be used to solve these problems.
