Page 251 - DCAP208_Management Support Systems
P. 251
Management Support Systems
Notes Backward Chaining Systems
So far we have looked at how rule-based systems can be used to draw new conclusions from
existing data, adding these conclusions to a working memory. This approach is most useful
when you know all the initial facts, but don’t have much idea what the conclusion might be. If
you DO know what the conclusion might be, or have some specific hypothesis to test, forward
chaining systems may be inefficient. You could keep on forward chaining until no more rules
apply or you have added your hypothesis to the working memory. But in the process the system
is likely to do a lot of irrelevant work, adding uninteresting conclusions to working memory.
This can be done by backward chaining from the goal state (or on some state that we are
interested in). Given a goal state to try and prove (e.g., inflation rise) the system will first check
to see if the goal matches the initial facts given. If it does, then that goal succeeds. If it doesn’t the
system will look for rules whose conclusions (previously referred to as actions) match the goal.
One such rule will be chosen, and the system will then try to prove any facts in the preconditions
of the rule using the same procedure, setting these as new goals to prove.
Notes A backward chaining system does not need to update a working memory. Instead
it needs to keep track of what goals it needs to prove its main hypothesis.
In principle we can use the same set of rules for both forward and backward chaining. However,
in practice we may choose to write the rules slightly differently if we are going to be using them
for backward chaining. In backward chaining we are concerned with matching the conclusion of
a rule against some goal that we are trying to prove. So the ‘then’ part of the rule is usually not
expressed as an action to take but as a state which will be true if the premises are true.
Task Compare and contrast forward chaining system and backward chaining system.
14.2.5 Techniques of Searching
The order that rules fire may be crucial, especially when rules may result in items being deleted
from working memory. The system must implement a searching technique that is used to
process the knowledge base. Some of these technique are:
Depth First Search
In depth first search technique, the most recently fact added to the working memory is first
selected for processing. We can thus implement it using stack so that the rule we have recently
added to the working memory will be the one to be selected for the next cycle.
Breadth First Search
In the breath first search technique, the fact selected in the working memory for processing are
selected in the order in which they were added in the working memory. We can use queue data
structure to implement it. Since the rule to be processed will be selected in the front of the queue
and the new fact are added at the rear of the queue.
244 LOVELY PROFESSIONAL UNIVERSITY