Manmit Kaur 8c1, 38/08
CASE STUDY OF MYCIN: MYCIN is the name of a decision support system developed by Stanford University in the earlyto mid-seventies, built to assist physicians in the diagnosis of infectious diseases. The system (also known as an" expert system") would ask a series of questions designed to emulate the thinking of an expert in the field of infectious disease (hence the "expert-"), and from the responses to these questions give a list of possible diagnoses, with probability, as well as recommend treatment (hence the "decision support-"). The name "MYCIN" actually comes from antibiotics, many of which have the suffix "-mycin". MYCIN has three sub-systems:
Consultation system
Explanation System
Rule Acquisition system 1. Mycin’s Consultation System - works out possible organisms and suggests treatments Rule base
Rules stored as premise -action pairs
Premises are conjunctions and disjunctions of conditions
Conditions normally evaluate to True or False, with some certainty factor on the evidence. Rules also have certainty factors. Combined to form new certainty factors
Certainty factor - degree of belief attached to information
Actions are either conclusions (e.g. microbe is type X) or instruction (e.g. remove drug from list of possible value) Static and dynamic data structures Static data structures: These store medical knowledge not suitable for storage as inferential rules: includes lists of organisms, knowledge tables with features of bacteria types, list of parameters 1
Parameters = features of patients, bacterial cultures, drugs… Parameters can be Y/N (e.g. FEBRILE), single value (e.g. IDENTITY - if it’s salmonella it can’t be another organism as well) or multi-value (e.g. INFECT - patient can have more than one infection) Parameter properties include: EXPECT range of possible values PROMPT English sentence to elicit response LABDATA can be known for certain from Lab data LOOKAHEAD lists rules mentioning the parameter in their premise (e.g. a rule might need to know whether or not a patient is febrile) UPDATED-BY lists rules mentioning the parameter in their action (i.e. they may draw a conclusion about the value of the parameter, such as the IDENTITY parameter) Dynamic data structures store information about the evolving case - the patient details, possible diagnoses, rules consulted: Control structure: MYCIN first attempts to create”patient context" containing information about the case, then tries to compile a list of therapies for the context. It uses a backward chaining mechanism, reasoning back from the goals it want to prove to the data it has, rather than vice versa. The overall goal is "compile a list of therapies”. Questions can be prompted by the invocation of rules, to find out necessary data, to avoid unnecessary questions. 2. The Explanation System MYCIN can answer questions about HOW a conclusion was reached and WHY a question was asked, either after a consultation or while it is going on. It does this by manipulating its record of the rules it invoked, the goal it was trying to achieve, the information it was trying to discover. Can also answer general questions (e.g. what would you prescribe for organism X?) by consulting its static data structures. 3. The Rule Acquisition System Experts can enter new rules or edit existing rules. The system automatically adds the new rule to
2
the LOOKAHEAD list for all parameters mentioned in its premise, and to the UPDATED-BY list of all parameters mentioned in its action.
HISTORY MYCIN was originally developed by Edward Shortliffe for Stanford Medical School in the earlyand mid-1970's. Written in Lisp, a language (a set of languages, actually) geared towards artificial intelligence, MYCIN was one of the pioneering expert systems, and was the first such system implemented for the medical field. The Goal of MYCIN was to compete in an experiment conducted at Stanford Medical similar to the Turing Test. The case histories of ten patients with different types of meningitis were submitted to MYCIN as well as to eight human physicians, including a resident, a research fellow, and five faculty specialists in infectious disease. Both MYCIN and the human physicians were given the same information. Both MYCIN's and the human physician's recommendations (as well as a record of the treatment actually received by the patients) were sent to eight non-Stanford specialists, completely unidentified as to which recommendation was MYCIN's and which were authored by the physicians. The outside specialists gave MYCIN the highest score as far as accuracy of diagnosis and effectiveness of treatment. The framework for MYCIN was derived from an earlier expert system called DENDRAL, created to find new chemical compounds in the field of organic chemistry.
HOW IT WORKS MYCIN is an expert system comprised of two major components: 1. A knowledge base which stores the information the expert system "knows", much of which is derived from other information in the knowledge base. 2. An inference engine to derive knowledge from the presently known knowledge in the knowledge base. Humans interface with MYCIN by answering a series of diagnostic questions akin to what a physician may ask a patient, as well as prompting for relevant test results. MYCIN takes this data
3
as input and either arrives at a set of answers with respective probabilities, or branches to other questions in order to narrow its search. Researchers at Stanford found MYCIN to have an approximate correctness rate of 65%, which is better than the majority of physicians who are not specialists in diagnosing infections, and only slightly worse than physicians who were experts in that field (who had an average correctness of approximately 80%). MYCIN's knowledge base is small relative to those used by most rules-based systems today; it is on the order of ~500 rules. The science of the generation of these rules is known as "knowledge engineering". MYCIN uses a modification of the method of reasoning called "backward chaining" to search its knowledge base. The core of MYCIN, its inference engine, is called EMYCIN ("Essential MYCIN"). EMYCIN is the framework for MYCIN, a semi-separate system which could be used to create other rulesbased expert systems to face problems similar to what MYCIN faces. In some cases this can be affected merely by changing the knowledge base.
LOGICAL LAYOUT OF MYCIN
PRACTICAL USE OF MYCIN MYCIN was never actually used in practice. This wasn't because of any weakness in its 4
performance. As mentioned, in tests it outperformed members of the Stanford medical school faculty. Some observers raised ethical and legal issues related to the use of computers in medicine — if a program gives the wrong diagnosis or recommends the wrong therapy, who should be held responsible? However, the greatest problem, and the reason that MYCIN was not used in routine practice, was the state of technologies for system integration, especially at the time it was developed. MYCIN was a stand-alone system that required a user to enter all relevant information about a patient by typing in response to questions that MYCIN would pose. The program ran on a large time-shared system, available over the early Internet (ARPANet), before personal computers were developed. In the modern era, such a system would be integrated with medical record systems, would extract answers to questions from patient databases, and would be much less dependent on physician entry of information. In the 1970s, a session with MYCIN could easily consume 30 minutes or more—an unrealistic time commitment for a busy clinician. MYCIN's greatest influence was accordingly its demonstration of the power of its representation and reasoning approach. Rule-based systems in many non-medical domains were developed in the years that followed MYCIN's introduction of the approach. In the 1980s, expert system "shells" were introduced (including one based on MYCIN, known as E-MYCIN (followed by KEE)) and supported the development of expert systems in a wide variety of application areas. A difficulty that rose to prominence during the development of MYCIN and subsequent complex expert systems has been the extraction of the necessary knowledge for the inference engine to use from the human expert in the relevant fields into the rule base (the so-called knowledge engineering).
5