Page 360 - Introduction to AI Robotics
P. 360

343
                                                                                 Hybrid Architecture
                                      9.5 Case Study of Topological Navigation with a
                                        As shown by the output, the Cartographer computes the path shown in
                                      the first line. The second line shows that the current navigational task is to
                                      move from R7 to H1. The Task Manager selects navigate-door and it begins
                                      by looking for the door since the user did not specify where it was. By ex-
                                      amining the database, the door is known to be to the south. Therefore, the
                                      behavior initiates the move-ahead behavior in the south direction. When the
                                      door is found, the initialization phase of the abstract behavior is over and the
                                      nominal activity of moving through the door is triggered. Once the robot is
                                      through the door, the nominal behavior is terminated, terminating the entire
                                      abstract behavior as well.
                                        The next navigational task is to move from H1 to H2, again in the direction
                                      south. The task manger selects navigate-hall. The task of moving from H2
                                      to H5 is interesting because it shows that the termination condition for hall
                                      following is different than for H1 to H2.Since H5 is a gateway to a room of
                                      interest, a different perceptual process is used to visually identify the room.
                                      Once the door has been identified visually, the robot is considered at H5.
                                      The H5-R2 connection instantiates navigate-door. However, in this case, the
                                      ultrasonics has not yet identified the door opening and so the initialization
                                      phase consists of wall following until the door opening is recognized. Then
                                      the nominal behavior is activated and the robot moves into the room, suc-
                                      cessfully completing the task.
                                        The second simulation shown in Fig. 9.13 uses the sample topological map
                                      provided prior to the competition. The intended path was R1-H1-F1-H8-
                                      -H0-R0,but H8-H0 was blocked. As shown in the figure, the robot detects
                                      that the path is blocked and uses move to goal to return to H8. The Cartogra-
                                      pher updates the topological map and computes a new route and the robot
                                      resumes execution, in this case H8-F1-H5-H6-H7-H0-R0. The output of the
                                      script below shows the robot confirming the nodes H5 and H6 even though
                                      the plan did not have them enter the associated rooms. These nodes were
                                      kept in the path because if another blocked hall was encountered, the robot
                                      would then be able to return to either R5 or R6 and attempt to use a route
                                      through the door between.



                               9.5.2  Navigation scripts

                                      The path planning and execution components are clearly deliberative. The
                                      Cartographer is maintaining a map in the form of a graph and is monitoring
                                      progress. The transition table takes the role of a high level sequencer. Scripts
   355   356   357   358   359   360   361   362   363   364   365