EXPERT SYSTEMS What is there in an expert system? Components of an expert system Knowledge acquisition and knowledge engineering Explanations User interface Expert system shells Expert systems demos 2 Introduction Expert systems solve real problems which normally would require a specialized human expert (such as a doctor or a lawyer). Knowledge characteristics: • heuristic in nature, • based on ``rules of thumb'' 3 Domains • Medicine • Engineering • Geology • Computer Science • Business • Law • etc 4 Types of problems diagnosis (e.g., of a system fault, disease or student error) design (of a computer systems, hotel etc) interpretation (of, for example, geological data 5 Rule Based Production Systems Most ES are rule-based production systems Their knowledge is represented in the form of production rules to provide diagnoses or advice on the basis of input data. Production rules are if-then rules IF it rains, then you will get wet IF it rains, then you should wear a coat 6 Components of an expert system User Expert system shell User Inter face Explanation system Case specific data: Working storage Inference engine Knowledge base Knowledge base editor 7 Expert system knowledge base Domain inference rules and object descriptions Case specific data Knowledge base editor: creating and updating the knowledge base 8 Knowledge acquisition and knowledge engineering Domain expert Knowledge engineer Knowledge acquisition : The process of "extracting" the knowledge from the domain expert and representing the knowledge in a suitable form that can be used by the expert system 9 10 Inference Engine Forward chaining: derive all conclusions given certain facts Select applicable rules Choose a rule (conflict resolution) Execute the rule and update the casespecific data Backward chaining: prove a given goal by verifying the conditions in the IF-THEN rules Coping with uncertainty Mixed reasoning 11 Forward Chaining Forward chaining is a reasoning model that works from a set of facts and rules towards a set of conclusions, diagnoses or recommendations. When a fact matches the antecedent of a rule, the rule fires, and the conclusion of the rule is added to the database of facts. 12 Conflict Resolution More than one rule will may be used A conflict resolution strategy decides which rule to use. Strategies: give rules priorities and use the conclusion that has the highest priority. apply the rule with the longest antecedent apply the rule whose condition was most recently added to the database. 13 Rete Algorithm for Forward Chaining Reorganize the rules in a network so that the conditions are linked to the rules, i.e. rules are indexed by their antecedents When a new conclusion is made or a new fact arrives, examine only those rules whose antecedents contain the new conclusions or facts The algorithm makes forward chaining much faster at the expense of greater memory requirements 14 Backward Chaining Used when a particular conclusion is to be proved. Works back from a conclusion towards the original facts. When a conclusion matches the conclusion of a rule in the database, the system tries to prove the antecedents of the rule. 15 Coping with uncertainty The ability of the system to reason with rules and data which are not precisely known. Certainty factors: Apply to the known facts: how much we trust the recorded facts Apply to the rules: how much we trust the rules 16 Meta Rules Meta rules : knowledge about how the system works. Example of meta rules: The rules that determine the conflict resolution strategy Meta rules might define that knowledge from Expert A is to be trusted more than knowledge from Expert B. 17 Meta Rules Implementation of meta rules: Implicit – in the inference engine (e.g. conflict resolution) Explicit - treated by the system like normal rules, but are given higher priority 18 Mixed Reasoning Collect initial data and use forward reasoning to determine a set of possible conclusions Use backward reasoning to prove or disprove each conclusion 19 Example of Mixed Reasoning in Medical ES Collect data to build hypotheses For each hypothesis H: If H is in the facts database, it is proved. Otherwise, if H can be determined by asking a question, then enter the user’s answer in the facts database. Hence, it can be determined whether H is true or false. Otherwise, find a rule whose conclusion is H. Now apply this algorithm to try to prove this rule’s antecedents. If none of the above applies, we have failed to prove H. 20 Explanations Why a particular question is asked How a conclusion has been reached Why not some other conclusion What if a particular symptom is present Terminology – explain the terms used by the system 21 User interface End-users Knowledge engineer Experts Requirements: Self-consistent Consistent with widely used interface systems Provide navigation help Incorporate user model 22 Expert System Shells The shell is a piece of software which contains the user interface, a format for declarative knowledge in the knowledge base, and an inference engine. The knowledge engineer uses the shell to build a system for a particular problem domain. 23 CLIPS CLIPS is C Language Integrated Production System – an expert system shell. CLIPS uses a LISP-like notation to enter rules. 24 CYC A frame based production system. Uses a database of over 1,000,000 facts and rules, encompassing all fields of human knowledge. CYC can answer questions about all kinds of knowledge in its database, and can even understand analogies, and other complex relations. 25
© Copyright 2024