Business Process Management (BPM) is a central element of today organizations. Despite over the years its main focus has been the support of processes in highly controlled domains, nowadays many domains of interest to the BPM community are characterized by ever-changing requirements, unpredictable environments and increasing amounts of data that influence the execution of process instances. Under such dynamic conditions, BPM systems must increase their level of automation to provide the reactivity and flexibility necessary for process management. On the other hand, the Artificial Intelligence (AI) community has concentrated its efforts on investigating dynamic domains that involve active control of computational entities and physical devices (e.g., robots, software agents, etc.). In this context, Automated Planning, which is one of the oldest areas in AI, is conceived as a model-based approach to synthesize autonomous behaviours in automated way from a model. In this paper, we discuss how automated planning techniques can be leveraged to enable new levels of automation and support for business processing, and we show some concrete examples of their successful application to the different stages of the BPM life cycle.
What Automated Planning can do for
Business Process Management
Sapienza - University of Rome, Italy
Business Process Management (BPM) is a central element of today organizations due to its potential for increase productivity and saving costs. To this aim, BPM research reports on techniques and tools to support the design, enactment and optimization of business processes [Aalst2013BPMsurvey]. Despite over the years the main focus of BPM has been the support of processes in highly controlled domains (e.g., financial and accounting domains), nowadays BPM research is expanding towards new challenging domains (e.g., healthcare [Reichert-healthcare-processes_2007], smart manufacturing [Seiger2014], emergency management [Humayoun2009, deLeoni2011], etc.), characterized by ever-changing requirements, unpredictable environments and increasing amounts of data that influence the execution of process instances [ReichertBook2012]. Under such dynamic conditions, BPM is in need of techniques that go beyond hard-coded solutions that put all the burden on IT professionals, which often lack the needed knowledge to model all possible contingencies at the outset, or this knowledge can become obsolete as process instances are executed and evolve, by making useless their initial effort. Therefore, there are compelling reasons to introduce intelligent techniques that act autonomously to provide the reactivity and flexibility necessary for process management [JODS2015, Hull2016].
On the other hand, the challenge of building computational entities and physical devices (e.g., robots, software agents, etc.) capable of autonomous behaviour under dynamic conditions is at the center of the Artificial Intelligence (AI) research from its origins. At the the core of this challenge lies the action selection problem, often referred as the problem of selecting the action to do next. Traditional hard-coded solutions require to consider every option available at every instant in time based on the current context and pre-scripted plans to compute just one next action. Consequently, they are usually biased and tend to constrain their search in some way. For AI researchers, the question of action selection is: what is the best way to constrain this search? To answer this question, the AI community has tackled the action selection problem through two different approaches [GeffnerBonet:BOOK13-PLANNING], one based on learning and the other based on modeling.
In the learning-based approach, the controller that prescribes the action to do next is learned from the experience. Learning methods, if properly trained on representative datasets, have the greatest promise and potential, as they are able to discover and eventually interpret meaningful patterns for a given task in order to help make more efficient decisions. For example, learning techniques were recently applied in BPM (see [Maggi2014]) for predicting future states or properties of ongoing executions of a business process. However, a learned solution is usually a “black box”, i.e., there is not a clear understanding of how and why it has been chosen. Consequently, the ability to explain why a learned solution has failed and fix a reported quality bug may become a complex task.
Conversely, in the model-based approach the controller in charge of action selection is derived automatically from a model that expresses the dynamics of the domain of interest, the actions and goal conditions. The key point is that all models are conceived to be general, i.e., they are not bound to specific domains or problems. The price for generality is computational: The problem of solving a model is computationally intractable in the worst case, even for the simplest models [GeffnerBonet:BOOK13-PLANNING].
While we acknowledge that both the learning and model-based approaches to action selection exhibit different merits and limitations, in this paper we focus on a specific model-based approach called Automated Planning. Automated planning is the branch of AI that concerns the automated synthesis of autonomous behaviours (in the form of strategies or action sequences) for specific classes of mathematical models represented in compact form. In recent years, the automated planning community has developed a plethora of planning systems (also known as planners) that embed very effective (i.e., scale up to large problems) domain-independent heuristics, which has been employed to solve collections of challenging problems from several Computer Science domains.
In this paper, we discuss how automated planning techniques can be leveraged for solving real-world problems in BPM that were previously tackled with hard-coded solutions by enabling new levels of automation and support for business processing and we show some concrete examples of their successful application to the different stages of the BPM life cycle. Specifically, while in Section 2 we introduce some preliminary notions on automated planning necessary to understand the rest of the paper, in Section LABEL:sec:planning_for_BPM we show how instances of some well-known problems from the BPM literature (such as process modeling, process adaptation and conformance checking) can be represented as planning problems for which planners can find a correct solution in a finite amount of time. Finally, in Section LABEL:sec:conclusion we conclude the paper by providing a critical discussion about the general applicability of planning techniques in BPM and tracing future work.
2 Automated Planning
Automated planning addresses the problem of generating autonomous behaviours (i.e., plans) from a model that describes how actions work in a domain of interest, what is the initial state of the world and the goal to be achieved. To this aim, automated planning operates on explicit representations of states and actions.
The Planning Domain Definition Language (PDDL) [McDermott:98-PDDL] is a de-facto standard to formulate a compact representation of a planning problem , where is the description of the initial state of the world, is the desired goal state, and is the planning domain. A planning domain is built from a set of propositions describing the state of the world in which planning takes place (a state is characterized by the set of propositions that are true) and a set of actions that can be executed in the domain. An action schema is of the form , where is the list of input parameters for , defines the preconditions under which can be executed, specifies the effects of on the state of the world and is the cost of executing . Both preconditions and effects are stated in terms of the propositions in , which can be represented through boolean predicates. PDDL includes also the ability of defining domain objects and of typing the parameters that appear in actions and predicates. In a state, only actions whose preconditions are fulfilled can be executed. The values of propositions in can change as result of the execution of actions, which, in turn, lead to a new state. A planner that takes in input a planning problem is able to automatically produce a plan , i.e., a controller that specifies which actions are required to transform the initial state into a state satisfying the goal .
Let us consider a well-known domain in AI: the Blocks World. In Fig. LABEL:fig:blocks_world it is shown an instance of this domain where blocks A, B and C are initial arranged on the table. The goal is to re-arrange the blocks so that C is on A and A is on B.