You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Robert edited this page Nov 21, 2022
·
4 revisions
Conceptual Overview
Task management is all about defining and managing tasks as reusable software modules. The modules can contain arbitrary developer-defined code, but often the benefit of such task modularization is prominent when each module represents a simple self-contained behavior, such as navigation or manipulation. Thus these primitive modules can be joined to form complex tasks, as depicted in Figure 1. Task management is a necessary component for complex robots that operate in dynamic environments as task specifications and requirements can change, both in the long term and throughout the deployment.
Figure 1: Complex tasks can be achieved by combining modular behavior primitives.
It is often optimal to distribute the task between multiple robots for wider area coverage (Figure 2) or for achieving capabilities normally unfeasible by individual robots alone (Figure 3).
Figure 2: A multi-robot task where two light-weight scout robots are responsible for locating an object of interest. When found, the less energy-efficient worker robot can direcly navigate to the object and manipulate it.
Figure 3: Autonomous object delivery task achieved by combining a mobile base and a static manipulator.