Chapter 5
Rule-based Systems
Production Systems
Mycin - 1973-1984
- :Stanford
- medicine
R1
- 1977 ? - SOAR current - extended GPS
- :CMU
- configuring DEC systems
Prospector
- 1974 - 1983
- :Stanford
- geology
nice overhead
Production Systems (Rule-Based Expert Systems)
The production system is a problem-solving methodology that is modeled
after a system described by Post in 1943. This model has the following
characteristics:
- Production are a computationally universal machine
- They seperate the domain knowledge of the system from the control process
- Domain Knowledge takes the form of rules
- The flow of control is the select-execute (recognize-act, situation-action) sycle. The decision strategy can evaluatek the entire state of the system before making a control flow change. Compare with procedural languages.
- Some authors clain that production systems model the
thinking of human beings, evidenced by protocols
- Has the following standard parts
Parts of the Standard Production (Rule-Based) System
- Rule Interpreter - Picks all the rules that apply to the current system state
- Conflict Resolution - From the list of rules choosen by the Rule Interpreter as applicable, choose the one to fire (page 87 for CLIPS)
- Execution - Performs the action indicated by selected rule
- Working Memory - Contains all the facts that have been deduced or given to the system
- Rule Base - All the domain knowledge or expertise of this system
What are the conditions and the actions of a Rule:
-
Conditions - In the standard system, the conditions are matched against the facts in the data base
-
Actions - In standard system, actions write facts into the data base but could conceivably do anything, like write in its own rules.
Production Systems (Rule-Based Expert Systems)
- Rules are a particular kind of Knowledge Representation
- Production Systems are a methodology that do Problem Solving
using Rules as their Knowledge Representation
Rules
Typical Rules usually are a set of condition-action pairs of the form:
IF (condition 1
condition 2
.
.
.
condition n)
THEN (action 1
action 2
.
.
.
action n)
Note that there is no necessary restriction on the number of conditions or actions
Just what a condition and action is specifically we will have to investigate
Said another way: RBS consist of:
- a set of rules (left/right side: antecedent/consequence)
- knowledge bases with information about a given task (case)
- a control strategy (decides which rule to "fire")
- [a rule applier]
The control strategy searches through the space of rules from a given initial state, applies valid rule(s) until it reaches the final state.
(an aside: production systems demonstrate the data-drived nature of intelligence (new input/behavior change). Rules can easily be added (systems are never complete))
Forward Chaining
Forward Chaining is one control strategy commonly used in Production
Systems and has the following characteristics
- It matches against the condition half of the rules (commonly called the left-hand side of LHS) and executes the action of the chosen rule
- It is a data-driven process, matching world facts to the conditions of the rules
- It is a deductive process, adding facts to the knowledge base
which it believes to be true
- It finishes the process when no more condition parts of a rule
match against anything in the data base (Note: one can have a problem with repeating rules that were once true)
Backward Chaining
Backward Chaining is another common control strategy used in Production Systems. It has the following characteristics:
- Backward Chaining matches against the action parts of a list
of rules (commonly called the right-hand side of RHS). If such a match is found, the system tries to establish the conditions of the matched rule. If these
new conditions are not in the data base, they are matched against the action half
of all the rules
- It is a goal-driven process, trying to establish a fact by finding all the rules that could confirm it
- It is a hypothesize and match reasoning
- It finishes when a subgoal cannot be established or the goal is
established
See the Bartender example
See Chapter 5 of the text for specific examples using CLIPS
Discuss knowledge structure and meta-rules