L4acados: Learning-based models for acados, applied to Gaussian process-based predictive control
For researchers and practitioners in control and robotics, L4acados provides a practical framework to deploy learning-based MPC in real-time systems, addressing a key bottleneck in interfacing ML with optimal control software.
L4acados enables efficient integration of learning-based models (e.g., neural networks, Gaussian processes) into real-time MPC by computing external sensitivities in sequential quadratic programming solvers. It achieves significant speed-ups and superior scaling compared to existing software, demonstrated on hardware examples including autonomous miniature racing and full-scale vehicle motion control.
Incorporating learning-based models, such as artificial neural networks or Gaussian processes, into model predictive control (MPC) strategies can significantly improve control performance and online adaptation capabilities for real-world applications. Still, enabling state-of-the-art implementations of learning-based models for MPC is complicated by the challenge of interfacing machine learning frameworks with real-time optimal control software. This work aims at filling this gap by incorporating external sensitivities in sequential quadratic programming solvers for nonlinear optimal control. To this end, we provide L4acados, a general framework for incorporating Python-based dynamics models in the real-time optimal control software acados. By computing external sensitivities via a user-defined Python module, L4acados enables the implementation of MPC controllers with learning-based residual models in acados, while supporting parallelization of sensitivity computations when preparing the quadratic subproblems. We demonstrate significant speed-ups and superior scaling properties of L4acados compared to available software using a neural-network-based control example. Last, we provide an efficient and modular real-time implementation of Gaussian process-based MPC using L4acados, which is applied to two hardware examples: autonomous miniature racing, as well as motion control of a full-scale autonomous vehicle for an ISO lane change maneuver.