See more Rule based system articles on AOD.

Powered by
Share this page on
Article provided by Wikipedia

( => ( => ( => Rule-based system [pageid] => 19768799 ) =>

In "computer science, rule-based systems are used as a way to store and manipulate knowledge to interpret information in a useful way. They are often used in "artificial intelligence applications and research.

Normally, the term 'rule-based system' is applied to systems involving human-crafted or curated rule sets. Rule-based systems constructed using automatic rule inference, such as "rule-based machine learning, are normally excluded from this system type.



A classic example of a rule-based system is the domain-specific "expert system that uses rules to make deductions or choices. For example, an expert system might help a doctor choose the correct diagnosis based on a cluster of symptoms, or select tactical moves to play a game.

Rule-based systems can be used to perform "lexical analysis to "compile or interpret computer programs, or in "natural language processing.

"Rule-based programming attempts to derive execution instructions from a starting set of data and rules. This is a more indirect method than that employed by an "imperative programming language, which lists execution steps sequentially.


A typical rule-based system has four basic components:[1]

  • Match: In this first phase, the left-hand sides of all productions are matched against the contents of working memory. As a result a conflict set is obtained, which consists of instantiations of all satisfied productions. An instantiation of a production is an ordered list of working memory elements that satisfies the left-hand side of the production.
  • Conflict-Resolution: In this second phase, one of the production instantiations in the conflict set is chosen for execution. If no productions are satisfied, the interpreter halts.
  • Act: In this third phase, the actions of the production selected in the conflict-resolution phase are executed. These actions may change the contents of working memory. At the end of this phase, execution returns to the first phase.

See also[edit]


) )