Autonomous Control and Decision Systems Laboratory
Georgia Institute of Technology
†Equal Contribution
Sampling-based model predictive control methods like MPPI and CEM are essential for real-time control of nonlinear robotic systems, particularly where discontinuous dynamics preclude gradient-based optimization. However, these methods derive from information-theoretic objectives that are agnostic to the geometry of the control problem, leading to pathological behaviors such as mode-averaging when the cost landscape is complex. We present OT-MPC, a sampling-based algorithm that overcomes these limitations through an entropy-regularized optimal transport formulation. By computing an optimal coupling between candidate control sequences and low-cost proposals, OT-MPC refines candidates toward nearby promising samples while coordinating updates across the ensemble to maintain coverage of the solution space. We derive closed-form, gradient-free updates via the Sinkhorn algorithm, enabling real-time performance. Experiments on navigation, manipulation, and locomotion tasks demonstrate improved success rates over existing methods.
| Task | Controller | Success (%) | Avg. Steps |
|---|---|---|---|
| Car Obstacle Easy | OT-MPC | 99.00 | 76.1 ± 21.6 |
| MPPI | 95.00 | 57.2 ± 5.7 | |
| CEM | 70.00 | 79.5 ± 15.2 | |
| SV-MPC | 93.00 | 84.8 ± 22.4 | |
| Car Obstacle Hard | OT-MPC | 93.50 | 89.5 ± 33.8 |
| MPPI | 88.50 | 61.7 ± 24.4 | |
| CEM | 56.00 | 82.8 ± 14.5 | |
| SV-MPC | 78.50 | 105.0 ± 46.2 | |
| 2D Push-T | OT-MPC | 76.00 | 33.08 ± 11.35 |
| MPPI | 4.00 | 83.0 ± 1.0 | |
| CEM | 46.00 | 47.26 ± 19.95 | |
| SV-MPC | 0.00 | — | |
| Franka Push-T | OT-MPC | 66.00 | 52.67 ± 35.03 |
| MPPI | 64.00 | 46.69 ± 17.87 | |
| Quad. Obstacle Easy | OT-MPC | 100.00 | 119.7 ± 19.9 |
| MPPI | 100.00 | 93.6 ± 9.3 | |
| Quad. Obstacle Medium | OT-MPC | 100.00 | 159.6 ± 33.3 |
| MPPI | 60.00 | 127.4 ± 23.3 | |
| Quad. Obstacle Hard | OT-MPC | 92.00 | 217.8 ± 56.6 |
| MPPI | 19.00 | 147.4 ± 13.6 | |
| Two Quad. Carry Normal | OT-MPC | 91.00 | 143.93 ± 27.28 |
| MPPI | 22.00 | 371.45 ± 44.65 | |
| Two Quad. Carry Hard | OT-MPC | 75.00 | 202.13 ± 89.75 |
| MPPI | 10.00 | 369.2 ± 42.22 |
Table I: Benchmark results comparing OT-MPC with various control schemes on a variety of robotics control tasks.
| Task | Controller | Avg. Steps | Median Goal Dist. |
|---|---|---|---|
| Go2 Locomotion | OT-MPC | 427.8 ± 89.06 | 0.205 |
| MPPI | 799.2 ± 150.72 | 0.249 | |
| Go2 Box Pushing | OT-MPC | 101.0 ± 23.0 | 0.084 |
| MPPI | 124.9 ± 65.4 | 0.16 |
Table II: Results of Go2 quadruped locomotion tasks.
| Environment | Time / Iter. (milliseconds) | Wall Clock (milliseconds) | ||
|---|---|---|---|---|
| MPPI | OT-MPC | MPPI | OT-MPC | |
| Car | 3.07 | 4.73 | 24.57 | 27.81 |
| 2D Push-T | 1.44 | 0.95 | 5.75 | 15.12 |
| Quadrotor | 67.6 | 26.6 | 338.0 | 133.0 |
| Two Quad Carry | 23.1 | 12.4 | 230.7 | 99.1 |
Table III: Computation times for JAX-vectorized environments. Each method uses its Optuna-tuned sample count (e.g., Quadrotor: MPPI uses 2000 proposals; OT-MPC uses 200).
| Environment | OT-MPC Overhead (milliseconds) |
|---|---|
| Franka Push-T | 1.6 |
| Go2 | 0.2 |
Table IV: Per-iteration OT-MPC overhead over MPPI for MuJoCo environments (Sinkhorn solve + barycentric update).
If you find this work useful, please cite our paper: