Re: "Rule-based" systems

WSiler (wsiler@aol.com)
Wed, 26 Aug 1998 23:32:56 +0200 (MET DST)

Will Dwinnell wrote:
>It would probably be helpful for everyone to make the
>technical distinction between various types of >"rule-based" systems, just to
keep the language clear. I >can think of four distinct systems off-hand:
>1. simple lists of IF..THEN statements
>2. decision trees
>3. production systems (which can be much more >involved that lists of
IF..THENs)
>and
>4. fuzzy rule-based systems, in which all rules fire to >some degree and whose
output is composited to form >the system output.

Eric Dybsand wrote:
>> Why should we generalize that to all possible
>> rule-based systems?
>
>We should not. Why should we? Who suggested we should?

Will's list of the different types of rule-based systems is very appropriate. I
have two comments on the above:

(1) Fuzzy rule-based systems designed for fuzzy reasoning can actually be
considerably more complex than those used for fuzzy control. Will's brief
description of fuzzy systems is quite accurate for fuzzy control, but less so
for other systems. I have in mind Earl Cox's METUS system and our own FLOPS
system. For example, FLOPS has two operating schemes: parallel, in which all
fireable rules are fired effectively in parallel; and serial, in which one of
the fireable rules is selected for firing, and the others are placed on a
back-tracking stack.

Another capability rule-based systems may have is recursion, which we define as
the situation when a rule or block of rules makes itself refireable until a
goal is reached. For example, the Tower of Hanoi problem in C uses five
statements; in a fuzzy rule-based system in serial mode, it takes five rules.

Another feature is the placing of rules in blocks which can be selectively
enabled and disabled by metarules.

In addition, there is another type, rule-based systems which employ interval
logic.

Problem which concern us at the moment is determining the circumstances under
which simple IF-THEN rules placed in rule blocks will do the job instead of the
considerably more complicated and slower production systems, and the
circumstances under which interval logic may be used instead of the more
complex and slower fuzzy rules.

(2) Can most anything be done with rule-based systems? Certainly production
systems are terrible for extensive numeric computation, although with recursion
such things as differential equations may be solved fairly conveniently. But
any effective rule-based systems should be able to call programs or functions
written in procedural languages. In this case a rule-based system may serve as
the master of ceremonies, using rules and having the rules call procedural
programs or functions as required.

In short:

Well-designed rule-based systems can work in cooperation with procedural
programs or functions to accomplish most any objective efficiently. The two are
not necessarily mutually exclusive. Rule-based systems are definitely superior
if we wish to emulate hyman thought.

The circumstances under which one or another type of rule-based system is
appropriate are not clear to me; the ability to determine this objectively is a
very worth-while aim to pursue.

William Siler

############################################################################
This message was posted through the fuzzy mailing list.
(1) To subscribe to this mailing list, send a message body of
"SUB FUZZY-MAIL myFirstName mySurname" to listproc@dbai.tuwien.ac.at
(2) To unsubscribe from this mailing list, send a message body of
"UNSUB FUZZY-MAIL" or "UNSUB FUZZY-MAIL yoursubscription@email.address.com"
to listproc@dbai.tuwien.ac.at
(3) To reach the human who maintains the list, send mail to
fuzzy-owner@dbai.tuwien.ac.at
(4) WWW access and other information on Fuzzy Sets and Logic see
http://www.dbai.tuwien.ac.at/ftp/mlowner/fuzzy-mail.info
(5) WWW archive: http://www.dbai.tuwien.ac.at/marchives/fuzzy-mail/index.html