Backward chaining

Backward chaining

Backward chaining (or backward reasoning) is an inference method used in artificial intelligence. It is one of two methods of reasoning that uses inference rules – the other is forward chaining, also known as modus ponens. Backward chaining is implemented in logic programming by SLD resolution.

Backward chaining starts with a list of goals (or a hypothesis) and works backwards from the consequent to the antecedent to see if there is data available that will support any of these consequents. An inference engine using backward chaining would search the inference rules until it finds one which has a consequent (Then clause) that matches a desired goal. If the antecedent (If clause) of that rule is not known to be true, then it is added to the list of goals (in order for your goal to be confirmed you must also provide data that confirms this new rule).

For example, suppose that the goal is to conclude the color of my pet Fritz, given that he croaks and eats flies, and that the rule base contains the following four rules:

# If X croaks and eats flies – Then X is a frog
# If X chirps and sings – Then X is a canary
# If X is a frog – Then X is green
# If X is a canary – Then X is yellow

This rule base would be searched and the third and fourth rules would be selected, because their consequents (Then Fritz is green, Then Fritz is yellow) matches the goal (to determine Fritz's color). It is not yet known that Fritz is a frog, so both the antecedents (If Fritz is a frog, If Fritz is a canary) are added to the goal list. The rule base is again searched and this time the first two rules are selected, because their consequents (Then X is a frog, Then X is a canary) match the new goals that were just added to the list. The antecedent (If Fritz croaks and eats flies) is known to be true and therefore it can be concluded that Fritz is a frog, and not a canary. The goal of determining Fritz's color is now achieved (Fritz is green if he is a frog, and yellow if he is a canary, but since he croaks and eats flies, he is a frog, and, therefore, he is green).

Because the list of goals determines which rules are selected and used, this method is called goal-driven, in contrast to data-driven forward-chaining inference. The backward chaining approach is often employed by expert systems.

Programming languages such as Prolog, Knowledge Machine and ECLiPSe support backward chaining within their inference engines.

In popular culture

This process is a staple of crime fiction, where the investigator is faced with an effect (the crime) for which there are a number of possible causes (suspects). Sir Arthur Conan Doyle's creation, Sherlock Holmes, arguably fiction's most famous detective, put it this way:

"When one has eliminated the impossible whatever is left, however improbable, must be the truth."


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Backward chaining — Eine Rückwärtsverkettung (engl.: backward chaining) bezeichnet in der Logik eine Inferenz bzw. Schlussfolgerungs Strategie der Form: wenn ?, dann Faktum Das Gegenmodell ist die Vorwärtsverkettung. Bedeutung haben diese Verkettungen beispielsweise …   Deutsch Wikipedia

  • backward chaining method — nenuoseklusis metodas statusas T sritis Kūno kultūra ir sportas apibrėžtis Dalinio mokymo metodo atmaina – sudėtingų technikos veiksmų ir jų derinių mokymas nuo paskutinio judesio ar veiksmo. atitikmenys: angl. backward chaining method vok.… …   Sporto terminų žodynas

  • Chaining — (engl. für Verketten) ist ein Begriff der instrumentellen Konditionierung, einer behavioristischen Lerntheorie. Er bezeichnet das schrittweise Erlernen einer komplexen neuen Verhaltensweise durch Verkettung einfacherer Teile. Chaining Techniken… …   Deutsch Wikipedia

  • Chaining — This article is about the teaching procedure. For programming language technique, see method chaining. For information about chaining in expert systems, see Expert system – Chaining. For computer architecture, see Chaining (vector processing).… …   Wikipedia

  • Forward chaining — is one of the two main methods of reasoning when using inference rules (in artificial intelligence). It is referred in philosophical circle as modus ponens. The opposite of forward chaining is backward chaining. Forward chaining starts with the… …   Wikipedia

  • Working backward from the goal — is an application of the backward chaining strategy in artificial intelligence. When problem solving, working backward is one way to reach the goal of solving a problem. Use by primates Kanzi, a bonobo (pygmy chimpanzee, Pan paniscus )… …   Wikipedia

  • Rückwärtsverkettung — Backward Chaining, zielgesteuerte Inferenz; rekursive Vorgehensweise (⇡ Rekursion), bei der man mit dem Endziel beginnt (d.h. mit dem Sachverhalt, den man aufgrund der Problemstellung erreichen möchte); dieses Ziel wird in Unterziele aufgeteilt,… …   Lexikon der Economics

  • Planner (programming language) — Planner (often seen in publications as PLANNER although it is not an acronym) is a programming language designed by Carl Hewitt at MIT, and first published in 1969. First, subsets such as Micro Planner and Pico Planner were implemented, and then… …   Wikipedia

  • Rete algorithm — The Rete algorithm is an efficient pattern matching algorithm for implementing production rule systems. The Rete algorithm was designed by Dr Charles L. Forgy of Carnegie Mellon University, first published in a working paper in 1974, and later… …   Wikipedia

  • Expert system — In artificial intelligence, an expert system is a computer system that emulates the decision making ability of a human expert.[1] Expert systems are designed to solve complex problems by reasoning about knowledge, like an expert, and not by… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”