We use cookies to distinguish you from other users and to provide you with a better experience on our websites. Close this message to accept cookies or find out how to manage your cookie settings.
To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
Ever since we began to build software systems that interacted with humans, there have ethical concerns about the ways in which we interact with them. In [830], for example, Weizenbaum observes of the world’s first chatterbot that “ELIZA shows, if nothing else, how easy it is to create and maintain the illusion of understanding, hence perhaps of judgment deserving of credibility. A certain danger lurks there.”2 Fast forward more than 60 years, and this observation that a “certain danger lurks there” has emerged as a range of different concerns about the ways in which software (and hardware) systems are developed and deployed, and the range of data that modern data-driven systems rely upon. The space of machine ethics is vast, and a large number of texts, papers, and policy documents now exist on the subject.
Sensing is a key requirement for any but the simplest mobile behavior. In order for Robot to be able to warn the crew of Lost in Space that there is danger ahead, it must be able to sense and reason about its sensor responses. Sensing is a critical component of the fundamental tasks of pose estimation – determining where the robot is in its environment; pose maintenance – maintaining an ongoing estimate of the robot’s pose; and map construction – building a representation of the robot’s environment.
Robotic systems, and in particular mobile robotic systems, are the embodiment of a set of complex computational processes, mechanical systems, sensors, user interface, and communications infrastructure. The problems inherent in integrating these components into a working robot can be very challenging. Overall system control requires an approach that can properly handle the complexity of the system goals while dealing with poorly defined tasks and the existence of unplanned and unexpected events. This task is complicated by the non-standard nature of much robotic equipment. Often the hardware seems to have been built following a philosophy of “ease of design” rather that with an eye toward assisting with later system integration.
The ability to navigate purposefully through its environment is fundamental to most animals and to every intelligent organism. In this book we examine the computational issues specific to the creation of machines that move intelligently in their environment. From the earliest modern speculation regarding the creation of autonomous robots, it was recognized that regardless of the mechanisms used to move the robot around or the methods used to sense the environment, the computational principles that govern the robot are of paramount importance. As Powell and Donovan discovered in Isaac Asimov’s story “Runaround,” subtle definitions within the programs that control a robot can lead to significant changes in the robot’s overall behavior or action. Moreover, interactions among multiple complex components can lead to large-scale emergent behaviors that may be hard to predict.
Later chapters consider the algorithms and representations that make these capabilities possible, while this chapter concentrates on the underlying hardware, with special emphasis on locomotion for wheeled robots.
For autonomous robots it may seem like we can avoid needing the ability to make maps automatically. That is, it is sometimes assumed that a robot should be able to take for granted the a priori availability of a map. Unfortunately, this is rarely the case. Not only do architectural blueprints or related types of maps fail to be consistently reliable (since even during construction they are not always updated to reflect necessary alternations), but, furthermore, numerous aspects of an environment are not likely to appear on a map, such as tables, chairs, and transitory objects.
Although the vast majority of mobile robotic systems involve a single robot operating alone in its environment, a growing number of researchers are considering the challenges and potential advantages of having a group of robots cooperate in order to complete some required task. For some specific robotic tasks, such as exploring an unknown planet [374], search and rescue [812], pushing objects [608], [513], [687], [821], or cleaning up toxic waste [609], it has been suggested that rather than send one very complex robot to perform the task it would more effective to send a number of smaller, simpler robots.
Before delving into the harsh realities of real robots, it is worthwhile exploring some of the computational tasks that are associated with an autonomous system. This chapter provides a taste (an amuse bouche, if you will) of some of the computational problems that will be considered in later chapters. Here, these problems are considered in their simplest form, and many of the realities of autonomous systems are ignored. Rest assured, the full complexity of the problems are considered in later chapters.
Given the current state of mobile robotics, what can be considered essentially solved and what tasks remain? It is clear that for restrictive environments and for limited tasks, autonomous systems can be readily developed. Tasks such as parts delivery in a warehouse, materials transport in hospitals, limited autonomous driving, and so on can all be “solved” for tight definitions of the task and provided that sometime restrictive assumptions can be made concerning the environment.
Although many mobile robot systems are experimental in nature, systems devoted to specific practical applications are being developed and deployed. This chapter examines some of the tasks for which mobile robotic systems are beginning to appear and describes several existing experimental and production systems that have been developed.