Intuitive Programming of Conditional Tasks by Demonstration of Multiple Solutions

Thomas Eiband, Matteo Saveriano, Dongheui Lee

Research output: Contribution to journalArticlepeer-review

7 Scopus citations


Conditional tasks include a decision on how the robot should react to an observation. This requires to select the appropriate action during execution. For instance, spatial sorting of objects may require different goal positions based on the objects properties, such as weight or geometry. We propose a framework that allows a user to demonstrate conditional tasks including recovery behaviors for expected situations. In our framework, human demonstrations define the required actions for task completion, which we term solutions. Each specific solution accounts for different conditions which may arise during execution. We exploit a clustering scheme to assign multiple demonstrations to a specific solution, which is then encoded in a probabilistic model. At runtime, our approach monitors the execution of the current solution using measured robot pose, external wrench, and grasp status. Deviations from the expected state are then classified as anomalies. This triggers the execution of an alternative solution, appropriately selected from the pool of demonstrated actions. Experiments on a real robot show the capability of the proposed approach to detect anomalies online and switch to an appropriate solution that fulfills the task.

Original languageEnglish
Article number8798604
Pages (from-to)4483-4490
Number of pages8
JournalIEEE Robotics and Automation Letters
Issue number4
StatePublished - Oct 2019
Externally publishedYes


  • Learning from demonstration
  • failure detection and recovery
  • learning and adaptive systems


Dive into the research topics of 'Intuitive Programming of Conditional Tasks by Demonstration of Multiple Solutions'. Together they form a unique fingerprint.

Cite this