Introduction
UBI 517 Expert Systems 1
Rule based systems are going to be discussed with respect to
the structure of rules, the two inference methods,
• Forward and backward reasoning the two basic architectures used to organize rules and perform inferencing.
• inference networks
• pattern matching
UBI 517 Expert Systems 2
Rules represent knowledge using IF-THEN format
The IF portion of a rule is a condition,
(also called a premise or an antecedent), which tests the truth value of set of facts.
If these are found true, the THEN portion of a rule (also called the action, the conclusion or the consequent) is inferred as a new set of facts.
UBI 517 Expert Systems 3
The rule based systems are also called production systems .
Simon and Newel developed the production system to model human problem solving.
A production system consists of:
An area of memory that is used to track the current state of the universe under consideration ( working memory - database).
A set of production rules :condition - action pairs
(knowledge base).
An interpreter (inference engine) recognizes and executes a production whose conditions has been satisfied. This control may be either data driven or goal driven.
UBI 517 Expert Systems 4
Using search techniques and pattern
matching, rule based systems automate reasoning methods and provide the logical progression from initial data to the desired conclusion.
Thus the process of problem solving in knowledge based systems is to create a series of inferences that create a “ path ” between the problem definition and the solution
This series of inferences is progressive in nature and is called an inference chain .
UBI 517 Expert Systems 5
Suppose we are building a knowledge based system for forecasting the weather over the next 12 – 24 hours in Florida during the summer.
RULE 1: IF the ambient temperature is above 90
0
F
THEN the weather is hot.
RULE 2: IF the relative humidity is greater than 65%
THEN the atmosphere is humid
RULE 3: IF the weather is hot and the atmosphere is humid
THEN thunderstorms are likely to develop.
UBI 517 Expert Systems 6
Assume the following facts are true:
The ambient temperature is 92 0 F
The relative humidity is 70%
Rules 1 and 2 are fired and the following new facts are deduced
The atmosphere is humid
The weather is hot
Which satisfy the premises of the rule 3, causing a new fact to be derived:
Thunderstorms are likely to develop.
UBI 517 Expert Systems 7
A single rule could have been written to reach the same conclusion:
Rule 1-A:
IF the ambient temperature is above
90 0 F and the atmospheric relative humidity
> 65%
THEN thunderstorms are likely to develop
There may be other rules that use the facts “The weather is hot.” and “The atmosphere is humid.”
UBI 517 Expert Systems 8
Rule based systems differ from logic in the following major ideas:
1. They are generally non-monotonic
2. They accept uncertainty in the deductive process.
Non-monotonic reasoning is the concept by which derived facts can be retracted when they are no longer true.
UBI 517 Expert Systems 9
There are two means of progressing toward conclusions:
1.
2.
Start with all the known data and progress to the conclusion (data driven or forward chaining)
Select a possible conclusion and prove its validity by looking for supportive evidence
(goal driven or backward chaining).
UBI 517 Expert Systems 10
Suppose we have a task of identifying different varieties of fruit.
Knowledge used in identification of fruits can be described through a set of rules.
UBI 517 Expert Systems 11
R01:IF shape = long and color = green or yellow
THEN fruit = banana
R02:IF shape = round or oblong and diameter > 4 inches
THEN fruitclass = vine
R08:IF fruitclass = vine and surface = rough and color = tan
THEN fruit = cantolope
R03:IF shape = round and diameter < 4 inches
THEN fruitclass = tree
R09:IF fruitclass = tree and color = orange and seedclass = stonefruit
THEN fruit = apricot
R04:IF seedcount = 1
THEN seedclass = stonefruit
R10:IF fruitclass = tree and color = orange and seedclass = multiple
THEN fruit = orange R05:IF seedcount > 1
THEN seedclass = multiple
R06:IF fruitclass = vine and color = green
THEN fruit=watermelon
R11:IF fruitclass = tree color = red and seedclass = stonefruit
THEN fruit = cherry
R07:IF fruitclass = vine and surface = smooth and color = yellow
THEN fruit = honeydew
R12:IF fruitclass = tree and color = orange and seedclass = stonefruit
THEN fruit = peach
UBI 517 Expert Systems 12
R13:IF fruitclass = tree and color = red or yellow or green and seedclass = multiple
THEN fruit = apple
R14:IF fruitclass = tree and color = purple and seedclass = stonefruit
THEN fruit = plum
The knowledge expressed in rules can be pictorially represented by a graph
The graphical format clearly details the connections that exist between the rules via the parameters.
AND parameters
OR parameters
Intermediate parameters
Generally these facts can be derived through the application of some rules rather than being requested directly from
13
UBI 517 Expert Systems 14
Data driven reasoning is ideally suitable for problem domains involving synthesis such as design, configuration, planning, scheduling.
In these cases many but equally acceptable solutions exist.
Goal driven reasoning is ideally suited for diagnostic problems.
In these cases there are small number of conclusions that can be drawn.
UBI 517 Expert Systems 15
The patterns in working memory are matched against the conditions of the production rules this produces a subset of the productions called the conflict set whose conditions match the patterns in working memory. One of the productions in the conflict set is then selected
( conflict resolution ) and the production is fired. That is, the action of the rule is performed changing the contents of working memory. After the selected production rule is fired the control cycle repeats with the modified working memory. The process terminates when no rule conditions are matched by the contents of working memory.
UBI 517 Expert Systems 16
New rules
Knowledge
Rules
Facts
Step1:
Match
Applicable rules
Ste2:
Conflict Resolution
Selected rules
Step3:
Execution
Facts
UBI 517 Expert Systems
New Facts
17
Rule interpretation in forward reasoning involves the repetition of the basic steps:
1.
Matching: Find all rules whose premises are true and mark them as being applicable
2.
Conflict Resolution: If more than one rule applies then select the rule with the highest priority (those whose premises have been satisfied).
3.
Action: Execute the action of the lowest numbered applicable rule. If none applies then halt.
4.
Reset: Reset the applicability of all rules and return to step 1.
UBI 517 Expert Systems 18
Assume the database contains the following facts:
Diameter = 1 inch
Shape = round
Seedcount = 1
Color = red
UBI 517 Expert Systems 19
Execution Cycle Applicable rules Selected rules
1 3,4 3
2 3, 4 4
3
4
3, 4, 11
3, 4, 11
11
-
Derived facts
Fruitclass = tree
Seedclass = stonefruit
Fruit = cherry
-
UBI 517 Expert Systems 20
Backward reasoning corresponds very closely to depth first search.
The system starts with an empty database of known facts.
A list of goals (or conclusions) is provided for which the system attempts to derive values.
For fruit identification problem initially:
Known fact Base: ( )
Goals: (fruit)
UBI 517 Expert Systems 21
Form a stack initially composed of all the top level goals defined in the system.
Consider the first goal from the stack. Gather all rules capable f satisfying this goal.
For each of these rules:
1.
If all premises are satisfied, then execute this rule to derive its conclusion. Remove this goal from the stack and go to step to 2.
2.
If any premise of a rule is not satisfied, look for rules that derive the specified value for the parameter used in this premise. If any can be found, consider it as a subgoal and put it on top of the stack, return to step 2.
UBI 517 Expert Systems 22
3.
If step above can’t find a rule to derive the specified value, then query the user for its value and add it to the database. If the premise is satisfied continue with the next premise, if not consider the next rule.
If all rules that can satisfy the current goal have been attempted and all have failed, then this goal remains undetermined. Remove it from the stack and return to step 2. If the stack is empty, announce completion and halt.
UBI 517 Expert Systems 23
Suppose that the fruit we are trying to identify is cherry.
The top level goal: fruit
Step2: Gather all rules that can derive this goal
Rules 1, 6, 7, 8, 9, 10, 11, 12, 13 and 14
Execution starts with rule1
UBI 517 Expert Systems 24
R1: IF shape = long and color = green or yellow
THEN fruit = banana
There is no value for shape in database
The inference mechanism asks the user:
What is the value for shape?
We respond with a value of round which is added to the database.
Known Fact Base: ( ( shape = round ) )
Based on closed-world assumption rule1 fails.
25
R6: IF
THEN fruitclass = vine and color = green fruit = watermelon
R2 and R3 are capable of deriving values for fruitclass.
Add this subgoal to the stack
Goals: ( (fruitclass)
(fruit) )
R2: IF shape = round and diameter > 4 inches
THEN fruitclass = vine
R3: IF shape = round or oblong and diameter < 4 inches
THEN fruitclass = tree
UBI 517 Expert Systems 26
Shape = round (from the database)
What is the value for the diameter? (queered)
Known Fact Base:
( (shape = round)
(diameter = 1)
(fruitclass = tree) )
R2 fails
R3 derives
UBI 517 Expert Systems 27
R7 and R8 fail
Fruitclass = vine
R9: IF
THEN fruitclass = tree and color = orange and seedclass = stonefruit fruit = apricot
What is the value for color?
Respond : red
R9 and R10 fail
UBI 517 Expert Systems 28
R11: IF fruitclass = tree and color = red and Seedclass= ?
seedclass = stonefruit
THEN fruit = cherry
R4: IF seedcount = 1
THEN seedclass = stonefruit
What is the value for seedcount?
Respond : 1
UBI 517 Expert Systems 29
All premises of R11 are satisfied.
R11 is fired and cherry is concluded for the fruit.
Known Fact Base:
( ( shape = round)
( diameter = 1)
( fruitclass = tree)
( color = red)
( seedcount = 1)
( seedclass = stonefruit)
( fruit = cherry) )
UBI 517 Expert Systems 30
There are two basic structures to the knowledge contained within a rule based system:
1.
2.
inference networks and
pattern matching systems.
UBI 517 Expert Systems 31
Inference network can be represented as a graph in which the nodes represent the parameters that are facts.
Each fact can serve as an antecedent or consequent of a rule.
The rules are represented by the interconnections between the various nodes. This knowledge is used by the inference process to propagate results throughout the network.
UBI 517 Expert Systems 32
amb-temp
R1 temp-cond rel-hum
R2 hum-cond storm
All interconnections between the nodes are known prior to execution
Searching to Match facts with premises is minimized
Implementation of the inference engine and explanation is simplified
UBI 517 Expert Systems 33
Pattern matching systems use extensive searches to match and execute the rules, deriving new facts.
Relationships between rules and facts are formed at run-time based on the patterns that match the facts.
A pattern matching system depends on matching the premises of a rule to existing facts to determine which rules have their premises satisfied by the facts and can, therefore execute.
The premises of a rule are patterns. These patterns are satisfied when a search through the database of facts discovers any facts that match them.
UBI 517 Expert Systems 34
1.
2.
The typical features included within pattern matching systems are classified as one of the following five types:
Pattern connectives – AND, OR
Wildcard - ? $
Consider the following house example
(type color number_of_stories square_footage)
(contemporary brown 2 2835)
(contemporary ? ? ?sq_footage) ;;a contemporary house with certain square footage, but don’t care about its color or number of stories.
(contemporary $ ?sq_footage) ;; $ represents one or more fields.
UBI 517 Expert Systems 35
CLIPS>
(deftemplate person
(slot name)
(slot eyes)
(slot hair))
(defrule find-blue-eyes
(person (name ?name)
(eyes blue))
(printout t ?name " has blue eyes." crlf))
(deffacts people
(person (name Jane)
(eyes blue) (hair red) )
(person (name Jack)
(eyes blue) (hair black) )
(person (name Jeff)
(eyes green) (hair brown) ) ) when run
Jack has blue eyes
Jane has blue eyes.
UBI 517 Expert Systems 36
3.
4.
5.
Field constraints
(ranch ~red ? ?sq_footage)
(contemporary gray|white ? ?sq_footage)
Mathematical operators
(defrule subtraction
(numbers ?x ?y)
(bind ?answer (- ?x ?y))
(fprintout t “the answer is “ ?answer crlf))
Test feature
(if ((A = B) x y ))
UBI 517 Expert Systems 37
(defrule big-obj
(width ?obj ?w)
(length ?obj ?l)
(height ?obj ?h)
(or
(test (> ?w 50))
(test (> ?l 50))
(test (> ?h 50)))
(fprintout t ?obj “is large object.” crlf))
UBI 517 Expert Systems 38
Rule based systems that use pattern matchers are flexible and powerful.
They are more applicable for domains where the possible solutions are either unbound or large in numbers, such as design, planning and synthesis.
The use of search to find applicable rules makes pattern matchers inefficient.
Some knowledge based systems (XCON) and shells (OPS5, KEE, CLIPS) are based on pattern matching architectures
UBI 517 Expert Systems 39
Inference networks are useful for domains where the number of different alternative solutions is limited (classification, diagnostic type of problems).
Easier to implement
Less powerful because all the relations need to be known beforehand.
Allow explanation of solution easily.
UBI 517 Expert Systems 40
Major problems with rule based systems are:
1.
2.
3.
infinite chaining, addition of new, contradictory knowledge, modification of existing rules.
UBI 517 Expert Systems 41
Results from the myth
“If the system does not work properly, all you need to do is to add more rules.”
R23: IF anemia-risk(?person)
THEN anemis-risk(son(?person))
R24: IF anemia-risk(father(?person))
THEN anemia-risk(?person)
UBI 517 Expert Systems 42
In rule based systems it is possible to introduce new knowledge to fix some problem in the knowledge base, which in turn introduces a contradiction.
R107: IF it is raining
THEN not(weather is sunny)
R109: IF location is Florida
THEN not(weather is cloudy)
R24: IF time of day is late afternoon
THEN weather is sunny or weather is cloudy
FACTS:time of day is late afternoon
Conclusion is that the
Weather is sunny.
location is Florida
UBI 517 Expert Systems 43
R107: IF it is raining
THEN not(weather is sunny)
R109: IF location is Florida
THEN not(weather is cloudy)
R96: IF time of day is late afternoon
THEN weather is sunny or weather is cloudy
R120: IF time of day is late afternoon and location is Florida
THEN it is raining
FACTS:time of day is late afternoon location is Florida
UBI 517 Expert Systems 44
R302: IF organism = strep or organism = gonorrhea
THEN prescription = penicillin
Some people are allergic to penicillin
R302: IF organism = strep or organism = gonorrhea
THEN indicated-drug = penicillin
R342: IF indicated-drug = penicillin and unknown(allergy-to = penicillin)
THEN ask(allergy-to = penicillin)
R367: IF indicated-drug = penicillin and not (allergy-to = penicillin)
THEN prescription = penicillin
45
Patients may be allergic to other drugs.
R342 and R367 can be generalized as follows
R342: IF indicated-drug = ?drug and unknown(allergy-to = ?drug)
THEN ask(allergy-to = ?drug)
R367: IF indicated-drug = ?drug and not (allergy-to = ?drug)
THEN prescription = ?drug
UBI 517 Expert Systems 46
1.
2.
3.
Additional disadvantages of rule based systems are:
Inefficiency
During every cycle of inference mechanism each rule is examined to see whether it applies to the current situation
Opacity
It is very difficult to examine a developed knowledge base and determine what actions are going to occur when.
Coverage of domain
Some domains contain numerous variations of inputs which require the storage of tens of thousands of rules.
UBI 517 Expert Systems 47
Significant advantages of rule based systems are:
1.
2.
3.
4.
Separation of knowledge and control
Modularity
Each rule is a distinct separate unit of knowledge that can be added, modified or removed independent of the other rules that are present in the knowledge base.
Uniformity
All knowledge in the system is expressed in exactly the same format.
Naturalness
Rules are a natural format for expressing knowledge
UBI 517 Expert Systems 48