Emerald Group Publishing Limited
Copyright © 2008, Emerald Group Publishing Limited
Designing Autonomous Mobile Robots: Inside the Mind of an Intelligent Machine
John M. Holland15 December 2003ISBN: 978-0-7506-7683-0£36.99/55.95Newnes/Elsevier (http://books.elsevier.com/newnes/)www.elsevier.com/wps/find/bookdescription.cws_home/701199/description#description<>
The book certainly has an exciting title and presentation. I opened it with eagerness, remembering the excitement of events such as the Micromouse Contest. I took note of the warning that “This is not a book about `How to build' a robot” and read the initial cautionary tale about a discrete, single-level, state-driven approach to finding a way between two obstacles. In no time a flow diagram had blown out into a spider's web. (I detest flow diagrams. They are coffins to disguise the corpse of the “goto” statement!) Then follows a chapter on time-slicing, real-time kernels and the use of Visual Basic.
The fourth chapter gives a slant on fuzzy logic. I certainly agree with the “trapezoidal fuzzy logic” argument that you should add your analogue signals before applying a binary threshold, rather than trying to combine separate binary values. But here the true nature of the book starts to emerge. It is not about designing mobile robots, it is an encapsulation of the author's experience of years of working on security robots at Cybermotion.
In the fifth chapter, he approaches control theory with a homespun philosophy that Dr Phil might be proud of, using a concoction or rabbits and hounds. He seems to put his faith into a model-based prefiltering of demand signals to make sure that they will not cause any trouble. For communication, he prefers “blackboards” rather than rigid protocols.
On navigation, he gets into his stride, with a terminology all of his own. “Dead reckoning” becomes “live reckoning” while “wormholes” link adjoining maps. But there is certainly some “good stuff” concerning position uncertainty. He expounds on the “sonar ring” set of sensors, then suggests that the overall algorithm can be represented in terms of pain, fear and confidence.
In Chapter 17, he lists the abilities of defects to adopt all the malign cunning of Gremlins. (Have you read Roald Dahl's book, written in 1943?) Of the approaches to debugging that he describes, I susbscribe to “divide and conquer”.
He finishes with a look at the industry in general, and one might be forgiven a faint suspicion that there is a pitch for a new defence contract hidden in there somewhere.
It is an undemanding read, giving a heavily autobiographical slant on years of experience in the security robot business. I suggest that it will be of little use to hobbyists or undergraduates, struggling to pack machine-code algorithms into their embedded Atmel Mega. For those university researchers with a mobile robot sporting a ring of sonar sensors, a Microsoft operating system and gigabyte of on-board storage it might well prove inspirational, but I am not sure how much actual practical help it will give them.
John BillingsleyFaculty of Engineering and Surveying, University of Southern Queensland, Toowoomba, Australia