Impatience with Agents #bpmNEXT

Scott Francis
Next Post
Previous Post

“I for one, welcome our robot overlords”

I have to admit that one meme at bpmNEXT that I am impatient with is the idea of intelligent “agents” that will emerge into complex processes that were not modeled in advance.

There are two interesting themes that arise relating to this.  First, the idea that we can create intelligent agents that replace human actions and decisions.  And second, that we must invest in such ideas because the sheer volume of information and decisions requires automation.  At a fundamental level, I disagree on both counts.  Intelligence should be automated only as much as it can be effective, and not more. And if the volume of data is too large, perhaps we should quit collecting so much meaningless data (noise) and focus on collecting valuable data (signal), rather than vacuuming up everything like the NSA and hoping to sift through it later.  The filters can be much less intelligent and less expensive if you don’t collect the noise in the first place.

There’s nothing wrong with this pursuit of agents from a technology perspective.  But from a real-world perspective I’m just not that interested in trying to replace human behaviors with machines and software.  That may sound surprising coming from a “process guy” like me, but it is true.  To me, process is part of what allows humanity to rise above the mundane. But the object of software should not be to take the human out of the equation entirely – except where it can create opportunities to solve problems that couldn’t be solved before (e.g. “fly by wire” technology in planes).  Or maybe my issue with the idea of agents taking over is the idea that business and human interactions are so mechanical that they can and should be replaced by machines.  Business is a fundamentally human endeavor, and I am disappointed whenever I see attempts to dehumanize it.  Designing a great business, from goals to execution, is one of the great endeavors we can undertake.  Should we just delegate it to a few simple bits of code and see what emerges?

IS a Rose a Rose by any other Name?

A joke I once heard that always struck home with me was this:

Q: “how can you tell that an Artificial Intelligence technology really works?”

A: “when they stop calling it AI and give it a name”

Examples include:  Search, Rules, neural networks, heuristics, computer vision, and many compiler optimization strategies.  And a space that I spent about seven years in: configuration.

So whenever I hear talks about these sorts of things still couched in “AI” terms (intelligent agents for example), I know that we’re either (a) putting some fresh paint on the cars we’re already familiar with – rules for example; or (b) looking too far out for it to be practical, because it is still considered AI.

Jim Sinur’s keynote was much about intelligent agents, and the process that is smarter than he (or you).  His talk was complete with references to Asimov, and too far out in the future for my taste.  Still, once broached, the subject of agents seemed to be everywhere at the conference.   To put it in context, he opened with a question (paraphrased):

Will we have humans versus machines, a match made in heaven, or oil and water?

It was a bit in the clouds for me.  What is the advice to me, as a BPM practitioner?  Welcome our new robot overlords? Of course, knowing that he’s working on a new book with Peter Fingar it makes a bit more sense – the fourth wave of machine-driven process appears to be the focus of their book.

There were a few things I really liked in his presentation, like his radial graph of different types and levels of “intelligence”.  Pretty succinct framework.  Very theoretical.  Practical for comparing types of artificial intelligence.

Paul Harmon, last year’s keynote speaker, did a good job capturing the zeitgeist:

 Jim Sinur, formerly of Gartner and recently the co-author of a book on the use of agent technology for BPMS development, gave a keynote and suggested that BPMS tools would move in the direction of software agents.  While this hardly seems likely in the near term, several talks at the conference suggested that it might be happening in the long term.  Indeed, between Jim’s comments on agents, some discussions of how one might implement case management, and discussions of business rules and declarative programming, in general, there was a strong feeling that a shift was taking place in how people conceptualized BPMS development.

[…] Agents represent still another variation on the declarative theme – they are self-contained programs with their own rules and inference engines, and they are designed to pursue goals and report back when they identify a solution.  It’s almost as if you create agents to do specific tasks, then put them together and watch them interact.  The process seems to emerge from the interaction of the agents.

There is, at a minimum, a shift in how declarative technology is being marketed.  For now, as agents.  Maybe that will end up being the “name” of the AI techniques that I referred to above, as part of the mainstreaming of the techniques, but I wonder.

I don’t know if Jim’s talk influenced others to tie into it in their use of terms or not, but from there on out, it seemed like the most commonly repeated buzzword was “agent”. Even more than BPMN.  That’s saying something at a BPM conference…

From Anatoly (in tweet form): “Jim Sinur (not Gartner): the next catch phrase is Intelligent Agent. #agent”.  Yep, that’s how it felt.

Keith Swenson also discussed personal agents as part of his talk.  He went on to blog about his summary from bpmNEXT as well:

Most of the presentations at BPMNext talked about agents being used within a closed system.  That is the old model of delivering an application or solution which is all contains, and that all of the users visit for a specific purpose.  For any given person, there can only be a small number of such systems that they use, and those system will not normally be under their control.  A user might have the option to configure an agent in the system, but probably only

I agree with him about this surprising limitation.  What use an agent if it can only inter-operate with one vendor’s software?

Whereas, in Keith’s presentation he presented the idea of emergent processes (resulting from the interactions of many simple agents) able to communicate with any number of systems, as being a good thing (which it can be).  He and others failed to address the other side – what if the emergent processes are quite bad – resulting in cancelled flights, or excessive cancellation of reservations, just to name two simple examples of bad outcomes that could be driven by autonomous booking / scheduling agents.

The problem with a collection of many simple actors is that the interactions are actually quite complex (just the complexity of a connective graph would be O(n!), now consider that interactions are more complex than just connections)).  I’ve often discussed this problem with business users and technologists that think a rule-centric approach to business will be a panacea because “rules are simple”.  But the interaction of millions of rules is, if anything, not simple.  The interaction of simple agents will also not be simple – and as it would be uncontrolled, the results are also likely to be undesirable if they actually unfold the way our prognosticators predicted.  Better coverage of his talk here, by Sandy Kemsley.  Anatoly gave it two stars (a compliment): “Me: the use case isn’t quite common but anyway that was the boldest ideas presented at the show.”

Allow me to briefly hit on other agent-oriented talks:

Jason Bloomberg of EnterpriseWeb gave a talk about agent-oriented architecture/middleware.  It was a really interesting talk, that unfortunately didn’t demonstrate enough to make it interesting at a tactical level.  Sandy had the best coverage of this one:

We finished the day with Jason Bloomberg of EnterpriseWeb discussing agent-oriented architecture for cross-process governance: a “style of EA that drives business agility by leveraging policy-based, data-driven intelligent agents”. They call their intelligent agent SmartAlex; it’s like Siri for the enterprise, dynamically connecting people and content at the right time in a goal-driven manner rather than with pre-defined processes. Every step is just an event that calls SmartAlex; SmartAlex interprets models, evaluates and applies policies and rules, then delivers results or makes recommendations using a custom interface and payload depending on the context.

 And, it treats code as data as well.  So, this is one of those appeals to higher concept that is hard to evaluate next to all the other more pragmatic talks and demos.  I was hoping to hear and see a practical application, rather than hear “its not a BPMS, but you could use this to build a BPMS.”  The double meaning of SmartAlex was not lost on me, either!  Still, I think that they made my point – the system of interactions that they are enabling with simple agents… it is complicated.  And unclear how emergent from a 20 minute talk, but very complex.  Very cool, but very complex.  This stuff was more concrete than Jim Sinur’s talk, but still a step short of what I was hoping to see.

Also, Whitestein’s presentation was reclassified from goal-seaking to agent-based “intelligent process execution“:

intelligent process: it has experiences (acquired data), knowledge (actionable information, or analytical interpretation of acquired data), goals (adoptable intentions, or operationally-relevant behavioral directives), plans (ways to achieve goals through reusable action sequences, such as BPMN processes) and actions (result of executing plans).

This one had a strong start but as the presentation went on, I lost the fox.  I think Whitestein has some of the most interesting technology in BPM right now, but they didn’t get the guts of it until so late that we didn’t get to really see how it manifests.  Apparently the intelligent process controllers are yielding a 25-30% efficiency improvement at DHL, where they are used.  That’s big. But still very opaque. And yes, this is probably a good use case for “agents” – but the behavior wasn’t so much emergent as goal-seeking, which is a really interesting addition to BPMN semantics.

No doubt there’s a good future for combining goals with execution, the question is whether goals and the logic to implement them will be explicitly modeled, discovered, or emergent.

I’m going to go back to building our business now – we’ll all have to wait just a bit longer for the new Agent-based BPM to take over!

 

 bpmNEXT