Forward-chaining versus a graph approach as the inference engine in expert systems

Richard E. Neapolitan*

*Corresponding author for this work

    Research output: Contribution to journalArticlepeer-review

    3 Scopus citations

    Abstract

    Rule-based expert systems are those in which a certain number of IF-THEN rules are assumed to be true. Based on the verity of some assertions, the rules deduce as many new conclusions as possible.A standard technique used to make these deductions is forward-chaining. In forwardchaining, the program or ‘inference engine’ cycles through the rules. At each rule, the premises for the rule are checked against the current true assertions. If all the premises are found, the conclusion is added to the list of true assertions. At that point it is necessary to start over at the first rule, since the new conclusion may be a premise in a rule already checked. Therefore, each time a* new conclusion is deduced it is necessary to start the rule checking procedure over. This process continues until no new conclusions are added and the end of the list of rules is reached.The above process, although quite costly in terms of CPU cycles due to the necessity of repeatedly starting the process over, is necessary if the rules contain ‘pattern variables 1.An example of such a rule is, ‘IF X IS A BACTERIA, THEN X CAN BE TREATED WITH ANTIBIOTICS’. Since the rule can lead to conclusions for many values of X, it is necessary to check each premise in the rule against every true assertion producing an association list to be used in the checking of the next premise.However, if the rule does not contain variable data, as is the case in many current expert systems, then a rule can lead to only one conclusion. In this case, the rules can be stored in a graph, and the true assertions in an assertion list. The assertion list is traversed only once; at each assertion a premise is triggered in all the rules which have that assertion as a premise. When all premises for a rule trigger, the rule’s conclusion is added to the END of the list of assertions. It must be added at the end so that it will eventually be used to make further deductions.In the current paper, the two methods are described in detail, the relative advantages of each is discussed, and a benchmark comparing the CPU cycles consumed by each is included. It is also shown that, in the case of reasoning under uncertainty, it is possible to properly combine the certainties derived from rules arguing for the same conclusion when the graph approach is used.

    Original languageEnglish (US)
    Pages (from-to)62-69
    Number of pages8
    JournalProceedings of SPIE - The International Society for Optical Engineering
    Volume635
    DOIs
    StatePublished - Mar 26 1986

    ASJC Scopus subject areas

    • Electronic, Optical and Magnetic Materials
    • Condensed Matter Physics
    • Computer Science Applications
    • Applied Mathematics
    • Electrical and Electronic Engineering

    Fingerprint Dive into the research topics of 'Forward-chaining versus a graph approach as the inference engine in expert systems'. Together they form a unique fingerprint.

    Cite this