Context-Sensitive Asynchronous Memory
Total Page:16
File Type:pdf, Size:1020Kb
CONTEXT-SENSITIVE ASYNCHRONOUS MEMORY A General Experience-Based Method for Managing Information Access in Cognitive Agents A Thesis Presented to the Academic Faculty by Anthony G. Francis, Jr. In partial fulfillment of the requirements for the Degree Doctor of Philosophy in Computer Science Georgia Institute of Technology Atlanta, Georgia August 2000 Copyright © 1997-2000 Anthony G. Francis, Jr. Context Sensitive Asynchronous Memory by Anthony G. Francis, Jr. Permission is granted to create and distribute copies of this dissertation for academic research, as long as it is distributed without changes and this copyright notice and permission notice are included on all copies. For additional permissions, please contact the author. ii Context-Sensitive Asynchronous Memory Approved: Ashwin Ram, Chairman College of Computing Kurt Eiselt College of Computing Ashok Goel College of Computing Janet L. Kolodner College of Computing Nancy Nersessian School of Public Policy Date Approved: __________ iii DEDICATION To Tony and Susan Francis. iv ACKNOWLEDGEMENTS To those who made it possible. First and foremost, I thank my parents, who gave me my life, every opportunity within their power, and the encouragement and support I needed to succeed. Mom, Dad: without you none of this would have been possible. Many thanks to Ashwin Ram, who, long before he became my advisor, often lent his ear in his office across the hall to many a crazy idea I had forming in my head. Later, as my advisor, he gave me guidance and wisdom, along with the support and encouragement I needed to pursue this very large thesis topic on its own terms. Somewhere between my parents and advisor, formative influences put me on the path to science, computing, and artificial intelligence. I never met Douglas Hofstadter or Isaac Asimov, but through their books Gödel, Escher, Bach: an Eternal Golden Braid and The Bicentennial Man they sparked my interest in artificial intelligence at a formative age. This interest flourished under my high school mentor Doctor Latimer, whose inspiration gave me the confidence to meet any challenge and whose loss still saddens me deeply. I must also thank Mr. O’Leary and Mike Farmer for encouraging my interests in science and computing. When I first came to Georgia Tech (oh so many years ago!) as an undergraduate, Kurt Eiselt helped me survive my senior year and has served as my mentor ever since. Janet v Kolodner helped me make the transition to graduate school, first by prodding me to apply and then by supporting and guiding my first year of research. In addition I also want to thank all the others who supported or aided me along my long and arduous PhD journey — beyond my advisor, these include the Air Force Office of Scientific Research; Manuela Veloso and Mike Cox at CMU; Marie desJardins, Mike Wolverton, and all my other friends at SRI; and of course Takashi Mizokawa and Naoki Sadakuni and all my friends at Yamaha. Making the path bearable was the camaraderie: I miss the days of the AI lab at the College of Computing, sharing cubicles, thoughts, ideas, program code and comic books with Kenneth Moorman, Gordon Shippey, Paul Rowlands, Marin Simina, Mark Devaney, Juan Carlos Santamaria, and all the rest. Later, Ashwin, Mark and I got together and founded Enkia, where we worked together to build things that none of us could have done alone. Supporting us were Ray Liuzzi at Air Force Rome Labs, Lloyd Solomon and others at the ATDC, Barry Rosenberg at GTRC, and many others. Technical thanks are due to many. First, thanks to the talented authors of the Open Source and Free Software platforms upon which much of this research was conducted, including the Linux operating system, the Xemacs text editor, and the WWW::Search library for Perl. Second, thanks are also due to Franz Incorporated for making its Allegro Common Lisp language, in which the Nicole, Nicole-MPA and core Nicole-IRIA vi systems were written, freely available on Linux for research. Thanks are also due to Sun Microsystems for making its Java development kit, in which the CAPABLE interface was written, similarly freely available. Thanks to Kenneth Moorman for providing a portion of the ISAAC knowledge base, which was used to test and exercise the CRYSTAL and MOORE systems during development. Finally, thanks are due to Mark Devaney for building the Perl data harvesting tools used in Nicole-IRIA, and for many hours spent categorizing the data sets used in the experimental evaluations; thanks are also due to Ashwin Ram for hours spent at the Nicole-IRIA interface collecting hundreds of data points by hand during the experimental tests. Thanks are also due to my thesis committee for helping me write the best thesis that I could: to Ashwin again for reading many, many drafts; to Kurt for tolerating my frequent visits to his office to bend his ear; to Janet for helping me make my scientific contributions explicit; to Nancy Nersessian for helping me make place my work in philosophical perspective; and to Ashok Goel for helping me make sure I crossed all the t's and dotted all the i's necessary to ensure a quality dissertation. And for this Centaur no list of acknowledgements would be complete without the Edge — David, Fred & Sophia, Derek, Cater, and Mike; William, Stuart, Eric, Gordon & Thavy, Yvette, Mark, and Eric & Cholly; and Shannon, Erin, Patsy. Thanks for being there for me when I needed you. vii And this one goes out to Big G, who put that dinosaur book in the Greenville County Library where I would find it. You know who you are. —the Centaur, 2000.07.18AD viii TABLE OF CONTENTS Dedication ____________________________________________________________ iv Acknowledgements_______________________________________________________v Table of Contents _______________________________________________________ ix Summary ____________________________________________________________ xvi PART I. Foundations ____________________________________________________1 CHAPTER I. Introduction __________________________________________________ 2 1.1. The Problem _________________________________________________________________6 1.1.1. What are Cognitive Agents? _________________________________________________7 1.1.2. What is Memory Retrieval? __________________________________________________8 1.1.3. Examples of Memory Retrieval in Cognitive Agents _____________________________11 1.1.4. Unpacking The Problem ___________________________________________________13 1.1.5. Why the Problem is Hard___________________________________________________27 1.1.6. Desiderata for a Solution ___________________________________________________30 1.1.7. Possibilities Raised By Interacting Constraints __________________________________32 1.1.8. Keys to A Solution________________________________________________________33 1.2. The Solution ________________________________________________________________35 1.2.1. Distinguishing Features of Context-Sensitive Asynchronous Memory________________36 1.2.2. The Context-Sensitive Asynchronous Memory Approach _________________________40 1.3. Applying The Solution ________________________________________________________46 1.4. Scope of the Approach ________________________________________________________50 1.5. The Claims__________________________________________________________________57 1.6. The Evidence ________________________________________________________________59 1.6.1. Claim 1: Interleaving Memory with Reasoning and Action is Useful_________________59 1.6.2. Claim 2: Context-Sensitive Asynchronous Memory Enables Interleaving _____________62 1.6.3. Claim 3: A Rich Representation Makes Context-Sensitive Asynchronous Memory Domain- Independent __________________________________________________________________66 1.6.4. Claim 4: Communication, Integration and Control are Required ____________________67 1.7. Benefits and Contributions _____________________________________________________70 1.7.1. Benefits to Users and Tasks_________________________________________________70 1.7.2. Contributions to Artificial Intelligence ________________________________________71 1.8. Outline of the Thesis __________________________________________________________74 CHAPTER II. Related Work________________________________________________ 77 2.1. Existing Approaches and their Limits _____________________________________________79 2.2. Evaluating Memory Approaches _________________________________________________80 2.2.1. Functional Capabilities of Memory Systems ____________________________________82 2.2.2. Performance Characteristics of Memory Systems ________________________________83 2.2.3. Technologies for Memory Retrieval __________________________________________85 2.3. Apparent Tradeoffs and Opportunities ____________________________________________88 2.4. Meeting the Desiderata ________________________________________________________91 2.4.1. Desideratum 1: Able to store a wide variety of information ________________________92 ix 2.4.2. Desideratum 2: Provides a general method for accessing information ________________99 2.4.3. Desideratum 3: Scales to large multifunction knowledge bases ____________________108 2.4.4. Desideratum 4: Manages cost of retrieval _____________________________________118 2.4.5. Desideratum 5: Preserves accuracy of retrieval (in the face of resource limits) ________122 2.4.6. Desideratum 6: Exploits task/environmental information _________________________126 2.4.7. Desideratum 7: Exploits extra resources if available_____________________________137 2.4.8. Desideratum