» 

Wikipedia

Wikipedia

Programming by demonstration

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In computer science, programming by demonstration (PbD) is an End-user development technique for teaching a computer or a robot new behaviors by demonstrating the task totransfer directly instead of programming it through machine commands.

The terms programming by example (PbE) and programming by demonstration (PbD) appeared in software development research as early as the mid 1980s[1] to define a way to define a sequence of operations without having to learn a programming language. The usual distinction in literature between these terms is that in PbE the user gives a prototypical product of the computer execution, such as a row in the desired results of a query; while in PbD the user performs a sequence of actions that the computer must repeat, generalizing it to be used in different data sets.

These two terms were first undifferentiated, but PbE then tended to be mostly adopted by software development researchers while PbD tended to be adopted by robotics researchers. Today, PbE refers to an entirely different concept, supported by new programming languages that are similar to simulators.

Contents

Robot programming by demonstration

The PbD paradigm is first attractive to the robotics industry due to the costs involved in the development and maintenance of robot programs. In this field, the operator often has implicit knowledge on the task to achieve (he/she knows how to do it), but does not have usually the programming skills (or the time) required to reconfigure the robot. Demonstrating how to achieve the task through examples thus allows to learn the skill without explicitly programming each detail.

The first PbD strategies proposed in robotics were based on teach-in, guiding or play-back methods that consistedbasically in moving the robot (through a dedicated interface or manually) through a set of relevant configurations that the robotshould adopt sequentially (position, orientation, state of the gripper). The method was then progressively ameliorated byfocusing principally on the teleoperation control and by using different interfaces such as vision.

However, these PbD methods still used direct repetition, which was useful in industry only when conceiving an assembly line using exactly the same product components. To apply this concept to products with different variants or to apply the programs to new robots, the generalization issue became a crucial point. To address this issue, the first attempts at generalizing the skillwere mainly based on the help of the user through queries about the user's intentions. Then, different levels of abstractions wereproposed to resolve the generalization issue, basically dichotomized in learning methods at a symbolic level or at a trajectory level.

The development of humanoid robots naturally brought a growing interest in robot programming by demonstration. As a humanoid robot is supposed by its nature to adapt to new environments, not only the human appearance is important but the algorithms used for its control require flexibility and versatility. Due to the continuously changing environments and to the huge varieties of tasks that a robot is expected to perform, the robot requires the ability to continuously learn new skills and adapt the existing skills to new contexts.

Research in PbD also progressively departed from its original purely engineering perspective to adopt an interdisciplinary approach, taking insights from neuroscience and social sciences to emulate the process of imitation in humans and animals. With the increasing consideration of this body of work in robotics, the notion of Robot programming by demonstration (also known as RPD or RbD) was also progressively replaced by the more biological label of Learning by imitation.

References

  1. ^ Halbert, Dan (November 1984). Programming by Example. U.C. Berkeley (PhD diss.). http://www.halwitz.org/halbert/pbe.pdf. Retrieved 2008-05-26. 

External links

  • Special Issues in Journals
    • [1] IEEE Transaction on Systems, Man, and Cybernetics, Special Issue on Robot Learning by Observation, Demonstration, and Imitation, Part B, 37:2, April 2007
    • RSJ Advanced Robotics, Special Issue on Imitative Robots. Vol. 21, No. 13.
    • Neural Networks, Special issue on The Neural Mechanisms of Imitation Learning, Elsevier Ltd.
    • Robotics & Autonomous Systems, special issue on The Social Mechanisms of Robot Programming by Demonstration, Elsevier Ltd, 2006.
  • Key Laboratories and People
    • [2] LASA laboratory at EPFL: Machine Learning techniques for Robot Programming by Demonstration
    • [3] CLMC Lab at USC: Reinforcement Learning and Learning of Motor Primitives
    • http://www.calinon.ch/research.php Sylvain Calinon's webpage on interactive teacher-student (or better trainer/coach-trainee/client) kinesthetic demonstration.
    • [4] Darrin Bentivegna's work on teaching air hockey to a humanoid robot
  • Community activities on closely related topics
    • [5] IEEE Robotics and Automation's Technical Committee on Human-Robot Interaction & Coordination
    • [6] IEEE Robotics and Automation's Technical Committee on Robot Learning

Videos

A robot that learns to cook an omelet([7] Short Version;

  • [8] Long Version)

See also

 

All translations of Programming by demonstration


sensagent's content

  • definitions
  • synonyms
  • antonyms
  • encyclopedia

Dictionary and translator for handheld

⇨ New : sensagent is now available on your handheld

   Advertising ▼

sensagent's office

Shortkey or widget. Free.

Windows Shortkey: sensagent. Free.

Vista Widget : sensagent. Free.

Webmaster Solution

Alexandria

A windows (pop-into) of information (full-content of Sensagent) triggered by double-clicking any word on your webpage. Give contextual explanation and translation from your sites !

Try here  or   get the code

SensagentBox

With a SensagentBox, visitors to your site can access reliable information on over 5 million pages provided by Sensagent.com. Choose the design that fits your site.

Business solution

Improve your site content

Add new content to your site from Sensagent by XML.

Crawl products or adds

Get XML access to reach the best products.

Index images and define metadata

Get XML access to fix the meaning of your metadata.


Please, email us to describe your idea.

WordGame

The English word games are:
○   Anagrams
○   Wildcard, crossword
○   Lettris
○   Boggle.

Lettris

Lettris is a curious tetris-clone game where all the bricks have the same square shape but different content. Each square carries a letter. To make squares disappear and save space for other squares you have to assemble English words (left, right, up, down) from the falling squares.

boggle

Boggle gives you 3 minutes to find as many words (3 letters or more) as you can in a grid of 16 letters. You can also try the grid of 16 letters. Letters must be adjacent and longer words score better. See if you can get into the grid Hall of Fame !

English dictionary
Main references

Most English definitions are provided by WordNet .
English thesaurus is mainly derived from The Integral Dictionary (TID).
English Encyclopedia is licensed by Wikipedia (GNU).

Copyrights

The wordgames anagrams, crossword, Lettris and Boggle are provided by Memodata.
The web service Alexandria is granted from Memodata for the Ebay search.
The SensagentBox are offered by sensAgent.

Translation

Change the target language to find translations.
Tips: browse the semantic fields (see From ideas to words) in two languages to learn more.

last searches on the dictionary :

6910 online visitors

computed in 0.047s

   Advertising ▼

Advertize

Partnership

Company informations

   Advertising ▼