Page 240 - The Definitive Guide to Building Java Robots
P. 240

Preston_5564C07.fm  Page 221  Monday, September 26, 2005  5:38 AM





                        CHAPTER 7

                        ■ ■ ■

                        Navigation












                            Though we travel the world over to find the beautiful, we must carry it with us or we
                            find it not.

                                                                              — Ralph Waldo Emerson


                        7.0 Introduction

                        Navigation is one of the holy grails of robotics. Of all the challenges in robotics, navigation has
                        the most applications. If you want a robot that can clean a rug, mop a floor, mow a lawn, or
                        deliver medicine, all you need is a robot that can navigate.
                            You will find soon after you begin navigation with your robot that many unforeseen,
                        unplanned things will happen. They happen because your sensors didn’t interpret the envi-
                        ronment with the precision you would have liked. I call this poor data or poor interpretation
                        “noise.” In this chapter, we will start by having the robot navigate within an environment that
                        has little to zero noise and then increase the environment’s complexity and noise as we go.
                            Before I begin though, I’d like to introduce a little terminology. The terms come from a
                        branch of mathematics called Graph Theory.

                           •A vertex is a synonym for point or node and represents a single element of a set.
                           •An edge is a connection between vertices.
                           •A graph is the set of vertices V, and the edges of V.

                           •A simple graph is an unweighted, undirected graph.
                           •A directed graph indicates travel between two vertices in a specific direction only.

                           •A weighted graph is a graph with weights on the edges.
                            Figure 7-1 shows the different types of graphs.










                                                                                                         221
   235   236   237   238   239   240   241   242   243   244   245