1 / 62

Knowledge Based Systems

Knowledge Based Systems. Rules for knowledge representation. Negnevitsky pages 25 to 53. Summary. Operational AI – KBS Structural AI – Intelligence must use human biological mechanisms – Neural Networks

ellard
Télécharger la présentation

Knowledge Based Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Knowledge Based Systems Rules for knowledge representation Negnevitsky pages 25 to 53

  2. Summary • Operational AI – KBS • Structural AI – Intelligence must use human biological mechanisms – Neural Networks • Evolutionary AI – Intelligence is based on survival of the fittest in competing populations • Swarm Intelligence

  3. Software Tools for KBS • Simple Expert System Shell • Jess • Fuzzy Knowledge – Jess and Java

  4. Exercise What is an expert? (Definition) Give the characteristics? Give some examples of experts Are you an expert in anything?

  5. Knowledge and Experts • Knowledge is a theoretical or practical understanding of a subject or a domain. Knowledge is also the sum of what is currently known, and apparently knowledge is power. Those who possess knowledge are called experts. • Anyone can be considered a domain expert if he or she has deep knowledge (of both facts and rules) and strong practical experience in a particular domain. The area of the domain may be limited. In general, an expert is a skilful person who can do things other people cannot.

  6. Production Systems Long term and Short Term Memory • Newell and Simon from Carnegie-Mellon University proposed a production system model, the foundation of the modern rule-based expert systems. • The production model is based on the idea that humans solve problems by applying their knowledge (expressed as production rules) to a given problem represented by problem-specific information. • The production rules are stored in the long-term memory and the problem-specific information or facts in the short-term memory.

  7. Production system model

  8. The human mental process is internal, and it is too complex to be represented as an algorithm. However, most experts are capable of expressing parts of their knowledge in the form of rules for problem solving. • IF the ‘traffic light’ is green • THEN the action is go • IF the ‘traffic light’ is red • THEN the action is stop

  9. Rules as a knowledge representation technique • The term rule in AI, which is the most commonly used type of knowledge representation, can be defined as an IF-THEN structure that relates given information or facts in the IF part to some action in the THEN part. A rule provides some description of how to solve a problem. Rules are relatively easy to create and understand. • Any rule consists of two parts: the IF part, called the antecedent (premise or condition) and the THEN part called the consequent (conclusion or action).

  10. IF antecedent • THEN consequent • A rule can have multiple antecedents joined by the keywords AND (conjunction), OR (disjunction) or a combination of both. • IF antecedent 1 IF antecedent 1 • AND antecedent 2 OR antecedent 2 • . . • . . • . . • AND antecedent n OR antecedent n • THEN consequent THEN consequent

  11. The antecedent of a rule incorporates two parts: an object (linguistic object) and itsvalue. The object and its value are linked by an operator. • The operator identifies the object and assigns the value. Operators such as is, are, is not, are not are used to assign a symbolic value to a linguistic object. • Expert systems can also use mathematical operators to define an object as numerical and assign it to the numerical value. • IF ‘age of the customer’ < 18 • AND ‘cash withdrawal’ > 1000 • THEN ‘signature of the parent’ is required

  12. Rules can represent relations, recommendations, directives, strategies and heuristics: • Relation • IF the ‘fuel tank’ is empty • THEN the car is dead • IF the ‘mass” is M • AND ‘acceleration’ is A • THEN the ‘force’ is M * A • Recommendation • IF the season is autumn • AND the sky is cloudy • AND the forecast is drizzle • THEN the advice is ‘take an umbrella’ • Directive • IF the car is dead • AND the ‘fuel tank’ is empty • THEN the action is ‘refuel the car’

  13. Strategy • IF the car is dead • THEN the action is ‘check the fuel tank’; • use fuel rules • IF use fuel rules • AND the ‘fuel tank’ is full • THEN the action is ‘check the battery’; • proceed to step 3 • Heuristic • IF the spill is liquid • AND the ‘spill pH’ < 6 • AND the ‘spill smell’ is vinegar • THEN the ‘spill material’ is ‘acetic acid’

  14. Power of Rules: Legal knowledge Rule if the plaintiff did receive an eye injury and there was just one eye that was injured and the treatment for the eye did require surgery and the recovery from the injury was almost complete and the visual acuity was slightly decreased by the injury and the condition is fixed then increase the injury trauma factor by $10000 if the plaintiff did not wear glasses before the injury and the plaintiff's injury does require the plaintiff to wear glasses then increase the inconvemience factor by $1500 Rule

  15. Power of Rules: Mycin Problem domain: Selection of antibiotics for patients with serious infections. Medical decision making, particularly in clinical medicine is regarded as an "art form" rather than a "scientific discipline": this knowledge must be systemized for practical day-to-day use and for teaching and learning clinical medicine. Target Users:Physicians and possibly medical students and paramedics.

  16. Example Mycin Rule RULE 156 IF:         1. The site of the culture 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 organism is e.coli

  17. Diagnosis and Therapy ORGRULES IF               1) the stain of the organism is gramneg, and                      2) the morphology of the organism is rod, and                      3) the aerobicity of the organism is aerobic THEN          there is strongly suggestive evidence (0.8) that the class of organism is enterobacteriaceae THERAPY RULES IF               The identity of the organism is bacteroides THEN          I recommend therapy chosen from the following drugs: 1. clindamycin (0.99)                                                                                 2. chloramphenicol (0.99)                                                                                 3. erthromycin (0.57)                                                                                 4. tetracycline (0.28)                                                                                 5. carbenicillin (0.27)

  18. Implementation and Algorithms • How MYCIN works • Create patient 'context' tree • 2. Is there an organism that requires therapy? • 3. Decide which drugs are potentially useful and select the best drug • The above is a goal-oriented backward chaining approach to rule invocation & question selection. MYCIN accomplishes the invocation and the selection through two procedures: MONITOR and FINDOUT

  19. Findout and Monitor Procedures FINDOUT (Mechanism) takes a condition as parameter and searches for data needed by the MONITOR procedure, particularly the MYCIN 'clinical' parameters referenced in the conditions which are not known. Essentially FINDOUT gathers the information that will count for or against a particular condition in the premise of the rule under consideration. If the information required is laboratory data which the user can supply, then control returns to MONITOR and the next condition is tried. Otherwise, if there are rules which can be used to evaluate the condition, by virtue of the fact that their actions reference the relevant clinical parameter, they are listed and applied in turn using MONITOR. MONITOR takes a list of rules as a parameter and applies each rule in the list to find the certainty of the conclusion

  20. Recommendations RECOMMENDATION: Coming to a conclusion Creation of the Potential Therapy List IF:             The identity of the organism is pseudomonas THEN:       I recommend therapy chosen from among the following drugs: 1 - colistin                 (.98) 2 - polymyxin            (.96) 3 - gentamicin           (.96) 4 - carbenicillin         (.65) 5 - sulfisoxazole        (.64)

  21. The main players in the development team

  22. The domain expert is a knowledgeable and skilled person capable of solving problems in a specific area or domain. This person has the greatest expertise in a given domain. This expertise is to be captured in the expert system. Therefore, the expert must be able to communicate his or her knowledge, be willing to participate in the expert system development and commit a substantial amount of time to the project. The domain expert is the most important player in the expert system development team.

  23. The knowledge engineer is someone who is capable of designing, building and testing an expert system. He or she interviews the domain expert to find out how a particular problem is solved. The knowledge engineer establishes what reasoning methods the expert uses to handle facts and rules and decides how to represent them in the expert system. The knowledge engineer then chooses some development software or an expert system shell, or looks at programming languages for encoding the knowledge. And finally, the knowledge engineer is responsible for testing, revising and integrating the expert system into the workplace.

  24. The programmer is the person responsible for the actual programming, describing the domain knowledge in terms that a computer can understand. The programmer needs to have skills and experience in the application of different types of expert system software. In addition, the programmer should know conventional programming languages like C#, Java, Matlab

  25. The project manager is the leader of the expert system development team, responsible for keeping the project on track. He or she makes sure that all deliverables and milestones are met, interacts with the expert, knowledge engineer, programmer and end-user. • The end-user, often called just the user, is a person who uses the expert system when it is developed. The user must not only be confident in the expert system performance but also feel comfortable using it. Therefore, the design of the user interface of the expert system is also vital for the project’s success; the end-user’s contribution here can be crucial.

  26. Software Solution

  27. The knowledge base contains the domain knowledge useful for problem solving. In a rule-based expert system, the knowledge is represented as a set of rules. Each rule specifies a relation, recommendation, directive, strategy or heuristic and has the IF (condition) THEN (action) structure. When the condition part of a rule is satisfied, the rule is said to fire and the action part is executed. • The database includes a set of facts used to match against the IF (condition) parts of rules stored in the knowledge base.

  28. The inference engine carries out the reasoning whereby the expert system reaches a solution. It links the rules given in the knowledge base with the facts provided in the database. • The explanation facilities enable the user to ask the expert system how a particular conclusion is reached and why a specific fact is needed. An expert system must be able to explain its reasoning and justify its advice, analysis or conclusion. • The user interface is the means of communication between a user seeking a solution to the problem and an expert system.

  29. Knowledge as Rules • Legal – insurance claims • Forecasting – weather, currency • Medical – blood diseases, treatment • Engineering - control

  30. Structure of a rule-based expert system development software

  31. Search Algorithms Used • Backward Chaining • Forward Chaining

  32. Backward chaining • Backward chaining is the goal-driven reasoning. In backward chaining, an expert system has the goal (a hypothetical solution) and the inference engine attempts to find the evidence to prove it. First, the knowledge base is searched to find rules that might have the desired solution. Such rules must have the goal in their THEN (action) parts. If such a rule is found and its IF (condition) part matches data in the database, then the rule is fired and the goal is proved. However, this is rarely the case.

  33. Backward chaining • Thus the inference engine puts aside the rule it is working with (the rule is said to stack) and sets up a new goal, a subgoal, to prove the IF part of this rule. Then the knowledge base is searched again for rules that can prove the subgoal. The inference engine repeats the process of stacking the rules until no rules are found in the knowledge base to prove the current subgoal.

  34. Backward chaining

  35. Forward chaining • Forward chaining is the data-driven reasoning. The reasoning starts from the known data and proceeds forward with that data. Each time only the topmost rule is executed. When fired, the rule adds a new fact in the database. Any rule can be executed only once. The match-fire cycle stops when no further rules can be fired.

  36. Forward chaining

  37. Forward chaining is a technique for gathering information and then inferring from it whatever can be inferred. • However, in forward chaining, many rules may be executed that have nothing to do with the established goal. • Therefore, if our goal is to infer only one particular fact, the forward chaining inference technique would not be efficient.

  38. How do we choose between forward and backward chaining? • If your expert begins with a hypothetical solution and then attempts to find facts to prove it, choose the backward chaining inference engine. • If an expert first needs to gather some information and then tries to infer from it whatever can be inferred, choose the forward chaining inference engine.

  39. Knowledge Base Construction • Decide on the goals – things to deduce • Decide on the facts – things given in the problem • Decide on the objects and values • Decide on the rules – how to get from the facts to he goals

  40. Class ExerciseKnowledge Base Construction A business uses the following temperature control policy in a work environment. In spring, summer, autumn and winter during business hours the thermostat settings are 20, 18, 20 and 24C respectively. In those seasons out of business hours the settings are 15, 13, 14 and 20C respectively. The spring months are September, October and November; summer months are December, January and February; autumn months are March, April and May, and winter months are June, July and August. The weekdays are Monday to Friday, and, Saturday and Sunday are weekend days. Business hours are between 9 am and 5 pm. Construct a knowledge base representing this policy. Decide on the goals Decide on the facts Decide on all the objects and values Construct some of the rules and intermediates Estimate the number of rules necessary.

  41. Characteristics of an expert system • An expert system is built to perform at a human expert level in a narrow, specialised domain. Thus, the most important characteristic of an expert system is its high-quality performance. No matter how fast the system can solve a problem, the user will not be satisfied if the result is wrong. • On the other hand, the speed of reaching a solution is very important. Even the most accurate decision or diagnosis may not be useful if it is too late to apply, for instance, in an emergency, when a patient dies or a nuclear power plant explodes.

  42. Expert systems apply heuristics to guide the reasoning and thus reduce the search area for a solution. • A unique feature of an expert system is its explanation capability. It enables the expert system to review its own reasoning and explain its decisions. • Expert systems employ symbolic reasoning when solving a problem. Symbols are used to represent different types of knowledge such as facts, concepts and rules.

  43. In expert systems, knowledge is separated from its processing (the knowledge base and the inference engine are split up). A conventional program is a mixture of knowledge and the control structure to process this knowledge. This mixing leads to difficulties in understanding and reviewing the program code, as any change to the code affects both the knowledge and its processing. • When an expert system shell is used, a knowledge engineer or an expert simply enters rules in the knowledge base. Each new rule adds some new knowledge and makes the expert system smarter.

  44. Bugs and Errors? • Even a brilliant expert is only a human and thus can make mistakes. This suggests that an expert system built to perform at a human expert level also should be allowed to make mistakes. But we still trust experts, even we recognise that their judgements are sometimes wrong. Likewise, at least in most cases, we can rely on solutions provided by expert systems, but mistakes are possible and we should be aware of this.

  45. Conflicting Knowledge Earlier we considered two simple rules for crossing a road. Let us now add third rule: • Rule 1: • IF the ‘traffic light’ is green • THEN the action is go • Rule 2: • IF the ‘traffic light’ is red • THEN the action is stop • Rule 3: • IF the ‘traffic light’ is red • THEN the action is go

  46. We have two rules, Rule 2 and Rule 3, with the same IF part. Thus both of them can be set to fire when the condition part is satisfied. These rules represent a conflict set. The inference engine must determine which rule to fire from such a set. A method for choosing a rule to fire when more than one rule can be fired in a given cycle is called conflict resolution.

  47. In forward chaining, BOTH rules would be fired. Rule 2 is fired first as the topmost one, and as a result, its THEN part is executed and linguistic object action obtains value stop. However, Rule 3 is also fired because the condition part of this rule matches the fact ‘traffic light’ is red, which is still in the database. As a consequence, object action takes new value go.

  48. Methods used for conflict resolution • Fire the rule with the highest priority. In simple applications, the priority can be established by placing the rules in an appropriate order in the knowledge base. Usually this strategy works well for expert systems with around 100 rules. • Fire the most specific rule. This method is also known as the longest matching strategy. It is based on the assumption that a specific rule posesses more information than a general one.

More Related