Header logo is

Online movement adaptation based on previous sensor experiences


Conference Paper



Personal robots can only become widespread if they are capable of safely operating among humans. In uncertain and highly dynamic environments such as human households, robots need to be able to instantly adapt their behavior to unforseen events. In this paper, we propose a general framework to achieve very contact-reactive motions for robotic grasping and manipulation. Associating stereotypical movements to particular tasks enables our system to use previous sensor experiences as a predictive model for subsequent task executions. We use dynamical systems, named Dynamic Movement Primitives (DMPs), to learn goal-directed behaviors from demonstration. We exploit their dynamic properties by coupling them with the measured and predicted sensor traces. This feedback loop allows for online adaptation of the movement plan. Our system can create a rich set of possible motions that account for external perturbations and perception uncertainty to generate truly robust behaviors. As an example, we present an application to grasping with the WAM robot arm.

Author(s): Pastor, P. and Righetti, L. and Kalakrishnan, M. and Schaal, S.
Book Title: 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems
Pages: 365--371
Year: 2011
Month: sep
Publisher: IEEE

Department(s): Autonomous Motion, Movement Generation and Control
Bibtex Type: Conference Paper (inproceedings)

DOI: 10.1109/IROS.2011.6095059

Address: San Francisco, USA
URL: https://ieeexplore.ieee.org/abstract/document/6095059/


  title = {Online movement adaptation based on previous sensor experiences},
  author = {Pastor, P. and Righetti, L. and Kalakrishnan, M. and Schaal, S.},
  booktitle = {2011 {IEEE}/{RSJ} {International} {Conference} on {Intelligent} {Robots} and {Systems}},
  pages = {365--371},
  publisher = {IEEE},
  address = {San Francisco, USA},
  month = sep,
  year = {2011},
  url = {https://ieeexplore.ieee.org/abstract/document/6095059/},
  month_numeric = {9}