Title: COMP 4200: Expert Systems
1COMP 4200 Expert Systems
- Dr. Christel Kemke
- Department of Computer Science
- University of Manitoba
2Reasoning in Expert Systems
- knowledge representation in Expert Systems
- shallow and deep reasoning
- forward and backward reasoning
- alternative inference methods
- metaknowledge
3Experts and Expert Systems
- Human Experts achieve high performance because of
extensive knowledge concerning their field - Generally developed over many years
4Types of Knowledge
- Knowledge Representation in XPS can include
- conceptual knowledge
- terminology, domain-specific terms
- derivative knowledge
- conclusions between facts
- causal connections
- causal model of domain
- procedural knowledge
- guidelines for actions
5Knowledge Modeling in XPS
- Knowledge Modeling Technique in XPS
- mostly rule-based systems (RBS)
- rule system models elements of knowledge
formulated independently as rules - rule set is easy to expand
- often only limited deep knowledge, i.e. no
explicit coherent causal or functional model of
the domain
6Shallow and Deep Reasoning
- shallow reasoning
- also called experiential reasoning
- aims at describing aspects of the world
heuristically - short inference chains
- complex rules
- deep reasoning
- also called causal reasoning
- aims at building a model that behaves like the
real thing - long inference chains
- simple rules that describe cause and effect
relationships
7Dilbert on Reasoning 1
8Dilbert on Reasoning 2
9Dilbert on Reasoning 3
10General Technology of XPS
- Knowledge Inference
- core of XPS
- Most often Rule-Based Systems (RBS)
- other forms Neural Networks, Case-Based
Reasoning
11Rule-Based Expert Systems
- Work with
- a set of facts describing the current world state
- a set of rules describing the expert knowledge
- inference mechanisms for combining facts and
rules in reasoning
12Inference Engine
Knowledge Base (rules)
Working Memory (facts)
Agenda
Explanation Facility
Knowledge Acquisition Facility
User Interface
13Architecture of Rule-Based XPS 1
- Knowledge-Base / Rule-Base
- stores expert knowledge as condition-action-rules
(or if-then- or premise-consequence-rules) - objects or frame structures are often used to
represent concepts in the domain of expertise,
e.g. club in the golf domain. - Working Memory
- stores initial facts and generated facts derived
by the inference engine - additional parameters like the degree of trust
in the truth of a fact or a rule (? certainty
factors) or probabilistic measurements can be
added
14Architecture of Rule-Based XPS 2
- Inference Engine
- matches condition-part of rules against facts
stored in Working Memory (pattern matching) - rules with satisfied condition are active rules
and are placed on the agenda - among the active rules on the agenda, one is
selected (see conflict resolution, priorities of
rules) as next rule for - execution (firing) consequence of rule can
add new facts to Working Memory, modify facts,
retract facts, and more
15Architecture of Rule-Based XPS 3
- Inference Engine additional components
- might be necessary for other functions, like
- calculation of certainty values,
- determination of priorities of rules
- and conflict resolution mechanisms,
- a truth maintenance system (TMS) if reasoning
with defaults and beliefs is requested
16Rule-Based Systems- Example Grades -
- Rules to determine grade
- study ? good_grade
- not_study ? bad_grade
- sun_shines ? go_out
- go_out ? not_study
- stay_home ? study
- awful_weather ? stay_home
17Example Grades
Rule-Base to determine the grade
- study ? good_grade
- not_study ? bad_grade
- sun_shines ? go_out
- go_out ? not_study
- stay_home ? study
- awful_weather ? stay_home
Q1 If the weather is awful, do you get a good or
bad grade? Q2 When do you get a good grade?
18Forward and Backward Reasoning
- forward reasoning
- Facts are given. What is the conclusion?
- A set of known facts is given (in WM) apply
rules to derive new facts as conclusions (forward
chaining of rules) until you come up with a
requested final goal fact. - backward reasoning
- Hypothesis (goal) is given. Is it supported by
facts? - A hypothesis (goal fact) is given try to derive
it based on a set of given initial facts using
sub-goals (backward chaining of rules) until goal
is grounded in initial facts.
19Example Grades
- study ? good_grade
- not_study ? bad_grade
- sun_shines ? go_out
- go_out ? not_study
- stay_home ? study
- awful_weather ? stay_home
forward reasoning rule chain given fact
awful_weather 6,5,1 backward
reasoning hypothesis/goal good_grade 1,5,6
20Example Grades
Working Memory Agenda
awful weather
Rule 6
Select and apply Rule 6
awful weather stay home
Rule 5
Select and apply Rule 5
21Example Grades
Working Memory Agenda
awful weather stay home study
Rule 1
Select and apply Rule 1
awful weather stay home study good grade
empty
DONE!
22Example Police Reasoning Tree
forward reasoning Shield AND Pistol ?
Police backward reasoning Police ? Badge AND gun
Police
Bad Boy
Badge
Gun
AND
OR
Pistol
Revolver
Shield
Q What if only Gun is known?
23Example Grades Reasoning Tree
good grade
bad grade
not study
study
go out
stay home
sun shines
awful weather
24Example Police Reasoning Tree
Police
Bad Boy
Badge
Gun
AND
OR
Pistol
Revolver
Shield
Q What if only Pistol is known as ground fact?
25Example Police Reasoning Tree
Bad Boy
Police
Badge
Gun
AND
OR
Shield
Pistol
Revolver
Task Write down the Rule-Base for this example!
26Forward vs. Backward Chaining
27Alternative Reasoning Methods
- Theorem Proving
- emphasis on mathematical proofs and correctness,
not so much on performance and ease of use - Probabilistic Reasoning
- integrates probabilities into the reasoning
process - Certainty Factors
- Express subjective assessment of truth of fact or
rule - Fuzzy Reasoning
- allows the use of vaguely defined predicates and
rules
28Metaknowledge
- deals with knowledge about knowledge
- e.g. reasoning about properties of knowledge
representation schemes, or inference mechanisms - usually relies on higher order logic
- in (first order) predicate logic, quantifiers are
applied to variables - second-order predicate logic allows the use of
quantifiers for function and predicate symbols - may result in substantial performance problems
- CLIPS uses meta-knowledge to define itself, i.e.
CLIPS constructs, classes, etc. - in a
bootstrapping form
29Expert Systems Task Areas
30Task Areas of Expert Systems
- System-based Problem or Task Description
- Analysis Tasks (Interpretation)
- Diagnosis
- Classification
- Synthesis Tasks (Construction)
- Construction
- Configuration
- Design
- Planning
31Analysis Tasks
- Analysis Tasks (Diagnosis, Classification)
- determine specific solution element (diagnosis)
based on a description of the system (symptoms or
other descriptive facts) - rules formulate connections between symptoms etc.
and diagnostic class - e.g. the medical expert system MYCIN for
diagnosing bacterial infections - e.g. tutoring systems like GUIDEON for diagnosing
students mistakes
32Synthesis Tasks
- Synthesis Tasks (Construction, Configuration,
Design, Planning) - combine elements from a component (solution)
space and check consistency of complete solution - rules formulate constraints and extensions for
partial solution, similar to planning - e.g. the technical expert system R1/XCON to
configure computer systems
33Expert Systems Tasks
- Interpretation
- Prediction
- Diagnosis
- Design
- Planning
- Monitoring
- Debugging
- Instruction
- Control
- (after Hayes-Roth et al. (1983), Waterman (1986),
cited from Luger and Stubblefield Artificial
Intelligence, 1998, see Jackson, p.208)
34Expert Systems Tasks 1
- Interpretation
- forming high-level conclusions from raw data
- Prediction
- projecting probable consequences of given
situations - Diagnosis
- determining the cause of malfunctions in complex
situations based on observable symptoms - Design
- finding a configuration of system components
that meets performance goals while satisfying a
set of design constraints
35Expert Systems Tasks 2
- Planning
- devising a sequence of actions that will achieve
a set of goals given certain starting conditions
and run-time constraints - Monitoring
- comparing a systems observed behavior to its
expected behavior - Debugging and Repair
- prescribing and implementing remedies for
malfunctions - Instruction
- detecting and correcting deficiencies in
students understanding of a subject domain - Control
- governing the behavior of a complex environment