We have so far introduced how MPC works with linear systems. Now let us show three important variants of MPC that can be applied to other types of systems.
Nonlinear Model Predictive Control (NMPC) [5]: For nonlinear systems, if it is easy to linearize the system at multiple points, linear MPC can still be adopted. However, if the linearization is difficult, then the true nonlinear system should be considered as the prediction model. With true nonlinear systems, the solution to nonlinear optimal control problems and the stability guarantee are both posed with more challenges. While dynamic programming, as a classical solution to linear optimal control problems, also applies to nonlinear cases, it is not applicable for solving NMPC in practice. Instead, other numerical optimization methods are typically adopted for NMPC due to their computational efficiency.
Robust Model Predictive Control (RMPC) [6]: When the system is uncertain, RMPC needs to be introduced to mitigate the influence of uncertainties and give guarantees for the closed-loop performance. There are mainly two approaches for RMPC:
Deterministic approach: In this approach, the decision is made only for a known (sub)set of the uncertainty. When the whole uncertainty set is taken, it is the worst case MPC, which is somewhat unnecessarily conservative; then if a designed subset of uncertainty is taken, it is the budgeted worst case MPC, which is less conservative and gives more freedom to the designer.
Stochastic approach: This approach considers the uncertainties as stochastic variables, which are then again reformulated as deterministic metrics in different treatments, including taking the moment, using probabilistic constraints, and sampling the uncertain space.
Learning-Based Model Predictive Control (LB-MPC) [7]: LB-MPC is a comparatively newly invented variant of MPC which leverages machine learning and data-driven techniques to improve the control performance. Recent results on LB-MPC have shown great potential in producing high-performance control systems and reducing modelling difficulties for controller design, yet there is still great space for further research on the systematic theory framework and reliable applications for complex systems. Learning techniques can be utilized here for improving multiple goals, mainly in two aspects:
Learning the system dynamics: Since the model accuracy is of vital importance for model-based control method, many LB-MPC research efforts have been focusing on improving the prediction model for MPC, such as performing accurate system identification and complicated modelling for changing system dynamics (like aging actuators). Many model adaptation and system identification techniques here make use of results from RMPC and other stochastic methods.
Learning the controller design: Besides the system model, the constraints and cost function are also critical to the performance of MPC. In this category, Bayesian optimization is used to optimize the cost function as a mapping from the controller parameters, and the learning from demonstration can also be performed with inverse optimal control.
Since it performs receding horizon control while also handling multiple constrains, MPC can serve as a powerful tool in many robotic applications:
Control and planning in dynamic environments: As the basic application of MPC, this category includes control and/or planning for robots, vehicles, process industries, and even aircrafts. Specifically, a system needs to deal with a dynamic map and changing constraints when working in a dynamic environment [8]. While control strategies like LQR focus on a fixed horizon and are inflexible to changing constraints, MPC can adapt to the changing scenarios as it formulates an optimization problem at every small time step. For each optimization problem, both the dynamic map and changing constraints become "static" and hence are easier to handle. However, although MPC is able to handle environmental changes very well by setting a suitably small time step, it is at a cost of more computational efforts.
Collision avoidance: With the ability of incorporating multiple constraints in control policy optimization, MPC can realize collision avoidance in a straightforward manner: first develop a constraint which encodes the collision avoidance, and then incorporate it into the optimization problem [9].
Safe learning: There are recently more and more learning-based control methods emerging to address various uncertainties/difficulties in typical control routine. However, these learning-based methods may not be able to guarantee safety, especially before the learning process converges. To address this issue, LB-MPC can serve as a safety filter which provides a safety guarantee before the learning-based control signal applies to the plant [10].
Although equipped with all these satisfying features and wide applications, MPC still has some drawbacks and many open problems are waiting to be addressed:
High computational efforts: Since MPC needs to be solved in a repeated fashion, a high-quality real-time solution should be very demanding to the computational efforts, which may not be accessible to those robots with limited energy/on-board computational efforts [3]. Implementing computationally-efficient high-quality MPC is doomed to be an important issue for a wider application of this technique.
Industrial implementation of RMPC: Because MPC requires high computational efforts to solve, and the methods of RMPC are still not clear and easy enough for operators to work with, this approach is not applied to the process industry yet [6]. Hence, more future research efforts should be focused on realizing RMPC in this industry.
Active learning for LB-MPC: As a newly-emerging variant, LB-MPC leverages learning techiques to improve the closed-loop behavior of the system. The research efforts till now mainly focus on passive learning, because the exact solution of active learning scheme and dual control (simutaneous identification and control of systems) are still computationally intractable [11]. Future research efforts should focus more on the realization of the latter two schemes maybe using more approximation methods.