EXPERT SYSTEMS AND KNOWLEDGE REPRESENTATION Ivan Bratko Faculty of Computer and Info. Sc. University of Ljubljana.

Slides:



Advertisements
Similar presentations
Modelling with expert systems. Expert systems Modelling with expert systems Coaching modelling with expert systems Advantages and limitations of modelling.
Advertisements

1 Knowledge Based Systems (CM0377) Lecture 11 (Last modified 26th March 2001)
STRONG METHOD PROBLEM SOLVING
Lahore University of Management Sciences, Lahore, Pakistan Dr. M.M. Awais- Computer Science Department 1 Lecture 12 Dealing With Uncertainty Probabilistic.
Expert Systems Reasonable Reasoning An Ad Hoc approach.
CHAPTER 13 Inference Techniques. Reasoning in Artificial Intelligence n Knowledge must be processed (reasoned with) n Computer program accesses knowledge.
1 Inferences with Uncertainty Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson Copyright 1998, Prentice Hall, Upper Saddle.
Expert Systems Reasonable Reasoning An Ad Hoc approach.
Rulebase Expert System and Uncertainty. Rule-based ES Rules as a knowledge representation technique Type of rules :- relation, recommendation, directive,
CS 484 – Artificial Intelligence1 Announcements Choose Research Topic by today Project 1 is due Thursday, October 11 Midterm is Thursday, October 18 Book.
Supporting Business Decisions Expert Systems. Expert system definition Possible working definition of an expert system: –“A computer system with a knowledge.
Inferences The Reasoning Power of Expert Systems.
Intelligent systems Lecture 6 Rules, Semantic nets.
Chapter 12: Expert Systems Design Examples
Knowledge Representation and Expert Systems by Sujan Pakala Stephen Brown.
Dealing with Uncertainty  The need to deal with uncertainty arose in “expert systems”  Code expertise into a computer system Example:  Medical diagnosis:
Expert System Human expert level performance Limited application area Large component of task specific knowledge Knowledge based system Task specific knowledge.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.5 [P]: Propositions and Inference Sections.
Introduction to Expert Systems
CIS 430 ( Expert System ) Supervised By : Mr. Ashraf Yaseen Student name : Ziad N. Al-A’abed Student # : EXPERT SYSTEM.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
Rules and Expert Systems
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
EXPERT SYSTEMS Part I.
ES: Expert Systems n Knowledge Base (facts, rules) n Inference Engine (software) n User Interface.
Artificial Intelligence CSC 361
Expert Systems Expert systems are AI programs that solve a highly technical problem in some domain Expert systems are AI programs that solve a highly technical.
Sepandar Sepehr McMaster University November 2008
Expert Systems Expert Systems Chris LaJoie, Chris Panton, and Kurt DeVaney.
Expert Systems Infsy 540 Dr. Ocker. Expert Systems n computer systems which try to mimic human expertise n produce a decision that does not require judgment.
1 Backward-Chaining Rule-Based Systems Elnaz Nouri December 2007.
Artificial Intelligence Lecture 12. Knowledge-based problem solving  expert systems rule-based reasoning, heuristics  alternative approaches case-based.
Artificial Intelligence Lecture No. 15 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
1 Lyle H. Ungar, University of Pennsylvania What is AI? “Artificial Intelligence is the study of how to make computers do things at which, at the moment,
Expert Systems 10 May Journal Expert vs. Expert System Expert: someone who has an extraordinary amount of knowledge within a narrow domain Expert.
Introduction to Expert Systems Kostas Kontogiannis.
13: Inference Techniques
Chapter 1: Introduction to Expert Systems Expert Systems: Principles and Programming, Fourth Edition.
Artificial Intelligence
Course Instructor: K ashif I hsan 1. Chapter # 2 Kashif Ihsan, Lecturer CS, MIHE2.
Introduction to Expert Systems. Other Resources Handout at ECE Office.
School of Computer Science and Technology, Tianjin University
1 Lecture Expert Systems &. 2 Operator Notation A programmer can define new operators by inserting into the program special kinds of clauses,
Chapter 9: Rules and Expert Systems Lora Streeter.
Introduction From: Chapter 1, Building Expert Systems in Prolog, htm.
Chapter 13 Artificial Intelligence and Expert Systems.
Overview Of Expert System Tools Expert System Tools : are all designed to support prototyping. Prototype : is a working model that is functionally equivalent.
Expert System Note: Some slides and/or pictures are adapted from Lecture slides / Books of Dr Zafar Alvi. Text Book - Aritificial Intelligence Illuminated.
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
17/1/1 © Pearson Education Limited 2002 Artificial Intelligence & Expert Systems Lecture 1 AI, Decision Support, Architecture of expert systems Topic 17.
Expert Systems. Learning Objectives: By the end of this topic you should be able to: explain what is meant by an expert system describe the components.
Artificial Intelligence
ITEC 1010 Information and Organizations Chapter V Expert Systems.
Some Thoughts to Consider 5 Take a look at some of the sophisticated toys being offered in stores, in catalogs, or in Sunday newspaper ads. Which ones.
1 Chapter 13 Artificial Intelligence and Expert Systems.
Expert System / Knowledge-based System Dr. Ahmed Elfaig 1.ES can be defined as computer application program that makes decision or solves problem in a.
Expert Systems Chapter Artificial IntelligenceChapter 82 Expert System p. 547 MYCIN (1976) see section 8.2 backward chaining + certainty factor.
Artificial Intelligence: Applications
EXPERT SYSTEMS BY MEHWISH MANZER (63) MEER SADAF NAEEM (58) DUR-E-MALIKA (55)
REASONING UNDER UNCERTAINTY: CERTAINTY THEORY
Expert Systems Directors : Prof. Zixing Cai &Miss WenSha
Introduction Characteristics Advantages Limitations
Chapter 9. Rules and Expert Systems
Introduction to Expert Systems Bai Xiao
Lecture 26 Artificial Intelligence: Reasoning & Embodied Intelligence
MYCIN  MYCIN was an early backward chaining expert system that used artificial intelligence to identify bacteria causing severe infections, such as bacteremia.
Expert Systems.
EXPERT SYSTEMS AND KNOWLEDGE REPRESENTATION Ivan Bratko Faculty of Computer and Info. Sc. University of Ljubljana.
Chapter 9. Rules and Expert Systems
전문가 시스템(Expert Systems)
Presentation transcript:

EXPERT SYSTEMS AND KNOWLEDGE REPRESENTATION Ivan Bratko Faculty of Computer and Info. Sc. University of Ljubljana

EPERT SYSTEMS An expert system behaves like an expert in some narrow area of expertise Typical examples: Diagnosis in an area of medicine Adjusting between economy class and business class seats for future flights Diagnosing paper problems in rotary printing Very fashionable area of AI in period 1985-95

SOME FAMOUS EXPERT SYSTEMS MYCIN (Shortliffe, Feigenbaum, late seventies) Diagnosis of infections PROSPECTOR (Buchanan, et al. ~1980) Ore and oil exploration INTERNIST (Popple, mid eighties) Internal medicine

Structure of expert systems

FEATURES OF EXPERT SYSTEMS Problem solving in the area of expertise Interaction with user during and after problem solving Relying heavily on domain knowledge Explanation: ability of explain results to user

REPRESENTING KNOWLEDGE WITH IF-THEN RULES Traditionally the most popular form of knowledge representation in expert systems Examples of rules: if condition P then conclusion C if situation S then action A if conditions C1 and C2 hold then condition C does not hold

DESIRABLE FEATURES OF RULES Modularity: each rule defines a relatively independent piece of knowledge Incrementability: new rules added (relatively independently) of other rules Support explanation Can represent uncertainty

TYPICAL TYPES OF EXPLANATION How explanation Answers user’s questions of form: How did you reach this conclusion? Why explanation Answers users questions: Why do you need this information?

RULES CAN ALSO HANDLE UNCERTAINTY If condition A then conclusion B with certainty F

EXAMPLE RULE FROM MYCIN if 1 the infection is primary bacteremia, and 2 the site of the culture is one of the sterilesites, and 3 the suspected portal of entry of the organism is the gastrointestinal tract then there is suggestive evidence (0.7) that the identity of the organism is bacteroides.

EXAMPLE RULES FROM AL/X Diagnosing equipment failure on oil platforms, Reiter 1980 if the pressure in V-01 reached relief valve lift pressure then the relief valve on V-01 has lifted [N = 0.005, S = 400] NOT the pressure in V-01 reached relief valve lift pressure, and the relief valve on V-01 has lifted the V-01 relief valve opened early (the set pressure has drifted) [N = 0.001, S = 2000]

EXAMPLE RULE FROM AL3 Game playing, Bratko 1982 if 1 there is a hypothesis, H, that a plan P succeeds, and 2 there are two hypotheses, H1, that a plan R1 refutes plan P, and H2, that a plan R2 refutes plan P, and 3 there are facts: H1 is false, and H2 is false then 1 generate the hypothesis, H3, that the combined plan ‘R1 or R2' refutes plan P, and 2 generate the fact: H3 implies not(H)

A TOY KNOWLEDGE BASE: WATER IN FLAT Flat floor plan Inference network

IMPLEMENTING THE ‘LEAKS’ EXPERT SYSTEM Possible directly as Prolog rules: leak_in_bathroom :- hall_wet, kitchen_dry. Employ Prolog interpreter as inference engine Deficiences of this approach: Limited syntax Limited inference (Prolog’s backward chaining) Limited explanation

TAILOR THE SYNTAX WITH OPERATORS Rules: if hall_wet and kitchen_dry then leak_in_bathroom. Facts: fact( hall_wet). fact( bathroom_dry). fact( window_closed).

BACKWARD CHAINING RULE INTERPRETER is_true( P) :- fact( P). if Condition then P, % A relevant rule is_true( Condition). % whose condition is true is_true( P1 and P2) :- is_true( P1), is_true( P2). is_true( P1 or P2) :- is_true( P1) ; is_true( P2).

A FORWARD CHAINING RULE INTERPRETER new_derived_fact( P), % A new fact !, write( 'Derived: '), write( P), nl, assert( fact( P)), forward % Continue ; write( 'No more facts'). % All facts derived

FORWARD CHAINING INTERPRETER, CTD. new_derived_fact( Concl) :- if Cond then Concl, % A rule not fact( Concl), % Rule's conclusion not yet a fact composed_fact( Cond). % Condition true? composed_fact( Cond) :- fact( Cond). % Simple fact composed_fact( Cond1 and Cond2) :- composed_fact( Cond1), composed_fact( Cond2). % Both conjuncts true composed_fact( Cond1 or Cond2) :- composed_fact( Cond1) ; composed_fact( Cond2).

FORWARD VS. BACKWARD CHAINING Inference chains connect various types of info.: data ... goals evidence ... hypotheses findings, observations ... explanations, diagnoses manifestations ... diagnoses, causes Backward chaining: “goal driven” Forward chaining: “data driven”

FORWARD VS. BACKWARD CHAINING What is better? Checking a given hypothesis: backward more natural If there are many possible hypotheses: forward more natural (e.g. monitoring: data-driven) Often in expert reasoning: combination of both e.g. medical diagnosis water in flat: observe hall_wet, infer forward leak_in_bathroom, check backward kitchen_dry

GENERATING EXPLANATION How explanation: How did you find this answer? Explanation = proof tree of final conclusion E.g.: System: There is leak in kitchen. User: How did you get this?

% is_true( P, Proof) Proof is a proof that P is true :- op( 800, xfx, <=). is_true( P, P) :- fact( P). is_true( P, P <= CondProof) :- if Cond then P, is_true( Cond, CondProof). is_true( P1 and P2, Proof1 and Proof2) :- is_true( P1, Proof1), is_true( P2, Proof2). is_true( P1 or P2, Proof) :- is_true( P1, Proof) ; is_true( P2, Proof).

WHY EXPLANTION Exploring “leak in kitchen”, system asks: Was there rain? User (not sure) asks: Why do you need this? System: To explore whether water came from outside Why explanation = chain of rules between current goal and original (main) goal

UNCERTAINTY Propositions are qualified with: “certainty factors”, “degree of belief”, “subjective probability”, ... Proposition: CertaintyFactor if Condition then Conclusion: Certainty

A SIMPLE SCHEME FOR HANDLING UNCERTAINTY c( P1 and P2) = min( c(P1), c(P2)) c(P1 or P2) = max( c(P1), c(P2)) Rule “if P1 then P2: C” implies: c(P2) = c(P1) * C

DIFFICULTIES IN HANDLING UNCERTAINTY In our simple scheme, for example: Let c(a) = 0.5, c(b) = 0, then c( a or b) = 0.5 Now, suppose that c(b) increases to 0.5 Still: c( a or b) = 0.5 This is counter intuitive! Proper probability calculus would fix this Problem with probability calculus: Needs conditional probabilities - too many?!?

TWO SCHOOLS RE. UNCERTAINTY School 1: Probabilities impractical! Humans don’t think in terms of probability calculus anyway! School 2: Probabilities are mathematically sound and are the right way! Historical development of this debate: School 2 eventually prevailed - Bayesian nets, see e.g. Russell & Norvig 2003 (AI, Modern Approach), Bratko 2001 (Prolog Programming for AI)