Re-reading a past blog by Paul Haley (reknown for his natural-language based rule engine work) reminded me about the increasing correlation between “knowledge processing” and what we see in customer deployments of Complex Event Processing. For example, many users of the TIBCO BusinessEvents CEP platform construct “knowledge-rich” applications that might contain large amounts of knowledge about airline operations, middle-office investment banking, customer care, telco customer fulfillment and so on. Most of these applications are of course not just detecting complex events, but making decisions and invoking actions based on events that are occuring… . Sometimes the knowledge represented in these systems is “broad” (coverage of a wide number of event pattern scenarios), and sometimes “deep” (a number of layers of rules may be used to represent a solution). Sometimes both.
Interestingly, TIBCO BusinessEvents appears be particularly suited to such “rich” (=broad+deep) knowledge applications, probably due to its use of an inference engine (pretty much uniquely amongst current mainstream CEP vendors). Inference engines keep rule-chaining, one of the characteristics of “deep knowledge” systems, within an event processing unit of work, whereas the default, event-driven way would be for each unit of work to generate an event for any other event rule to pick up – which helps distributablility but precludes certain optimizations.
Inference engines, we recall, came out of the 1970s and 1980s attempts to commercialise “Artifical Intelligence” via generalised forms of “expert system shells” – what Europeans (maybe more accurately) described as “knowledge based systems”. Mostly these AI applications are remembered for overpromising and underdelivering, even though there were some notable successes. Certainly the information and process handling needs can’t have been helped by the state of hardware technology 20 years ago.
Fast forward to 2010, however, and we can see a resurgence of “rich-knowledge” capabilies in software tools, and an increasing desire for “smart systems” (or at least “non-dumb systems”) from an increasingly on-line and computer-service-savvy business and consumer audience. While AI academics may have retreated into more futurish / less visible research areas like the semantic web, business software developers have been putting some of that AI tech to work. We have moved from machine learning to data mining (aka predictive analytics), and from batch- and data-oriented rule engines to real-time event processing engines (aka CEP) – the latter encouraged by increasingly ubiquitous event sources such as location-aware mobile phones, electronic payment systems and RFID-tagged goods.
Where is this leading? Advanced IT shops are already looking at things like heterogeneous (and maybe cloud-based) application and service agent deployment (see TIBCO DataSynapse) supported efficiently by data-aware grids (see TIBCO ActiveSpaces), containing event pattern detection elements and assocated decision services (see TIBCO BusinessEvents) which in turn are driving dynamic business processes (see TIBCO iProcess Conductor). The knowledge elements in these event processing services include the source events and associated business concepts or objects and their supporting event-driven behaviors – defined as state models, production rules, event pattern expressions, decision models, aggregation queries etc (as in TIBCO BusinessEvents). More advanced and statistically-aware users are also exploring analytic models like neural nets and other implicit knowledge models (see TIBCO Spotfire S+ and Miner). Most of the latter models remain firmly in the IT-domain, but others can be surfaced to business analysts and the like (see TIBCO BusinessEvents Decision Manager), with the results output to business displays (TIBCO Spotfire and BusinessEvents).
So, with the ability for CEP algorithms to adapt to suggestions and cues and learning from incoming events (for example, through rule and query parameter adjustment), whilst processing events at usefully high thoughputs, perhaps we can claim that AI technology and knowledge automation has already taken a big step forward – albeit without fanfare.