Rule-based systems have roots in AI
- By Ellen Gottesdiener
The broad field of artificial intelligence (AI) calls for computers to do tasks that require human intelligence. AI marries the computing field with disciplines like cognitive psychology, philosophy, logic, linguistics and even neurophysiology. There are different constructs and mechanisms, such as rules, to represent the way our minds work. One AI application type is the expert system, or knowledge-based system.
Most commercial expert systems are rule-based systems, which capture the knowledge and reasoning of a human expert and stores it in the form of rules. A rule-based system is composed of a knowledge or rules base, an inference engine and a set of case-specific data. (See Fig. 2.) A rule in one of these systems normally consists of 'if then else' conditions on the left side and actions on right side of the statement, such as "If x is book and x is listed on New York Times bestseller then cost is discounted." Each rule consists of a premise (x is a book and x is listed on New York Times bestseller) and a conclusion (book is discounted).
Fig. 2: Expert systems
Most expert systems are rule-based systems which
are composed of a knowledge base, an inference engine and a set
of case-specific data.
Source: EBG Consulting Inc.
The rule language is typically declarative (non-procedural) -- without implied
order or flow of control, as the actual processing of the rules is performed
by a separate component, the inference engine. The inference engine
uses optimized algorithms such as RETE or TREAT to evaluate the conditions
of the rules in the rules base, determine which ones are eligible to
fire at any point in time, and in cases where there are multiple rules
eligible to fire, it determines the order of firing
Rule-based systems emerged in the early 1970s and have become widespread
since commercial products became available in the 1980s. In addition,
points out Margaret Thorpe of Tangram, a Washington, D.C. consultancy,
a number of the techniques used for efficient rule processing of active
databases (ones that support general integrity constraints and triggers)
originated in early AI rule-based systems.
Rule-based systems use two techniques, forward chaining and backward
Forward chaining, or data driven reasoning, draws new conclusions
from existing data, adding these conclusions to working memory. This
approach is most useful when all the initial facts are known, and users
want to find out what new facts are true.
Backward chaining, or goal-driven reasoning, is effective when you
know what the conclusion might be, or have a specific hypothesis to
test. You are seeking the truth value of that goal or hypothesis.
-- Ellen Gottesdiener