A set of recent articles by Paul Haley again brings attention to this important question. Paul insists that “It’s time to trade rule technology dating back to the 80’s for state of the art AI” and points that “BRMS are incapable of the functionality people naturally expect (e.g., robust inference)“. James Taylor insists that “People don’t expect robust inference, experts do 🙂 DMN coordinates business rules/tabular decision logic, predictive analytics, AI… and it seems to be working for 100% of problems“. Jacob Feldman wrote about importance of the integration of decision management and semantic reasoning.
The current version of DMN does not require an execution engine to have inferential capabilities that allowed several BPM vendors to quickly add DMN implementations. More than that, DMN requires a user to build DRDs that Paul’s used to call “flow-charts” and wrote about them: “Visual programming may be a nice and useful capability, but the benefits of artificial intelligence technology hardly accrue from dressing up a procedural language!” These issues will be among hot discussion topics at the upcoming DecisionCAMP and RuleML+RR conference. We invite business rules and semantic web practitioners to provide their comments right here.
“It’s time to trade rule technology dating back to the 80’s for state of the art AI”. For what purpose are we making the trade? What exactly are do we think “rule technology” and “state of the art AI” are? Taken out of context I struggle with this statement.
Reading the original article, it seemed to me that the problems of interest therein are not the problems of interest of the “rule technology” companies (e.g. FICO, Ilog/IBM, Red Hat/Drools, Sapiens …). The suggestion that “rule technology” has not advanced greatly since the 1980s seems to insult the hard work and ingenuity of the engineers working on it over the past three decades or so. But the point is the advances are not about the basics of the “IF premises THEN consequences” format of a “rule” – which hasn’t changed since the time of Aristotle. It has been about how to allow businesses to efficiently express the logic of their decision-making processes and then how to deploy these decisions as components of (much) larger computer systems, where decisions may need to be made hundreds of times a second, while providing audit, monitoring, automated testing, real-time updates and 24×7 operations. Saying “rule technology” hasn’t advanced is about as accurate and useful as saying we’re still using computers based on the principles of Babbage’s analytical engine.
One thing to note is that few of these decision-making systems based on current “rule technology” (well sufficiently few I’ve never had to work on one) make use of true “inference” of the kind implied by (Rete style) production systems (the underlying technology may support it, but it’s rarely needed). However, the problems this kind of simple (non-inferencing) “rule technology” addresses are pervasive. Indeed, one could argue that the DMN standard (at least from the perspective of the detailed expression of logic) emerged purely to support this kind of problem. No one working in this area doubts there are hundreds of organisations out there who could profit immediately from automating some of their decisions using this kind of simple “rule technology”.
So, going back to the title of the discussion, does real-world decision management need inference? Well in my experience no, nor does it need NPL, or theorem proving – though some predictive analytics is pretty useful. But … well I’ve just not been lucky enough to have a decision problem that challenging thrown at me. I know they are out there, the first obvious point being that inference is inherent in any real-time event-based decision system (see Fred Simpkin’s comment). When we start looking at trying to do semantic analysis of text as per Paul Haley’s original article and the work pointed to by Adrian Walker, inference is everything, but inference comes in many flavours and I need no convincing by Mr Haley that the very simplistic model provided by production rules falls well short of what is needed. A cynic might ask if semantic analysis of text counts as “real-world” decision management, but I’ve no doubt someone working in the area can supply some good use cases.
My bottom line? We shouldn’t indulge in “I’ve got a hammer, so everything is a nail” arguments. We don’t just have a hammer – we’ve got a whole tool box. But we shouldn’t use a hammer to put tighten a bolt, or a saw to bang in a nail. We need to use the right tool for the job at hand. I’d suggest “rule technology” as peddled by the likes of FICO, IBM and many of the sponsors of the Decision Management Community addresses a mass of low lying fruit for people wanting to automate decisions. But equally while many (most?) decision problems fall within the purview of simple “rule technology” there are a huge variety of important decision problems it simply cannot handle (and these are usually the fun ones to try and address!)
From the Decision Management Community standpoint, the starting point should surely be to ask what kind of ‘decision’ are we trying to be making? We need to go a good way down the path of analysis before we should begin to ask questions about what sort of technology we need to use to solve it. In some cases, a couple of lines of JavaScript embedded in a web page might suffice. In another case a rule engine from one of the “rule technology” companies might be the correct solution. In others one might need a selection of: simple rules; inference rules; constraint engines; truth maintenance systems; event-based systems; theorem provers; predictive analytics; NPL; neural networks … (feel free to add your own favourite tool, technology and/or paradigm if I forgot it).
Comments of Fred Simkin and Adrian Walker can be found at https://www.linkedin.com/groups/4225568
Having a toolbox does not imply having the right tool for a job. A calculator is not very good if we need a database, for example. My principal argument is that, as an industry of practitioners, we have lost sight of “knowledge” and “intelligence”. Are we building technology that “knows” business or are we just “managing decisions”? Are we building AI systems or just “automating policies”? My argument is we should do more of all of it and that doing so requires more capable technology. There is no doubt that logical systems are more powerful than prevalent tools.
Who would suggest that we don’t need logical deduction? Admitting that we need logical deduction, who would suggest that we should analyze all the possible deductions so that we can decompose them into “rules” and organize and sequence them such that we don’t need backward chaining? Why are we so willing to do unnecessary work that can only reduce the robustness and re-usability of our work product?
It’s no surprise that after 40 years of lesser capability, we see the world through foggy goggles. Let’s put the toolbox down, take off the glasses, and look at the sunny horizon, which is not really that far away, after all. I, for one, believe that enterprises will become artificially intelligent and that today’s rule, decision, and process standards and tools will fade from relevance. It won’t happen tomorrow, but it won’t take another 40 years either.