Page 173 - Introduction to AI Robotics
P. 173

156
                                                                          5 Designing a Reactive Implementation
                                     are they integrated into a system? The Reactive movement and early work
                                     described in Ch. 4 was characterized by robots running a very small set of
                   EMERGENT BEHAVIOR  behaviors which were combined internally to produce an overall emergent
                                     behavior. The key components of a reactive architecture were shown to be
                                     the behaviors plus the mechanism for merging the output of the concurrent
                                     behaviors.
                   SERIES OF BEHAVIORS  However, many applications are best thought of as a series of behaviors,
                                     each operating in a recognizable sequence. One of the first popular appli-
                                     cations that many roboticists looked at was picking up and disposing of an
                                     empty soft drink can. This involved search for a can, move toward the can
                                     when it is found, pick up the can, search for the recycle bin, move toward
                                     the recycle bin, drop the can. 39;129;66  It’s counterintuitive to think of these be-
                                     haviors as being concurrent or merged. (There is certainly the possibility of
                                     concurrency, for example avoiding obstacles while moving to the soda can
                                     or recycle bin.) Therefore, new techniques had to be introduced for control-
                                     ling sequences of behaviors. Most of these techniques are conceptually the
                                     equivalent of constructing a macro behavior, where the schema structure is
                                     used recursively to simplify programming the control program.
                                       This chapter attempts to aid the novice designer in constructing a reac-
                                     tive robot system by addressing each of these two deficits. First, an object-
                                     oriented programming approach to designing behaviors is introduced. This
                                     approach is based on schema theory, which was introduced in Ch. 3. The
                                     “art” of design is presented in a flow chart following the waterfall method
                                     of software engineering, along with a case study of a winning entry in the
                                     1994 International Association for Unmanned Systems’ Unmanned Ground
                                     Robotics Competition. The case study emphasizes the importance of estab-
                                     lishing the ecological niche of a reactive robot. Second, two techniques for
                                     managing sequences of behaviors are introduced: finite-state automata and
                                     scripts. As could be expected from the material presented in Ch. 3, both of
                                     these techniques will look very similar to the Innate Releasing Mechanisms
                                     from Tinbergen and Lorenz. Finally, the chapter shows how these techniques
                                     were applied to entries in the “Pick Up the Trash” events of the 1994 AAAI
                                     and 1995 IJCAI Mobile Robot Competitions. The focus of these examples is
                                     how the logic for coordinating a sequence of behaviors is developed, repre-
                                     sented, and implemented. The use of schemas to “factor out” and program a
                                     small set of generic behaviors rather than designing a large set of specialized
                                     behaviors is emphasized throughout the chapter.
   168   169   170   171   172   173   174   175   176   177   178