Research map / Learning theory and algorithms / Combinatorial and search optimization
Differentiable Nonlinear Model Predictive Control
Read the paperCheck your idea against 108,967 papers
AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.
Derives NLP solution sensitivities via the implicit function theorem on smoothed interior-point KKT conditions inside an IP-based SQP solver, and implements forward and adjoint sensitivities for optimal control problems in acados, reporting speedups over mpc.pytorch and cvxpygen.
Problem
Computing parametric solution sensitivities of general nonlinear programs and nonlinear MPC problems efficiently, which learning algorithms need, while existing ML approaches are limited to convex/unconstrained problems or lack efficient implementations.
Approach
Uses IFT on smoothed (barrier-parameter) interior-point KKT conditions within an SQP method with an IPM QP solver, requires the exact Hessian in the sensitivity solve, and reuses the Riccati factorization from the QP solver to get both forward and adjoint sensitivities for OCP-structured NLPs in acados, with a two-solver (nominal plus sensitivity) approach.
Key results
- On bounded LQR batches with umax=1e4, acados solves with adjoint sensitivities in 34.5 ms vs 125 ms for mpc.pytorch (3.6x) and 658 ms for cvxpygen (19x).
- For umax=1.0, acados nominal solve takes 17.6 ms vs 21024 ms for mpc.pytorch (about 1200x), since mpc.pytorch's iLQR fails to converge consistently.
- On the pendulum OCP, sensitivities from acados with tau_min=0 match finite differences, while IFT with a Gauss-Newton Hessian gives completely wrong sensitivities.
Surprising findings
- Using a Gauss-Newton Hessian approximation in the sensitivity computation gives highly degraded, essentially incorrect sensitivities, so the exact Lagrangian Hessian is required.
- mpc.pytorch on GPU shows no significant speedup over its CPU version for the benchmark.
Limitations
- Implementation is CPU-only, written in C with minimal dependencies for embedded deployment; no GPU support.
- Dynamics must be provided in discrete form; acados integrators do not yet support parametric sensitivities.
- Sensitivities are not differentiable at active-set changes; smoothing with tau_min>0 is needed for smooth approximations.
Experimental setup
Benchmarks: bounded LQR batch problems (N=20, nx=8, nu=4, ntheta=248) pendulum-on-cart parametric OCP chain of masses OCP (nmass=3)
Metrics: wall-clock runtime (ms) speedup factor vs baselines agreement with finite differences
Baselines: mpc.pytorch cvxpygen OSQP finite differences Gauss-Newton IFT sensitivities
Builds on: acados HPIPM sIPOPT cvxpylayers IPOPT
Closest papers by meaning
- IPM-LSTM: A Learning-Based Interior Point Method for Solving Nonlinear Programs (NeurIPS 2024 · similarity 0.86)
- Constrained Optimization From a Control Perspective via Feedback Linearization (NeurIPS 2025 · similarity 0.83)
- DiLQR: Differentiable Iterative Linear Quadratic Regulator via Implicit Differentiation (ICML 2025 · similarity 0.83)
- Physics-Informed Neural Network Policy Iteration: Algorithms, Convergence, and Verification (ICML 2024 · similarity 0.83)
- Differentiation Through Black-Box Quadratic Programming Solvers (NeurIPS 2025 · similarity 0.83)
- A Differentiable Interior-Point Method in Single Precision (NeurIPS 2026 · similarity 0.82)
Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.
