Exponential
Technologies Rule-Based System
Solutions |
 |
Client/Server
Solutions / Web-Based
Solutions / Network Design &
Implementation /
Training |
 |
 |
Rule-Based Systems |
 |
A rule-based system is a way of encoding a human expert's knowledge in a
fairly narrow area into an automated system. There are a couple of advantages to
doing so. One is that the human expert's knowledge then becomes available to a
very large range of people. Another advantage is that if you can capture the
expertise of an expert in a field, then any knowledge which they might have is
not lost when they retire or leave the firm.
Rule-based systems differ
from standard procedural or object-oriented programs in that there is no clear
order in which code executes. Instead, the knowledge of the expert is captured
in a set of rules, each of which encodes a small piece of the expert's
knowledge. Each rule has a left hand side and a ride hand side. The left hand
side contains information about certain facts and objects which must be
true in order for the rule to potentially fire (that is, execute). Any rules
whose left hand sides match in this manner at a given time are placed on an
agenda. One of the rules on the agenda is picked (there is no way of
predicting which one), and its right hand side is executed, and then it is
removed from the agenda. The agenda is then updated (generally using a special
algorithm called the Rete algorithm), and a new rules is picked to
execute. This continues until there are no more rules on the agenda.
The advantage to this type of approach, as opposed to a procedural approach, is that if the system is
designed well, then the expert's knowledge can be maintained fairly easily, just
by altering whichever rules need to be altered. Indeed, many rule-based systems
come along with a rules editor which allows for rules to be easily
maintained by non-technical people.
Rule-based systems are used
extensively in applications such as mortgages, credit card authorization, fraud
detection, e-commerce, and personalization.
|
 |
|
 |
|
 |
|
 |
|
 |
|
 |
top of page |
 | |
|