Abstract:Tuning parameters in model predictive control (MPC) presents significant challenges, particularly when there is a notable discrepancy between the controller's predictions and the actual behavior of the closed-loop plant. This mismatch may stem from factors like substantial model-plant differences, limited prediction horizons that do not cover the entire time of interest, or unforeseen system disturbances. Such mismatches can jeopardize both performance and safety, including constraint satisfaction. Traditional methods address this issue by modifying the finite horizon cost function to better reflect the overall operational cost, learning parts of the prediction model from data, or implementing robust MPC strategies, which might be either computationally intensive or overly cautious. As an alternative, directly optimizing or learning the controller parameters to enhance closed-loop performance has been proposed. We apply Bayesian optimization for efficient learning of unknown model parameters and parameterized constraint backoff terms, aiming to improve closed-loop performance of battery fast charging. This approach establishes a hierarchical control framework where Bayesian optimization directly fine-tunes closed-loop behavior towards a global and long-term objective, while MPC handles lower-level, short-term control tasks. For lithium-ion battery fast charging, we show that the learning approach not only ensures safe operation but also maximizes closed-loop performance. This includes maintaining the battery's operation below its maximum terminal voltage and reducing charging times, all achieved using a standard nominal MPC model with a short horizon and notable initial model-plant mismatch.
Abstract:Model-based optimization approaches for monitoring and control, such as model predictive control and optimal state and parameter estimation, have been used for decades in many engineering applications. Models describing the dynamics, constraints, and desired performance criteria are fundamental to model-based approaches. Thanks to recent technological advancements in digitalization, machine learning methods such as deep learning, and computing power, there has been an increasing interest in using machine learning methods alongside model-based approaches for control and estimation. The number of new methods and theoretical findings using machine learning for model-based control and optimization is increasing rapidly. This paper outlines the basic ideas and principles behind an easy-to-use Python toolbox that allows to quickly and efficiently solve machine-learning-supported optimization, model predictive control, and estimation problems. The toolbox leverages state-of-the-art machine learning libraries to train components used to define the problem. It allows to efficiently solve the resulting optimization problems. Machine learning can be used for a broad spectrum of tasks, ranging from model predictive control for stabilization, setpoint tracking, path following, and trajectory tracking to moving horizon estimation and Kalman filtering. For linear systems, it enables quick code generation for embedded MPC applications. HILO-MPC is flexible and adaptable, making it especially suitable for research and fundamental development tasks. Due to its simplicity and numerous already implemented examples, it is also a powerful teaching tool. The usability is underlined, presenting a series of application examples.