The Simulated Evolution of Robot Perception
Total Page:16
File Type:pdf, Size:1020Kb
The Simulated Evolution of Robot Perception Martin C. Martin A Dissertation Submitted in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy in the field of Robotics Carnegie Mellon University Pittsburgh, PA Thesis Committee: Hans Moravec, chair Peter Cariani Illah Nourbakhsh Simon Penny © 2001 Martin C. Martin Abstract This dissertation tackles the problem of using genetic programming to create the vision subsystem of a reactive obstacle avoidance algorithm for a mobile robot. To focus the search on computationally efficient algorithms while dealing images from a non-toy problem, the represen- tation restricts computation to be over a window which moves vertically over the image. The evolved programs estimated the distance to the nearest object in various directions, given only a camera image as input. Using a typi- cal supervised learning framework, images of the environment were collected from the robot’s camera and the correct distance in various directions determined by hand. Evolving programs were evaluated on this fixed training set and compared to the hand determined answers. Once the evolution was complete, obstacle avoidance programs were written to use the best evolved programs, and the combined system used to control a robot. The approach can be seen as automating the iterative design pro- cess. A researcher’s main contribution is typically at a high level— techniques and frameworks—yet most time is spent on an example problem, trying different instantiations until one works. When faced with such a problem, one can usually think of a half dozen very different approaches, and even write them out in pseudo code. The technique proposed here can be seen as searching the space spanned by that pseudo code. In a series of experiments, programs were evolved in three different ways for two different environments to both create working systems and push the limits of the approach. Even in this nascent form, the evolved programs work about as well as existing, hand written systems. They used a number of architectures, including a recurrent mathematical for- mula and a series of if statements similar to a decision tree but with non-linear relations between as many as five image statistics. They suc- cessfully coded around peculiarities of the imaging process and exploited regularities of the environment. Finally, when given a repre- sentation so general as to cause the genetic algorithm to fail, and hand constructed rough answer was used as a “seed,” which the genetic algo- rithm successively modified to cut its error rate by a factor of 5.8. This dissertation grew out of my conviction that critiques of Artifi- cial Intelligence can be viewed constructively, as intellectual light- houses to guide us closer to the fundamental nature of thought, to the real problems at the heart of intelligence. To not address them, to work on techniques with fundamental flaws, would be fooling oneself no mat- ter how impressive the demonstrations. There seems to be something fundamental about AI that we are all missing, and I believe these cri- tiques bring us closer to it. This dissertation describes the experiments and their results, dis- cusses ways to develop them further, then presents critiques of AI and discusses the potential of this approach to overcome those critiques. L Acknowledgements First and foremost I would most like to thank Hans Moravec, my advi- sor and friend, for his support and encouragement. He has been kind enough to give me the one thing I desired most: the freedom to follow my own ideas, although they must have seemed to come from another planet. His wit and humour brightened hours of fascinating discussion about computers, the nature of reality, the culture and events of the 60s and 70s, and occasionally, robotics. Illah Nourbakhsh was a fabulous resource, always able to provide a deep insight no matter how brief the discussion. This work wouldn’t have succeeded as well as it did if it wasn’t for his thoughtful guidance. I am also grateful to Peter Cariani for his valuable comments and engag- ing discussion. His breadth of knowledge—from cybernetics to the mechanics of biological vision to how to write a dissertation—has helped my thinking both here and on larger issues. Simon Penny pro- vided friendship and a sympathetic view, especially for the broad strokes in the last chapter. Whenever I disparaged at what a technical audience would make of that chapter, I needed only think of Simon’s belief that technology can and should be aware of the culture surround- ing it. Peeter Piegaze was not only a cohort in my first explorations into genetic programming and computer vision as an undergrad, but a good friend who, like me, enjoyed few things more than an evening discuss- ing philosophy over a few pints. Sven Dickenson and John Tsotsos not only provided me my first research opportunity and coached me through it, but supported me in applying for graduate school and again when searching for a faculty position. Their kindness will never be forgotten. Jesse Eusades was not only a witty office mate who exposed me to new music and fashion, but a good friend, always ready to help out, whether with a drive home or to give up his Saturday to fix the robot when this dissertation was already late. Dottie Marsh was always ready with a laugh, and could perform administrative miracles getting me reimbursements from whatever scraps of paper I managed to save. I was lucky enough to have Marce Zaragoza and Suzanne Lyons Muth as guardian angels, heading off more administrative problems at the pass than I probably ever want to know. Several friends shared in the growing up I did over those years, and in my staying young. Garth Zeglin was there from the beginning to the end, and was always ready to grab a pint and talk of computers, politics, and life. John Murphy dragged me out, against my better judgement and to my great benefit, to go dancing and have fun; I dragged him into the lab to play Doom. And while Matt Deans and I only got to know each other for a short time before I left, he was always ready with a laugh and his friendship. Finally, I would like to thank my family. My brother has always shared my love of computers, and I will always be grateful that he has shown me new ways to enjoy them. And it was my parents’ high expec- tations of me in everything I did that led me to never compromise in my work. This dissertation would not have been possible without them. LLL &RQWHQWV Abstract iii Acknowledgements v 1Overview 1 Part I • Motivations 2 Related Work 13 3 Technical Framework 27 Part II • Experiments 4 Data Collection 39 5 Offline Learning: Basics 49 6 Expanded Representation 63 7 Focused Representation 79 8 Online Validation 105 Part III • Reflections 9 Discussion 117 10 Philosophy & Manifesto 133 References 155 2YHUYLHZ Introduction Artificial Intelligence (AI), the scientific and engineering endeavour of creating a machine that can think, has made great advances over the decades. Computers have beaten the best human chess players, speech recognition systems allow computers to respond to voice commands, and robots give tours of museums, reliably navigating rooms full of peo- ple. Yet the original goal of human-level mental competency has proven elusive. Perception is a key cognitive ability, and human perception has been shown to use very subtle and complex mechanisms, so vision seems as good a place as any to look for intelligence. Various authors have argued that embodiment and perception are key, and this disserta- tion does just that, creating a visually guided mobile robot. Creating systems of the subtlety and complexity of human vision has proven difficult to do by hand, so this dissertation uses Evolutionary Computation (EC) to create the vision subsystem, automating the pro- cess of testing and revising algorithms so common in robotics. These points are expanded at the end of this chapter and in the “Philosophy & Manifesto” chapter. Non-technical readers, and those primarily inter- ested in the broader implications of this dissertation, would do well to read that chapter first. Motivations The use of EC to create control programs for mobile robots is not new. The field, approximately 10 years old and known as Evolutionary Robotics, evaluates potential control programs by setting the robot to a task and seeing how well the program achieves it. This happens either in simulation or on a real robot, although the results are always vali- dated on a real robot. Previous evolutionary robotics work has incorporated video as a sensor, but to do so has forced the image through a huge bottleneck, to either three or sixteen pixels. With such a low resolution, only problems in carefully constructed worlds were possible. For the robot to be truly embodied in a real world environment, and to avoid all manner of obstacles using only vision, it requires more com- plex algorithms that respond to a larger part of the image. Simulating real images to the required fidelity would be a thesis in itself, if even possible at the speeds needed to support simulated evolution. However, evolving on the real robot is also not possible, since this limits the num- ber of evaluations, and hence the complexity of what can be evolved. In addition, without specifying any a priori structure for the evolved programs, the problem becomes many orders of magnitude harder than previous work. The input, essentially the amount of light in various directions, is simply too distantly related to the output, i.e. the direction to travel. For both these reasons, the control program was divided into two components, the vision subsystem and the navigation subsystem.