Robot control
Riemannian motion policy
Definition
A Riemannian motion policy is a reactive robot motion rule expressed in a task space together with a state-dependent metric that represents the rule's directional importance. RMPflow combines several such policies and maps them through a robot's kinematic structure.
Also known as: RMP, Riemannian motion policies
Updated
Local policies can live in different task spaces
A high-degree-of-freedom robot may need to move a hand toward a goal, keep its elbow away from an obstacle, and maintain a comfortable posture at the same time. Each objective is easier to describe in its own coordinates. A Riemannian motion policy pairs a desired acceleration with a metric that says how strongly different directions matter at the current state.
The metric is more than a fixed priority number. It can make motion toward an obstacle highly important while assigning less weight to directions that do not reduce clearance. RMPflow uses a computational graph to pull these task-space quantities back through transformations and combine them into one configuration-space policy, as set out by Cheng and colleagues.
RMPflow is reactive policy synthesis
RMPflow produces a motion command from the current state. It can combine goal attraction, collision avoidance, and other local behaviours without first producing a complete time-indexed path. This makes an RMP different from a global motion planner, although a robot system can use both.
The framework also provides structure for learned policies. RMP2 reformulates the computation using automatic differentiation so that task maps and policy components can be trained end to end. Its experiments show one way to add learned components; learning is not required by the RMP definition.
Composition depends on design choices
An RMP system needs suitable task maps, local policies, and metrics. A poorly shaped obstacle metric can create undesirable local behaviour, while conflicting objectives can still produce a compromise that fails the task. Stability results apply only when their mathematical conditions hold.
Reactive control also does not by itself reason over long sequences such as opening a door before entering a room. A humanoid may use RMPflow for fast local motion while a higher-level planner chooses goals, contacts, or task order.
Sources
Related terms
Motion planning
Motion planning finds a robot movement from an initial state to a goal while satisfying constraints such as collision avoidance. A planner may produce a geometric path, a timed trajectory, or a sequence of controls.
Whole-body control
Whole-body control coordinates a robot’s joints and contacts to satisfy several motion and force objectives together. In humanoids, it commonly combines balance, foot motion, hand tasks, and posture subject to physical constraints.
Robot Jacobian
A robot Jacobian is a configuration-dependent matrix that maps joint velocities to a chosen task velocity, often an end-effector twist. It describes the local relationship between joint motion and task motion.
Control Lyapunov function
A control Lyapunov function is a scalar function of a controlled system's state for which an admissible control input can make the function decrease toward a target. It provides a way to design or constrain feedback controllers with a stated stability objective.