Robot control
Dynamic movement primitive
Definition
A dynamic movement primitive is a parameterised dynamical system that represents a goal-directed or rhythmic movement using stable baseline dynamics plus a learned shaping term. Robots can fit the parameters from demonstrations and adapt the resulting motion to a new goal or duration.
Also known as: DMP, Dynamical movement primitive
Updated
A movement encoded as dynamics
A dynamic movement primitive starts with a simple attractor system and adds a learnable forcing term that shapes the path. Ijspeert and colleagues describe point-attractor formulations for discrete movements and limit-cycle formulations for rhythmic movements. The attractor supplies the basic convergence behaviour, while the forcing term represents details learned from a sample motion.
This is different from storing a timed list of joint values. The DMP generates a trajectory by integrating its dynamics. Its goal, duration, or amplitude can be changed within the formulation, although useful adaptation depends on how the primitive was designed and trained.
From a demonstration to a reusable skill
In imitation learning, a demonstrated reach, wipe, or placement motion can be fitted as a DMP. A task-level system can then select the primitive and set a new target, while a lower-level controller tracks the generated position, velocity, or orientation path.
DMPs can represent either joint-space motion or task-space quantities such as an end effector pose. Orientation needs an appropriate representation because ordinary subtraction does not describe all three-dimensional rotations correctly.
Convergence does not imply task safety
An attractor can pull the generated motion toward its goal without respecting obstacles, joint limits, contact forces, or human separation. Shaw and colleagues state that ordinary DMPs provide no strong guarantee of operational constraint satisfaction and propose a constrained variant using a barrier function.
A primitive also preserves only what its variables and training data encode. Moving the goal can produce a mathematically valid trajectory that is unsuitable for a new object geometry or robot body. Collision checks, feasibility tests, and feedback control remain separate requirements.
Sources
Related terms
Imitation learning
Imitation learning learns behavior from examples supplied by a demonstrator. In robotics, demonstrations can teach a policy how to perform a task without requiring every action or objective to be programmed by hand.
Trajectory optimization
Trajectory optimization finds a time-varying motion, and often control inputs, that minimizes an objective while satisfying specified constraints. Robot applications can include geometric, kinematic, and dynamic constraints.
Motion retargeting
Motion retargeting maps a motion recorded or designed for one body onto another body with different geometry or joints. In robotics it produces a compatible pose or trajectory reference, which still needs a controller to execute it physically.
Robotic manipulation
Robotic manipulation is the use of a robot to change an object's position, orientation, or state through physical interaction. It includes grasping and moving objects as well as actions such as pushing or carrying them without a grasp.