Backward chaining is an inference method which implies going backward from a successful result to infer the chain of events, conditions, or decisions that had led to that outcome. It’s like retracing your family tree to explain why you look the way you do or exhibit the characteristics that distinguish you as a person.
Backward chaining uses deductive reasoning, a method of arriving at a conclusion after establishing premises that are assumed to be true. For example, if all persons are created equal and you are a person, then you were created equal.
Backward chaining is used in artificial intelligence applications for logic programming, reasoning, and behavior analysis. It’s part of a system that aims to teach robots how to infer and make logical conclusions.
Read More about “Backward Chaining”
So-called expert systems and logic forms enable backward chaining.
What is an Expert System?
Expert systems are intelligent computer systems or programs that predate the AI-powered machines and smart devices that we know today. An expert system consists of a user interface, an inference engine that scans available facts from a knowledge base, and a knowledge base — a library where valuable data from experts is stored. Expert systems were built to provide answers akin to human experts in a field of study, hence the name.
What is a Logic Form?
Logic forms are simple representations of sentences formed by putting two related concepts together to form a logical argument (usually an “if and then” statement). Every noun, verb, adjective, adverb, pronoun, preposition, and conjunction in the sentence must have a predicate which tells what the subject is or does. Word senses can be added to logic forms to clarify semantics. Logic forms are utilized in some natural language processing (NLP) techniques, such as question answering and inferencing for database and quality assurance (QA) systems.
How Expert Systems and Logic Forms Work in Backward Chaining
Backward chaining starts with goals or a hypothesis and works backward from the consequent to the antecedent to see if any data supports the consequent. An inference engine searches inference rules until it finds one with a consequent (i.e., the then clause) that matches the desired goal. If the antecedent (i.e., the if clause) of the rule is a known fact, it is added to the list of goals (to confirm a goal, you must provide data that confirms it).
Here’s an example: Suppose you are unwrapping a Christmas present a friend gave you based on your wishlist. Your friend gave you two clues as to what it is:
- The gift is round.
- The gift is plastic.
The goal is to prove that the gift is a vinyl record by examining available facts such as:
- If X is round and X is plastic – then X is a collectible.
- If X is square and X is cardboard – then X is a box.
- If X is a collectible – then X is a vinyl record.
- If X is a box – then X is big.
The inference engine’s task is to demonstrate that the goal is true by working backward.
- We’ll start with rule 3 as its consequent (i.e., the then statement) matches the final goal. The inference engine substitutes X for “the gift” in rule 3, to get: “If the gift is a collectible – then the gift is a vinyl record.”
- The inference engine then attempts to prove whether the antecedent (i.e., the if statement) is true. The result automatically becomes a new subgoal. New subgoals are created until we circle back to the final goal. So we will take a look at: “If the gift is a collectible.” The only rule with a consequent that matches this new subgoal is rule 1, which will return this outcome: “If the gift is round, and the gift is plastic. Then the gift is a collectible.”
- By this time, the inference engine has run out of statements to compare to. Rules 2 and 4 do not match any of the goals it is trying to validate and so have been discarded. It can also infer that the gift is a vinyl record, thus achieving its goal.
Backward chaining is often used in applications where few but precise conclusions can be cross-referenced to come up with accurate results. One example is a diagnostic system where several possible results or scenarios can be evaluated to find out if there is evidence to support them.