Editorial: Developments in Expert Systems

It is now over 15 years since the DENDRAL research group at Stanford demonstrated the potential of the young discipline of Artificial Intelligence to undertake problemsolving in complex, real-world domains. In contrast to much of the work being conducted at the time, which sought principally to develop powerful, general purpose problem-solving methods, the Stanford group took the alternative approach of mechanizing the domain knowledge actually used by experts. Thus, the DENDRAL program successfully achieved its objective of inferring the structure of chemical compounds from mass-spectral data by using explicit knowledge of mass spectrometry (Buchanan & Feigenbaum, 1978). The incorporation of explicit domain knowledge into problem-solving programs proved to be of great practical and theoretical importance. First, it enabled A.I.. to solve many real-world problems which were previously beyond its powers. From this initial exploration of "knowledge-programming" a whole tradition has developed, covering such diverse areas of application as teaching systems [see the collection of papers edited by Sleeman & Brown in 11(1) of this Journal], natural language understanding (for example, Schank & Abelson, 1977) and diagnostic problem-solving (for example, Shortliffe, 1976). Secondly, the knowledge-based approach generated its own problems which had the effect of extending the theoretical interests of the subject, raising not only issues of knowledge representation but also questions of the structure of the different cognitive functions programs were required to simulate (e.g. story understanding, question answering, fault finding). From an application point of view, the most successful use for knowledge programming has remained with problem-solving in areas that require considerable expertise-where it began with DENDRAL. There are now a substantial number of "expert systems" which can claim expert, or near expert, performance in a wide range of domains, undertaking such problem-solving tasks as medical diagnosis, data analysis and planning. Some of the best known systems include: