Dynamic Movement Primitives (DMP) are a framework for encoding complex motor behaviors as attractor landscapes of nonlinear dynamical systems. A DMP consists of a damped spring system that converges to a goal state, modulated by a learnable nonlinear forcing term. This forcing term, represented as a weighted sum of Gaussian basis functions, shapes the transient trajectory while the spring-damper guarantees asymptotic stability at the target.
Glossary
Dynamic Movement Primitives (DMP)

What is Dynamic Movement Primitives (DMP)?
A mathematical framework for representing and learning motor skills as stable nonlinear dynamical systems, enabling robots to generalize demonstrated trajectories to new start and goal states.
The key advantage of DMPs is spatial and temporal invariance: a single demonstration can be generalized to new start and goal positions by simply shifting the attractor point, and the execution speed can be scaled by modifying a canonical clock signal. This makes DMPs a foundational tool in Learning from Demonstration (LfD) and imitation learning, where they are often combined with Gaussian Mixture Models or Task-Parameterized Gaussian Mixture Models for robust skill acquisition.
Key Features of DMPs
Dynamic Movement Primitives (DMPs) encode motor skills as stable nonlinear dynamical systems. These key features explain how DMPs achieve generalization, temporal scaling, and robust convergence to a goal state.
Stable Attractor Landscapes
DMPs use a second-order dynamical system with a globally stable attractor at the goal state. The canonical system (a phase variable) drives the nonlinear forcing term to zero over time, guaranteeing that the system exponentially converges to the target. This ensures asymptotic stability—the robot will always reach the goal regardless of perturbations.
Temporal Scaling via Phase Variable
The canonical system is a simple first-order linear differential equation that acts as a shared clock. By modifying the temporal scaling parameter (τ) , the entire trajectory can be sped up or slowed down without altering the geometric path. This decouples the timing of the movement from its spatial shape.
Spatial Generalization
The transformation system includes a spatial scaling term that enables generalization to new start and goal positions. By adjusting the goal parameter (g) and start parameter (y0) , a single learned DMP can generate trajectories that adapt to arbitrary initial and final end-effector poses without retraining.
Learnable Forcing Term
The nonlinear forcing term is represented as a weighted sum of Gaussian basis functions. During imitation learning, Locally Weighted Regression (LWR) or Linear Least Squares computes the weights from a single demonstration. This compact parametric representation captures complex shape dynamics while maintaining smoothness.
Obstacle Avoidance Coupling
DMPs can be extended with potential field coupling terms that repel the trajectory from obstacles. A differential equation term based on the distance and direction to obstacles is added to the transformation system, dynamically deforming the learned path while preserving convergence to the goal.
Rhythmic vs. Discrete Primitives
DMPs support two fundamental movement types:
- Discrete DMPs: Use a point attractor for goal-directed motions like reaching.
- Rhythmic DMPs: Use a limit-cycle oscillator as the canonical system for repetitive tasks like wiping or walking. Both share the same forcing term learning framework.
Frequently Asked Questions
Clear, technical answers to the most common questions about representing and learning robot motor skills using stable nonlinear dynamical systems.
A Dynamic Movement Primitive (DMP) is a mathematical framework for representing and learning motor skills as stable nonlinear dynamical systems. It works by encoding a demonstrated trajectory as a spring-damper system with a learnable nonlinear forcing term. The core mechanism couples a canonical system—a simple linear dynamical system that acts as a phase variable progressing from 1 to 0—with a transformation system that generates the actual movement. The transformation system is a second-order differential equation: τ * ÿ = α_y * (β_y * (g - y) - τ * ẏ) + f(x), where y is the position, g is the goal, τ is a temporal scaling factor, and f(x) is the nonlinear forcing term. This forcing term is learned from demonstration using locally weighted regression or other function approximators over Gaussian basis functions distributed along the phase variable. Critically, the spring-damper component guarantees asymptotic stability—the system will always converge to the goal state g even under perturbations, because the forcing term f(x) vanishes as the canonical system decays to zero. This inherent stability distinguishes DMPs from raw trajectory replay and makes them robust to unexpected disturbances during execution.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Dynamic Movement Primitives integrate with core robotics frameworks for trajectory generation, control, and planning. These related concepts form the ecosystem in which DMPs operate.
Trajectory Optimization
A numerical optimization approach that refines an initial path into a dynamically feasible trajectory by minimizing a cost function subject to kinematic and collision constraints. While DMPs provide a stable attractor landscape for motion, trajectory optimization techniques like direct collocation or shooting methods can be used to compute the optimal forcing term that shapes the DMP's nonlinear dynamics, combining the flexibility of optimization with the inherent stability guarantees of the dynamical system.
Inverse Kinematics (IK)
The computational process of determining joint parameters that achieve a desired end-effector pose, often solved using numerical methods like the Jacobian pseudoinverse. DMPs typically encode motion in task space (end-effector coordinates), requiring IK to map the generated trajectory into joint commands. The stability properties of DMPs are preserved through this mapping, ensuring that convergence to the goal in task space translates to a stable joint configuration, even when analytical IK solutions are unavailable.
Model Predictive Control (MPC)
A real-time control strategy that solves a finite-horizon optimization problem at each timestep to generate control inputs while respecting system dynamics and constraints. DMPs and MPC are complementary: a DMP can generate a nominal trajectory that serves as the reference signal for an MPC controller, which then handles online disturbance rejection and constraint enforcement. This hybrid approach leverages DMPs for rapid motion generalization and MPC for robust execution under uncertainty.
Configuration Space (C-Space)
The mathematical space representing all possible positions and orientations of a robot, where path planning transforms into finding a continuous curve for a point. DMPs operate in the task space or joint space subset of C-Space. When generalizing a demonstrated trajectory to a new goal, the DMP's transformation properties ensure the adapted path remains within the collision-free subset of C-Space if the original demonstration was collision-free and the environment is sufficiently similar.
Kinodynamic Planning
Motion planning that simultaneously considers kinematic constraints and differential dynamics, ensuring trajectories respect velocity, acceleration, and force limits. Standard DMP formulations can be extended to incorporate velocity and acceleration bounds by modulating the canonical system's temporal scaling or by reshaping the forcing term. This allows learned motor primitives to respect the robot's physical actuation limits without sacrificing the stability guarantees of the underlying dynamical system.

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us