Page 312 - Introduction to Autonomous Mobile Robots
P. 312

297
                           Planning and Navigation
                             The advantage of such switched control is particularly clear if switching is relatively
                           rare. If the behavior of each module is well understood, then it is easy to characterize the
                           behavior of the switched control robot: it will obstacle avoid at times, and it will path-
                           follow other times. If each module has been tested independently, there is a good chance
                           the switched control system will also perform well. Two important disadvantages must be
                           noted. First, the overall behavior of the robot can become quite poor if the switching is itself
                           a high-frequency event. The robot may be unstable in such cases, switching motion modes
                           so rapidly as to dramatically devolve into behavior that is neither path-following nor obsta-
                           cle avoiding. Another disadvantage of switched control is that the robot has no path-follow-
                           ing bias when it is obstacle avoiding (and vice versa). Thus in cases where control ought to
                           mix recommendations from among multiple modules, the switched control methodology
                           fails.
                             In contrast, the much more complex mixed parallel model allows control at any given
                           time to be shared between multiple modules. For example, the same robot could take the
                           obstacle avoidance module’s output at all times, convert it to a velocity vector, and combine
                           it with the path-following module’s output using vector addition. Then the output of the
                           robot would never be due to a single module, but would result from the mathematical com-
                           bination of both modules outputs. Mixed parallel control is more general than switched
                           control, but by that token it is also a more challenging technique to use well. Whereas with
                           switched control most poor behavior arises out of inopportune switching behavior, in
                           mixed control the robot’s behavior can be quite poor even more readily. Combining multi-
                           ple recommendations mathematically does not guarantee an outcome that is globally supe-
                           rior, just as combining multiple vectors when deciding on a swerve direction to avoid an
                           obstacle can result in the very poor decision of straight ahead. Thus great care must be taken
                           in mixed parallel control implementations to fashion mixture formulas and individual
                           module specifications that lead to effective mixed results.
                             Both the switched and mixed parallel architectures are popular in the behavior-based
                           robotics community. Arkin [2] proposes the motor-schema architecture in which behaviors
                           (i.e., modules in the above discussion) map sensor value vectors to motor value vectors.
                           The output of the robot algorithm is generated, as in mixed parallel systems, using a linear
                           combination of the individual behavior outputs. In contrast, Maes [103, 104] produces a
                           switched parallel architecture by creating a behavior network in which a behavior is chosen
                           discretely by comparing and updating activation levels for each behavior. The subsumption
                           architecture of Brooks [45] is another example of a switched parallel architecture, although
                           the active model is chosen via a suppression mechanism rather than activation level. For a
                           further discussion, see [2].
                             One overall disadvantage of parallel control is that verification of robot performance can
                           be extremely difficult. Because such systems often include truly parallel, multithreaded
                           implementations, the intricacies of robot-environment interaction and sensor timing
   307   308   309   310   311   312   313   314   315   316   317