Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Forward chaining
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Example== Suppose that the goal is to conclude the color of a pet named Fritz, given that he croaks and eats flies, and that the [[rule base]] contains the following four rules: # '''If''' ''X'' croaks and ''X'' eats flies - '''Then''' ''X'' is a frog # '''If''' ''X'' chirps and ''X'' sings - '''Then''' ''X'' is a canary # '''If''' ''X'' is a frog - '''Then''' ''X'' is green # '''If''' ''X'' is a canary - '''Then''' ''X'' is blue Let us illustrate forward chaining by following the pattern of a computer as it evaluates the rules. Assume the following facts: * Fritz croaks * Fritz eats flies With forward reasoning, the inference engine can derive that Fritz is green in a series of steps: 1. Since the base facts indicate that "Fritz croaks" and "Fritz eats flies", the antecedent of rule #1 is satisfied by substituting Fritz for ''X'', and the inference engine concludes: Fritz is a frog 2. The antecedent of rule #3 is then satisfied by substituting Fritz for ''X'', and the inference engine concludes: Fritz is green The name "forward chaining" comes from the fact that the inference engine starts with the data and reasons its way to the answer, as opposed to [[backward chaining]], which works the other way around. In the derivation, the rules are used in the opposite order as compared to [[backward chaining]]. In this example, rules #2 and #4 were not used in determining that Fritz is green. Because the data determines which rules are selected and used, this method is called [[data-driven science|data-driven]], in contrast to [[goal-oriented|goal-driven]] [[backward chaining]] inference. The forward chaining approach is often employed by [[expert system]]s, such as [[CLIPS]]. One of the advantages of forward-chaining over backward-chaining is that the reception of new data can trigger new inferences, which makes the engine better suited to dynamic situations in which conditions are likely to change.<ref name="Hayes-Roth 1983">{{cite book|last=Hayes-Roth|first=Frederick|title=Building Expert Systems|year=1983|publisher=Addison-Wesley|isbn=0-201-10686-8|author2=Donald Waterman|author3=Douglas Lenat|url-access=registration|url=https://archive.org/details/buildingexpertsy00temd}}</ref><ref>{{cite web|last=Kaczor|first=Krzystof|title=Overview of Expert System Shells|url=https://home.agh.edu.pl/~ligeza/wiki/lib/exe/fetch.php?media=ke:ruleinfalg.pdf|work=geist.agh.edu.pl/|publisher=Institute of Automatics: AGH University of Science and Technology, Poland|access-date=5 December 2013|author2=Szymon Bobek |author3=Grzegorz J. Nalepa |location=Krakow, Poland|date=2010-12-05}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)