TinyMPC: Model-Predictive Control on Resource-Constrained Microcontrollers

Khai Nguyen,Sam Schoedel,Anoushka Alavilli,Brian Plancher,Zachary Manchester
2024-05-08
Abstract:Model-predictive control (MPC) is a powerful tool for controlling highly dynamic robotic systems subject to complex constraints. However, MPC is computationally demanding, and is often impractical to implement on small, resource-constrained robotic platforms. We present TinyMPC, a high-speed MPC solver with a low memory footprint targeting the microcontrollers common on small robots. Our approach is based on the alternating direction method of multipliers (ADMM) and leverages the structure of the MPC problem for efficiency. We demonstrate TinyMPC's effectiveness by benchmarking against the state-of-the-art solver OSQP, achieving nearly an order of magnitude speed increase, as well as through hardware experiments on a 27 gram quadrotor, demonstrating high-speed trajectory tracking and dynamic obstacle avoidance. TinyMPC is publicly available at <a class="link-external link-https" href="https://tinympc.org" rel="external noopener nofollow">this https URL</a>.
Robotics,Systems and Control,Optimization and Control
What problem does this paper attempt to address?