Forward chaining starts with the available data and user inference rules to extract more data from an end-user until the goal is reached. The reasoning applied to this information to obtain a logical conclusion. It is a system given one or more condition in which system search and the rule knowledge base each condition and rules that correspond to the condition are selected that rule can generate new condition from the conclusion. In which facts are held in a working memory and condition action rules represent actions to take when specified facts occur in working memory it may add and delete facts from working memory.
It is based on the decision the initial state is fetched, then it is called backward chaining. Backward chaining is also called as a decision-driven or goal-driven inference technique. In Backward chaining, Reasoning is done in the backward direction the system selects a goal state and reason in the backward direction. In which we select a goal state and rules and the goal state as conclusion establishes sub-goal to be satisfied for all the goal state to be true and there is a condition to satisfy all the sub-goals and check whether the given initial state matches with the established ones.
|Forward Chaining||Backward chaining|
|Forward chaining sutiable for breadth first search.||Backward chaining sutiable for depth search.|
|It begin with intial facts.||It begin with some hypothesis goal.|
|It may slow, because in which we we tested all the rules.||It may fast as compared to Forward chaining because it test fewer rules.|
|It provides small amount of data in which we use to store large amount of information.||It provide small amount of data in which we store small information.|
|It is basically on primarily data driven.||It is basically on goal driven.|
|It follow Top down reasoning.||It follow bottom-up reasonong.|
|It contain small number of intial states but large number of conclusion.||It contains small number of intial goals and large number of rules.|
|It sutiable for data collection problem like planning monitoring.||It sutiable for hypothesis problem like diagonsis.|
|In which all data is available.||In which data must be acquired.|
- ML | Multiple Linear Regression (Backward Elimination Technique)
- Difference between Feedback and Feed Forward control systems
- Difference between forward list and list in C++
- Difference Between && and ; chaining operators in Linux
- Deep Neural net with forward and back propagation from scratch - Python
- NLP | Chunk Tree to Text and Chaining Chunk Transformation
- Method Chaining In Java with Examples
- Program to implement Separate Chaining in C++ STL without the use of pointers
- Difference and Similarities between PHP and C
- Difference between Stop and Wait, GoBackN and Selective Repeat
- Difference and similarities between HashSet, LinkedHashSet and TreeSet in Java
- Difference between Stop and Wait protocol and Sliding Window protocol
- Similarities and Difference between Java and C++
- Difference between Yaacomo and and XAP
- Difference between VoIP and and POTS
- Difference between ++*p, *p++ and *++p
- Difference Between DOS and Windows
- Difference between User Level thread and Kernel Level thread
- What’s difference between The Internet and The Web ?
- Difference between Priority Inversion and Priority Inheritance
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.