From Least Squares Regression to High-dimensional Motion Primitives

Tutorial @ IROS 2018, Monday, October 1st 2018 (AM)


Dr. Freek Stulp
Institute for Robotics and Mechatronics, German Aerospace Center (DLR)
Münchener Straße 20, 82234 Oberpfaffenhofen-Weßling, Germany
Phone: +49 8153 28-1848

Dr. Sylvain Calinon
Idiap Research Institute
Rue Marconi 19, CH-1920 Martigny, Switzerland

Prof. Dr. Gerhard Neumann
Lincoln Centre for Autonomous Systems. University of Lincoln
101 Angelica Road, LN1 1BE Lincoln


The objective of this tutorial is to provide an intuitive understanding of the most commonly used motion primitive representations in robotics, as well as the regression algorithms on which they are based. This understanding will be achieved by visual, constructive explanations of the theory and design rationale behind the representations and algorithms. Open-source implementations of the algorithms are demonstrated, so that the audience can see the potential (and pitfalls) of these algorithms, and how they can be applied to programming by demonstration. The representations and algorithms that will be presented are listed below under “Topics of interest”.

When explaining the regression algorithms, an emphasis is placed on the relationships between these representations and algorithms. In particular, the role of (weighted) least squares in many of these algorithms is made explicit, and we show that all algorithms use essentially the same underlying model. By emphasizing similarities, rather than differences, we will be able to present a large number of algorithms as being variations on a common theme based on shared first-order principles.

The motion primitive part will first explain the role of regression in programming by demonstration. We present several commonly used motion primitive representations, and emphasize the similarities between them. We present how motion primitives can be adapted to task variations, how controllers can be designed around them, how shared control can be achieved with them, and how they can be applied to real-world applications such as manipulation.

Due to the multitude of methods that have been proposed in the fields of regression and motion primitives, and even for experts in the community may loose an overview of the bigger picture. The aim of this tutorial is to provide a unified perspective on these algorithms.

Topics of interest

  • Least Squares Regression
  • Gaussian Process Regression
  • Gaussian Mixture Regression
  • Locally Weighted Regression
  • Task-parameterized Gaussian Mixture Models
  • Dynamical Movement Primitives
  • Probabilistic Motion Primitives

Target Audience

  • Robotics researchers with interest in regression and/or motion primitives, but with no background knowledge in either. Apart from basic linear algebra and knowing what a multi-variate Gaussian distribution is, no prior knowledge is required to attend this tutorial.
  • Regression experts who want to understand the application of and relationship between different regression algorithms. For this audience, we will show how these algorithms are linked, and that they are all variations on a theme.
  • Researchers with expertise in one type of motion primitive representation, but who do not necessarily have deep knowledge of other such representations. For this audience, highlighting relationships between the different representations will be of particular use. 


  1. Regression: An intuitive explanation of many regression algorithms, showing the role of (weighted) least squares in (almost) all of them. Particular emphasis is placed on the fact that all these algorithms use the same underlying model. Presented by Freek Stulp.
  2. Motion primitives 1: Fusion Vs superposition, product of Gaussians, model predictive control, task-parameterized models of movements. Presented by Sylvain Calinon.
  3. Motion primitives 2: Time-dependent movement primitive representations such as Dynamical Movement Primitives and Probabilistic Movement Primitives and their relation to regression algorithms. Movement adaptation by changing the goal attractors or conditioning the distributions or temporal scaling. Variable stiffness control strategies and human-robot collaboration as applications of probabilistic movement primitives.
  4. Context, Outlook and Discussion. What are open questions in motion primitive research? How can regression help to address these questions? Which related topics are important, but have not been covered in the tutorial (e.g. combining motion primitives, optimizing motion primitives through policy improvement)?

The first three blocks have a similar internal structure where first the algorithms are explained. We encourage participants to exploit the open nature of the tutorial, and to ask questions whenever they arise. The algorithms will be demonstrated live using open-source software. Participants may run these demonstrators on their own laptops in parallel. To prepare, participants can install these software libraries on their laptops in advance:





9:00 – 9:15



9:15 – 10:45


Presenter: Freek Stulp

10:45 – 11:00

Motion Primitives 1

Presenter: Sylvain Calinon

11:00 – 11:30

Coffee Break  

11:30 – 12:15

Motion Primitives 1 (cont.)

Presenter: Sylvain Calinon

12:15 – 13:15

Motion Primitives 2

Presenter: Gerhard Neumann

13:15 – 13:30

Wrap up


 You can access the pdf copy of the slides by clicking on the talk titles.