The motion is encoded in a mixture of basis force fields through an extension of Dynamic Movement Primitives (DMP) that represents the synergies across the different variables through stiffness matrices. An Inverse Dynamics controller with variable stiffness is used for reproduction.
The skill is first demonstrated via kinesthetic teaching, and then refined by Policy learning by Weighting Exploration with the Returns (PoWER) algorithm. After 50 trials, the robot learns that the first part of the task requires a stiff behavior to throw the pancake in the air, while the second part requires the hand to be compliant in order to catch the pancake without having it bounced off the pan.
Video credit:
Dr. Petar Kormushev
kormushev.com
Dr. Sylvain Calinon
programming-by-demonstration.org/
Affiliation:
Advanced Robotics Dept., Italian Institute of Technology
Link to publication:
Kormushev, P., Calinon, S. and Caldwell, D.G. “Robot Motor Skill Coordination with EM-based Reinforcement Learning”, Proc. IEEE/RSJ Intl Conf. on Intelligent Robots and Systems (IROS-2010), 2010.