IF
The customer should receive priority service
THEN
Call within 4 hours
Typically, a command in the expert system defines
the
initial top-level goal. In this case, it is: "Determine
if the response should be within 4 hours."
Goal List:
1. Determine if response should be within 4 hours |
The system looks through the rules (only 1 rule so
far) to find rules with the top goal in the THEN part. This
rule is tested since it could potentially set the value for the goal.
To determine if the relevant rule is true, and
can set
a value for the goal, the system must determine whether
the IF conditions are true. That requires determining whether
"The customer should receive priority service" which becomes
the new Top-Level Goal. Remember, ONLY the top-level goal matters
to the system. The inference engine temporarily stops trying to set
a value for the "Respond in 4 hours" goal and concentrates
on the new top Goal, "Priority customer".
Goal List:
1. Determine if the customer is a Priority customer
2. Determine if the response should be within 4 hours |
Since there are no other rules in the sample system,
there is no way of deriving the value so the system
must ask the end user. Once the user answers the question, the system
knows the value for "The customer should receive priority service"
and that goal drops off the Goal List. The Goal list returns to
the original goal of determining if the response should be within
4 hours. If the system determines that this is a priority customer,
the one rule in the system determines the value for that Goal, and
the session is complete. If it cannot determine that this is a priority
customer, there are no rules in the system for setting a value for
the "respond in 4 Hours" variable.
Next Issue:
|
Article and Buyers
Guide Themes:
Data Analysis and Mining
Modeling and Simulation
Evolutionary and Genetic Algorithms
Common Sense
Creative Thinking
Pattern Matching
Intelligent Agents
|
Also scheduled are articles
on Business Intelligence Integration, Robotics, Prolog, AI
and the Net, and the return of the AI Q crossword puzzle and
the PC AI Bookzone.
|
|
|
Simple Example - Adding Clarification
In reality, asking the typical first level support staff
if "The customer should receive priority service" is not
reasonable. The staff typically does not have the background or corporate
knowledge to answer correctly and consistently. The system needs additional
rules to establish this value based on lower level questions, which
the intended user can answer correctly and consistently.
The addition of more specific rules, which the inference
engine automatically uses, makes the system much more capable and
less subjective. Rules specifying when a customer should receive priority
service can ask the user more appropriate questions and derive needed
information.
In this case, add 3 rules that identify a priority
customer:
IF
The customer purchases are over $250,000 per year
THEN
The customer should receive priority service
IF
The customer works for a Partner company
THEN
The customer should receive priority service
IF
The customer's company has significant growth potential
THEN
The customer should receive priority service
When the system runs, the same initial goal starts the
system. The inference engine finds this first rule and tests it,
Goal List:
1. Determine if the customer is a Priority customer
2. Determine if the response should be within 4 hours |
setting the new Top Level Goal to determine if the
customer is a "Priority customer."
The system now has rules to determine if the customer
is a priority customer instead of directly asking the user.
The engine tests each rule in order. The first
rule found is:
IF
The customer purchases are over $250,000 per year
THEN
The customer should receive priority service
The IF condition in the rule becomes the new
top-level Goal (see the goal list on the top of the next page).
The system automatically searches for any rule that
would set a value for the "Purchases over $250,000" variable.
|