Agile Monoped Hopping on Complex and Discrete Terrain via Kinodynamic Planning with Distilled MPPI Steering

Yue Qin, Denglin Cheng, Jingyu Liu, Yanran Ding
University of Michigan
Submitted to ICRA 2027

Abstract

This paper presents FlowRRT, a kinodynamic planner for agile monoped hopping on discrete terrain. Steering for kinodynamic RRT on complex dynamical systems currently relies on motion primitives or closed-loop policies, limiting the diversity of motions or the planning speed. Distilling a trajectory optimizer avoids both, but existing methods regress a single solution per query, which fails on monoped hopping, where the feasible action set is narrow and disconnected. Our key insight is to treat steering as set-valued and predict the distribution of feasible actions instead. A multi-start MPPI expert collects the entire feasible set of each query offline, and conditional flow matching distills it into a generative sampler. With this sampler, FlowRRT coordinates successive jumps over long horizons and finds non-greedy maneuvers that are hard for reactive policies to discover. Benchmarks across different terrains show higher success rates and substantially shorter planning times than sampling-based baselines. On terrains with inclined platforms, FlowRRT reaches 80% success within 1 s, versus 24 s for RL-RRT and 77 s for SST. Sim-to-sim tracking in MuJoCo confirms accurate execution under full-order dynamics.

Steering Is Set-Valued, So Learn the Whole Feasible Set

On discrete terrain, a takeoff state can reach a target foothold in several disconnected ways, so regressing one action per query averages them into an infeasible jump. FlowRRT instead collects every feasible jump with a multi-start MPPI expert offline, and distills that set into a conditional flow-matching sampler that reproduces all of its modes in one batched query.

A multi-start MPPI-CEM expert collects feasible actions into clusters; a flow matching model maps
              Gaussian noise onto the same clusters.

Multi-start MPPI expert (offline)

Flow-matching sampler (online, 10 steps)

How Does FlowRRT Work?

Tree nodes are takeoff states and edges are single jumps. Each iteration samples a target foothold, picks a node that a learned reachability estimator predicts can reach it, draws 1024 candidate jumps from the flow sampler and rolls them out on the GPU. A feasible jump becomes a new node: a takeoff state from which the next jump lands on the target. Nodes whose attempts keep failing are pruned.

Plan, Then Track

A tracking policy trained with PPO in Isaac Lab executes the FlowRRT plan under full-order dynamics in MuJoCo. On the backward-jump plan, where the robot first hops back onto a lower shelf to gain height, all 16 runs land all five jumps, with base tracking RMSEs of 1.48 cm, 2.07 cm and 2.37° and a mean foothold error of 0.68 cm.

The paper's backward-jump plan in MuJoCo, half speed. The translucent robot is the plan.

Compare With Other Methods

Fifty random terrains per class and five planner seeds each, 250 runs per method. Drag across the chart to read the success rate at any planning-time budget.

1.00 s

Ablation

Removing the reachability estimator (w/o reach) or replacing the flow sampler with a regressor of the lowest-cost action both raise the share of failed steers; the regressor also loses success on slope and stones.

Try It: Plan and Track Your Own Course

Drag a block in the view: its top up or down for its height, the block sideways for the gap in front of it, the dot on its corner for its slope. When you let go, FlowRRT replans in your browser, the search replays over the course, and the general tracking policy executes the plan in MuJoCo.

sampled foothold planted foot failed steer flight stance

BibTeX

@misc{qin2026flowrrt,
  title  = {Agile Monoped Hopping on Complex and Discrete Terrain via
            Kinodynamic Planning with Distilled {MPPI} Steering},
  author = {Qin, Yue and Cheng, Denglin and Liu, Jingyu and Ding, Yanran},
  year   = {2026},
  note   = {Under review}
}