Page 139 - Sensing, Intelligence, Motion : How Robots and Humans Move in an Unstructured World
P. 139

114    MOTION PLANNING FOR A MOBILE ROBOT

           At point C i the robot will define the next intermediate target, T i .Now addto
           (3.18) the obvious inequality |T i−1 T i |≤ [T i−1 T i ]:

                  {SC i }+ |C i T i−1 |+ |T i−1 T i |≤ [ST i−1 ] + [T i−1 T i ] = [ST i ]  (3.19)

           By the Triangle Inequality, we have

                                 |C i T i |≤|C i T i−1 |+ |T i−1 T i |   (3.20)

           Therefore, it follows from (3.19) and (3.20) that

                                   {SC i }+|C i T i |≤ [ST i ]           (3.21)

           which proves (3.15).
              Consider now the second case, C i−1 = T i−1 . Here the robot takes a step of
           length (C i−1 C i ) along the obstacle boundary (the Bug2 path, [C i−1 C i ]). Equation
           (3.16) becomes

                           {SC i−1 }+ [C i−1 C i ] ≤ [SC i−1 ] + [C i−1 C i ]  (3.22)

           where the left-hand side amounts to {SC i } and the right-hand side to [SC i ]. At
           point C i , the robot will define the next intermediate target, T i .Since |C i T i |≤
           [C i T i ], inequality (3.22) can be written as

                            {SC i }+|C i T i |≤ [SC i ] + [C i T i ] = [ST i ]  (3.23)

           which, again, produces (3.15). Since, by the algorithm’s design, at some finite i,
           C i = T ,then

                                       {ST }≤ [ST ]                      (3.24)

           which completes the proof. Q.E.D.

              One can also see from Figure 3.15 that when r v goes to infinity, algorithm
           VisBug-21 will generate locally optimal paths, in the following sense. Take two
           obstacles or two parts of the same obstacle, k and k + 1, that are visited by the
           robot, in this order. During the robot’s passing around obstacle k, once a point
           on obstacle k + 1 is identified as the next intermediate target, the gap between
           k and k + 1 will be traversed along the straight line, which presents the locally
           shortest path.
              When defining its intermediate targets, algorithm VisBug-21 could sometimes
           use points on the M-line that are not necessarily contiguous to the prior intermedi-
           ate targets. This would result in a more efficient use of robot’s vision: By “cutting
           corners,” the robot would be able to skip some obstacles that intersect the M-line
           and that it would otherwise have to traverse. However, from the standpoint of
           algorithm convergence, this is not an innocent operation: It is important to make
   134   135   136   137   138   139   140   141   142   143   144