Our group's work in medical decision making has led us to formulate a framework for expert system design, in particular about how the domain knowledge may be decomposed into substructures We propose that there exist different problem-solving types, i e, uses of knowledge, and corresponding to each is a separate substructure specializing in that1 type of problem-solving Each substructure is in turn further decomposed into a hierarchy of specialists which differ from each other not in the type of problem-solving, but in the conceptual content of their knowledge; e g, one of them may specialize in "heart disease," while another may do so in "liver," though both of them are doing the same type of problem-solving Thus ultimately all the knowledge in the system is distributed among problem-solvers which know how to use that knowledge This is in contrast to the currently dominant expert system paradigm which proposes a common knowledge base accessed by knowledge-free problem-solvers of various kinds In our framework there is no distinction between knowledge bases and problem-solvers: each knowledge source is a problem-solver We have so far had occasion to deal with three generic problem-solving types in expert clinical reasoning: diagnosis (classification), data retrieval and organization, and reasoning about consequences of actions In a novice, these expert structures are often incomplete, and other knowledge structures and learning processes are needed to construct and complete them This is a revised and extended version of an invited talk entitled, "Decomposition of Domain Knowledge Into Knowledge Sources: The MDX Approach," delivered at the IV National Conference of the Canadian Society for Computational Studies of Intelligence, May 17-19, 1982, Saskatchewan For the past few years our research group has been investigating the issues of problem-solving as well as knowledge organization and representation in medical decision making. In parallel with this investigation we have also been building and extending a cluster of systems for various aspects of medical reasoning. MDX, which is a diagnostic system, i.e., its role is to arrive RADEX is a Though in a sense RADEX and PATREC can both be viewed as "intelligent" data base specialists, RADEX has some additional features of interest due to the perceptual nature of some of its knowledge. However, for the purpose of this paper, it is not necessary to go into RADEX in much detail, and we can view PATREC as prototypical of this class of auxiliary systems. Our aim in this paper is to outline a point of view about how a domain gets naturally decomposed into substructures each of which specializes in one type of problem-solving.
The ability to map the state of an object into a category languages is transforming AI theories into symbolic strucin a classification hierarchy has long been an important tures. This pattern can be seen in knowledge representapart of many fields, for example, biology and medicine. Gordon and Shortliffe, 1985), and has been especially concerned with applying classification to diagnostic problems. One of the problems in classification is that the relationship between observable evidence and categories is often ambiguous. A piece of evidence can be associated with several categories or can occur with a category in an irregular fashion.
Much of the work on ontologies in AI has focused on describing some aspect of reality: objects, relations, states of affairs, events, and processes in the world. A goal is to make knowledge sharable, by encoding domain knowledge using a standard vocabulary based on the ontology. A parallel attempt at identifying the ontology of problem-solving knowledge would make it possible.to
This mechanism makes use of plausibility information concerning the sub-hypotheses, along with information about what a sub-hypothesis can explain in the particular situation, to build toward a complete explanation. The novel capability arises of confirming a sub-hypothesis on the basis of its ability to explain some feature for which there is no other plausible explanation. The mechanism we have developed accommodates several types of hypothesis interaction: additive hypothesis cooperation in accounting for the features of the situation, substantive hypothesis interactions of mutual compatibility and incompatibility, and interactions of the sort where one hypothesis, if it, is accepted, suggests some other hypothesis. Prospects seem good for extending the mechanism to accommodate other forms of interaction too. We have used this mechanism successfully as the basis for an expert system, called Red, designed to solve realworld problems of red-cell antibody identification.
Over the past decade, it has become clear that one should go beyond the level of formalisms and programming constructs to understand and analyze expert systems. I discuss the idea of inference structures such as heuristic classification (Clancey 1985), the distinction between deep and surface knowledge (Steels 1984), the notion of problem-solving methods and domain knowledge filling roles required by the methods (McDermott 1988), and the idea of generic tasks and task-specific architectures (Chandrasekaran 1983). Such a synthesis is presented here in the form of a componential framework. The framework stresses modularity and consideration of the pragmatic constraints of the domain. A major question with knowledge engineering is (or should be) that given a particular task, how do we go about solving it using expert system techniques.