RE: JESS: Complex Event Processing

"Tromm, Martijn" <[email protected]> Tue, 15 Mar 2011 14:59:33 +0000
Newsgroups gmane.comp.java.jess
Message-ID <6707_1300204172_p2FFn3Qj009186_F79CEE083B031F4080F9F3123EB993001CD432D9@BA13-0008.work.local>
We are considering a business opportunity for a rule based implementation of Terminal Asset Management:
Lots of people coming in and going out at specific times and lots of systems and assets like elevators, lighting, plants, monitors, airco, etc.
Several independent computersystems report status and events of the different assets. The knowledge to respond adequately and timely is currently only present in the heads of a number of teams that hardly cope with the current workload. Specific complex event patterns within variable periods of time may have a certain degree of risk. Several actions to reduce risk and to repair occurring faults may be considered, also depending on the time pressure and other factors (like the occurrence of groups of people coming through in the near future).

We would like the management style to change from management by exception to proactive maintenance by estimating the need for maintenance efforts based on properties like 'mean time between failure', 'mean time to repair'. This will not take away the need for CEP, but will reduce workload and risks and will stabilize costs. Besides these you also have the advantages of using rules with respect to change management, transparency, repeatable quality,  etc, etc.

More detail I cannot provide at the moment. The need for CEP and a rete based rule engine is evident imo. Most commercial vendors don't have specific support for CEP either. Drools Fusion could be an exception.
Some niche vendors have alternative implementations for CEP, e.g. using petrinet style representations, but lack other requirements.

So, input for the rule engine at least consists of:

-          Locations

-          Assets at locations

-          Current status of all assets

-          Occurring events, retained for a particular amount of time

-          Events that are going to occur within a particular amount of time

-          Events can be:

1.       State changes of assets (points in time)

2.       Temporary states of affairs (intervals). Could also be interpreted as state changes of a location.

-          Probably more

-          Actions

-          Rules that assert complex events with or without an expiration time. Complex Events can be hierarchical, like fault trees in Safety and Reliability engineering.

-          Rules that assert proposed actions based on events and complex events. Actions may be replaced by other actions after some time interval.



Martijn

-------------
On 15 March 2011 02:17, Socrates Frangis <[email protected]<mailto:[email protected]>> wrote:

The CEP functionality used by other Expert Systems is just managing
the time slice and managing that information distro to Rete.
Unfortunately some other expert systems that advertise CEP tend to
bundle the feature list with the expert system itself (much like
spreadsheet based rules & 'decision tables') and make it seem like
These functions may be done using plain old text processing. But you
don't do well in adding CEP by pushing code on top of an unmodified Engine
like Jess because Rete's natural "eagerness" to evaluate conditions and patterns
must be reined in as soon as the "future" or anything depending on "now"
must be considered. This doesn't mean that you can't solve CEP tasks
with an engine like Jess as is, but it's rather inconvenient.
their algorithm is more capable, when in fact its just open source
libraries and middle-ware wrapped around a Rete. This is turn makes
other expert systems seem less capable because they dont bundle in
extra libraries.

Not to let this go off on a tangent, i think its been well addressed
at this point that Rete isn't limited. It is true that Jess doesn't
automatically include a library with the functions related to CEP that
you desire, but an expert system shell shouldn't automatically contain
this any more than it should contain a Sudoku solver or Miss Manners

Comparing a set of generic functions with specifc applications doesn't sound
right. You would build a Sudoku Solver using an expert system shell.

;P You just have to customize and create the functions you need.

Going back to your original question, what is the problem you are
trying to attempt to correct or solve with CEP and JESS? Perhaps with
more detail we can guide you on how to do this with Jess.
Yep, that would be interesting.
 -W


Disclaimer
Dit bericht met eventuele bijlagen is vertrouwelijk en uitsluitend bestemd voor de geadresseerde. Indien u niet de bedoelde ontvanger bent, wordt u verzocht de afzender te waarschuwen en dit bericht met eventuele bijlagen direct te verwijderen en/of te vernietigen. Het is niet toegestaan dit bericht en eventuele bijlagen te vermenigvuldigen, door te sturen, openbaar te maken, op te slaan of op andere wijze te gebruiken. Ordina N.V. en/of haar groepsmaatschappijen accepteren geen verantwoordelijkheid of aansprakelijkheid voor schade die voortvloeit uit de inhoud en/of de verzending van dit bericht.

This e-mail and any attachments are confidential and are solely intended for the addressee. If you are not the intended recipient, please notify the sender and delete and/or destroy this message and any attachments immediately. It is prohibited to copy, to distribute, to disclose or to use this e-mail and any attachments in any other way. Ordina N.V. and/or its group companies do not accept any responsibility nor liability for any damage resulting from the content of and/or the transmission of this message.