IROS 2026

Differentiable Dynamics for Autonomous Micro-Mobility Navigation

1University of Maryland, College Park
*Corresponding author: glcai@umd.edu

Overview Video

Open-loop trajectory matching on IMPTC, closed-loop pedestrian crowd navigation with DiffMPC, and generalization of DiffGM3 across micro-mobility vehicle types.

Abstract

Autonomous micro-mobility vehicles (MMVs) such as wheelchairs, scooters, and bicycles have the potential to improve mobility access and support safe low-speed transportation in pedestrian-shared spaces. Achieving MMV autonomy will require realistic, predictable MMV motion. However, many existing autonomous vehicle stacks rely on simplified kinematic models that fail to capture key MMV characteristics such as tire slip, friction, and wheel layouts, limiting realism and gradient-based optimization. In this paper, we explore differentiable formulations of dynamics models for autonomous micro-mobility systems. We first construct DiffKBM, a differentiable version of the classical kinematic bicycle model (KBM). Then, we introduce DiffGM3, a differentiable formulation of the General Micro-Mobility Model (GM3), a unified tire-based dynamics formulation for micro-mobility vehicles that supports a wide range of MMV configurations. DiffKBM and DiffGM3 enable end-to-end differentiable optimization through MMV dynamics, making them suitable for integration into differentiable autonomy stacks. We evaluate these dynamics models in both open-loop and closed-loop settings: (1) open-loop trajectory matching, where DiffKBM and DiffGM3 are integrated as a dynamics layer within DiffStack and optimized to reproduce real-world MMV trajectories, and (2) closed-loop autonomous navigation, where DiffKBM and DiffGM3 are paired with a differentiable model predictive control (MPC) controller in CrowdNav pedestrian scenarios. In the open-loop setting, DiffGM3 outperforms DiffKBM in reproducing trajectories with improvements in ADE and NLL across bicycle, scooter, and motorcycle modes, and reductions in planning loss for bicycle and motorcycle trajectories. We also find that, in closed-loop settings, DiffGM3 improves on DiffKBM's CrowdNav performance by producing 55% fewer collisions and a 75% lower discomfort frequency for the bicycle mode.

−55%

Collisions in closed-loop crowd navigation (bicycle)

−75%

Discomfort frequency versus DiffKBM (bicycle)

−9.8%

Open-loop ADE on scooter trajectories

−28.9%

Planning loss on motorcycle trajectories

Differentiable Micro-Mobility Dynamics

Both the KBM and GM3 consist of equations that are almost fully differentiable. By reformulating them as DiffKBM and DiffGM3, we can compute the gradient of a downstream training objective with respect to upstream physical parameters, so an entire autonomy stack can be optimized jointly with gradient descent.

With a trajectory-matching objective over a predicted trajectory $\hat{Y}$ and ground truth $Y$, each physical parameter $\rho_i$ of the dynamics model is updated by backpropagating through the rollout:

\[ \begin{aligned} \mathcal{L}_{\text{ADE}} &= \frac{1}{T} \sum_{t=1}^{T} \left\lVert \hat{y}_t - y_t \right\rVert_2 \\[6pt] \rho_i &\leftarrow \rho_i - \eta \, \frac{\partial \mathcal{L}_{\text{ADE}}}{\partial \rho_i} \end{aligned} \]
DiffGM3 module diagram showing steering, load transfer, lean, tire brush model, vehicle integration, and Euler integration with gradient flow

DiffGM3 contains several differentiable components with learnable parameter sets $\rho_{\text{lean}}$, $\rho_{\text{tire}}$, and $\rho_{\text{VI}}$. The steering input $\delta$ is converted into tire-specific angles $\delta_i$, which together with body velocities and yaw rate give tire velocities; accelerations drive load transfer, and the previous lean angle and roll rate determine the next lean angle. These feed the tire brush model, whose forces and moments are integrated into vehicle dynamics and finally into position via Euler integration. Gradients backpropagate to every module so parameters can be tuned on MMV trajectory data.

Smoothing the Brush Model

GM3's longitudinal force, lateral force, and aligning moment are discontinuous at the adhesion–sliding boundary, and the sign function kills gradients entirely. We replace the hard switch with a sigmoid gate, the sign function with $\tanh(k\alpha)$, and absolute values with a softened norm.

\[ G(\sigma, \psi) = \frac{1}{1 + e^{-k\left(\sigma - \frac{1}{\psi}\right)}} \]

The gate steepness $k$ acts as a temperature. The resulting worst-case force error decays with $(1/k)^3$, so the smoothed model is the exact model plus a small bounded disturbance — and receding-horizon MPC re-plans from the measured state each step, so the mismatch cannot accumulate.

Differentiable Steering

The Ackermann steering formula for double-track vehicles has a singularity at $\delta = 0$. We instead compute each tire angle directly from the input steering angle and the tire's lateral position $y_i$:

\[ \delta_i = \arctan\left( \frac{L \tan \delta}{L - y_i \tan \delta} \right) \]

Steering is soft-clamped with $\tanh$ to a physically feasible range, and a damping factor $d_{\text{yaw}}$ stabilizes the turning dynamics:

\[ \dot{r} = \frac{M_z^{\text{total}}}{I_z} - d_{\text{yaw}} \, r \]

Differentiable Lean

Rather than an instantaneous equilibrium lean angle, DiffGM3 treats roll as a true degree of freedom governed by a second-order model around the ground contact point:

\[ I_x \ddot{\gamma} + d_{\text{roll}} \dot{\gamma} + m g h_{\text{cg}} \sin \gamma = m a_y h_{\text{cg}} \cos \gamma \]

Soft clamping keeps $\partial \gamma_{\text{out}} / \partial \gamma_{\text{in}}$ from vanishing, so the optimizer can recover even if the vehicle "falls over" during a training epoch.

Learnable Parameters

DiffGM3 learns physical parameters that are difficult to measure directly, calibrated on 30 IMPTC trajectories via DiffMPC trajectory tracking:

  • Body: align gain $k_{\text{align}}$, damping $d_{\text{yaw}}$ and $d_{\text{roll}}$, moments of inertia $I_z$, $I_x$
  • Tires (each wheel): friction coefficient $\mu$, tread stiffness $c_p$, half contact length $\ell$

Because low-speed intersection maneuvers keep tires in the adhesion regime, friction-dominated parameters are only weakly excited; all parameters are soft-clamped to physically feasible ranges with $\tanh$, acting as an implicit prior.

DiffKBM diagram showing wheelbase as a learnable parameter feeding steering and Euler integration

DiffKBM (baseline) implements wheelbase $L$ as a learnable parameter in the steering component. The turning rate and velocity are integrated with Euler steps to obtain position, making the classical KBM end-to-end differentiable so $L$ can be tuned for an MMV with unknown wheelbase.

Open-Loop Trajectory Matching on IMPTC

We replace the dynamically-extended unicycle model in DiffStack with DiffKBM and DiffGM3 and train the stack to reproduce real-world MMV trajectories from the Infrastructural Multi-Person Trajectory and Context (IMPTC) dataset, which contains everyday public road traffic collected under varied weather conditions. Because our formulations are differentiable, gradients backpropagate through the control cost and on to the prediction module. We sample planning scenarios with 4 s of history and 3 s of future, designating one MMV as the ego agent: 617 bicycle tracks, 233 motorcycle tracks, and 85 scooter tracks.

DiffGM3 consistently outperforms DiffKBM on Average Displacement Error (ADE) and negative log-likelihood (NLL) for all three modes, and on planning loss for bicycles and motorcycles. Since DiffGM3 has parameters that dampen yaw, it can correct for overturning, while DiffKBM lacks a mechanism to limit the accumulation of heading angle from yaw rate and drifts off the ground-truth path — particularly visible at intersections, where MMVs rarely make aggressive turns.

Mode ↓ ADE (m) ↓ NLL ↓ Planning Loss
DiffGM3 DiffKBM DiffGM3 DiffKBM DiffGM3 DiffKBM
Bicycle 2.06 ± 0.08 2.08 ± 0.07 1.07 ± 0.00 1.10 ± 0.04 149.10 ± 7.87 155.58 ± 10.38
Scooter 1.45 ± 0.01 1.61 ± 0.02 1.23 ± 0.19 1.28 ± 0.17 142.75 ± 2.09 119.57 ± 3.01
Motorcycle 1.74 ± 0.00 1.78 ± 0.06 3.02 ± 0.05 3.17 ± 0.27 212.23 ± 12.77 298.50 ± 7.54

DiffGM3 improves ADE (bicycle −1.16%, scooter −9.84%, motorcycle −2.37%) and NLL (−3.02%, −2.05%, −4.75%) on all modes, and planning loss on bicycle (−4.16%) and motorcycle (−28.9%) trajectories. It performs worse on scooter planning loss (+19.39%) because it slows down before reaching the goal, even though it stays on path.

Bicycle open-loop trajectory produced with DiffGM3

Bicycle: DiffGM3

Bicycle open-loop trajectory produced with DiffKBM

Bicycle: DiffKBM

Scooter open-loop trajectory produced with DiffGM3

Scooter: DiffGM3

Scooter open-loop trajectory produced with DiffKBM

Scooter: DiffKBM

Legend for open-loop trajectory figures

On bicycle trajectories, DiffGM3 stays on path thanks to learnable parameters that prevent overturning, though it sometimes stops before the goal, raising goal cost. DiffKBM reaches the goal but veers off the straight ground-truth path because its yaw formula has no realignment term. For the scooter, DiffGM3 steers to the goal while avoiding other agents, whereas DiffKBM turns toward another agent and slows down, never arriving.

Closed-Loop Navigation in Pedestrian Crowds

We pair DiffGM3 with a differentiable MPC controller (DiffMPC) and evaluate it in CrowdNav, a crowd–robot interaction benchmark where an ego vehicle must reach a goal while avoiding multiple moving pedestrians. At each timestep, DiffMPC plans a finite-horizon control sequence using DiffGM3 to predict future MMV motion and executes the first control action. DiffKBM is paired with the same controller as a baseline: planning horizon, cost terms, weights, and optimization settings are identical, and only the underlying dynamics model differs.

The cost combines goal tracking with a braking-profile reference velocity, a collision term built on a Turning Circle Control Barrier Function that respects the non-holonomic constraints of the vehicle, and small regularization penalties for smooth control.

DiffMPC pipeline with DiffKBM or DiffGM3 as the prediction module and gradients flowing back from the cost

The DiffMPC pipeline integrated with DiffKBM or DiffGM3. The environment provides a state estimate, which is passed to the optimizer with the goal position and surrounding pedestrian states. The optimizer proposes a control sequence and rolls out predicted states using DiffKBM or DiffGM3 with learnable parameters. Because both the dynamics and the cost are differentiable, gradients back-propagate through the prediction and cost modules for end-to-end learning. The first control action is applied and the process repeats in a receding-horizon loop.

Model ↑ Success Rate ↓ Collision Rate ↓ Incomplete Rate ↓ Nav. Time (s) ↓ Discomfort Freq. ↑ Avg. Min Dist
DiffKBM Bicycle 0.62 0.38 0.00 4.02 0.08 0.13
DiffGM3 Bicycle 0.64 0.17 0.19 5.13 0.02 0.12
DiffGM3 Scooter 0.63 0.13 0.23 6.14 0.03 0.13
DiffGM3 Wheelchair 0.60 0.23 0.17 6.30 0.03 0.12
DiffGM3 Tricycle 0.67 0.23 0.17 4.82 0.04 0.11

Results over 100 CrowdNav sample trajectories. DiffGM3 prioritizes safety, with far fewer collisions across all vehicle configurations: in the bicycle-to-bicycle comparison it produces 55% fewer collisions and a 3% better success rate. Its higher incomplete rate and slower navigation time come from veering away from the goal to avoid pedestrians and running out of the 10 s time limit — the same behavior that makes its discomfort frequency 50–75% better than DiffKBM's. DiffKBM's faster navigation times are largely a result of collisions ending scenarios early.

Scenario 1 navigation path produced by DiffGM3

DiffGM3 — Scenario 1

Scenario 1 navigation path produced by DiffKBM, ending in a collision

DiffKBM — Scenario 1

Scenario 2 navigation path produced by DiffGM3

DiffGM3 — Scenario 2

Scenario 2 navigation path produced by DiffKBM

DiffKBM — Scenario 2

Legend: solid line is the bicycle, dashed lines are pedestrians, star is the goal

Longer pedestrian paths reflect the longer navigation time taken by the MMV to avoid moving pedestrians. Scenario 1: DiffGM3 brakes and turns to route around pedestrians, while DiffKBM's simple kinematics push it to squeeze between two pedestrians and collide. Scenario 2: both models reach the goal, but DiffGM3's longer, curved route keeps a higher minimum distance and causes less discomfort than DiffKBM's direct cut through the crowd.

Conclusion

We explored differentiable formulations of micro-mobility dynamics by deriving DiffKBM and DiffGM3 from the kinematic bicycle model and the General Micro-mobility Model. DiffGM3 provides a unified, tire-brush-based dynamics formulation for diverse micro-mobility vehicles while enabling gradient flow through physically meaningful parameters. It improves the trajectories produced by DiffStack with DiffKBM by correcting oversteering with damping coefficients, and it produces significantly safer, more direct trajectories through pedestrian crowds.

By explicitly modeling effects like tire slip, lean, and load transfer, DiffGM3 supports autonomous MMV systems that are not only collision-free but also predictable and socially compliant in pedestrian-shared environments — a key building block toward scalable autonomy for diverse micro-mobility platforms.

Limitations and Future Directions

Our open-loop experiments were limited to a single intersection with short trajectories. We plan to evaluate long-running trajectories in diverse situations, such as high-acceleration or high-curvature scenarios that excite the saturation regime, and to test DiffGM3 on other platforms (scooter, e-scooter, cart, wheelchair), which requires trajectory data for those vehicles. We also plan to simulate complex mixed traffic among pedestrians, vehicles, and independent MMV agents, to integrate DiffGM3 into a differentiable simulator so gradients can flow through all components of the environment, and to deploy DiffGM3 on a physical platform such as a four-wheeled robot.

Acknowledgements

This project is supported in part by Dr. Barry Mersky and Capital One E-Nnovate Endowed Professorships and UMD-ARL Cooperative Agreement.

BibTeX

@inproceedings{cai2026diffgm3,
      title={Differentiable Dynamics for Autonomous Micro-Mobility Navigation},
      author={Cai, Grace and Lee, Joey and Parepally, Nithin and Zheng, Laura and Lin, Ming C.},
      booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
      year={2026},
}