Artificial Intelligence 59 (1993) 221-224 Elsevier
221
ARTINT 982
Retrospective on "The organization of expert systems, a tutorial" Mark Stefik Xerox Corporation, Palo Alto Research Center, 3333 Coyote Hill Road, Palo Alto, CA 94304, USA
Jan S. Aikins Trinzic Corporation, 101 University, Palo Alto, CA 94301, USA
Robert Balzer USC, Information Sciences Institute, Marina del Rey, CA, USA
John Benoit The MITRE Corporation, McLean, VA, USA
Lawrence Birnbaum The Institute for the Learning Sciences and Department of Electrical Engineering and Computer Science, Northwestern University, Evanston, IL 60201, USA
Frederick Hayes-Roth Cimflex Teknowledge Corp., 1810 Embarcadero Road, Palo Alto, CA, USA
Earl D. Sacerdoti Machine Intelligence Corporation, Palo Alto, CA, USA
The context In August 1980, the first meeting of the American Association of Artificial Intelligence was held at Stanford University. In contrast to earlier AI Correspondence to: M. Stefik, Xerox Corporation, Palo Alto Research Center, 3333 Coyote Hill Road, Palo Alto, CA 94304, USA. E-mail:
[email protected].
0004-3702/93/$ 06.00 @ 1993 - - Elsevier Science Publishers B.V. All rights reserved
222
M. Stefik et aL
conferences, there was a new and very visible presence of people with strong commercial interests in AI--as venture capitalists, representatives of large corporations, and AI'ers turned entrepreneurs. There was a pervasive sense that AI was beginning to leave the confines of research laboratories and to take root in many different and practical settings. A week or so after the conference, the National Science Foundation and the Defense Advanced Research Projects Agency co-sponsored a workshop on expert systems in San Diego. The conference organizers were Frederick Hayes-Roth, Don Waterman, and Douglas Lenat. The purpose of the workshop was to organize the writing of an edited book about expert systems. Workshop participants believed that expert systems were becoming a hot topic. The topic did not have clear boundaries. Defining those boundaries and articulating the practice of the field was the purpose of the workshop. The participants were organized in groups corresponding to book chapters. The authors of this paper were the members of the "architecture" committee with Mark Stefik as its chair. During the conference the committee worked intensively for three days to organize its ideas. Two large tablets of flip charts were filled out, critiqued by members, ordered and collected. Over the next few months we turned these notes into a more finished work. Ultimately, the work was published in three forms. In the book Building Expert Systems [ 1 ], the work was split into two chapters. The first chapter was a brief introduction to vocabulary and basic concepts about symbols, search, and symbolic reasoning. The second chapter included a sampling of roughly characterized tasks for which expert systems were being built and a "pedagogical tour" of organizational prescriptions for increasingly difficult cases. The material in the second chapter appeared in print first as the tutorial in Artificial Intelligence [3]. To help meet the demand for reprints, the complete work was also distributed as a Xerox PARC technical report.
Contributions of the work
The tutorial offered a way of thinking about a familiy of representation and problem solving approaches. For the more complex examples, this amounted to a selection from what we considered to be the "big ideas" of AI, described in a context of their application. The first case on the pedagogical tour was the simplest. We characterized it as having a small search space, with reliable and unchanging data describing the problem, and with reliable knowledge for guiding the search. These characteristics precluded the need to adjust for errorful or noisy data. They precluded the need to represent the search hierarchically or to use nonmonotonic reasoning.
The organization of expert systems
223
The rest of the cases were organized in a tree in which the constraints on problem characteristics were progressively relaxed, admitting more difficult problems and requiring more sophisticated approaches for representation and reasoning. Concepts introduced in the tour included Bayesian approaches to probabilistic reasoning, fuzzy logic, approaches for representing time-varying data, hierarchical generate-and-test, match methods, hierarchical planning, representations for interacting goals in planning problems, nonmonotonic reasoning, use of multiple lines of reasoning, and use of multiple cooperating models as in many blackboard systems. The tutorial projected an engineering attitude in describing techniques and approaches used in AI systems of the time. Although the techniques and approaches were not new to the paper, they were explained in a unified context to make them more comparable for people in AI and more accessible to people who were entering the field. It was a selected introduction to the literature of AI bearing on architectural choices of expert system design.
Side-effects Our tutorial provided an entry point to AI and expert systems. The collecting of citation index counts in this issue are the first attempt we know of to measure the influence of this and other AI papers. The only other information we had is that we received several hundred requests for reprints. We had also heard testimonials from many people who found that they could classify their problems and systems along the dimensions we suggested and build systems following the guidance. The area of expert system architecture has not advanced significantly in the last decade. Most commercial systems that were built correspond to architectures early within our tour. Most of that effort necessarily has gone into simple, high leverage applications. Most of the system building was involved in integration with conventional programming and databases.
Retrospecting and prospecting During the last decade, research has taken a swing toward analysis. General frameworks of understanding are being replaced by specialized studies. It is no longer unusual to model problem solving as search, to use heuristic knowledge to reduce the time complexity of search from exponential to linear, or to use different kinds of symbolic models for different kinds of problems. Rather, the field has specialized toward doing detailed comparisons of alternative models. We are better able to characterize the structural richness of search spaces. Substantially more powerful mathematical tools
224
M. Stefik et al.
are employed to analyze performance, especially at what we now call the symbol level. Knowledge level issues, however, are still less well defined. Current commercial efforts in the creation of task-specific shells are taking place in pragmatic settings, without much coordinated support from research. In this context, the area of expert systems--now more-often called knowledge systems--is again attracting students from outside of computer science. Today in universities, interest in building expert systems is shifting to engineering and science departments where the creation and study of particular computational models is seen as advancing its subject matter. Within a department of (say) civil engineering, chemistry, or business, building an expert system is not "just an application of AI". Rather it is a way of expressing knowledge in a computational medium. People in these fields are engaged in building increasingly competent and complex models. The perspective of a knowledge medium raises new kinds of questions about the creation, encoding, and reuse of knowledge. There is a growing interest in the sharing of computational models. Projects for building large, knowledge bases for experimental reuse are being advocated and in some cases are underway. One of the questions we were asked to answer in this retrospective is what we would do differently given what we know today. One member of the original architecture group--Mark Stefik--has been writing a textbook, Introduction to Knowledge Systems [2], that is in many ways a follow-on to the original paper. The book is for model builders who want to understand how a computational medium can represent knowledge, reason with it, and create it. It is for those who want to automate some knowledge-intensive task and who expect to use knowledge systems. Persons interested in finding out more about that or in course testing draft versions of the text are invited to contact the publisher, Morgan Kaufmann.
References [ 1] F. Hayes-Roth, D.A. Waterman and D.B. Lenat, eds., Building Expert Systems (AddisonWesley, Reading, MA, 1983). [2] M.J. Stefik, Introduction to Knowledge Systems (Morgan Kaufmann, San Mateo, CA, in preparation). [3] M. Stefik, J.S. Aikins, R. Balzer, J. Benoit, L. Birnbaum, F. Hayes-Roth and E.D. Sacerdoti, The organization of expert systems, a tutorial, Artif Intell. 18 (2) (1982) 135-173.