Riemannian Motion Policies

TL;DR RMPs pair each motion policy with a Riemannian metric, so controllers written in many task spaces can be pulled into joint space and combined as a metric-weighted average that is provably optimal. With up to 150 controllers on a 7-DoF arm, RMPs solved every cluttered reaching task, while combining the same policies without their metrics led to periodic collisions.
What they do
Reactive obstacle avoidance often just adds many local policies together, and they fight: symmetric obstacles cancel out, heavy obstacle weights make the arm sluggish, and nullspaces need hand engineering. This paper defines the Riemannian Motion Policy (RMP): a policy mapping position and velocity to acceleration, paired with a Riemannian metric that encodes which directions the policy cares about. An algebra over RMPs lets each controller live in its own task space and be merged into one joint-space policy.
How it works
- Operators. Pullback moves an RMP from a task space into joint space, transforming its metric through the Jacobian; addition is a metric-weighted average. Both are commutative, associative and linear, so the result does not depend on evaluation order and matches the centralized operational-space least-squares solution.
- Local policies. Target attractors, plus one collision RMP per body point and obstacle point whose metric is stretched only toward the obstacle, leaving perpendicular motion free. Joint limits come from pulling the combined policy through a sigmoid map.
- Slow behaviors. A motion optimizer is linearized and streamed as RMPs, e.g. at 10 Hz into a 1 kHz core.
- Long range. Retract to a canonical ready pose, then follow guiding points from a rough IK solution, with no planner.
Results
- Reaching in 3 worlds of 4 cylinders, up to 150 controllers sharing 7 joints: replacing each metric with a scaled identity (a best-scaled pseudoinverse baseline) made controllers clash, with periodic collisions at every C-space weight setting. RMPs solved all reaching tasks.
- Retraction from 20 entangled start configurations in 4 worlds: the second heuristic succeeded on all 20; the simple joint-space attractor failed 2, in the world with obstacles closest to the robot.
- Demonstrated on three dual-arm platforms, including a Baxter picking objects off a table into a container below it, using depth-camera occupancy.
Limitations
The controllers are local; long-range motion relies on heuristics that assume a standard 7-DoF layout and work only while the elbow is unblocked. The joint-space redundancy controller is not covariant, so it is robot-dependent. The baseline comparison is qualitative, shown in the supplementary video, with no success rates.
Figures



Abstract
We introduce the Riemannian Motion Policy (RMP), a new mathematical object for modular motion generation. An RMP is a second-order dynamical system (acceleration field or motion policy) coupled with a corresponding Riemannian metric. The motion policy maps positions and velocities to accelerations, while the metric captures the directions in the space important to the policy. We show that RMPs provide a straightforward and convenient method for combining multiple motion policies and transforming such policies from one space (such as the task space) to another (such as the configuration space) in geometrically consistent ways. The operators we derive for these combinations and transformations are provably optimal, have linearity properties making them agnostic to the order of application, and are strongly analogous to the covariant transformations of natural gradients popular in the machine learning literature. The RMP framework enables the fusion of motion policies from different motion generation paradigms, such as dynamical systems, dynamic movement primitives (DMPs), optimal control, operational space control, nonlinear reactive controllers, motion optimization, and model predictive control (MPC), thus unifying these disparate techniques from the literature. RMPs are easy to implement and manipulate, facilitate controller design, simplify handling of joint limits, and clarify a number of open questions regarding the proper fusion of motion generation methods (such as incorporating local reactive policies into long-horizon optimizers). We demonstrate the effectiveness of RMPs on both simulation and real robots, including their ability to naturally and efficiently solve complicated collision avoidance problems previously handled by more complex planners.
Summaries are written automatically from each paper's text. Figures and videos come from the paper and its project page; all credit goes to the authors.
