Inferensys

Glossary

Dynamic Movement Primitive (DMP)

A Dynamic Movement Primitive (DMP) is a mathematical formulation for representing motor skills as stable nonlinear dynamical systems, enabling easy adaptation to new goals in robotics.
Developer building agentic RAG system, retrieval pipeline diagram on laptop, technical workspace with notes.
IMITATION LEARNING FOR ROBOTICS

What is a Dynamic Movement Primitive (DMP)?

A formal definition of Dynamic Movement Primitives (DMPs), a core policy representation in robot imitation learning and motor control.

A Dynamic Movement Primitive (DMP) is a mathematical framework for representing reusable motor skills as stable, nonlinear dynamical systems. It decomposes a demonstrated trajectory into a canonical system that governs the temporal evolution and a transformation system that generates the desired motion pattern. This formulation provides inherent stability, ensures convergence to a goal, and allows for straightforward adaptation of the trajectory's spatial and temporal properties without manual re-tuning.

In imitation learning, DMPs serve as a compact, robust policy representation. After being learned from a single or multiple demonstrations via linear regression, they enable key robotic capabilities: modulation to new goals or obstacles, temporal scaling for speed adjustment, and robust execution despite perturbations. This makes them foundational for behavior cloning, skill libraries, and hierarchical control architectures in robotics.

CORE FORMULATION

Key Features of Dynamic Movement Primitives

A Dynamic Movement Primitive (DMP) is a mathematical framework for representing motor skills as stable nonlinear dynamical systems. Its core features enable robust imitation learning, smooth trajectory generation, and flexible adaptation to new goals.

01

Canonical Dynamical System

At the heart of a DMP is a canonical dynamical system, typically a simple linear system like a phase oscillator. This system provides a phase variable that monotonically drives the transformation from the start to the goal state, ensuring temporal stability and robustness. It abstracts time, allowing the movement's progression to be defined by the phase rather than absolute time, which is crucial for temporal scaling and pausing.

02

Nonlinear Forcing Function

The shape of the learned movement is encoded in a nonlinear forcing function. This function is typically represented as a weighted sum of radial basis functions (RBFs) centered along the phase of the canonical system. During learning from a demonstration, the weights of these basis functions are adjusted to reconstruct the demonstrated trajectory. During execution, this function perturbs the simple dynamical system to produce the desired complex motion.

03

Stability via Attractor Dynamics

DMPs guarantee convergence to a specified goal through globally stable attractor dynamics. The transformation system is formulated as a second-order damped spring model:

  • Goal Attractor: The system is inherently drawn to the goal state, acting as a point attractor.
  • Damping Term: Provides critical damping to ensure smooth, non-oscillatory convergence. This stability makes DMPs robust to perturbations; if the system is pushed off trajectory, it will naturally converge back to the goal.
04

Spatial and Temporal Scaling

A primary advantage of DMPs is the ease of spatial and temporal scaling without re-learning. The formulation cleanly separates movement shape from its execution parameters:

  • Spatial Scaling: The target goal g can be changed, and the entire trajectory scales accordingly while preserving its shape.
  • Temporal Scaling: The time constant τ of the canonical system can be adjusted to execute the movement faster or slower. This allows a single learned DMP, like a reaching motion, to be reused for different targets and speeds.
05

Modulation and Coupling Terms

DMPs can be extended with coupling terms to react to external sensory feedback or to synchronize multiple DMPs. These terms modify the transformation or canonical systems in real-time:

  • Obstacle Avoidance: A coupling term can deflect the trajectory based on proximity to obstacles.
  • Synchronization: The phase of multiple DMPs (e.g., for a robot arm) can be coupled to maintain coordination. This enables the generation of adaptive, reactive behaviors beyond simple open-loop playback of demonstrations.
06

Probabilistic Extensions (ProMPs)

While standard DMPs represent a single trajectory, Probabilistic Movement Primitives (ProMPs) extend the framework to model a distribution over trajectories. This is critical for imitation learning as it:

  • Captures Variability: Models the natural variance observed across multiple demonstrations of a skill.
  • Enables Conditioning: The distribution can be conditioned on via-points (intermediate points) or final goals.
  • Facilitates Blending: Multiple skills represented as ProMPs can be combined probabilistically. ProMPs provide a more flexible and powerful representation for learning from demonstration datasets.
COMPARISON

DMP vs. Other Movement Representations

A feature comparison of Dynamic Movement Primitives (DMPs) against other common mathematical frameworks for representing and learning motor skills in robotics and imitation learning.

Feature / MetricDynamic Movement Primitive (DMP)Probabilistic Movement Primitive (ProMP)Direct Trajectory PlaybackNeural Network Policy (e.g., BC, Diffusion)

Core Mathematical Formulation

Nonlinear dynamical system with a canonical attractor

Probability distribution over trajectories (Gaussian)

Time-indexed sequence of states/actions

Parameterized function (e.g., MLP, Transformer) learned from data

Temporal Modulation

Implicit via architecture (e.g., RNN, temporal convolution)

Spatial Goal Adaptation

Native Representation of Variability

Implicit in stochastic outputs

Robustness to Temporal Perturbations

Varies by architecture

Stability Guarantees

On-the-Fly Replanning Capability

Limited, typically requires re-inference

Data Efficiency for Learning

High (few demonstrations)

Medium

N/A (no learning)

Low to very high (depends on method)

Handles Multi-Modal Demonstrations

Common Primary Use Case

Single, robust skill imitation & adaptation

Capturing demonstration variance & blending

Simple, precise playback of recorded motions

Complex, high-dimensional visuomotor control

DYNAMIC MOVEMENT PRIMITIVE (DMP)

Frequently Asked Questions

A Dynamic Movement Primitive (DMP) is a foundational mathematical framework in robotics for representing and generalizing motor skills. These FAQs address its core mechanisms, applications, and relationship to other imitation learning concepts.

A Dynamic Movement Primitive (DMP) is a mathematical formulation for representing motor skills as stable nonlinear dynamical systems, which can be easily adapted to new goals and are commonly used as a policy representation in imitation learning for robotics. At its core, a DMP decomposes a movement into a canonical system (a phase variable that governs the temporal progression) and a transformation system (a set of differential equations that generate the target trajectory). The transformation system is shaped by nonlinear forcing terms, typically learned from a single demonstration, which encode the desired movement's shape. This structure provides several key properties: stability through attractor dynamics, temporal and spatial scaling to new goals, and robustness to perturbations. DMPs are particularly valued for their simplicity, analytical tractability, and ability to serve as a compact, reusable representation of primitive skills that can be sequenced for complex tasks.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.