Fig.1 Economic sectors
The most important applications of the new knowledge-based technologies in the short term are to the older industries at the base of our economy--no enterprise can afford to neglect them.
Figure 2 shows the state of the art of information technology in terms of computing and its interaction with the physical, social and knowledge worlds:
Fig.2 The state of the art in information technology
Fig.3 Structure of a knowledge-based system
If the pressure error is positive and big and the change in pressure error is not negative medium or big Then make the heat change negative and bigPriming the learning machine by such rules was first introduced because learning took too long. It was expected that the rules would act like verbal instructions to a human operator and aid the machine in setting up an initial approximate control strategy. However, it was found that rules such as this may be interpreted algorithmically to produce computer control programs that are more effective than those derived from classical control theory. Additionally, the learning machine then proceeded only to "learn" less effective strategies. Hence interest switched to the process whereby human expression of verbal rules that appear vague can lead to highly effective control strategies, that is to the development of expert systems.
The rules on which a particular expert system is based may be seen as ways of representing knowledge. This is not a new concept as such rules have been used in the past quite independently of computer systems. The rules below are an excerpt from a training manual for lime kiln operators. It seems that the encoding of expertise into a set of fairly vague but highly applicable rules is a standard way of making it available to others.
1. When the burning zone temperature is drastically low: (a) reduce kiln speed; (b) reduce fuel. 2. When the burning zone temperature is slightly low: (a) increase I.D. fan speed; (b) increase fuel rate.In parallel with the controller development, other expert systems were being developed for completely different domains. MYCIN is a well-known medical diagnosis expert system which aids a clinician to act as a consultant on infectious diseases. It uses rules of the form:
RULE 50 If 1) the infection is primary-bacteremia, and 2) the site of the culture is one of the sterile sites, and 3) the suspected portal of entry of the organism is the gastro-intestinal tract, Then there is suggestive evidence (.7) that the identity of the organism is bacteroides.Such rules are obtained from specialists in microbial infections and their application to particular data is fairly simple data processing. The rules are validated through their application to many cases and revised when they fail to give the correct diagnosis. MYCIN is designed to interact with a clinician in order to make a diagnosis and suggest therapy for a particular patient with a suspected microbial infections. It first gathers data about the patient and then uses this to make inferences about the infections and their treatment. The following is part of a dialog between MYCIN and a clinician responsible for testing and treating a patient.
--------PATIENT-1-------- (1) Patient's name: (first-last) FRED SMITH (2) Sex: MALE (3) Age: 55 (4) Have you been able to obtain positive cultures from a site at which Fred Smith has an infection? YES --------INFECTION-1-------- (5) What is the infection? PRIMARY-BACTEREMIA (6) Please give the date and approximate time when signs or symptoms of the primary- bacteremia (INFECTION-1) first appeared. (mo/da/yr) MAY 5, 1975 The most recent culture associated with the primary-bacteremia (INFECTION-1) will be referred to as: --------CULTURE-1-------- (7) From what site was the specimen for CULTURE-1 taken? BLOOD (8) Please give the date and time when this blood culture (CULTURE-1) was obtained. (mo/da/yr) MAY 9, 1975 The first significant organism from this blood culture (CULTURE-1) will be referred to as: --------ORGANISM-1-------- (9) Enter the identity of ORGANISM-1: UNKNOWN (10) Is ORGANISM-1 a rod or coccus (etc.): ROD (11) The gram stain of ORGANISM-1: GRAMNEG (12) Have there been POSITIVE cultures from sites which are NOT associated with infections about which you are seeking advice? NO (13) Did ORGANISM-1 grow aerobically? YES (8) (14) Did ORGANISM-1 grow anaerobically? YES (15) What is the suspected portal of entry of ORGANISM-1 into the sterile site? GI (6) My therapy recommendations will be based on the following probable infection(s) and potential causative organism(s): INFECTION-1 is PRIMARY-BACTEREMIA <Item 1> E.COLI [ORGANISM-1] <Item 2> PSEUDOMONAS-AERUGINOSA [ORGANISM-1]
Fig4 Some significant expert systems
Fig.5 Areas of application of expert systems
TEIRESIAS uses a similar rule-based approach to reasoning as does MYCIN but the rules are now rules about the forms of rules and the use of rules. The rules above are expressions of inferences from data about the world to conclusions about it, a basic level of knowledge processing. Davis discovered that similar rules could express inferences at a higher level about relations between these basic patterns of inference. A typical one of these metarules has the form:
If 1) there are rules which do not mention the current goal in their premise 2) there are rules which mention the current goal in their premise Then it is definite that the former should be done before the latter.The effect of the metarules on the dialog is that the clinician and MYCIN-TEIRESIAS can discuss the rules and inferences made as well as the patient, organisms and infection.
The dialog below shows a debugging sequence in which the inference made by MYCIN above is noted to be incorrect and TEIRESIAS aids the clinician in correcting it.
INFECTION-1 is PRIMARY-BACTEREMIA <Item 1> E.COLI [ORGANISM-1] <Item 2> PSEUDOMONAS-AERUGINOSA [ORGANISM-1] Are all these identities correct? N Are there any identities missing? Y Which one(s)? KLEBSIELLA-PNEUMONIAE PROTEUS-NON-MIRABILIS Are there any identities that shouldn't have appeared? Y Which one(s)? PSEUDOMONAS-AERUGINOSA Do you want to 1] track down the problem yourself, or 2] allow me to guide the debugging, or 3] ignore it for now and fix it another time? Type 1, 2 or 3 2 We'll start with the PSEUDOMONAS-AERUGINOSA first. The following rules were used in deducing that the identity of ORGANISM-1 is pseudomonas-aeruginosa RULE184 Since [1.1] the category of ORGANISM-1 is not known [1.2] the gram strain of ORGANISM-1 is gramneg [1.3] the morphology of ORGANISM-1 is rod [1.4] the aerobicity of ORGANISM-1 is facultative There is weakly suggestive evidence (.3) that the identity of ORGANISM-1 is pseudomonas- aeruginosa Is this rule correct? Y Should its premise have failed for this case? Y Which clause of the premise should have been false? [give #] 1 No conclusions were reached concerning the category of ORGANISM-1. Should it have been possible to conclude a category? Y Which one? ENTEROBACTERIACEAE There were no rules successfully invoked in the attempt to deduce that the category of ORGANISM-1 is enterobacteriaceae. The following (potentially applicable) rules were NOT executed because the starred [**] clause failed: RULE116 If 1) the identity of ORGANISM-1 is not known ** 2) the gram strain of ORGANISM-1 is not known 3) the morphology of ORGANISM-1 is not known 4) the site of CULTURE-1 is csf 5) the infection is meningitis 6) the age (in years) of Albert Hall is less than or equal to .17 then there is weakly suggestive evidence (.33) that the category of ORGANISM-1 is enterobacteriaceae RULE050 If 1) the morphology of ORGANISM-1 is rod 2) the gram strain of ORGANISM-1 is gramneg 3) the aerobicity of ORGANISM-1 is facultative ** 4) the infection with ORGANISM-1 was acquired while the patient was hospitalized ** then there is suggestive evidence (.7) that the category of ORGANISM-1 is enterobacteriaceae Are all these rules correct? Y Should any of them have been successfully invoked? N Is there a rule missing? Y Ok, then I need a rule that would allow me to deduce that the category of ORGANISM-1 is enterobacteriaceae. Would you like to give me such a rule now? YIn this dialog the clinician noticed an identity was missing in those deduced by MYCIN. He chose to allow TEIRESIAS to guide the debugging, and it used the metarule of starting with the identity which appeared incorrectly. The program then reconstructed the deductive process, asking the clinician to confirm its actions at each stage, or comment on anything incorrect. It confirmed the facts about the particular case in hand and checked that the rules were correct. Before very long the issue has become sharply focused for the clinician and the system.
The main guideline in debugging MYCIN is that a rule must be found which is relevant to this particular patient, but true in general, and enhancing the set of rules of knowledge. The new rule is added to the set of knowledge rules, with a tag explaining who added it and in what circumstances. This allows the ultimate level of explanation to be given in terms of who added the rule and the reasons given. Whereas MYCIN's rules are specific to microbial infections, those of TEIRESIAS are more general and can be used in other domains.
The use of metarules allows expert systems to be programmed interactively by their users. From one perspective TEIRESIAS can be seen as an important development in automatic programming. From another it can be seen as a way in which a machine acquires knowledge through interaction with a person. Metarules may also be used to implement knowledge acquisition procedures in which machines acquire knowledge directly through their interaction with the environment, i.e. a process of machine learning.
It was found that learning could be introduced effectively in the steam engine controller through metarules that expressed the way in which the basic rules should be changed as a result of performance feedback. The learning level of their controller operator on rules of the form:
If time is small and error is negative big Then desired change is big. If time is big and error is positive zero Then desired change is zero.The use of a very high level of metarules for knowledge acquisition is illustrated by AM which searches for "interesting" conjectures in mathematics. What is remarkable about AM is the very notion of what it is doing. This is the highest level of scientific creation, looking for the patterns underlying knowledge. The concept of something being interesting seems peculiarly human and certainly too vague to form the basis of a computer program. However, AM is not only able to generate conjectures in mathematics but also meaningful routes to them.
The rules below are two of the few hundred rules used by AM. Most of them are sufficiently general to apply to other situations. In an organizational context, for example, Rule 19 indicates that a committee which has decision-making powers that do not apply to its sub-committees below a certain size has an interesting property (that of requiring a quorum). Its sub-committees also have an interesting property (that of being quorate).
19. If concept C possesses some very interesting property lacked by one of its specializations S, Then both C and S become slightly more interesting. 38. If there are no known examples for the interesting concept X, Then consider spending some time looking for such examples.Inductive inference of knowledge through machine learning procedures is a significant alternative to direct access to the verbal knowledge of experts, and comes closer to capturing the knowledge of main interest. We want to know the basis for what the experts do rather than what they say they do. Michalski and Chilausky have reported an interesting comparison of two expert systems for plant disease diagnosis, one constructed directly from the expert's stated rules, and the other constructed automatically by an algorithm for logical induction of structure from behavior. The expert system with induced rules had a better performance in diagnosis and the expert agreed that its rules, although not obvious at first, were better than his own.
Task 65 Filling in examples of the following concept: "Divisors-of." 3 Reasons: (1) No known examples for Divisors-of so far. (2) Times, which is related to Divisors-of, is now very interesting. (3) Focus of attention: AM recently defined Divisors-of. 26 examples found, in 9.2 seconds. e.g.: Divisors-of (6) = {1 2 3 6}. Task 66 Considering numbers which have very small sets of Divisors-of (i.e very few divisors). 2 Reasons: (1) Worthwhile to look for extreme cases. (2) Focus of attention: AM recently worked on Divisors-of. Filling in examples of numbers with 0 divisors. 0 examples found, in 4.0 seconds. Conjecture: no numbers have 0 divisors. Filling in examples of numbers with 1 divisors. 1 examples found, in 4.0 seconds. e.g.: Divisors-of(l) = {1}. Conjecture: 1 is the only number with 1 divisor. Filling in examples of numbers with 2 divisors. 24 examples found, in 4.0 seconds. e.g.: Divisors-of(13)= {1 13}. No obvious conjecture. This kind of number merits more study. Creating a new concept: "Numbers-with-2-divisors." Filling in examples of numbers with 3 divisors. 11 examples found, in 4.0 seconds. e.g.: Divisors-of(49) = {1 7 49}. All numbers with 3 divisor are also Squares. This kind of number merits more study. Creating a new concept:
"Numbers-with-3-divisors." Task 67 Considering the square-roots of Numbers-with-3-divisors. 2 Reasons: (1) Numbers-with-3-divisors are unexpectedly also perfect Squares. (2) Focus of attention: AM recently worked on Numbers-with-3-divisors. All square-roots of Numbers-with-3-divisors seem to be Numbers-with-2-divisors. e.g., Divisors-of(Square-root(169)) = Divisors-of(l3) = {1 13}. Formulating the converse to this statement. Empirically, it seems to be true. The square of each Number-with-2-divisors seems to be a Number-with-3-divisors. This is very unusual. It is not plausibly a coincidence. (Chance of coincidence is <.001). Boosting interestingness factor of the concepts involved: lnterestingness factor of "Divisors-of" raised from 300 to 400. lnterestingness factor of "Numbers-with-2-divisors" raised from 100 to 600. Interestingness factor of "Numbers-with-3-divisors" raised from 200 to 700. USER: Call the set of numbers with 2 divisors "Primes." Task 80 Considering the concept "Prime-times." 2 Reasons: (1) Conjecs about Prime-times will tell much about Primes and Times-1. (2) Focus of attention: recently defined Prime-times. Looking specifically at Prime-times(48), which is {(2 2 2 2 3)} 4 conjectures proposed, after .6 seconds. e.g., "x is never inside any member of Prime-times(x)." Testing them on other examples of Prime-times. Only 1 out of the 4 conjectures are verified for all 23 known examples of Prime-times: Conjecture 1: Prime-times(x) is always a singleton set. That is, Prime-times is a function, not just a relation. e.g., Prime-times(48), which is {(2 2 2 2 3)}, is a singleton set. e.g., Prime-times(47), which is {(47)} is a singleton set. This holds for all 17 known examples of Prime-times. (Chance of coincidence is .0001) This fails for 2 of the boundary cases (extreme numbers): 0 and 1. Conjecture is amended: Each number >1 is the product of a unique bag of primes. I suspect that this conjecture may be very useful. USER: Call this conjecture "Unique factorization conjecture." Task 106 Considering the set of numbers for which Prime-add is denned (has non-empty value). 1 Reason: (1) Prime-add often has non-empty value. Worth isolating that case. Warning: no task on the agenda has an interestingness value above 200! Creating a new concept "Prime-addable." Prime-addable is a kind of Number. x is Prime-addable iff Prime- add(x) is non-empty. Will spend 5.0 seconds filling in examples of Prime-addable. 18 examples found. Here are some of them: 4 5 6 7 8 9 10 12 13 14 16 17 18. Empirically, all even numbers are also in this set (ignoring boundary cases: 0 2 4 6). So conjectured. Danger: must examine boundary cases: the numbers 0, 2, 4, and 6. Two exceptions noticed. The only exceptions are the smallest boundary cases: 0, 2. Conjecture is amended: All even numbers >2 are the sum of two primes. Warning: I expect this conjecture will be cute but useless. USER: Why? Because the concept of "Primes" originally arose as extreme cases of Divisors-of. The more closely an operation F is related to the concept Divisors-of, the more natural will be any conjecture involving both that operation F and Primes. e..g., conjectures involving both Primes and Times will be natural and useful. But this conjecture, which involves Primes and Add-1, will be cute but useless, since the relation "Add-1" is unrelated to the relation "Divisors-of" End of explanation. USER: Call this conjecture "Goldbach's conjecture."
Figure 7 shows a further window, the rule editor, which illustrates some of the care taken about human factors in Nexpert's design:
Fig.6 A modern multi-window, menu and icon environment in Nexpert
Fig.7 The rule editor dialog environment in Nexpert
Figure 8 shows a the edit window that appears when we click on the two-arrowed head icon to copy-and-edit a copy of an existing rule into a new rule. The rule is shown in structured fields which may each be edited.
Figure 9 shows the specialized edit window that appears when we click on the third premise in the rule shown on the screen of Figure 8. It gives function buttons for probable fields that might be copied from elsewhere together with a numeric keyboard to minimize keystrokes.
The graphic dialog capabilities used in Nexpert are important not only in their standard window, menu and icon forms, but also in their capability to allow mimic diagrams to be used in highly customized user interfaces. Figure 10 shows a mimic diagram monitoring the status of a chemical plant through data received from instruments communicating through a Macintosh serial port. The operator can see the status of the plant through the numeric indicators and also actuate the plant by clicking on the valve symbols causing them to open and close.
An expert system is active in Nexpert while the mimic diagram is in operation. It monitors the status of the plant and its rules are activated when values go outside safety limits. Figure 11 shows a dialog with this system triggered off by an alarm condition. It has asked for the task being performed currently and suggested that the operator click on the "options" button if he is not sure of possible responses. The result of doing this is shown in the front window in Figure 11 where the possible responses are tabulated. Note that this list is generated automatically by the expert system shell by checking the rules that might use the data to be entered and determining what values they test for in their premises. Thus, an automatic help facility is generated that is bound to be meaningful in terms of the actual behavior of the system. This reduces the load of dialog design and ensures that the help facility is always in step with the actual knowledge base.
If the operator clicks on an option in the list he returns to the screen of Figure 10 with the required data automatically entered as shown in Figure 12.
The operator may also request an explanation of why the data is required by clicking on the "why?" button in Figure 12. An explanation is given in terms of the rule being tested that requires the data as shown in Figure 13.
The explanation may be further expanded as required. Clicking on the second premise in Figure 13 highlights it, and then clicking on the "why?" button again produces a broader explanation of why the task has to be known in terms of all the rules that use its value in their premises as shown in Figure 14.
Clicking on the "how?" button at this stage queries in what ways the value of the task may be determined. Figure 15 shows the result of doing this which indicates that the value must come from the user.
When the operator has entered the data required the expert system recommends actions which will result in containing the problem that has arisen. A second expert system is then invoked which diagnoses the likely source of the problem and indicates it on the mimic diagram as shown in Figure 16.
Nexpert also uses the graphic capabilities to show the data and inferences in graphic form as shown in Figure 17. The knowledge engineer can navigate the knowledge base during an interaction and determine which rules have been invoked, and which rules are capable of being invoked, based on the data entered through the instruments and by the operator.
An important capability of Nexpert is that it allows a user to enter a hypothesis which it takes as a goal to be derived from inference rules and facts in the knowledge base. However, if it disproves the hypothesis it takes the data gathered from the user during its attempt to derive the hypothesis and draws whatever conclusions it can from it. The result is that it often comes up with a hypothesis that the user regards as the "nearest" true one to that which he suggested. This is a powerful feature in an expert system, but illustrates the complexity of user interface considerations involved at a high cognitive level.
Fig.8 Creating a new rule by editing a copy of an old one in the rule editor
Fig.9 The premise editing dialog in the rule editor
Fig.10 Dialog through a mimic diagram of gauges and semaphors in Nexpert
Fig.11 A plant fault detection expert system invoked by abnormal data
Fig.12 Selection of a response from the help dialog by pointing and clicking
Fig.13 Explanatory dialog in response to a "why?" question
Fig.14 Further in-depth development of the "why?" question dialog
Fig.15 Explanatory dialog in response to a "how?" question
Fig.16 Graphical presentation of conclusions about the source of plant failure
Fig.17 Graphical presentation of the relations between data, rules and inferences
The example was created to demonstrate the feasibility of encoding some British social security legislation in an expert system. The legislation relates to the eligibility of applicants for "supplementary benefit," being money paid to the needy over and above normal unemployment benefits.
The researchers commenced with the statement in a leaflet for applicants: "A person is probably entitled to supplementary benefit if they have insufficient savings, are over 16 years of age and need financial help."which might be encoded in Prolog as:
<person> is-entitled-to supplementary-benefit if <person> has-insufficient-savings and <person> is-over-16 and <person> needs-financial-help strength probableHowver, as might be expected, the actual legislation is not uncertain--the "probably" in the leaflet indicated that some information was missing, and the full statement of entitlement can be encoded in Prolog as:
<person> is-entitled-to supplementary-benefit if not <person> is-disqualified-by sex and not <person> is-a-juvenile and <person> study-status-OK and <person> is-a-GB-resident and <person> is-excused-or-registered-for-work and <person> needs-financial-help and not <person> is-disqualified-by trade-disputeThis encoding already has some interesting properties. The intention behind the legislation is very clear from the overt knowledge representation. Each qualifying clause was added by governments with specific exclusions in mind, for example, that students in the vacation periods and workers on strike should not be entitled.
This is also a Prolog program that will run. However, it is incomplete because many of the premises in it cannot be tested as they not defined in Prolog primitives. This can be done by stepwise refinement:
<person> is-disqualified-by sex if sex of <person> is female and <person> has-partner and <person> is-living-with-partner <person> needs-financial-help if capital of <person> LESS max-capital for supplementary-benefit and requirements of <person> at-least resources of <person>Certain data required cannot be inferred but must be requested from the user. This is done in Apes by defining it to be "askable:"
is-a-GB-resident askable sex askable age askableNow, if the user queries the expert system it will attempt to satisfy each clause, inferring what it can and asking where specified. At any point in the dialog the user can ask "why" the system needs the information:
Is(peter is-entitled-to supplementary-benefit) What is peter's sex? male How old is peter? 23 Is peter in full-time education? why if peter is not in full-time education then peter's educational status is OK if peter is not disqualified by sex and peter is not a juvenile and peter's educational status is OK and peter is currently resident in Great Britain and peter is excused registration or has registered for work and peter needs financial help and peter is not disqualified by being in a trade-dispute then peter is entitled to supplementary benefit which is what you originally asked aboutHaving answered the "why" question, the system continues the dialog. When it comes to a conclusion the user can again ask "why," this time meaning "why was that conclusion reached:"
Is peter in full-time education? no Is peter currently resident in Great Britain? yes Has peter signed on as unemployed? yes How much savings does peter have? 2600 No, I cannot confirm peter is-entitled-to supplementary-benefit why peter is-entitled-to supplementary-benefit could be deduced from the rule <person> is-entitled-to supplementary-benefit if not <person> is-disqualified-by sex and not <person> is-a-juvenile and <person> study-status-OK and <person> is-a-GB-resident and <person> is-excused-or-registered-for-work and <person> needs-financial-help and not <person> is-disqualified-by trade-dispute peter is-disqualified-by sex is untrue peter is-a-juvenile is untrue peter study-status-OK peter is-a-GB-resident peter is-excused-or-registered-for-work but peter needs-financial-help is not true but peter needs-financial-help is not true why peter needs-financial-help could be deduced from the rule <person> needs-financial-help if capital of <person> LESS max-capital for supplementary-benefit and requirements of <person> at-least resources of <person> but capital peter LESS max-capital for supplementary- benefit is not true why peter capital 2600 supplementary-benefit max-capital 2500 2600 LESS 2500 is not true but LESS is a built-in relation so I cannot help moreNote that "why" questions can be cascaded but eventually the system reaches a built-in Prolog primitive about which it has no knowledge except that it may use it for inference. It has reached the depth of its knowledge and can explain no further. This is an important chracteristic of expert systems (which they share with people), that their knowledge may be superficial or founded on in-depth fundamentals, or somewhere in between.
This example illustrates the simplicity of the inference and explanation systems in current expert systems. It also illustrates the utility of such systems in carrying out logical inference and explaining it in understandable terms.
The problems of knowledge engineering have been stated clearly:
"Knowledge acquisition is a bottleneck in the construction of expert systems. The knowledge engineer's job is to act as a go-between to help an expert build a system. Since the knowledge engineer has far less knowledge of the domain than the expert, however, communication problems impede the process of transferring expertise into a program. The vocabulary initially used by the expert to talk about the domain with a novice is often inadequate for problem-solving; thus the knowledge engineer and expert must work together to extend and refine it. One of the most difficult aspects of the knowledge engineer's task is helping the expert to structure the domain knowledge, to identify and formalize the domain concepts." (Hayes-Roth, Waterman & Lenat 1983)
This bottleneck is the major impediment to the application of expert systems, and to the realization of their full potential. The automation of knowledge acquisition and transfer has become a major research and technological goal. This section presents some techniques for the automation of the knowledge engineering task with examples of their application and indications of their further development and integration.
The synopsis above shows what may be termed the problems of professionalism in establishing prototyping facilities:
Knowledge acquisition and transfer processes in human society are complex and poorly understood. Neurology, psychology, linguistics, education, sociology, anthropology, philosophy and systems theory all have significant contributions to make. However, integrating them, disambiguating jargon, and combining different objectives and perspectives are major problems.
There is a variety of short-term problems arising from these weaknesses in foundations:
Rapid prototyping is a significant practical objective and techniques for accelerated initial development without loss of long-term quality are now common in conventional data processing. However, expert system development emphasizes weaknesses in some areas of performance which we tend to take for granted in standard information technology. There are problems with: