Page 307 - Introduction to Autonomous Mobile Robots
P. 307
Chapter 6
292
environment. It is also valuable to localize such high-level decision-making software,
enabling it to be tested exhaustively in simulation and thus verified even without a direct
connection to the physical robot. A final advantage of localization is associated with learn-
ing. Localization of control can enable a specific learning algorithm to be applied to just
one aspect of a mobile robot’s overall control system. Such targeted learning is likely to be
the first strategy that yields successful integration of learning and traditional mobile robot-
ics.
The advantages of localization and modularity prove a compelling case for the use of
principled navigation architectures.
One way to characterize a particular architecture is by its decomposition of the robot’s
software. There are many favorite robot architectures, especially when one considers the
relationship between artificial intelligence level decision making and lower-level robot
control. For descriptions of such high-level architectures, refer to [2] and [26]. Here we
concentrate on navigation competence. For this purpose, two decompositions are particu-
larly relevant: temporal decomposition and control decomposition. In section 6.3.3 we
define these two types of decomposition, then present an introduction to behaviors, which
are a general tool for implementing control decomposition. Then, in section 6.3.4 we
present three types of navigation architectures, describing for each architecture an imple-
mented mobile robot case study.
6.3.3 Techniques for decomposition
Decompositions identify axes along which we can justify discrimination of robot software
into distinct modules. Decompositions also serve as a way to classify various mobile robots
into a more quantitative taxonomy. Temporal decomposition distinguishes between real-
time and non real-time demands on mobile robot operation. Control decomposition identi-
fies the way in which various control outputs within the mobile robot architecture combine
to yield the mobile robot’s physical actions. Below we describe each type of decomposition
in greater detail.
6.3.3.1 Temporal decomposition
A temporal decomposition of robot software distinguishes between processes that have
varying real-time and non real-time demands. Figure 6.18 depicts a generic temporal
decomposition for navigation. In this figure, the most real-time processes are shown at the
bottom of the stack, with the highest category being occupied by processes with no real-
time demands.
The lowest level in this example captures functionality that must proceed with a guar-
anteed fast cycle time, such as a 40 Hz bandwidth. In contrast, a quasi real-time layer may
capture processes that require, for example, 0.1 second response time, with large allowable
worst-case individual cycle times. A tactical layer can represent decision-making that