Dimensionality Reduction and Motion Coordination in Learning Trajectories with Dynamic Movement Primitives

Adria Colome and Carme Torras

Dynamic Movement Primitives (DMP) are nowadays widely used as movement parametrization for learning trajectories, because of their linearity in the parameters, rescaling robustness and continuity. However, when learning a movement with a robot using DMP, many parameters may need to be tuned, requiring a prohibitive number of experiments/simulations to converge to a solution with a locally or globally optimal reward. To speed up the learning and allow for a better biased exploration, we also propose to coordinate the motion of different joints, by computing a coordination matrix initialized with the demonstrated movement and then automatically updating it by eliminating the degrees of freedom least affecting task performance. Our proposal has been experimentally tested and the obtained results show that similar (or even better) performance can be obtained at a significantly lower computational cost by reducing the dimensionality of the exploration space.

Two-dimensional example

We implemented the framework defined in [1] on a dual-arm setting consisting of two Barrett's WAM robots, aiming to fold a polo shirt. We kinesthetically taught both robots to joinly fold a polo shirt, with a relatively wrong initial attempt. Then we performed 3 runs consisting of 15 policy updates of 12 rollouts each (totaling 180 real robot dual-arm motion executions for each run), with a reuse of the previous 12 rollouts for the PS update. We ran the standard method and the automatic dimensionality reduction for both 1 coordination matrix and 3. This added up to a total of 540 real robot executions with the dual-arm setup. The trajectories were stored in Cartesian coordinates, using 3 variables for position and 3 more for orientation, totaling 12 DoF and, with 20 DMP weights per DoF, adding up to 240 DMP parameters. Additionally, an inverse kinematics algorithm was used to convert Cartesian position trajectories to joint trajectories, which then a computed-torque controller would compliantly track. As reward, we used a function that would penalize large joint accelerations, together with an indicator of how well the polo shirt was folded. To do so, we used a rooftop-placed camera to generate a depth map with which to evaluate the resulting wrinkleness of the polo. Additionally, we checked its rectangleness by color-segmenting the polo on the table and fitting a rectangle with the obtained result. The following video shows the learning process of the task:


Fig. 1: Comparison of REPS and DREPS for a multimodal two dimensional problem

[1] A. Colome and C. Torras. Dimensionality reduction and motion coordination in learning trajectories with dynamic movement primitives, 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2014, Chicago, pp. 1414-1420.