Reference |
Top Installation Introduction Samples Tutorial Reference Release Notes
A spreadsheet engine and a rule engine both resolve interconnected facts, rules and formulas, but each in its own way, and each with its own advantages and disadvantages.
Each cell in a spreadsheet can be directly linked to other cells via formula. These direct links are used by the spreadsheet to dynamically change the results of formulas as the values in linked cells change.
The developer is responsible for coding the links between the cells.
The spreadsheet is a powerful tool for implementing numerical modeling applications.
A rule base is a collection of rules stating relationships between facts, values and the conditions. Unlike with spreadsheet formulas, the developer does not specify direct links between related rules.
Instead, a rule engine dynamically chooses which rules to use based on the values of input facts and fact values that are derived from the rules. This allows the developer to concentrate on the relationships in the rules without having to worry about a complex web of interconnected dependencies.
The rule engine works by choosing rules based on goals presented in queries to the rules. A query asks for the value of a particular fact. First, the rule engine looks for a table that specifies the value for that fact. If none is found, then the rule engine looks for rules that can be used to set a value for that fact. Those rules might refer to other fact values, so the rule engine then sets sub goals of looking for those values. In this manner, the rules applicable for a given set of input data are dynamically applied to answer a query for a fact value.
The rule base is a powerful tool for implementing business rule applications.
Consider a loan application:
ARulesXL integrates the two on the spreadsheet, allowing rules to reference spreadsheet calculations, and spreadsheet cells to query rule sets defined on the spreadsheet.
ARulesXL uses a goal-driven reasoning algorithm. This means it starts with the goal of finding a value for some fact. In the course of finding that value, it might determine that it needs to find the values of other facts as well.
The initial goal fact is the one provided in a query.
Use the Trace facility to see this steps in action for any given ARulesXL RQuery().
Open in New Window to Print |
---|
Copyright ©2005-7 Amzi! inc. All Rights Reserved.
|