Programming by demonstration: A machine learning approach to support skill acquision for robots

  • R. Dillmann
  • H. Friedrich
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1138)


Programming by Demonstration (PbD) is a programming method that allows to add new functionalities to a system by simply showing the desired task or skill in form of few examples. In the domain of robotics this paradigm offers the potential to reduce the complexity of robot task programming and to make programming more ”natural”. In case of programming an assembly task PbD allows with the help of a video or a laser camera and a data glove the automatic generation the necessary robot program for the assembly task. In addition, the demonstration of the task with few different assembly situations and strategies may achieve a generalized assembly function for all possible variants of the class. In order to realize such a PbD system at least two major problems have to be solved. First, the sensor data trace of a demonstration has to be interpreted and transformed into a high-level situation-action representation. This task is not yet well understood nor solved in general. Second, if a generalization is required, induction algorithms must be applied to the sensor data trace, to find the most general user-intended robot function from only few examples. In this paper mainly the second problem is focused. The described experimental PbD environment consists of an industrial robot, a 6D space mouse used as input device, and some sensors. Various data can be recorded during a demonstration for further processing in the PbD system implemented on a workstation. The objective is to exploit the possibilities of integrating learning and clustering algorithms for automated robot programming. In particular it is investigated how human interaction with the PbD system as well as user-initiated dialogs can support inductive learning to acquire generalized assembly programs and skills.


Programming by Demonstration (PbD) Robot Programming by Demonstration (RPD) Teaching Robots Manipulators User Intentions Dialog-Based Learning (DBL) 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Andrea, P.M., Justified Generalization: Acquiring Procedures from Examples, Technical Report AI-TR-834. Artificial Intelligence Laboratory, MIT, 1985.Google Scholar
  2. 2.
    Atkeson, C.G., Aboaf, E.W., McIntyre, J., and Reinkensmeyer, D.J., Model-based robot learning, in Proceedings of the 4th International Symposium on Robotics Research, 1987.Google Scholar
  3. 3.
    Baroglio, C., Giordana, A., Kaiser, M., Nuttin, M., and Piola, R., Learning Controllers for Industrial Robots, Machine Learning, 1996.Google Scholar
  4. 4.
    Bocionek, S., Agent systems that negotiate and learn, International Journal Human-Computer Studies, 42, pp. 265–288, 1995.Google Scholar
  5. 5.
    Bocionek, S. and Sassin, M., Dialog-Based Learning (DBL) for Adaptive Interface Agents and Programming-by-Demonstration Systems, Technical Report CMU-CS-93-175. Carnegie Mellon University, Pittsburgh, 1993.Google Scholar
  6. 6.
    Cypher, A., EAGER: Programming Repetitive Tasks by Example, in CHI'91 Conference Proceedings (pp. 33–39). New Orleans, Louisiana: ACM Press, 1991.Google Scholar
  7. 7.
    Dufay, B. and Latombe, J.-C., An approach to automatic robot programming based on inductive learning, International Journal of Robotics Research, 3, pp. 97–115, 1984.Google Scholar
  8. 8.
    Fikes, R. E. and Nilsson, N. J., Strips: A new approach to the application of theorem proving to problem solving, Artificial Intelligence, 2, pp. 189–208, 1971.CrossRefGoogle Scholar
  9. 9.
    Flaig, T., Neugebauer, J.-G., and Wapler, M., VR 4RobotS: a New Off-line Programming System Based on Virtual Reality Techniques, in Proceedings of the 25th International Symposium on Industrial Robots (pp. 671–678). Hannover, Germany, 1994.Google Scholar
  10. 10.
    Friedrich, H. and Kaiser, M., What can Robots learn from Humans?, in IFAC Workshop on Human-Oriented Design of Advanced Robotic Systems (pp. 1–6). Vienna, Austria, 1995.Google Scholar
  11. 11.
    Heise, R., Demonstration Instead of Programming: Focussing Attention in Robot Task Acquisition, Research Report 89/360/22. University of Calgary, 1989.Google Scholar
  12. 12.
    Heise, R., Programming Robots by Example, Research Report 92/476/14. University of Calgary, 1992.Google Scholar
  13. 13.
    Ikeuchi, K., Kawade, M., and Suehiro, T., Towards Assembly Plan from Observation: Task Recognition with Planar, Curved and Mechanical Contacts, in Proceedings of the IEEE/RJS International Conference on Intelligent Robots and Systems (pp. 2294–2301). Yokohama, Japan, 1993.Google Scholar
  14. 14.
    Kaiser, M., Giordana, A., and Nuttin, M., Integrated Acquisition, Execution, Evaluation and Tuning of Elementary Skills for Intelligent Robots, in Proceedings of the IFAC Symposium on Artificial Intelligence in Real Time Control (pp. 145–150). Valencia, Spain, 1994.Google Scholar
  15. 15.
    Kaiser, M., Retey, A., and Dillmann, R. (1995), Robot skill acquisition via human demonstration, in Proceedings of the International Conference on Advanced Robotics (pp. 763–768), Barcelona, Spain, 1995.Google Scholar
  16. 16.
    Kreuziger, J. and Hauser, M., A New System Architecture for Applying Symbolic Learning Techniques to Robot Manipulation, in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems. Yokohama, Japan, 1993.Google Scholar
  17. 17.
    Kuniyoshi, Y., Masayuki, I., and Inoue, H., Learning by watching: Reusable task knowledge from visual observation of human performance. IEEE Transactions on Robotics and Automation, 10, pp. 799–822, 1994.Google Scholar
  18. 18.
    Liu, S. and Asada, H., Teaching and training of deburring robots using neural networks, in IEEE International Conference on Robotics and Automation (pp. 339–345), 1993.Google Scholar
  19. 19.
    Lozano-Perez, T., Robot Programming, in Proceedings of the IEEE, 71, (pp. 821–841), 1983.Google Scholar
  20. 20.
    Maulsby, D.L. and Witten, I.H., Metamouse: An Instructable Agent for Programming by Demonstration, in A. Cypher (ed.), Watch What I Do: Programming by Demonstration. MIT Press, 1993.Google Scholar
  21. 21.
    McKerrow, P.J., Introduction to Robotics, in Electronic Systems Engineering. Addison-Wesley, 1991.Google Scholar
  22. 22.
    Milne, R., Building Successful Applications: The Wrong Way and the Right Way, in G. Barth et al. (eds.), KI-94 — Anwendungen der Künstlichen Intelligenz. Springer, 1991.Google Scholar
  23. 23.
    Münch, S., Kreuziger, J., Kaiser, M., and Dillmann, R., Robot Programming by Demonstration (RPD) — Using Machine Learning and User Interaction Methods for the Development of Easy and Comfortable Robot Programming Systems, in Proceedings of the 25th International Symposium on Industrial Robots (pp. 685–693). Hannover, Germany, 1994.Google Scholar
  24. 24.
    Münch, S., Sassin, M., and Bocionek, S., The Application of PbD Methods to Real-World Domains: Two Case Studies, in Proceedings of the 7th Australian Joint Conference on Artificial Intelligence (pp. 92–99). Armidale, Australia, 1994.Google Scholar
  25. 25.
    Neubauer, W., Bocionek, S., Möller, M., and Rencken, W., Learning Systems Behavior for the Automatic Correction and Optimization of Off-line Robot Programs, in Proceedings of the IEEE International Conference on Intelligent Robots and Systems, Raleigh, 1992.Google Scholar
  26. 26.
    Sassin, M., Creating user-intended programs with programming by demonstration, in Proceedings of the IEEE/CS Symposium on Visual Languages (pp. 153–160). St. Louis, Missouri, 1994.Google Scholar
  27. 27.
    Segre, A.M., Machine Learning of Robot Assembly Plans. Kluwer Academic Publishers, 1988.Google Scholar
  28. 28.
    Thrun, S.B. and Mitchell, T.M., Integrating Inductive Neural Network Learning and Explanation-based Learning, in Proceedings of the 13th International Joint Conference on AI (pp. 930–936). Chambery, France, 1993.Google Scholar
  29. 29.
    Ude, A., Trajectory Generation from Noisy Positions of Object Features for Teaching Robot Paths. Robotics and Autonomous Systems, 11, pp. 113–127, 1993.Google Scholar
  30. 30.
    Ude, A., Bröde, H., and Dillmann, R., Object Localization Using Perceptual Organization and Structural Stereopsis, in Proceedings of the 3rd International Conference on Automation, Robotics and Computer Vision, Singapore, 1994.Google Scholar
  31. 31.
    Waibel, A., Hanazawa, T., Hinton, G., Shikano, K., and Lang, K., Phoneme recognition using time-delay neural networks. IEEE Transactions on acoustics, speech and signal processing, pp. 328–339, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • R. Dillmann
    • 1
  • H. Friedrich
    • 1
  1. 1.Institute for Real-Time Computer Systems and RoboticsUniversity of KarlsruheKarlsruheGermany

Personalised recommendations