PROGRAMMING ROBOTS BY EXAMPLE

Date
1992-05-01
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
This paper presents a prototypical machine learning system \s+1(E\s-1TAR\s+1)\s-1 that acquires programs for robot tasks. The long term goal of this project is to discover how to make computer technology, in particular robots, more useful to (and controllable by) people in general. Rather than require programming expertise, the idea is to build a system which learns robot programs from users' examples. Thus the \s+1E\s-1TAR learning algorithm begins by sampling the robot path while a user physically leads it through the task. A general procedure, possibly containing loops, branches, and variables, is induced from these examples. The \s+1E\s-1TAR algorithm is novel since an implicit focus mechanism is used to control the entire generalization process. The focus forces \s+1E\s-1TAR to concentrate on the important domain objects, thus eliminating useless steps and translating the sampled sequence into a series of robot primitive motions. Loops and branches are introduced as the focus objects repeat or differ. Finally, robot positional variables are introduced as functions of the common characteristics of the objects in the focus. The programs that \s+1E\s-1TAR generates for three tasks --- block stacking, obtaining an object with a certain characteristic, and sorting --- are shown to provide an intuitive feel for the types of tasks that \s+1E\s-1TAR can learn. The paper concludes with a general discussion of the current issues in programming by example and describes how this new learner is related to previous systems in this area. \s+1E\s-1TAR has been implemented on an Excalibur robot.
Description
Keywords
Computer Science
Citation