Improving explanations in knowledge-based systems: RATIONALE

The paper describes a framework, RATIONALE, for building knowledge-based diagnostic systems that explain by reasoning explicitly. Unlike most existing explanation facilities that are grafted onto an independently designed inference engine, RATIONALE behaves as though it has to deliberate over and explain to itself, each refinement step. By treating explanation as primary, RATIONALE forces the system designer to represent knowledge explicitly that might otherwise be left implicit. This includes knowledge as to why a particular hypothesis is preferred, an exception is ignored, and a global inference strategy is chosen. RATIONALE integrates explanations with reasoning by allowing a causal and/or functional description of the domain to be represented explicitly. Reasoning proceeds by constructing a hypothesis-based classification tree whose root hypothesis contains the most general diagnosis of the system. Guided by a focusing algorithm, the classification tree branches into more specific hypotheses that explain the more detailed symptoms provided by the user. As the system is used, the classification tree also forms the basis for a dynamically generated explanation tree which holds both the successful and failed branches of the reasoning knowledge. RATIONALE is implemented in Quintus Prolog with a hypertext and graphics oriented interface under NeWS. It provides an environment for tying together the processes of knowledge acquisition, system implementation and explanation of system reasoning.

[1]  William J. Clancey,et al.  From Guidon to Neomycin and Heracles in Twenty Short Lessons: ORN Final Report 1979-1985 , 1986, AI Mag..

[2]  M. Resnik,et al.  Aspects of Scientific Explanation. , 1966 .

[3]  E. Shortliffe,et al.  Explanatory Power for Medical Expert Systems: Studies in the Representation of Causal Relationships for Clinical Consultations , 1982, Methods of Information in Medicine.

[4]  Michael Brady,et al.  Computational Models of Discourse , 1983 .

[5]  Philip J. Hayes,et al.  Automatic construction of explanation networks for a cooperative user interface , 1982 .

[6]  James Gosling,et al.  The NeWS Book , 1989, Sun Technical Reference Library.

[7]  Stephen W. Smoliar,et al.  On making expert systems more like experts , 1987 .

[8]  Bruce G. Buchanan,et al.  The MYCIN Experiments of the Stanford Heuristic Programming Project , 1985 .

[9]  Luc Steels,et al.  Second-Generation Expert Systems , 1985, IEEE Expert.

[10]  William R. Swartout,et al.  XPLAIN: A System for Creating and Explaining Expert Consulting Programs , 1983, Artif. Intell..

[11]  B. Chandrasekaran,et al.  Uncertainty Handling in Expert Systems: Uniform vs. Task-Specific Formalisms , 1985, UAI.

[12]  Johanna D. Moore,et al.  Enhanced Maintenance and Explanation of Expert Systems Through Explicit Models of Their Development , 1984, IEEE Transactions on Software Engineering.

[13]  William J. Clancey,et al.  Knowledge-based tutoring: the GUIDON program , 1987 .

[14]  Joseph A. Goguen,et al.  Reasoning and Natural Explanation , 1983, Int. J. Man Mach. Stud..

[15]  Fernando Gomez,et al.  Knowledge Organization and Distribution for Medical Diagnosis , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[16]  B. Chandrasekaran,et al.  Generic Tasks in Knowledge-Based Reasoning: High-Level Building Blocks for Expert System Design , 1986, IEEE Expert.

[17]  Ed Stabler,et al.  Object-oriented programming in Prolog , 1986 .

[18]  Sanjay Mittal,et al.  CRSL: A Language for Classificatory Problem Solving and Uncertainty Handling , 1986, AI Mag..

[19]  Jack W. Smith,et al.  Assembling the best explanation , 1984 .

[20]  J. L. Weiner,et al.  BLAH, A System Which Explains its Reasoning , 1980, Artif. Intell..

[21]  William J. Clancey,et al.  Explanation Capabilities Of Production Based Consultation Systems , 1977, ACL Microfiche Series 1-83, Including Computational Linguistics.

[22]  William J. Clancey,et al.  The Epistemology of a Rule-Based Expert System - A Framework for Explanation , 1981, Artif. Intell..

[23]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[24]  William J. Clancey,et al.  Strategic Explanations for a Diagnostic Consultation System , 1983, Int. J. Man Mach. Stud..

[25]  Raj Reddy,et al.  Steps Toward Graceful Interaction in Spoken and Written Man-Machine Communication , 1983, Int. J. Man Mach. Stud..

[26]  Fernando Gomez,et al.  An Approach to Medical Diagnosis Based on Conceptual Structures , 1979, IJCAI.

[27]  Daniel G. Bobrow,et al.  DARN: Toward a community memory for diagnosis and repair tasks , 1987 .

[28]  Daniel G. Bobrow,et al.  Expert systems: perils and promise , 1986, CACM.

[29]  William F. Clocksin,et al.  Programming in Prolog , 1981, Springer Berlin Heidelberg.

[30]  William F. Punch,et al.  DESIGN CONSIDERATIONS FOR PEIRCE, A HIGH-LEVEL LANGUAGE FOR HYPOTHESIS ASSEMBLY. , 1986 .

[31]  Gary S. Kahn,et al.  The Mud System , 1986, IEEE Expert.