🤖 AI Summary
This work addresses the real-time limitations of traditional model predictive control (MPC) in fast-dynamic, high-dimensional, or long-horizon scenarios, where online optimization becomes computationally prohibitive and existing GPU implementations suffer from frequent kernel launches and high-latency memory transfers. The authors propose a GPU-native MPC solver that co-designs the optimization algorithm and hardware execution model. By parallelizing temporal-domain ADMM splitting, fusing CUDA kernels, storing intermediate variables in shared memory, and employing localized atomic synchronization, the framework enables end-to-end on-device iterative solving. Evaluated on six nonlinear robotic benchmarks, it supports prediction horizons one to two orders of magnitude longer than CPU solvers while maintaining real-time performance. In a 100-second lookahead obstacle-avoidance parking task, it solves within 0.1 seconds and demonstrates, for the first time, centralized collision-free coordination of a ten-robot swarm—achieving a 965× speedup over tensor-based frameworks.
📝 Abstract
Model Predictive Control (MPC) delivers constraint-aware control, but its reliance on online optimization limits its use on systems with fast dynamics, high-dimensional models, or long horizons. Existing GPU implementations typically treat the device as a linear-algebra accelerator, leaving the optimization loop dependent on repeated kernel launches and high-latency memory transfers. This paper introduces CUDA MPC, a GPU-native MPC framework that co-designs the optimization algorithm, execution model, and memory architecture for CUDA hardware. CUDA MPC pairs a parallel-in-horizon alternating direction method of multipliers (ADMM) splitting with a fused CUDA kernel that runs the entire iterative solve on the device. Intermediate optimization variables stay in low-latency, on-chip shared memory, and a localized atomic-flag protocol synchronizes only adjacent horizon blocks, minimizing host intervention, kernel-dispatch overhead, and global-memory traffic. Across six nonlinear robotics benchmarks spanning increasing state dimension and constraint density, CUDA MPC sustains real-time rates at horizons one to two orders of magnitude longer than CPU solvers: it solves an optimization-based collision-avoidance parking problem with 100 s of lookahead within a 0.1 s sampling interval, and is the only solver evaluated that achieves both real-time execution and collision-free coordination for a centralized 10-agent swarm, where acados and CasADi return no feasible solution and require 3.5 s and 4.5 s per solve. Against tensor-framework implementations of the same ADMM splitting, the fused kernel is up to $965\times$ faster.