composition:task:start
Task-Level Composition for Robotic Behavior
-
It shows how tasks and skills can be composed flexibly
Several tasks can be composed to be executed in sequence or in parallel (horizontal composition)
A task can be refined with other tasks (vertical composition): Abstract tasks are refined to more concrete tasks.
Refinement of tasks may be static or dynamic
Static: The tasks and eventually the order is known. E.g. making coffee always involves approaching the machine, putting a cup into the machine, pressing the button, etc.
Dynamic: The tasks and the order are not known in advance (i.e. to be solved by symbolic planning): E.g. it is not known what is the best way to clean up the table after customers left (what order, what to stack into each other, what to carry at once/first/next/last, etc.)
Skills will finally translate to configurations of one or more components (lower right). E.g. moving the manipulator requires to configure the component for collision-free manipulation-planning in a certain environment and the manipulator component to move along these collission-free trajectories.
Grasp cup relies on the existence of a task “recognize-object” which is later bound to “recognize-cup”.
There are constraints that have to be maintained during the execution of a task, for example: the robot is not moving while manipulating.
There are results of a task that effect execution of other tasks, even after the current task was finished. For example, grasping a cup means that the cup still is in the gripper after the execution is done.
See also
Acknowledgement
This document contains material from:
composition:task:start · Last modified: 2019/05/20 10:50
http://www.robmosys.eu/wiki-sn-03/composition:task:start