differentiable mpc

**Differentiable Model Predictive Control (Differentiable MPC)** is a **framework that embeds a Model Predictive Control optimization solver as a differentiable layer within a neural network, enabling end-to-end gradient-based learning of the dynamics model and cost function that drive the controller — combining MPC's constraint satisfaction and safe planning guarantees with deep learning's ability to learn complex system models from data** — making it possible to learn interpretable, physically-grounded control policies for robotics, autonomous vehicles, and industrial systems where constraint satisfaction is non-negotiable. **What Is Differentiable MPC?** - **MPC Background**: Model Predictive Control solves a finite-horizon optimization problem at each timestep — finding the sequence of K actions that minimizes a cost function subject to dynamics constraints, then executes only the first action and re-plans (receding horizon). - **Differentiable Extension**: By differentiating through the MPC optimization (using implicit differentiation or differentiable QP solvers), gradients of the task loss can flow backward through the entire control pipeline — updating the learned dynamics model and cost function jointly. - **Learning the Model**: Rather than manually engineering a physics model, the agent learns a neural dynamics model f(s, a) → s' that is used inside the MPC optimizer. - **Learning the Cost**: Rather than manually specifying the cost function, it can be learned from demonstrations or task reward — the optimizer finds the action sequence minimizing this learned cost. **Why Differentiability Matters** - **End-to-End Training**: The controller, dynamics model, and cost function can all be updated together with a single backward pass — standard autoML optimization replaces manual system identification. - **Safety by Design**: Unlike black-box neural policies, MPC enforces explicit state/action constraints at every step — critical for physical systems where constraint violation causes hardware damage or safety incidents. - **Interpretability**: The learned dynamics model is explicit and inspectable — engineers can examine what the system predicts and diagnose failure modes. - **Data Efficiency**: Physics priors encoded in the MPC structure reduce the amount of data needed to learn a competent controller compared to pure model-free methods. **Key Technical Approaches** **OptNet (Amos & Kolter, 2017)**: - Embeds quadratic programming (QP) solvers as differentiable layers via implicit differentiation through KKT conditions. - First general framework for differentiable constrained optimization in neural networks. - Foundation for differentiable MPC implementations. **DMPC (Amos et al., 2018)**: - Applies OptNet's QP differentiation to the MPC setting — linear dynamics with quadratic cost. - Demonstrated learning dynamics and cost from demonstrations with analytical gradients. **Neural MPC / CausalMPC**: - Replaces linear dynamics assumption with learned neural dynamics model. - Combines uncertainty-aware ensemble models with MPC for robust control under model error. **Applications** | Domain | Constraint Type | Advantage of Differentiable MPC | |--------|-----------------|--------------------------------| | **Robotic manipulation** | Joint limits, torque limits | Safe torque profiles from learned dynamics | | **Autonomous driving** | Road boundaries, collision avoidance | Multi-step safe trajectory planning | | **Chemical processes** | Safety bounds on temperature/pressure | Constraint satisfaction during learning | | **Legged locomotion** | Stability constraints | Dynamically consistent gait synthesis | Differentiable MPC is **the union of physics-aware planning and data-driven learning** — enabling AI systems that respect hard real-world constraints while continuously improving their understanding of complex dynamics from experience, bridging the gap between classical control theory and modern deep learning.

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account