A. Carlisle Scott, William J. Clancey, Randall Davis & Edward H. Shortliffe 1977
Section
1.1 Consultative Production Systems
1.2 Performance Characteristics of an Explanation Capability
ABSTRACT
A computer program that models an expert in a given domain is
more likely to be accepted by experts in that domain, and by non-experts seeking
its advice, if the system can explain its actions. An explanation capability
not only adds to the system's credibility, but also enables the non-expert user
to learn from it. Furthermore, clear explanations allow an expert to check the
system's "reasoning", possibly discovering the need for refinements
and additions to the system's knowledge base. In a developing system, an explanation
capability can be used as a debugging aid to verify that additions to the system
are working as - they should.
This paper discusses the general characteristics of explanation
systems: what types of explanations they should be able to give, what types
of knowledge will be needed in order to give these explanations, and how this
knowledge might be organized. The explanation facility in MYCIN is discussed
as an illustration of how the various problems might be approached.
KEY WORDS
PRODUCTION RULES, COMPUTER-BASED CONSULTANTS, KNOWLEDGE-BASED SYSTEMS, EXPLANATION, QUESTION-ANSWERING, JUDGMENTAL KNOWLEDGE, NATURAL LANGUAGE UNDERSTANDING
The views and conclusions contained in this document are those of the authors and should not be interpreted as necessarily representing the official policies, either express or implied, of the Defense Advanced Research Projects Agency, the Bureau of Health Sciences Research and Evaluation, or the United States Government.
This research was support in part by the Bureau of Health Sciences Research and Evaluation under Grant HS-01544, and by the Defense Advanced Research Projects Agency under ARPA Order No.2494, Contract No. DAHC 15-73-C-0435.
A consultation program plays the role of an expert consultant in some domain,
giving advice or answers to non-experts with problems In the domain. Users will
often want to know how the system arrived at its results during a particular
consultation. This paper explains how the implementation of such a program as
a production system can facilitate program-generated explanations.
A production system [2] consists of three basic components: a set of production
rules, a data base which is both used and updated by these rules, and a rule
interpreter. A production rule often is in the form of a situation-action rule:
it describes a situation and a set of actions to be taken if this situation
is found to exist. The rule interpreter determines the order in which rules
will be tried, checks to see if the situations exist, and undertakes the
required actions. It also determines how many of the potentially useful rules
will be used: only the first (where ordering may be redetermined or computed
dynamically), all possible rules, or enough rules to satisfy some criterion
that the interpreter uses.
In some production systems, rules are always tried in a predetermined order.
In others, the order in which rules are tried varies with different consultations,
since a rule will be tried as soon as the rule interpreter determines that it
may be useful. In such systems, the common alternatives are data-directed rule
invocation, in which a rule is considered ¡°useful¡± if its situation part matches
the data base, and goal-directed rule invocation, in which a rule is ¡°useful¡±
if its action part will help the system reach its current goal. Many systems
use a combination of goal- and data-directed rule invocation.
A consultative production system need not be a psychological model, imitating
a human¡¯s reasoning process. The important point is that the system and a human
expert use the same (or similar) knowledge about the domain to arrive at the
same answer to a given problem. The system¡¯s rules and data base can be viewed
as a knowledge base containing the domain-specific knowledge of an expert as
well as facts about a particular problem. When a rule is used, its actions make
changes to the data base which are the system¡¯s decisions or deductions. Thus,
a rule can be thought of as a piece of judgmental knowledge, using the judgment
and knowledge of an expert to make deductions.
The process of trying rules and taking actions can be thought of as ¡°reasoning¡¯,
and explanations consist of showing how rules used information provided by the
user to make various intermediate deductions and finally to arrive at the answer.
If the information contained in these rules is sufficient to show why an action
was taken (without getting into programming details), an explanation can consist
of printing each rule that was used (or an English equivalent of what the rule
means.)
Figure 1. A Production-Based Consultation System with Explanation Capability
The three components of a production system (a RULE INTERPRETER,
a set of PRODUCTlON RULES, and a DATA BASE) are augmented by an EXPLANATION
CAPABILITY. The data base is made up of general facts about the system¡¯s domain
of expertise, facts that the user enters about a specific problem, and deductions
made about the problem by the system¡¯s rules. These deductions form the basis
of the system¡¯s consultative advice.
The explanation capability makes use of the system¡¯s knowledge
base to give the user explanations. This knowledge base is made up of static
domain-specific knowledge (both factual and judgmental) and dynamic knowledge
specific to a particular problem.
The purpose of an explanation capability (EC) is to give the user access to as much of the system¡¯s knowledge as possible. Ideally, it should be easy for a user to get a complete. understandable answer to any sort of question about the system¡¯s knowledge and operation -- both in general, and with reference to a particular consultation. This implies three major goals in the development of an explanation capability:
1) To ensure that the EC can handle questions about all relevant aspects of the system¡¯s knowledge and actions. It should be capable of giving a few basic types of explanations, for example:
How it made a certain decision
How it used a piece of information
What decision it made about some subproblem
Why it didn¡¯t use a certain piece of information
Why it failed to make a certain ciecision
Why it required a certain piece of information
Why it didn¡¯t require a certain piece of information
How it will find out a certain piece of information
[while the consultation is in progress]
What the system is currently doing? [while the consultation
is in progress]
The specific set of explanation types which are chosen as basics, however, will depend on the particular system.
2) To enable the user to get an explanation which answers the question completely and comprehensively.
3) To make the EC easy to use. A novice should be able to use the EC without first spending a large amount of time learning how to request explanations.
We will distinguish two slightly different functions for an
EC, and divide it into two components: the reasoning-status checker (RSC) to
be used during the consultation, and the general question answerer (GQA) to
be used during the consultation or after the system has printed its results.
A reasoning-status checker will answer questions asked during
a consultation about the status of the system¡¯s reasoning process. A few simple
commands are often sufficient to handle the questions that the RSC is expected
to answer.
A general question-answer will answer questions about the current
state of the system¡¯s knowledge base, including both static domain knowledge,
and facts accumulated during the consultation. A GOA will often need the ability
to recognize a wide range of question types about many aspects of the system¡¯s
knowledge. For this reason, it might be difficult to define a few simple commands
which would be easy to learn and still cover all the possible questions that
might be asked. Consequently, natural-language processing in this component
may be important to an explanation system¡¯s acceptability.
In an interactive consultation, the system periodically requests
information about the problem. This offers the user an opportunity to request
explanations while the consultation is in progress. In non- interactive consultations,
the user has no opportunity to interact with the system until after it has printed
its conclusions. Unless there is some mechanism allowing a user to interrupt
the reasoning process and ask questions, the explanation capability for such
a system will be limited to questions about the system¡¯s final knowledge state.
It will have no reasoning-status checker, and its general question-answerer
will only be accessible at the termination of the consultation.
An EC must know what is in the system¡¯s knowledge base, and
how it is organized. In order to give explanations of the system¡¯s current
(or previous) actions, an EC also needs to understand how the system¡¯s rule
interpreter works: when rules will be tried, how they can fail, what causes
the interpreter to try one rule but not another, etc. This general ¡°schema¡±
for how or why certain rules are used, together with a comprehensive record
of the specific actions taken during a particular consultation, can be used
as a basis for explaining the results of that consultation.
A reasoning-status checker will need a record of what the system
has done so far in order to explain how it arrived at the current step. General
knowledge of how the rule interpreter works is necessary in order to explain
where the current step will lead. The ability to understand individual rules
also may be necessary to the extent that the content of a rule may explain why
it was necessary to use this rule, or may affect which future rules will be
tried.
A general question-answerer will need more information about
the system since the scope of its explanations is much broader: its task is
to answer general questions about the system¡¯s knowledge base. To do this,
it must know how the system stores knowledge about its area of expertise (the
static knowledge with which it starts each consultation) and how it stores facts
gathered during a particular consultation (its dynamic knowledge). These two
types of information will allow a GQA to answer questions about the substance
and extent of the production system¡¯s current knowledge.
If an explanation capability also is to provide information
about how the system arrived at the facts that are currently in its dynamic
knowledge base, the GQA will need all the information that a reasoning-status
checker uses: a detailed record of the consultation, an understanding of the
rule interpreter, and the ability to understand rules.
These three types of knowledge could be supplemented with a
limited amount of ¡®general information about such things as elementary logic,
set theory, and arithmetic comparisons. This would allow the GQA to answer more
complicated questions about why the system¡¯s knowledge base is in its current
state, and to answer questions involving relationships between different facts
in the knowledge base.
The nature of the consultation domain, as well as what primary
purpose the explanation capability is to serve, will influence the range of
questions that an EC should handle. In some systems, a simple retrieval of facts
may suffice, while others may need to give detailed description of the production
system¡¯s ¡°decision¡± process and to make a number of deductions from facts
that it has.
Figure 2. Knowledge Requirements of an Explanation Capability
Access to the consultation system¡¯s knowledge base Is a prerequisite for performance of the explanation capability. Other types of knowledge may be added to the system to enable the EC to answer a wider range of questions.
The last two sections described what an explanation capability is, outlining what tasks it should perform, and what it requires in order to perform these tasks. In this section, we discuss design considerations for the parent production system that will enable its EC to meet the requirements that were outlined in the previous section. This discussion is not meant to define the ¡°correct¡± way of representing or organizing knowledge, but rather to mention certain factors which should be taken into account when deciding what representation or organization will be best for a given production system.
The first step is to decide what basic types of questions the system should
be able to answer. This will have a direct influence on how the EC is implemented.
It is important, however, to make the initial design flexible enough to
accomodate possible future additions to the set of basics.
If the basic forms are diverse enough, some level of natural-language understanding
may be necessary. The degree of sophistication of the natural-language processor
will depend upon what kind of performance is expected of the EC.
The format and organization of various components of the production system¡¯s
knowledge base will affect the design of an EC. Individual pieces of static
and dynamic knowledge presumably will be organized in some fashion which makes
them accessible during the consultation. A GQA facility could make use of such
organization to help in finding the information needed to answer a question.
The less organized the knowledge base, the more difficult will be the task of
the EC, as more complicated routines must be used in order to find the desired
information.
During the course of the consultation, the system should keep a record of
its actions for use by both components of the explanation capability. Where
the ordering of events is important (e.g. when the action of one rule establishes
the situation necessary for a subsequent rule to succeed), the record should
be structured in a manner which reflects the ordering of events as well as the
reasons why each event occurred.
The explanation capability will need to understand some of the semantics of individual production rules. This requirement could be met by having the system¡¯s knowledge base include a description of what each rule means, encoded in some form which would be of use to the EC. If the format of the system¡¯s rules is highly stylized and well-defined, however, it might be possible instead to implement a mechanism for ¡°reading¡± the rules: the language in which the rules themselves are written could be defined. A high-level description of the individual components of this language, telling what each component means, could be used to enable the EC to read and understand rules. If the rule set consists of a large number of rules, and these rules are composed entirely of a relatively small number of primitive elements, this second approach has the advantage that less information needs to be stored -- a description of each of the primitive components, as opposed to a description of each rule. When new rules are added to the system, the first approach requires that descriptions of these rules must be added. With the second approach, provided that the new rules are made up of the standard rule components, no additional descriptive information would be needed by the explanation capability.
Enabling an EC to understand how the rule interpreter works is analogous to enabling it to understand rules. It must be able to ¡°read¡± the interpreter or else it must have access to some stored description of how the interpreter works. There is a third approach for understanding the rule interpreter, one which would not be feasible for understanding a large number of rules. Knowledge of how the interpreter works could be built into the EC -- the information would not be stated explicitly, but would be used implicitly by the programmer in writing the actual code for the explanation capability. The EC can be thought of as a number of ¡°specialists¡±, each capable of giving a single type of explanation. There could be one specialist for each of the basic question types that the system can answer. Each of the specialists needs only a small amount of information about the rule interpreter which could be built into its ¡°explaining¡± program.
The final type of knowledge that some general question-answering facilities will need is information allowing deductions to be made from facts in the knowledge base. The representation and extent of this knowledge will depend upon the types of questions that the system is to answer. If logic is needed only to determine the answers to questions of a certain type, for example, the necessary deductions could be built into the specialist for answering that type of question. On the other hand, in some explanation capabilities,the GQA will be expanded to do more than simply give explanations of the system¡¯s actions or to query its data base -- it will be expected to answer a wide range of questions involving various kinds of inferences about the knowledge base. Such a GQA will need to check for equality or set membership, make arithmetic comparisons, or make logical deductions. In general, most information of this type can be embodied in a new kind of specialist which is an expert at some sort of logical deduction or comparison. Representation of this sort of general knowledge will become important as the GQA becomes not simply an explanation tool, but also a deductive one.
M Y C I N [,5,6,7] is an example of a production-based consultation system
with a well-developed explanation capability. A production rim is an infectious
disease therapy consultation in which MYCIN is the infectious disease expert,
and the user is a doctor who wants advice about the treatment of a patient.
Knowledge that is gathered during the consultation is organized into attribute-object-value
triples. In response to questions during the consultation, the user enters information
about the existence of several objects, called contexts: the patient,
infections that the patient has, organisms which may be causing these infections,
cultures that were taken, and drugs that were given. The task of the consultation
system is to determine the values of various attributes (called clinical
parameters) of these contexts. For example, AGE is a clinical parameter of the
patient; IDENTITY is a clinical parameter of an organism, with STREPTOCOCCUS
as a possible value; SITE is a parameter of a culture, with BLOOD as a possible
value.
A clinical parameter¡¯s value may be determined by asking the user, or by
using decision rules. The parameter is said to be traced when the system has
done all It can to find out the parameter¡¯s value. Tracing a parameter involves
asking the user for a value (where applicable) and trying rules for determining
the value of that parameter. Rules are tried until the value is known with certainty
or there are no rules left to use.
Each decision rule has a situation part called its PREMISE. This consists
of predicates, conditions that are tested to determine whether the indicated
situation exists. If the conditions in a rule¡¯s PREMISE are true, its ACTION
will be evaluated, giving new (or updated) values to some parameter(s). Before
a condition in a rule¡¯s PREMISE can be tested, the parameters that it mentions
must be traced. For example, before rule 209 (below) can succeed, the system
must know the site of the culture, the portal of entry of the organism, and
whether the patient is a compromised host. If any of the clauses in the PREMISE
is false, or if the system is unable to find out the value of one of these parameters,
the rule will fail.
RULE203
(PREMISE) If: 1) The site of the culture is blood , and
2) The portal of entry of the organism is GI, and
3) The patient is a compromised host
(ACTION) Then: It is definite (1.8) that bacteroides is an organism for which therapy should cover
Associated with each attribute-Object-Value triple
is a certainty factor -- a number between --1 and 1 inclusive which indicates
how strongly the system believes that the attribute of the object has the indicated
value. The user may modify the answer to any question with a certainty factor,
and all rules make conclusions which specify a degree of certainty as well as
attribute, object, and value.
Each context is named uniquely, allowing the system
to refer to CULTURE-2, meaning the second culture, or ORGANISM-3, meaning the
third organism. Moreover, the contexts are organized into a tree known as the
context free, which defines relationships among them. For a example, an organism
is the direct descendent of the culture from which it was isolated. In the portion
of a tree shown in Figure 3, ORGANISM-3 hangs under CULTURE-2 Indicating that
STREPTOCOCCUS was isolated from the BLOOD culture.
Figure 3. Portion of a Context
tree Showing some Contexts,
Clinical Parameters, and Values
The rule interpreter (MYCIN¡¯s control structure,
described in detail in [7]) chooses the rules which should be used in the particular
consultation, interprets these rules, and creates a record of its actions for
use by the explanation system. Rules are invoked to find out values of parameters
in a given context. A rule is applied to the lowest context in the context tree
whose parameters are mentioned by the rule. The rule can use (or conclude about)
parameters of this context, or of any context which is its ancestor in the tree.
For example, if RULE209 were applied to ORGANISM-3 (see Figure 3) it would need
the SITE of the culture from which the STREPTOCOCCUS was isolated. The tree
indicates that this is CULTURE-2.
Rather than being a sequential cycle through the
rule set, where each rule is tried in some predetermined order, the flow of
control is goal-directed. This means that only rules which conclude about the
current goal (to find out the value of a given parameter) are examined. The
PREMISE of one of these rules may need to use some parameter whose value is
unknown. This sets up a subgoal, namely to determine the value of this parameter
so that the rule can be used. MYCIN¡¯s goal-directed approach means that the
system (and not the user) takes the initiative during a consultation. The user
will be asked about only those parameters which may be relevant to the particular
patient¡¯s case.
In order to give explanations of a consultation
system¡¯s decisions, an explanation capability must have access to the system¡¯s
knowledge base. More informative explanations can be given if the EC also has
knowledge of how the system works, a record of the consultation, and possibly
some domain-independent knowledge. This section discusses how MYCIN meets these
requirements.
The system¡¯s knowledge base consists of static
medical knowledge plus dynamic knowledge about a specific consultation. Static
knowledge is further classified as factual and judgmental. Factual
knowledge consists of facts which are medically valid independent of the particular
case. Judgemental knowledge consists of production rules representing deductions
which might be made, conditional on what is already known about the case. The
format of production rules and of dynamic knowledge has already been described.
As discussed in Section 2.1, all knowledge which is gathered during the consultation is organized into attribute-object-value triples. For consistency, many facts in the static knowledge base also have this format. This includes objects such as bacteria and antibiotics, and attributes such as the staining characteristics of a bacterium or the recommended dosage of an antibiotic:
ATTRIBUTE OBJECT VALUE
GRAM E.COLI GRAMNEG
DOSE GENTAMICIN 1 .7 ma/ka q8h IV (or IM)
The remainder of the factual knowledge consists of lists and tables: pieces of medical knowledge, organized in such a way that they can be used to augment the production rules. For example, one such piece of knowledge Is the list of the possible culture sites which are normally nonsterile.
NONSTERILESITES: (CERVIX CUTANEOUS-ULCER LOCHIA NOSE SKIN STOOL THROAT URETHRA VAGINA)
The likely pathogens associated with the different culture sites are organized in a table, with different entries for the different sites.
PATH-FLORA
THROAT: (STREPTOCOCCUS-PNEUMONIAE STREPTOCOCCUS-GROUP-A NEISSERIA-MENINGITIOIS)
URINE : (E.COLI PSEUDOMONAS ENTEROCOCCUS PROTEUS KLEBSIELLA ENTEROBACTER)
SKIN: (STAPHYLOCOCCUS-COAG-POS STREPTOCOCCUS-GROUP-A STAPHYLOCOCCUS-COAG-NEG)
CERVIX: (STREPTOCOCCUS CLOSTRIOIUM-GANGRENE NEISSERIA-GONORRHEA STREPTOCOCCUS-GROUP-A)
Production rules can make use of this tabularized information:
RULE058
If: 1) The site of the culture is one of: those sites that are normalIy nonsterile, and
2) This organism and at least one of the likely pathogens associated with the site of the culture agree with respect to the following properties: gram morph air
Then: There is strongly suggestive evidence (.9) that each of these pathogens is the identity of the organism
Note that the information in the table could have been organized as attribute-object-value triples (where the object would be a culture site). If this had been done, however, the above rule could not have been written. To accomplish the same purpose (without a change in the control structure), the system would have needed several rules -- a separate one for each entry in the table. Structuring certain facts into lists and tables enables individual production rules to express general theories which allow a number of specific deductions to be made.
Each of MYCIN¡¯s approximately 400 rules is composed
of a small number of conceptual primitives, A total of 60 search primitives
make up the language in which rules are written, This design facilitated the
implementation of a mechanism for translating rules into English (described
in detail in [7]). Each primitive functions has a translation template with
blanks to be filled in with translations of the function¡¯s arguments. A large
part of MYCIN¡¯s explanation capability depends on this ability to translate
rules into a form that the user can understand.
Having a small number of rule components also facilitates
the examination of rules to see which might be applicable to the explanation
at hand. MYClN¡¯s knowledge of production rules, therefore, 3akes the form of
a general mechanism for ¡°reading¡± rules. On the other hand, no attempt has
been made to read the code of the rule interpreter. Procedural knowledge about
the interpreter is embodied in ¡°specialists¡±, each capable of answering a
single type of question. Each specialist knows how the relevant part of the
control structure works and what pieces of knowledge it uses.
In order to understand rules, the system¡¯s various
specialists use a small amount of knowledge about rules in general, together
with descriptions or templates of each of the rule components. As an exampIe,
the following rule is composed of the units $AND, SAME, and CONCLUDE.
RULE009
PREMISE: ($AND (SAME CNTXT GRAM GRAMNEG)
(SAME CNTXT MORPH COCCUS))
ACTION: (CONCLUDE CNTXT IDENTITY NEISSERIA TALLY 800)
[Translation:
If: 1) The gram stain of the organism is gramneg , and
2) The morphology of the organism is coccus
Then: There is strongly suggestive (.8) that the identity of the organism is Neisseria]
[When the rule is used, the LISP atom CNTXT is bound to some object, the context to which the rule is applied (see Section 2.1)]
The template for CONCLUDE is shown below. This describes each of the arguments to the function: first, an object (context); second, an attribute (clinical parameter); third, a value for this parameter; fourth, the tally or degree of certainty of the PREMISE; and last, the certainty factor -- a measure of how strong our belief in this conclusion would be, assuming that the PREMlSE of the rule is definitely true.
CONCLUDE
TEMPLATE: (CNTXT PARM VALU TALLY CF)
To illustrate how this is used, consider an explanation that involves finding
ail rules which could conclude that the identity of an organism is Neisseria.
The appropriate specialist would start with those rules which the system uses
to conclude values for the parameter IDENTITY. Using templates of the various
ACTION functions which appear in each of these rules, the specialist picks out
only those (like RULEOO9) which have NEISSERIA in their VALU slot.
This also illustrates the sort of knowledge that can be built into a specialist.
The specialist knew that the control structure uses stored lists telling which
rules can be used to determine the value of each parameter. Furthermore, it
knew that it was necessary to look only at the rules¡¯ ACTIONs because it is
the ACTION that concludes facts, while the PREMISE uses facts.
Many of the explanation capability¡¯s specialists need a record of the consultation. This record is built during the consultation, and is organized into a tree structure called the history tree which reflects MYCiN¡¯s goal-directed approach. Each node in the tree represents a goal and contains information about how the system tried to accomplish this goal: by asking the user or by trying rules. Associated with each rule is a record of whether the rule succeeded, and if not, why it failed. If trying some rule causes the system to trace a new parameter, thereby setting up a subgoal, the node for this subgoal is the offspring of the node containing the rule which caused the tracing. Figure 4 illustrates how part of a history tree might look. In this example, RULE003 caused tracing of the parameter CATEGORY which is used in the PREMISE of this rule.
Figure 4. Portion of a History
Tree
[RULE009 is shown above, see Figure 5 for RULE003 and RULE037]
MYCIN¡¯s question-answering ability is limited to describing the system¡¯s
actions, and explaining what facts the system knows. Some of the specialists
for answering questions about the consultation make use of logic in arriving
at their answers. In particular, to explain why a decision wasn¡¯t made, the
appropriate specialist uses the logical conclusion that the answer consists
of explaining what prevented the system from using each of the rules that would
have made that decision.
If deductions or comparisons are needed to answer questions of a specific
type, then the necessary logic is built into the appropriate specialist. There
is no general representation of knowledge about logic, arithmetic, or set theory
that the explanation capability can use to make inferences from different facts
in its knowledge base. To find out whether ORGANISM-l and ORGANISM-Z have
the same identity, for example, it is necessary for the user to ask separately
for the identity of each organism, then to compare the answers to these questions.
The purpose of the explanation system is to enable a user to see how MYCIN
makes decisions, both in general and with reference to a particular consultation.
To make this facility as useful as possible, we have tried to anticipate ail
types of questions which a user might ask, and to make every part of the system¡¯s
knowledge base and reasoning process accessible through clear explanations.
The entire explanation facility consists of a number of components or ¡°specialists¡±
each capable of giving a single type of explanation. These components are grouped
into three sets: one for explaining what the system is doing at a given
time, one for answering questions about the system¡¯s static knowledge base,
and one for answering questions about the dynamic knowledge base. The first
set forms MYCIN¡¯s reasoning-status checker; the second and third together make
up the system¡¯s general question-answer.
Whenever MYCIN asks a question, the user is allowed to interrogate the status
of MYCIN¡¯s reasoning chain by asking WHY this piece of information is important.
As explained in sections 2.1 and 2.2, the system asks a question in order to
find out about its current goal. Consider the portion of a history tree shown
in Figure 4. HOSPITAL-ACQUIRED is one subgoal, CATEGORY is another at the next
level up, and RULE037 links them. The ¡°reason¡± for asking whether the infection
was hospital-accluired, then, is based on an attempt to use this rule to determine
the higher subgoal. The answer to WHY at this point is simply a display of the
goals and the rules linking them. We have given considerable attention to making
this as lucid a display as possible. First, since ¡°why¡± has several other
interpretations, and no more extensive natural language processing is used in
this component of MYCIN¡¯s EC, the question is expanded to indicate the sense
in which it will be answered. The higher goal is then presented, followed by
the rule. lhe clauses in the PREMISE of the rule are divided into those already
established and those yet to be determined. Finally, since rules may have multiple
conclusions about different clinical parameters, the relevant conclusion is
presented first and all others follow.
As Figure 5 illustrates, further sections of the reasoning chain can be examined
by repeating the WHY command. For any of the subgoals mentioned in answer to
a WHY, the user may ask HOW this goal was (or will be) achieved. MYCIN¡¯s reasoning-status
checker is described in more detail in [3,4,6].
[preceded by the first 14 questions in the consultationI
15) Is the patient¡¯s iIlness with ORGANISM -1 a hospital-acquired infection?
** WHY
[i.e. WHY is it important to determine whether or not the infection with ORGANISM-1 was acquired while the patient was hospital ized?]
[l.0] This wiII aid in determining the category of ORGANISM-l.
It has already been established that
il .11 the gram stain of ORGANISM-l is gramneg, and
[l.2] the morphology of ORGANISM-1 is rod, and
[l.3] the aerobicity of ORGANISM-l is facultative
Therefore, if
[l.4] the infection with ORGANISM-l was not acquired while the patient was hospital ized
then
there is strongly suggestive evidence (.8) that the category of
ORGANISM-1 is enter obacteriaceae
ALSO: there is weakly suggestive evidence (.1) that the identity of
ORGANISM-1 is pseudomonas-aeruginosa]
[RULE037]
** WHY
[i.e. WHY is it important to determine the category of ORGANISM-l?]
[2. 01 . . . in order to determine the identity of ORGANISM-l.
It has already been established that
[2 .1] this blood culture was taken from a sterile source
Therefore, if
[2.2] this current organism and at least one of the list of members associated with the category of the organism agree with respect to the fol lowing properties: air conformation
then
There is strongly suggestive evidence (.9) that each of them is the identity of ORGANISM-l
[RULE003]
** HOW 1.3
[i.e. HOW was it established that the aerobicity of ORGANISM -1 is facultative?]
The following were used:
[3.1] RULE027 indicated there is strongly suggestive evidence (.8) that the aerobicity of ORGANISM-l is facultative
[3.2] RULE027 indicated there is weakly suggestive evidence (.2) that the acrobicity of ORGANISM-l is anaerobic
Since this gave a cumulative CF of t.8) for facultative, and t.2) for anaerobic, it has been established that the aerobicity of ORGANISM-1 is facultative
** HOW 1 .1
[i .e, HOW was i t established that the gram stain of ORGANISM-l is gramneg?]
You said so question 113.
Figure 5. MYCIN¡¯s Reasoning-Status Checker
[user entries follow the double asterisks]
The question-answering part of the system has natural-language routines for analyzing the user¡¯s input. The system recognizes questions phrased in a number of ways, thereby making the question-answering facility easier to use. Questions about the static knowledge base may deal with judgmental knowledge (e.g., which rules use or conclude a certain piece of information) or they may ask about factual knowledge -- entries in tables and lists. Some questions about static knowledge are shown in Figure 6.
IS BLOOD A STERILE SITE?
WHAT ARE THE NONSTERILE SITES?
WHAT ORGANISMS ARE LIKELY TO BE FOUND IN THE THROAT?
IS BACTEROIDES AEROBIC?
WHAT METHODS OF COLLECTING SPUTUM CULTURES DO YOU CONSIDER?
WHAT DOSAGE OF STREPTOMYCIN DO YOU GENERALLY RECOMMEND?
HOW DO YOU DECIDE THAT AN ORGANISM MIGHT BE STREPTOCOCCUS?
WHY DO YOU ASK WHETHER THE PATIENT HAS A FEVER OF UNKNOWN ORIGIN?
WHAT DRUGS WOULD YOU CONSIDER TO TREAT E.COLI?
HOW DO YOU USE THE SITE OF THE CULTURE TO DECIDE AN ORGANISM¡¯S IDENTITY?
Figure 6. Sample Questions about MYCIN¡¯s Static Knowledge
Perhaps the more important part ,of the question-answering system is its ability to answer questions about a particular consultation. While some users may be interested in checking the extent of MYCIN¡¯s static knowledge, most questions will ask for a justification of, or for the rationale behind, particular decisions which were made during the consultation. Outlined in Figure 7 are the types of questions about dynamic knowledge which can be handled at present. A few examples of each type are given. <Cntxt> indicates some context which was discussed in the consultation; <parm> is some clinical parameter of this context; <rule> Is one of the system¡¯s decision rules.
1) what is <parm> of <cntxt>
TO WHAT CLASS DOES ORGANISM-l BELONG?
IS ORGANISM-l CORYNEBACTERIUM-NON-DIPHTHERIAE?
2) how do you know the value of <parm> of <cntxt>
HOW DO YOU KNOW THAT CULTURE-l WAS FROM A STERILE SOURCE?
DID YOU CONSIDER THAT ORGANISM-1 MIGHT BE A BACTEROIDES?
WHY DON¡¯T YOU THINK THAT THE SITE OF CULTURE-l IS URINE?
WHY DID YOU RULE OUT STREPTOCOCCUS AS A POSSIBILITY FOR ORGANISM-l?
3) how did you use <parm> of <cntxt>
@ID YOU CONSIDER THE FACT THAT PATIENT-l IS A COtlPROMISED HOST,?
HOW DID YOU USE THE AEROBICITY OF ORGANISM-l?
4) why didn¡¯t you find out about <parm> of <cntxt>
DID YOU FIND OUT ABOUT THE CBC ASSOCIATED WITH CULTURE-l?
WHY DIDN¡¯T YOU NEED TO KNOW WHETHER ORGANISM-1 IS A CONTAMINANT?
5) what did <rule> tel I you about <cntxt>
HOW WAS RULE 178 HELPFUL WHEN YOU WERE CONSIDERING ORGANISM-l?
DID RULE 116 TELL YOU ANYTHING ABOUT INFECTION-l?
WHY DIDN¡¯T YOU USE RULE 189 FOR ORGANISM-Z?
Figure 7. Sample Questions about a Consultation
Before a question can be answered, it must be classified as belonging to one of these groups. As Figure 7 illustrates, each question type includes a variety of ways in which the question can be worded, some specifying the parameter¡¯s value, some phrased in the negative, and so forth. MYCIN¡¯s natural-language processor must classify the questions, then determine what clinical parameters, etc. the question references.
The main emphasis in the development of the MYCIN system has been the creation
of a production system which can provide sound diagnostic and therapeutic advice
in the field of infectious disease. The explanation system was included in the
system¡¯s original design in order to make the consultation program¡¯s decisions
acceptable, justifiable, and instructive. Since the question-answering facility
was not the primary focus of the research, it is not designed to be a
sophisticated natural-language understander. Rather, it uses crude techniques,
relying strongly on the very specific vocabulary of the domain, to ¡°understand¡±
what information is being requested.
The analysis of a question is broken into three phases: the first creates
a list of terminal or root words; the second determines what type of question
is being asked (see the classification of questions in Section 2.3); and the
last determines what particular parameters, lists, etc. are relevant to the
question.
In the first and last steps, the system dictionary is important. The dictionary
contains approximately 1400 words that are commonly used in the domain of infectious
disease. It includes all words that are acceptable values for a parameter, common
synonyms of these words, and words used elsewhere by the system in describing
the parameter (e.g., when translating a rule into English or requesting the
value of the parameter).
Each word in the dictionary has a synonym pointer to its terminal word (terminal words point to themselves). For the purpose of analyzing the question, a non-terminal word is considered to be equivalent to its (terminal) synonym.
Terminal words may have properties indicating:
1) that this word is an acceptable value for some clinical parameter(s)
2) that this word always implicates a certain clinical parameter, system list, or table (e.g. the word ¡°identity¡± always implicates the parameter IDENTITY, which means the identity of an organism)
3) that this word might implicate a certain parameter, system list, or table (e.g. the word ¡° positive¡± might implicate the parameter NUMPOS, which means the number of positive cultures in a series)
4) that this word is part of a phrase which can be thought of as a single word (examples of such phrases are ¡°transtracheal aspiration¡±, ¡°how long¡±, and ¡°not sterile¡±.
Table 1. Properties of Terminal Words
The first three properties are actually inverse pointers which
are generated automatically from properties of the clinical parameters. Specifically,
a word receives the ¡°acceptable val1ie" pointer to a parameter (property
(1) above) if it appears in the parameter¡¯s list of acceptable values -- a
list which is used during the consultation to check the user¡¯s response to
a request for the parameter¡¯s value. Also, each clinical parameter, list, and
table has an associated list of key words that are commonly used when talking
about this parameter, list, or table. These words are divided according to how
sure we can be that a doctor is referring to this parameter, list, or table
when the particular word is used in a question. It is from this list that terminal
words ¡¯ ¡°implication¡± pointers (properties 2 and 3 in Table 1) are generated.
During the first phase of parsing, each word in the original
text is replaced by its terminal word. For words not found in the dictionary,
the system uses Winograd¡¯s root-extraction algorithm [8] to see if the word¡¯s
lexical root is in the dictionary (e.g., the root of ¡°decision¡± is ¡°decide¡±).
If so, the word is replaced by the terminal word for its root. Words still unrecognized
after root extraction are left unchanged.
The resulting list of terminal and unrecognized words is then
passed to a function which recognizes phrases. Using property 4 (see Table 1)
of the terminal words in this list, the function identifies a phrase and replaces
it with a single synonymous terminal word (whose dictionary properties may be
important in determining the meaning of the question).
The next step is to classify the question so that the program
can tell which specialist should answer it. Since all questions about the consultation
must be about some specific context, the System requires that the name of the
context (e.g., ORGANISM-1 ) be stated explicitly. This gives an easy way to
separate general questions about the knowledge base from questions about a particular
consultation. Further classification is done through a pattern matching approach
similar to that used by Colby [ 1].
The list of words created by the first phase is tested against
a number of patterns (about 50 at present). Each pattern has a list of actions
to be taken if the pattern is matched. These actions set flags which indicate
what type of question was asked. In the case of questions about judgmental knowledge
(called rule-retrieval questions), pattern matching also divides the
question into the part referring to the rule¡¯s PREMISE and the part referring
to its ACTION. For example, in ¡°How do you decide that an organism is streptococcus?¡°,there
is no PREMISE part, and the ACTION part is ¡°an organism is streptococcus¡±;
in ¡°Do you ever use the site of the culture to determine an organism¡¯s identity?¡°,
the PREMISE part is ¡°the site of the culture¡± and the ACTION part is ¡°an
organism¡¯s identity¡±.
The classification of a question guides its further analysis. Each question type has an associated template with blanks to be filled in from the question. The different blanks and the techniques for filling them in are listed in Table 2. With the question correctly classified,the general question-answerer can tell which specialist should answer it. Filling in all blanks in the template gives the specialist all the information needed to find the answer.
1) <cntxt> - The context must be mentioned by name.
2) <rule> - Either a rule¡¯s name (RULE047) will be mentioned, or the word ¡°rule¡± will appear, together with the rule¡¯s number (47).
3) <value> - One of the terminal words in the question has a dictionary property indicating that it is a legal value for the parameter (property 1 l Table 1 -- e.g., THROAT is a legal value for the parameter SITE).
4) <parm> - All of the words in the list are examined to see if they implicate any clinical parameters. Strong implications come from words with properties showing that the word is an acceptable value of the parameter, or that the word always implicates that parameter (properties 1 and 2, Table 1). Weak implications come from words with properties showing that they might implicate the parameter (property 3, Table 1). The system uses an empirical scoring mechanism for picking out only the most likely parameters. Associated with certain parameters are words or patterns which must appear in the question in order for the distinguish related parameters which may be implicated by the same key words in the first pass. For example, the word ¡°PMN¡± implicates parameters CSFPOLY (the percent of PMNs in the CSF) and PMN (the percent of PMNs in the complete blood count). These are distinguished by requiring that the word ¡°CSF¡± be present in a question In order for CSFPOLY to be implicated.
5) <list> - System lists are indicated in a manner similar to parameters,
except that scoring is not done. Lists, like parameters,
may have associated patterns which must be present in the
question. Furthermore, lists have properties telling which other system
lists are their subsets. If a question implicates
both a list and a subset of that list, the more general (larger)
list is discarded. As an example, the question ¡°Which drugs are aminoglycosides?¡±
implicates two lists: The list of all drugs and
tile list of drugs which are aminoglycosides.
The
system only considers the more specific list of aminoglycosides when answering
the question.
6) <table> - Tables are indicated in a manner similar to lists except that an entry in the table must also be present in the question. For example, the word ¡°organism¡± may indicate two tables: one containing a classification of organisms, and the other containing normal flora of various portals. The question ¡°What organisms are considered to be subtypes of Pseudomonas?¡± will correctly implicate the former table, and ¡°What are the organisms likely to be found in the throat?¡± will implicate the latter, because PSEUDOMONAS is in the first table and THROAT is in the second.
Table 2. Mechanisms for Analyzing a Question
** WHEN DO YOU DECIDE THAT AN ORGANISM IS A CONTAMINANT?
[1] TerminaI words: WHEN DO YOU CONCLUDE THAT A ORGANISM IS A CONTAMINANT
[2] Quest i on type: Rule retrieval
Premise part: (WHEN DO YOU CONCLUDE)
Action part: (THAT A ORGANISM IS A CONTAMINANT)
[3] vocab. clues: (WHENINFECT (ANY) 1) (WHENSTOP (ANY) 1)
(Premise) (WHENSTART (ANY) 1) (DURATION (ANY) 1)
vocab. cIues: (CONTAMINANT (ANY) 4) (FORM (ANY) 1)
(Act ion) (SAMEBUG (ANY) 1) (COVERFOR (ANY) 1)
[4] Final translation:
Premise: ANY
Action: (CONTAMINANT ANY)
[5] The rules Iisted beIow concIude about:
whether the organism is a contaminant
6, 31, 351, 39, 41, 42, 44, 347, 49, 106
Which do you wish to see?
** 6
RULE F006
If: 1) The culture was taken from a sterile source, and
2) It is definite that the identity of the organism is one of: staphylococcus-coag-neg bacillus-subtitis corynebacterium-non-diphtheriae
Then: There is
strongly suggestive evidence (.8) that the organism is a contaminant
Figure 8. Sample of MYCIN¡¯s Analysis of a Question
[User input follows the double asterisks.]
[1] The question is reduced to a list of terminal words.
[2] Pattern matching classifies the question as a rule-retrieval question, and divides it into a premise part and an action part.
[3] Dictionary properties of the terminal words are used to determine which parameters (and their values) are relevant to each part of the question. These vocabulary clues are listed in the form (<parm> (<values>) weight) where weight is used by the scoring mechanism to determine which parameters should be eliminated from consideration.
[4] After selecting only the most strongly indicated parameters, the final translation tells what rules can answer the question: there are no restrictions on the PREMISE, and the ACTlON must contain the parameter CONTAMINANT (with any value).
[5] The answer consists of finding all rules which meet these restrictions, and printing those that the user wants to see.
Corresponding to each question type, there are a number of possible answer templates. for example, for questions of the form ¡°How do you know the value of <parm> of <cntxt>?¡°, two of the answer templates are:
Used <rule> to conclude that <parm> of <cntxt> is <value>.
This gave a cumulative c.f. of <certainty factor>.
The last question asked before the conclusion was made was <quest i on number>.
In answer to question <question number> you said that <parm> of <cntxt> is <value>
The specialist for answering questions of a given type will need to check the history tree or the system¡¯s knowledge base in order to determine which of the answer templates is appropriate for a particular question. Some blanks in the answer template will be filled in by the same items that filled blanks in the question template. The remainder are filled by the specialist with information which will answer the question. In the above example, the slots <parm>, <cntxt>, and possibly <value> would be filled in from the question, and the other slots would be filled from the history tree.
General questions about MYCIN¡¯s factual knowledge are the easiest to answer,
The specialist that provides answers to such questions must look up the desired
information in the system¡¯s static knowledge base. Generally, an answer consists
of simply displaying this information. As Figure 9 illustrates, the most processing
that is ever done is to check the retrieved information against some item in
the question (for equality of set membership).
The specialist that answers questions about judgmental knowledge is slightly
more complicated. Answering these questions (Figure 10) involves built-in knowledge
about the rule set, plus the ability to ¡°read¡± the rules. By the time the
question has been analyzed, the specialist knows exactly which parameters must
appear in the PREMISE, and which must appear in the ACTION of any rule which
answers the question. Values may be specified for any of the parameters. To
answer the question, the rule-retrieval specialist must first find every rule
whose PREMISE and ACTION satisfy these constraints. To do this, it needs to
know that there are *two special lists associated with each parameter: one containing
every rule that uses the parameter in its PREMISE, and the other containing
every rule that concludes about the parameter in its ACTION. Using these lists
for the various parameters mentioned in the question, the specialist can find
those rules that might answer the question, If no values were specified,
the job is done and the relevant rules can be displayed without further analysis;
otherwise, it is necessary to read each of the rules in the list and to eliminate
those which do not mention the correct values for the parameter.
The rule-retrieval specialist also makes use of a piece of MYCIN¡¯s knowledge
which was not discussed earlier. The system contains models of its own knowledge
(called rule mode/s) which are used primarily during acquisition of new medical
knowledge from an expert [4). These models, however, can be put to many uses
-- one is to explain general patterns in decision making. The rule models are
abstract descriptions of a subsets of rules and are generated automatically
by reading the rules. For example, the model for IDENT-IS-PSEUDOMONAS tells
what features are common to the majority of rules which conclude that the identity
of an organism is pseudomonas.
If a model exists describing the rules about which the question is asking,
the rule-retrieval specialist incorporates this model¡¯s information into its
answer (Figure 11). Thus the question-answering facility is able to give some
information about strategies for achieving some of the system¡¯s goals, as well
as the individual rules which use the strategies.
** IS BLOOD A STERILE SITE?
Yes. Blood is one of those sites that are normally sterile.
** WHAT ARE THE NONSTERILE SITES?
Those sites that are normally nonsterile are: CERVIX, CUTANEOUS-ULCER,
LOCHIA, NOSE, SKIN, STOOL, THROAT, URETHRA, VAGINA.
** WHAT ORGANL SMS ARE LIKELY TO BE FOUND IN THE THROAT?
The likely pathogens associated with throat are: STREPTOCOCCUS-PNEUMONIAE,
STREPTOCOCCUS-GROUP-A, NEISSERIA-MENINGITIDIS.
** IS BACTEROIDES AEROBIC?
NO. the aerobicity of bacteroides is anaerobic.
** WHAT DOSAGE OF STREPTOMYCIN DO YOU GENERALLY RECOMMEND?
The suggested dosage and route of streptomycin is 7.5 mg/kg q12h IM (or IV).
** HOW DO YOU TREAT MENINGOCOCCAL BACTEREMIA?
For treatment of NEISSERIA-MENINGITIDIS in PRIMARY-BACTEREMIA
Select therapy from among the folIoLJing drugs (ranked according to relative efficacy, assuming uniform sensitivity):
PENICILLIN (.91)
AMPICILLIN (.9) close: 30 mg/kg q6h
SULFISOXAZOLE (.8) close: 60 mg/kg IV then 15 mg/kg q4h IV
for 48 days then 15 mg/kg q4h PO
CHLORAMPHENICOL (.7)
ERYTHROMYCIN (.5)
TETRACYCLINE (.4)
Duration of therapy: 14 days
Figure 9. Questions about Factual Knowledge
** WHY DO YOU ASK WHETHER THE PATIENT HAS A FEVER OF UNKNOWN ORIGIN?
The rules listed below use:
whether the patient has a true fever of unknown origin
RULE180
If: 1) The site of the culture is blood, and
2) The number of cultures in the series including the culture is greater than or equal to 1 , and
3) The number of cultures in this series which were positive for the organism is less than or equal to 1, and
4) The patient has a true fever of unknown origin, and
5) Cardiac-surgery is a relevant item from the history of the patient
Then: There is suggestive evidence (.6) that the infection is infective-endocarditis
** WHAT DOES GOMANIPULATION TELL YOU ABOUT THE IOENTITY OF AN ORGANISM?
The rules listed below use:
whether the patient has had a genito-urinary manipulative procedure
to conclude about:
the identity of the organism
156, 163, 190
Which do you wish to see?
** 156
RULE156
I f: 1) The site of the culture is blood, and
2) The gram stain of the organism is gramneg, and
3) The morphology of the organism is rod, and
4) The portal of entry of the organism is urine, and
5) The patient has not had a genito-urinary manipulative procedure, and
6) Cystitis is not a problem for which the patient has been treated
Then: There is suggestive evidence (.6) that the identity of the oranism is e.coli
Figure 10. Rule-Retrieval Questions
** HOW DO YOU DECIDE THAT AN ORGANISM MIGHT BE PSEUDOMONAS AERUGINOSA?
Rules which conclude that the identity of the organism is pseudomonas-aeruginosa generally use one or more of the following pieces of information:
the site of the culture
the gram stain of the organism
the morphology of the organism
Fur thermore, the following relationships hold:
The gram stain of the organism, and the morphology of the organism tend to appear together in these rules.
RULE184, RULE116, RULE047, RULE085, RULE040 conclude that the identity of the organism is pseudomonas-aeruginosa.
Which of these do you wish to see?
** 184
RULE 184
If: 1) The category of the organism is not known, and
2) The gram stain of the organism is gramneg, and
3) The morphology of the organism is rod, and
4) The aerobicity of the organism is facul
Then: There is weakly suggestive evidence (.1) that the identity of the organism is pseudomonas-aeruginosa
Figure 11. Question Which Uses Rule Models
One of the simplest questions about a specific consultation inquires about the value of a particular parameter (Figure 12). The specialist which answers these questions must know how to retrieve this information. In some cases it will also be necessary to make comparisons to see whether a value specified in the question is one of the values which was deduced for that parameter.
** TO WHAT CLASS DOES ORGANISM-1 BELONG?
The category of ORGANISM-1 is enterobacteriaceae (.9)
** IS ORGANISM-1 A STREPTOCOCCUS?
No.
The identity of ORGANISM-1 is e,coli (.74) bacteroides (.7)
klebsiella-pneumoniae (.4) pseudomonas-aeruginosa (.22)
enterobacter (.21) proteus-non-mirabiIis (.19) serratia (.03)
salmonella (.02)
Figure 12. Questions about a Parameter¡¯s Value
Answering other types of consultation-specific questions involves the use of knowledge about the control structure, including:
1) how the system acquires information
2) why the system tries to find out about parameters
3) how information is used once it is acquired
4) what causes a rule to be tried
5) what causes a rule to fail.
The specialist for answering questions like ¡°How do you know the value of <parm> of <cntxt>?¡°, knows that the value of a parameter can come from two sources: it can be deduced by rules, or the user can tell us about it in response to a question. The history tree (see Section 2.2) will show which (possibly both) of these sources provided the particular information mentioned in the question (Figure 13).
** HOW DO YOU KNOW THAT CULTURE-l WAS FROM A STERILE SOURCE?
I used rule189 to conclude that this blood culture was taken from a sterile source. This gave a cumulative c.f. of (1.0). The last question asked before the conclusion was made was 7.
** DID YOU CONSIDER BACTEROIDES AS A POSSIBILITY FOR ORGANISM-l?
Yes. I used rule095 to conclude that the identity of ORGANISM-l is bacteroides. This gave a cumulative c.f. of t.7). The last question asked before the conclusion was made was 20,
** HOW DO YOU KNOW THAT ORGANISM-l IS E.COLI?
The following rules made conclusions about whether the identity of ORGANISM-l is e.coli
cumulative certainty last question asked
RULE Yes No before conclusion was made
RULE021 (.47) 20
RULE084 (.55) 22
RULE003 (.74) 24
In answer to question 9 you said that the identity of ORGANISM-l is e.coli (.3)
Figure 13. Question Regarding How a Conclusion Was Made
If the question is phrased in the negative, it is necessary first to find all the ways the conclusion could have been made (this is a simple task of rule-retrieval), then to explain why it wasn¡¯t made in this consultation (Figure 14). The specialist for answering these questions must know what situations can prevent conclusions from being made. The second question in Figure 14 illustrates how the answer to one question might cause another question to be asked.
** WHY DID YOU RULE OUT STREPTOCOCCUS AS A POSSIBILITY FOR ORGAN1 SM-l?
The following rules could have been used to determine that the identity of ORGANISM-l is streptococcus: RULE033. However, none of these succeeded in the context of ORGANISM -l.
If you would like an explanation for why any of these rules failed, please enter their numbers:
** 33
Clause 2 of rule033 [¡°the morphology of the organism is coccus¡±] was already known to be false for ORGANISM-l, so the rule was never tried.
** WHY DON¡¯T YOU THINK THAT THE MORPHOLOGY OF ORGANISM-l IS COCCUS?
It is definite that the morphology of ORGANISM-l is rod. Knowing this with certainty rules out all other values for the morphology of ORGANISM-l, including coccus.
Figure 14. Questions Regarding Why a Conclusion Wasn¡¯t Made
The specialist for answering questions of the form ¡°How did you use <parm> of <cntxt>?¡°,needs to know not only how to find the specific rules which might use a parameter, but also how a parameter can cause a rule to fail and how one parameter can prevent another from being used. The history tree can be checked to see which of the relevant rules used the parameter, which failed because of the parameter, and which failed for some other reason, preventing the parameter from being used (Figure 15).
** HOW DID YOU USE THE AEROBICITY OF ORGANISM-l?
The aerobicity of ORGANISM-1 was used in the following rules:
RULE003, RULE005, RULE084.
The aerobicity of ORGANISM-1 caused the following rules to fail:
RULE035, RULE051, RULE052, RULE0539 RULE184.
The aerobicity of ORGANISM-1 also would have been used in:
RULE037, RULE050, RULE058, RULE086, RULE110, RULE184,RULE203, RULE204, RULE205. However, none of these succeeded in the context of ORGANISM-l. If you would like an explanation for why any of these rules failed, please enter their numbers:
** 37
Rule037 was tried in the context of O R G A N I S M -l , but it failed due to clause 1 [¡°the category of the organism is not known¡±1 .
** DID YOU CONSIDER THE FACT THAT PATIENT-l IS NOT A COMPROMISED HOST?
The fact that Fred Jones is not a compromised host caused the folIowing rules to fail: RULE085, RULE106.
The fact that Fred Jones is not a compromised host also would have been used in: RULE109. However, none of these succeeded in the context of PATIENT-l. If you would like an explanation for why any of these rules failed, please enter their numbers:
** NONE
Figure 15. Questions Regarding How Information Was Used
For questions of the form ¡°Why didn¡¯t you find out about <parm>
of <cntxt>?¡°, general knowledge of MYCIN¡¯s control structure tells the
conditions under which it would have been necessary to find out some piece of
information. The record of the consultation can be used to determine why these
conditions never arose for the particular parameter in question (Figure 16).
Figure 16 also illustrates that MYCIN¡¯s GQA allows a user to
get as much information as is desired. The first answer given was not really
complete in itself, but it led the user to ask another question to get more
information. Then another question was asked to determine why clause 1 of RULE
159 was false. The answers to the first two questions both mentioned rules which
could be printed if the user wanted to examine them. The special command PR
(Print Rule) is for the user¡¯s convenience. It requires no natural-language
processing and thus can be understood and answered immediately.
(¡°What is rule
1O9?¡± or ¡°Print rule 109.¡± also would have been understood.)
** DID YOU FIND OUT ABOUT THE CBC ASSOCIATED WITH CULTURE-l?
During the preceding consultation, I never had reason to try to find out whether the results of the CRC from the time period of this blood culture are available. It would have been necessary to know this information in order to use any of the following: RULE109. However, none of these succeeded in the context of this blood culture. If you would like an explanation for why any of these rules failed, please enter their numbers:
** 109
Rule109 would be relevant to this blood culture when applied to: ORGANISM-l, I never had reason to try to apply rule109 to ORGANISM-l. 1 would have needed to use rule109 in order to find out whether ORGANISM-1 is a contaminant. However, during the preceding consultation, I never had reason to try to find out whether ORGANISM-1 is a contaminant.
**WHY DIDN¡¯T YOU NEED TO KNOW WHETHER ORGANISM-l IS A CONTAMINANT?
During the preceding consul tation, I never had reason to try to find out whether ORGANISM-l is a contaminant. I t¡¯ would have been necessary to know this information in order to use any of the following: RULE006, RULE007, RULE106, RULE108, RULE109, RULE159. However, none of these succeeded in the context of ORGANISM-l. If you would like an explanation for why any of these rules failed, please enter their numbers:
** 159
Rule159 was tried in the context of ORGANISM-l, but it failed due to clause a 1 [¡°it is suspected that the identity of the organism is corynebacterium-non-diphtheriae¡±]
** IS ORGANISM-1 CORYNEBACTERIUM-NON-OIPHTHERIAE?
No. The identity of ORGANISM-l is e.coli (.74) bacteroides (.7)
kIebsieIIa-pneumoniae (. 4) pseudomonas-aeruginosa (. 22) enterobacter (.21) proteus-non-mirabiIis (.19) serratia (.03) salmonella (.02)
** PR 109
RULE109
If: 1) The culture was taken,from a sterile source, and
2) It is not known whether the organism is a contaminant, and
3) The patient is not a compromised host, and
4) The patient was febrile due to the infection, and
5) The results of the cbc from the time period of the culture are available, and
6) A - The white count from the CBC is greater than 10.5, or
B - The percent of pmn¡¯s in the cbc at the time the culture was obtained is greater than 78, or
C - The percent of wbc¡¯s which were bands in the CBC at the time the culture was obtained is greater than 10
Then: There is strongly suggestive evidence (.8) that the organism is not a contaminant
Figure 16. Questions Regarding Why a Parameter Wasn¡¯t Traced
In questions asking about the application of a rule to a context there are
three possibilities: the rule told us something about the context; the rule
failed when applied to that context; or the rule was never tried in that context.
The history tree tells which of these is the case. Furthermore, if a rule succeeded,
there is a record of all the conclusions it made, and if it failed, the reason
for failure is recorded. As Figure 17 illustrates, rules are only applicable
in certain contexts. If the rule could not apply to the context mentioned in
the question, but might be relevant when applied to some other context [which
is an ancestor or descendent in the context tree], then the question is answered
as if it had mentioned the relevant context.
There are interactions among the different types of questions which weren¡¯t
mentioned earlier for the sake of clarity. Sometimes a question may indicate
an incorrect assumption about the state of
MYCIN¡¯s knowledge. For example a
question could ask ¡°Why don¡¯t you think that ORGANISM-l is
Ecoli ,3¡± when,
in fact, the system has concluded that the organism is E.coli. To answer this
question, the explanation system would explain how it did make such a decision,
despite the phrasing of the question. Similarly, when asked how the system used
(or concluded about) some parameter that was never traced, the system explains
why it didn¡¯t need to find out about the parameter, regardless of how the question
was phrased.
** DID RULE116 TELL YOU ANYTHING ABOUT INFECTION-l?
Rule116 would be relevant to the primary-bacteremia when applied to: ORGANISM-1.
Clause 5 of rule 116 [¡°the infection is meningitis¡±1 was already known to be false for ORGANISM-1, so the rule was never tried.
** HOW WAS RULE 178 HELPFUL WHEN YOU WERE CONSIDERING ORGANISM-l?
Rule178 would be relevant to ORGANISM-1 when applied to: CULTURE-l.
I never had reason to try to apply rule178 to this blood culture.
I would have needed to use rule178 in order to find out whether this blood culture was taken from a sterile source.
However, I was already certain that this blood culture was taken from a sterile source.
** WHAT DID RULE 295 TELL YOU ABOUT ORGANISM-l?
I used rule295 to conclude that the identity of ORGANISM-1 is hemophilus-influenzae. This gave a cumulative c.f. of (.25). The last question asked before the conclusion was made was 36.
** WHY DIDlN¡¯T YOU USE RULE112 TO FIND OUT ABOUT ORGANISM-l?
RULE112 was not executed because i t would have caused circular reasoning when applied to ORGANISM-l . Would you like to see the chain of rules and parameters which makes up this circle?
** YES
I wanted to know about the identity of ORGANISM-1 because I try to find out the identity of the organism for all current organisms of the patient.
To find out about the identity of ORGANISM-l, I tried to use rule021. Before I could use rule021, I needed to know about a prior organism with possibly the same identity as ORGANISM-l.
To find out about a prior organism with possibly the same identity as ORGANISM-l, I tried to use rule005. Before I could u s e rule005, I needed to know about the aerobicity of ORGANISM-l.
To find out about the aerobicity of ORGANISM-l , I tried to use rule031. Before I could use rule031, I needed to know about the category of ORGANISM-l.
To find out about the category of ORGANISM-l, I tried to use rule112. Before I could use rule112, I needed to know about the identity of ORGANISM-l.
But this is the unknown parameter I sought originally.
Figure 17. Question Regarding the Application of a Rule
Consultation systems which give expert advice in some domain
form one class of artificial intelligence programs which can provide useful
solutions to real-world problems. The utility of such a system, however, depends
on its acceptability to human users. One feature which can increase a system¡¯s
acceptability is a mechanism whereby the system can explain or justify its advice.
The development of an explanation mechanism for a consultation
system is very much related to the problems of representing knowledge and of
making use of different sources of knowledge. Since the production system formalism
provides a unified way to represent modular pieces of knowledge, the task of
designing an explanation capability is simplified for production-based consultation
systems. The example of MYCIN shows how this can be done and illustrates further
that a system designed for a single domain with a small, technical vocabulary
can give comprehensive answers to a wide range of questions without sophistrcated
natural-language processing.
The authors wish to express their gratitude for the interest and advice of Drs. Bruce Buchanan and Cordell Green (Computer Science Department). We also are indebted to the following MYCIN Project co-workers: Jan Aikins, Stanton Axline, Stanley Cohen, Larry Fagan, Frank Rhame, Bill van Melle, Sharon Wraith, and Victor Yu. Special thanks are due to Bill van Melle and Bruce Buchanan who made numerous helpful comments on earlier drafts of the paper.
(ÀüÀºÁÖ ÀÛ¼º, 2000)