Saturday, September 15, 2012

What do you understand by forward Vs backward reasoning?

Whether you use forward or backwards reasoning to solve a problem depends on the properties of your rule set and initial facts. Sometimes, if you have some particular goal (to test some hypothesis), then backward chaining will be much more efficient, as you avoid drawing conclusions from irrelevant facts. However, sometimes backward chaining can be very wasteful - there may be many possible ways of trying to prove something, and you may have to try almost all of them before you find one that works. Forward chaining may be better if you have lots of things you want to prove (or if you just want to find out in general what new facts are true); when you have a small set of initial facts; and when there tend to be lots of different rules which allow you to draw the same conclusion. Backward chaining may be better if you are trying to prove a single fact, given a large set of initial facts, and where, if you used forward chaining, lots of rules would be eligible to fire in any cycle.
Forward Reasoning
Backward Reasoning
Forward: from the start states.
Backward: from the goal states.
Forward rules: to encode knowledge about how to respond to certain input.
Backward rules: to encode knowledge about how to achieve particular goals.
           Combining forward and backward reasoning
                   ¬ A1, …, Ak-1, Ak, Ak+1, …, An

                     achieved by                      achieved by
                       forward reasoning backward reasoning

No comments:

Post a Comment