3.2.3. High Level

At the highest level, we define the task management module. A task gets completely defined by a specific combination of modules. Therefore the task manager is in charge of deciding which modules of the lower layers will be executed. This module can also serve as a high-level interface with the agent (the user) or other robots, allowing to develop collaborative robotics applications, which is a relevant topic [38]. This last feature covers one of the limitations of the navigation stack described in [26].
