Learning Task Constraints from Generalization

  • The ability to learn new knowledge is essential for any robot to be successful in real-world applications where it would be impractical for a robot designer to endow it with all the necessary task capabilities that it would need during its operational lifetime. Therefore, it becomes necessary that the robot is able to acquire this information in a human-like teaching approach. While significant research has been performed in the area of learning motor behavior primitives from a teacher’s demonstration, the topic of learning of the general task knowledge has not been sufficiently addressed. In learning general task knowledge, the main challenge for the learner is to extract all the necessary information pertaining to the task, eliminate all the observations that are irrelevant and generalize the correct task representation in the case when multiple, possibly different demonstrations are given.
  • In this work we developed an algorithm that enables generalization of correct and complete task knowledge from a small number of demonstrations of the same task, under the assumption of possibly very different demonstrations provided to the learner. We assume that the learner robot is equipped with a basic set of capabilities or skills; the robot is aware of the goals each of these skills accomplish and also under which conditions these skills can or should be executed. During the learning stage, the learner robot is presented with a set of training examples with which it makes a generalized representation graph structure for each of the skills. These generalized representation graphs are used in the execution part to create an execution sequence that achieves the task at hand. A significant advantage of the proposed method is these generalized representation graphs are always consistent with the training samples. In addition, this approach allows the robot to execute the learned tasks in collaboration with a human user: the user can help the robot by performing some parts of the task and the robot takes into account the user’s actions in order to finish up the task.

The videos illustrate teaching a task of mixing ingredients for cookies based on ordering of task steps: robot mixing cookie ingredients (Pink/Red bowl (right) - Flour, Yellow bowl (middle) - Sugar, Green bowl (left) - Chocolate Chips, Blue bowl (front) - Mixing bowl). For details of the experimemnts see the [scripts description].

Scenario 1 - training


Scenario 1 - testing: robot performing learned task

Scenario 1 - testing: robot performing learned task with helper

Scenario 2 - training example 1


Scenario 2 - testing: robot performing learned task

Scenario 2 - training example 2


Scenario 2 - testing: robot performing learned task

Scenario 3 - training


Scenario 3 - testing: robot performing learned task

Scenario 4 - training


Scenario 4 - testing: robot performing learned task

Scenario 6 - training


Scenario 6 - testing: robot performing learned task

Scenario 7 - training


Scenario 7 - testing: robot performing learned task

  • Design and Evaluation of Methods for Robot Learning by Demonstration, National Science Foundation, Early Career Development Award (CAREER), PI, Amount: $410,000, January 15, 2006 - January 14, 2011.