Conflict resolution strategy explained

Conflict resolution strategies are used in production systems in artificial intelligence, such as in rule-based expert systems, to help in choosing which production rule to fire. The need for such a strategy arises when the conditions of two or more rules are satisfied by the currently known facts.[1] [2] [3] [4] [5]

Categories

Conflict resolution strategies fall into several main categories. They each have advantages which form their rationales.[2]

  1. Specificity - If all of the conditions of two or more rules are satisfied, choose the rule according to how specific its conditions are. It is possible to favor either the more general or the more specific case.[1] The most specific may be identified roughly as the one having the greatest number of preconditions. This usefully catches exceptions and other special cases before firing the more general (default) rules.[2]
  2. Recency - When two or more rules could be chosen, favor the one that matches the most recently added facts, as these are most likely to describe the current situation.[1] [2]
  3. Not previously used - If a rule's conditions are satisfied, but previously the same rule has been satisfied by the same facts, ignore the rule.[1] This helps to prevent the system from entering infinite loops.[2]
  4. Order - Pick the first applicable rule in order of presentation.[1] This is the strategy that Prolog interpreters use by default,[6] but any strategy may be implemented by building suitable rules in a Prolog system.[7]
  5. Arbitrary choice - Pick a rule at random. This has the merit of being simple to compute.[2]

See also

Notes and References

  1. Web site: J.. McDermott . Forgy. Charles L. . Charles Forgy. Production System Conflict Resolution Strategies . Carnegie Mellon University . 18 January 2016 . 1976.
  2. Web site: Bullinaria . John . IAI: Production Systems. 10. Conflict Resolution . University of Birmingham . 18 January 2016 . 2005.
  3. Web site: Fayyoumi . Ebaa . Chapter 6: Production Systems . EIS, Jordan . 18 January 2016 .
  4. Web site: Pakiarajah, V., Crowther, P. and Hartnett, J. . Conflict Resolution Techniques for Expert Systems Used to Classify Remotely Sensed Satellite Images . GeoComputation 2000.
  5. Web site: KnowledgeWorks and Prolog User Guide. 3.1.5.3 Conflict Resolution. LispWorks. 18 January 2016. 22 December 2009.
  6. Web site: Brna. Paul. Prolog and Execution Strategies. University of Edinburgh. 18 January 2016. https://web.archive.org/web/20160731194511/http://homepages.inf.ed.ac.uk/pbrna/prologbook/node196.html. 31 July 2016. dead.
  7. Book: Bratko, Ivan. Ivan Bratko (computer scientist). Prolog Programming for Artificial Intelligence. 2021. Addison Wesley. 978-0-201-40375-6. 644.