Robust Model Predictive Control (Robust-MPC)

C. Nilesh Suriyarachchi & M. Faizan Tariq


Model predictive control is an optimized predictive control algorithm that runs an optimization procedure at every timestep to determine future control inputs while only applying the immediate control to the system. The Robust variant of the MPC algorithm allows for model uncertainties and unmeasured disturbances, which can lead to constraint infeasibility and instability in case of a nominal MPC. Robust MPC is used to find the optimal inputs recursively based on predicted future states such that the stability, state and input constraints are satisfied at all future times under bounded model disturbances and noise.

The diagram in Fig. 1, taken from [1], outlines the working of a Robust-MPC algorithm. It is assumed that the plant model is not known with absolute accuracy and we have some model uncertainties. Based on the type of uncertainty, we have to solve an optimization problem comprising of future inputs and future predicted states (detailed below) at every time step to come up with the control law for a control horizon. However, instead of applying the control inputs predicted for the entire control horizon, only the immediate input is applied and the optimization problem is solved again at the next time step. The difference between a nominal MPC and a robust MPC is that the optimization problem to be solved in Robust MPC is dependent on the performance required from the model under the given description of the uncertainty.

Fig. 1: Basic MPC Structure [1]

Formal Definition

In order to formally define Robust-MPC, a formal definition of Model Predictive Control (MPC) is first required[1]. For a given discrete-time model of a plant:

Also, let x(t+k|t) denote the prediction obtained by iterating the model k times from the current state.

Then the MPC algorithm can be defined as the following iterative steps:

  1. At time step k, get the current state

  2. Solve the optimization problem defined below

  3. Apply only u(t+0|t)

  4. t t+1

The optimization problem in step 2 is defined as follows:

The stability constraints here can take the form of terminal constraints, invariant terminal set, contraction constraint etc. [1]

With the MPC problem defined, the formulation can be extended to a Robust-MPC as follows. Firstly, the plant model is modified has to be modified as follows:

This is because in the simple MPC formulation, we assumed that we know the model of the plant accurately i.e. there are no unknown disturbances affecting the system. This assumption has to be dropped and we can either go through the route of assuming that the plant model is randomly selected from a family of LTI systems (not covered in this discussion) or we could go through the route of adding an unmeasured noise to the system as in the formulation above. The robustness of MPC is defined in terms of the control law satisfying constraints and yielding a good performance for all w(t) ε W.

Overview of Key Results

In order to discuss key results, a give rigorous description to the uncertainty labeled as set W in the previous section needs to be given. In the literature [1], various different uncertainties have been considered such as uncertainty in impulse/step-response, structured feedback uncertainty, multi-plant uncertainty, polytopic uncertainty and bounded input disturbances. Depending on the type of uncertainty one considers, the solution method to the optimization problem varies. Based on the description to the uncertainty, the major concerns that arise in the synthesis for the Robust-MPC control law are as follows:

    • Optimizing performance and enforce constraints for nominal (without uncertainty) or robust (with uncertainty) model

    • Open-loop or closed-loop prediction scheme

    • How to guarantee robust stability

Based on the considerations above, various methods for solving the Optimization problem for Robust-MPC have been proposed which lead to different variants of Robust-MPC. The different variants are listed in Section 5. For a wide range of uncertainty models, Kothare et al. [2] design, at each time step, a state-feedback control law that minimizes a ‘worst-case’ infinite horizon objective function, subject to input and output constraints.

Relation to Decision Making for Robotics

In most Robotics applications, some of which are discussed in Section 6, it is of paramount importance to guarantee safety while satisfying some constraints on system inputs and states. Traditional feedback control schemes do not allow for these considerations while model-based schemes ignore the model uncertainties and unmeasured disturbances. Whether it be an autonomous vehicle, an airplane, an industrial robot or a nuclear reactor, the controlling agent needs to make decisions with highest emphasis placed on safety and system limitations in the presence of uncertainties. If, for instance, these uncertainties are not taken into account, and a control input is demanded from the controller which it cannot produce due to physical limitations or otherwise, the system output can deviate off the reference trajectory resulting in catastrophic outcomes.

One of the objections towards naive learning-based methods for decision making is that they do not have any theoretical guarantees on safety. That is why current research in the area of autonomous vehicles [3] is shifting towards methods derived from Robust-MPC in order to have guarantees on safety and performance under model uncertainties. Tom et. al. in [3] use a combination of potential-fields and reachability sets to identify safe zones for the vehicle, during high-speed overtaking, which are passed to a tube-based robust MPC as constraints to generate feasible trajectories for the vehicle. This guarantees that the decision making module satisfies safety guarantees during high-speed overtaking maneuver.

Variations of Robust MPC

Many different variations exist on how to go about solving a Robust MPC problem. The choice of which method to use will depend on the parameters of the problem at hand such as, length of planning horizon, number of uncertainties and magnitude of disturbances.

Some key variations are,

  1. Constraint Tightening MPC: Involves the monotonic tightening of the constraints in the system, in order to identify a predetermined candidate correction policy which would be feasible for all possible disturbances [4]. Guarantees convergence for a constrained linear system with bounded disturbances. The use of a range of nilpotent candidate policies, which leads to the elimination of the requirement for computation of a robustly invariant terminal constraint set is a key advantage of this method.

  2. Min-max MPC: This method leverages the use feedback and takes into account the effects of possible future disturbances [5]. However, as optimization is performed for all possible future disturbance possibilities, this method can be very computationally expensive. Due to this cost this method is mostly suited for problems with short planning horizons.

  3. Tube MPC: This is an online feedback method, that solves an optimal control problem to obtain a ‘tube’ of possible trajectory variations [6]. A piecewise affine control law is also generated to maintain the controlled trajectories in the aforementioned tube despite uncertainty.

  4. Multi-stage MPC: This method works by approximating the uncertainty space with the use of a scenario-tree formulation. Due to the fact that the method uses measurement information at all time stages for prediction, this leads to the reduction in the effect of uncertainties because the decisions made at each stage may differ. Therefore this is a non-conservative method. Unfortunately, this method can be very computationally expensive for problems with a large number of uncertainties and long prediction horizon which causes the size of the problem to grow exponentially [7]. To combat this issue in new approaches, thereby ensuring the reasonableness of the uncertain variables and scenario tree number, a Monte Carlo-based second-order nonlinear model and K-means cluster algorithm have been used [8].


As most real world problems are subject to disturbances from external factors such as noise and model uncertainties, robust MPC is far more widely applicable in practical scenarios than standard MPC. Some interesting applications of Robust MPC are as follows,

Semi-batch polymerization is a very important process in chemical and petroleum processing industries. These reactors need to use Robust MPC since the model of the system has many uncertainties [8]. Many features of the

Another key area with many uncertainties in the model is in renewable energy generation. An interesting application is the use of Robust MPC in renewable hydrogen-based microgrids [9]. In this case model unpredictability caused by environmental changes and instabilities in generation can cause the actual conditions to differ from the model of the system.

The use of Robust MPC for path planning in autonomous vehicles is another interesting application domain. This is used for both trajectory generation [10], car following and even high speed overtaking [11]. Motion planning for autonomous vehicles is a domain which has a lot of uncertainties in planning, which stem from the difficulty in obtaining an accurate model representation of the system. Disturbances to the system are caused by many factors such as environment conditions, traction levels and even individual vehicle conditions.

Open research problems

In the application domain there are many fields in which standard model predictive control has been applied. A large selection of this work can be improved with the use of Robust MPC algorithms. Many real world problems have systems which cannot be modeled accurately. Furthermore it is very difficult to predict the level of input noise and disturbances a system could face. Any control system in which the output may be affected by input disturbances is a candidate for robust MPC. Some areas which would benefit from robust MPC and are yet to be explored include, complex UAV maneuvering, advanced manufacturing control, safety guarantees in autonomous vehicle path planning and motion planning in multi armed robots.

A major disadvantage in most modern Robust MPC algorithms is the exponential complexity growth caused by larger planning horizons and increased magnitude of disturbances. Many modern Robust MPC variants attempt different methods in order to reduce this growing complexity. Some work by reducing the computation steps needed while others focus on careful selection of maximum disturbances in order to reduce any unnecessary excess planning. However, there is no definitively superior method which can guarantee constraint satisfying convergence while maintaining scalable low computation needs. While much effort has been made in this direction it still remains an open problem.


[1] Bemporad, A., & Morari, M. (1999). "Robust model predictive control: A survey". In Robustness in identification and control (pp. 207-226). Springer, London.

[2] Kothare, M.V., V. Balakrishnan and M. Morari (1996). Robust constrained model predictive control using linear matrix inequalities. Automatica 32(10), 1361– 1379

[3] S. Dixit et al., "Trajectory Planning for Autonomous High-Speed Overtaking in Structured Environments Using Robust MPC," in IEEE Transactions on Intelligent Transportation Systems, vol. 21, no. 6, pp. 2310-2323, June 2020, doi: 10.1109/TITS.2019.2916354.

[4] Richards, A.; How, J. (2006). "Robust stable model predictive control with constraint tightening". Proceedings of the American Control Conference.

[5] Scokaert, P.O.M.; Mayne, D.Q. (1998). "Min-max feedback model predictive control for constrained linear systems". IEEE Transactions on Automatic Control. 43 (8): 1136–1142.

[6] Richards, A.; How, J. (2006). "Robust stable model predictive control with constraint tightening". Proceedings of the American Control Conference.

[7] Lucia, Sergio; Finkler, Tiago; Engell, Sebastian (2013). "Multi-stage nonlinear model predictive control applied to a semi-batch polymerization reactor under uncertainty". Journal of Process Control. 23 (9): 1306–1319.

[8] J. Sun, W. Yuan, R. Xue and M. Wang, "An improved multi-stage nonlinear model predictive control with application to semi-batch polymerization," 2019 12th Asian Control Conference (ASCC), Kitakyushu-shi, Japan, 2019, pp. 1060-1065.

[9] P. Velarde, J. M. Maestre, C. Ocampo-Martinez and C. Bordons, "Application of robust model predictive control to a renewable hydrogen-based microgrid," 2016 European Control Conference (ECC), Aalborg, 2016, pp. 1209-1214

[10] Z. Zuo, X. Yang, Z. Zhang and Y. Wang, "Lane-Associated MPC Path Planning for Autonomous Vehicles," 2019 Chinese Control Conference (CCC), Guangzhou, China, 2019, pp. 6627-6632

[11] L. Tang, F. Yan, B. Zou, K. Wang and C. Lv, "An Improved Kinematic Model Predictive Control for High-Speed Path Tracking of Autonomous Vehicles," in IEEE Access, vol. 8, pp. 51400-51413, 2020