If you are interested in learning about the research and development (R&D) of autonomous vehicles, you really should read this book. It is an absolute must-read for people working in this domain; it is up to date (in an area that evolves very quickly) and full of references, and presents both a very good overview and a detailed discussion about some specific methods adopted in the development of autonomous ground vehicles.
This is not a collection of chapters/papers from different research groups describing different and disconnected approaches. The author does not try to present all the different approaches currently adopted in the development of autonomous vehicles, although he references several different related works in this domain. Instead, the book describes step by step the proposed hybrid architecture, and its components and techniques, designed, implemented, and adopted by the author’s research group. A general framework (hybrid control architecture and its components) for implementing autonomous mobile ground vehicles is presented. Simulations and real-world experiments are presented and discussed, demonstrating the validity, safety, flexibility, and reliability of the proposed architecture. The flexibility comes from the fact that this hybrid multi-controller architecture can be adopted in different models of mobile robots (from holonomic/unicycle mobile robots to tricycle and car-like vehicles), and it also allows for the implementation of robust and safe behaviors (for example, avoiding obstacles, target tracking, and reaching), global and local planning, navigation schemes with path/way following, and single or multi-robot systems (MRS, from swarms to vehicles in convoys). The hybrid architecture and modularity of the proposed system can integrate reactive behaviors with cognitive task execution, and the interesting scheme adopted for combining all components and behaviors is the key for the achievements of this framework.
Chapter 1 presents an introduction and overview of the main concepts and paradigms related to autonomous ground vehicles, along with an interesting discussion about control, planning, and mobile robot architectures. Also, aspects related to a reactive versus cognitive approach and centralized versus decentralized control are presented. The only thing missing is a better discussion and presentation of vehicle perception, which is very important. Perception is oversimplified in this book, and there is no detailed information about real sensors, types of sensors, problems in 3D perception, uncertainty, precision, noise, and so on. The author considers perception as an “external and solved problem,” since the proposed approach considers that the data comes from external sources and it is already treated and made available in an adequate way to the reactive/cognitive modules. Readers should search for complementary sources of information related to vehicle perception in order to have a more complete view of the topic.
Chapter 2 presents the author’s proposition of robust and safe controllers for avoiding obstacles and being attracted by target points. The general proposed framework defines set-point attributes (x, y, orientation, speed), the control laws, and the concept of parallel elliptic limit-cycle (PELC) that allows for the description/avoidance of obstacles in a safe way, that is, implementing safe and stable obstacle avoidance and target tracking (set-point based) controllers. Chapter 3 presents how to deal with smooth switching controllers, allowing the implementation of hybrid-continuous/discrete (CD) multi-controller architectures. The hybrid-CD allows for switching, for example, from a target tracking behavior to an obstacle avoidance behavior, smoothly and safely (stable controllers).
Chapter 4 describes the reactive/cognitive hybrid architecture (hybrid-RC), which integrates reactive behaviors with high-level path planning approaches. Optimal path generation methods based on PELC (PELC* and gPELC*) are described. These path generation methods compete with other well-known methods from the literature, for example, RRT or A* based algorithms, but in the present case the author uses PELC as the base concept. In chapter 5, all of the presented concepts are put together in order to implement a real-world autonomous vehicle navigation system. The proposed system allows for the creation of optimal waypoints, but it also can use a pre-generated reference trajectory (waypoints). The proposed approach also allowed for the testing of a safe and reliable multi-vehicle navigation system (leader following). Real-world tests are demonstrated using VipaLab vehicles in the PAVIN platform for urban environment tests. Finally, chapter 6 presents a very interesting description of cooperative control of multi-robot systems, implemented using the proposed framework, that is shown to be adequate and can be adapted to allow this kind of application. In conclusion, this is a very interesting book, describing a well-proposed architecture and framework for implementing different autonomous vehicle applications (single or multi-vehicle).