TIBCOmmunity navigation
Mar 04 2008

Goal-directed event processing
Posted by Paul Vincent

… by which of course I really mean goal-directed event-driven rule processing…

One of the more common analyst questionnaire / RFP questions one comes across is “does your rule engine do “backward chaining“. From a business perspective, of course, this tends to be a vendor checklist item, as quite often the analyst / customer will have little idea as to when or why they might at all be interested in doing backward-chaining (and indeed, why should they?). And the usual vendor response is “yes”, because even if your engine is forward chaining, you can always invoke a PROLOG program to do a bit of backwardness if you really want to, or chain some event rules together to do the same thing. And you rarely want to resort to this in real projects [*1].

Of course, the main rationale for “backward chaining” is to do goal-directed reasoning. And the reason why one processes events / executes business rules, is to achieve some goal: in CEP terms these might be:

  • situation assessment: the goal is to have some stable or known state
  • sense and respond: the goal is to invoke some response action when some known state is reached
  • track and trace: the goal is to know the state of any entity at any time

.
Here we can see that we are processing intermediate business goals (as opposed to business policies and strategies, per the OMG Business Motivation Model, although one could certainly consider using CEP for that level of BAM). We also see that a “goal” is really a “state” (or maybe set of states), and that state modeling (where you define your goal state, start state, intermediate states, and appropriate state transition rules) is a very good way to define what this goal is (and how you get there) [*2].

Notes:

[1] Which is why backward chaining was dropped from the OMG Production Rule Representation standard - lack of vendor interest.

[2] Which is why state modeling is included in TIBCO BusinessEvents.

VN:F [1.4.2_694]
Rating: 0.0/5 (0 votes cast)
  • Share/Save/Bookmark

3 Comments

  • By Paul Haley, March 5, 2008 @ 10:46

    I love that lack of vendor interest! If we don’t support it, we don’t want it, even if it matters. (Still, Haley was guilty of non-participation.)

    The problem with omitting backward chaining is that deduction becomes impractical. Without an ability to subgoal automatically, forward chaining deduction must be controlled manually in order to avoid infering an “infinity of irrelevant truths”. Thus, most BRE are dumb from a logical standpoint.

    W3C will not go the same route. The emphasis on logic there requires much more control over reasoning and problem solving than reactive business rules.

    BTW, in general, goals define states intentionally rather than constituting states themselves.

    P.S., anyone interested can read an ancient (1985?) paper about backward chaining using the Rete Algorithm. (I’ll upload it and post a blog with a link ASAP.)

    VA:F [1.4.2_694]
    Rating: 0.0/5 (0 votes cast)
  • By jco, March 15, 2008 @ 11:39

    Paul et al:

    This is one of the things that we discussed in the PRR (Production Rules Representation) that has been postponed until the second version of the specification definition. It was not put in the first one because very few people in OMG understand anything about full opportunistic backward chaining. However, any old ND guy who ever had to program in ND Nexpert / Expert can certainly fill your ear with all of the hows and whys of the system.

    Unfortunately, most of them know very little about how the engine operates nor why it does what it does. Ed Virgin and Irwin Welker may be the last two people on Earth who really, really got down into the innards of the engine itself; Ed from a teaching approach and Irwin from the engineering approach. Both are with Fair Isaac - STILL - and I’ll see if I can get more input from them on this.

    The other three people who will know the workings (but not the internals) are are also with Fair Isaac (the old ND team of consultants) and I’ll see what I can wring out of them as well - that would be Willie Hall, Don Tallo and myself. At the next PRR meeting we will be discussing event-driven rules as well as the various methods of backward chaining.

    SDG
    jco

    VA:F [1.4.2_694]
    Rating: 0.0/5 (0 votes cast)

Other Links to this Post

  1. Goals and backward chaining using the Rete Algorithm « Commercial Intelligence — March 11, 2008 @ 06:56

RSS feed for comments on this post. TrackBack URI

Leave a comment