Defining Rule Based Systems

Revised: Sept 25,2007

Modeling the Subject of "Rule-Based Systems"

Definitions can be seen assertions about relationship between well-defined terms, in other words things are defined in terms of other things. The terms and relationships associated with "rule-based systems" are ill-defined and make a rigorous definition nearly impossible to achieve.

Nonetheless, it is possible to recognize subject areas that are associated with rule-based systems in a rough-and-ready way, even if the things being associated have no clear boundaries. Think of the following terms as jello and the relationships between them as nails.

The diagram shows a subject model of some basic associations between areas related to rule-based systems - solid lines denote strong associations and dashed lines denote weak associations.

RBS Subjects

Note that the model is neither complete nor entirely consistent. For instance, the important subject of pattern-matching and case-based inference engines is buried somewhere between Data Mining and Knowledge Acquisition, but it really deserves its own subject entity. In a sense, pattern-matching is more fundamental than rule-based systems, in other words, rule-based systems are a special case of pattern-matching systems. However, even with several deficiencies, the model achieves a certain degree of explanatory power that helps define rule-based systems.

At the center of the diagram is the subject "Rule-Based Systems". The subjects around it are either directly or indirectly associated, either strongly or weakly. The model can be simplified by unrolling it to look like a top-down tree structure, similar to subject hierarchy ( a taxonomy ). In this scheme, a simple one-level hierarchy would be:

  • Business Rules and Rule Engines
  • Cognitive Science
  • Knowledge Acquisition and Inference Engines
  • "Old Time" Artificial Intelligence and Expert Systems

This is saying that in order to define rule-based systems, four strongly related subjects need to be considered: Business Rules, Cognitive Science, Knowledge Acquisition and Expert Systems. Other weakly or indirectly related subject areas may also be significant. Utilizing a wide spread of subjects may help to capture important nuances in the definition. More specifically, a usable definition of rule-based systems needs to recognize the role of rules in inexact, abductive modes of reasoning - in other words, defining IF/THEN rules as a type of pattern. Usually, the definitions restrict rules to to purely deductive modes of reasoning, which ( I think ) is too constraining for the Semantic Web.

In fact, the subject of "Semantic Web" is missing from the model ( rather spectacularly ) and it looms over the whole effort as a sort of unannounced presence. The Semantic Web "super-subject" connects implicitly to every subject in the model, including "AI Games", whose presence would be inexplicable from a purely business rules perspective.

From a methodological standpoint, it should be noted that the relationships expressed in the model really have no arrows to guide the way in building a subject tree; the lines are simply associations. In the semantics of the model, the subject "Rule-Based Systems" was chosen as the root subject in an arbitrary way, if a very useful way.

For all its deficiencies, the model may be adequate as a first version, it will certainly evolve over the next few months. Hopefully, this effort will lead to a better definition than the usual one, that is "it is when you take working memory, a set of rules and a rule engine and then you ....".

 

 

A Short History of Rule Based Systems

In Search of Definitions

The term "rule-based systems" seems to represent a technology in search of a definition. In a strict sense, there is no such thing as rule-based systems as a subject area - it is a set tools and methods borrowed from several different academic disciplines and subjects. The areas that have contributed the most to rule-based systems are artificial intelligence and cognitive science. There are also a larger number other specialized areas such as fuzzy logic, case-based reasoning, induction and rule discovery which may or may not included within the higher level definitions of the parent subjects, that is artificial intelligence and cognitive science. Sometimes it is difficult to know where one subject ends and the next begins.

Rule Based Systems as Expert Systems

One hazy area is "expert systems", which to this day forms the basis of many definitions of rule-based systems. Expert systems mimic the inner workings of a recognized expert in a field in order to break through a 'knowledge bottleneck' of some sort, in other words to multiply the presence of an expert by simulating their reasoning process via a computer program. Expert systems have largely disappeared in the last 10 years for various reasons and seem to have been absorbed into cognitive science as expressed in efforts to develop a deeper understanding of expert reasoning, which may potentially be pattern-based rather than solely rule-based.

The Coming of Business Rules

Undoubtedly, the area that has contributed most to the success of rule-based systems as a mainstream technology is business rules. The leading edge was often an initiative to capture and record critical business rules using a powerful methodology - this may or may not resulting in an actual computer application. Later, the following edge was often a large and expensive application of "business rules technology" to replace a behemoth mainframe application of the previous decades with more flexible and managable applications using rule engines. In large part, the technological tools employed for business rules was identical to that of expert system. In a sense, many business rule systems are the equivalent of non-expert rule-based systems, albeit on a larger 'enterprise' scale.

In either case, at the core of the technology is the idea of using a rule engine to externalize business or expert logic that would normally be implemented in ( buried in ! ) program code. This confers a competitive advantage ( a.k.a. 'agility' ) on the company utilizing the technology, resulting in better decisions, quicker time-to-market and better ability to respond to changing business opportunities. Under the auspices of business rules, rule-based systems that has started out as toy systems in the 1980s, grew into prototypes of business systems in the 1990s and then became the foundation of large-scale transaction processing applications over the last 10 years. It was a long struggle and took close to 20 years to accomplish.

 

Obstacles to Rule Based Systems

What were the major obstacles that delayed the adoption of rule-based systems as a mainstream technology for the first 15 years of it existence ?

  • Lack of consistent focus on the problem domain - particularly lack of business focus the application was an example of technology rather than catriona
  • Lack a rigorous methodology -
  • Poor performance - they could run very very slowly on pre-Pentium and early-Pentium computers.
  • High complexity - a more fundamental reason, was the sheer complexity of building and maintaining a large rule-based system. A rule base of three or four thousand rules required a massive, highly-trained staff to maintain, a hundred people or more in the case of the Digital Equipment product configurator, XCON.
  • High cost of entry - early implementations of rule based systems became too tied down with a particular technology. The cost of entry into a new computer language environment ( such has LISP or Scheme ) was very high. The alternative was to use a commercial "expert system" packages, in a time when standards for exchange of rule-base information were non-existent.
  • Lack of standards - the company was locked into proprietary technology and packages, often within a workstation-only technical infrastructure . This situation was not unique to rule based systems - there were no standards for metadata interchange between data modeling and CASE tools until the 1990s.
  • Islands of automation - after succeeding in overcoming the barriers listed above, the "expert system" was often doomed to remain an island of automation in the corporate firmament.

In short, the entire approach was too demanding, too technical and too 'computery' for practical use in business situations.

The business rules approach succeeded in changing the focus from knowledge-intensive business processes, such as product configuration, to enterprise-level business rules, effectively rising above the parochialism of early implementations. In fact, business rules technology grew in tandem with CASE and modeling tools extended for modeling business rules. The UML modeling standard and Rational Rose modeling tools are prime examples.