Computing the concurrency threshold of sound free-choice workflow nets

Workflow graphs extend classical flow charts with concurrent fork and join nodes. They constitute the core of business processing languages such as BPMN or UML Activity Diagrams. The activities of a workflow graph are executed by humans or machines, generically called resources. If concurrent activities cannot be executed in parallel by lack of resources, the time needed to execute the workflow increases. We study the problem of computing the minimal number of resources necessary to fully exploit the concurrency of a given workflow, and execute it as fast as possible (i.e., as fast as with unlimited resources). We model this problem using free-choice Petri nets, which are known to be equivalent to workflow graphs. We analyze the computational complexity of two versions of the problem: computing the resource and concurrency thresholds. We use the results to design an algorithm to approximate the concurrency threshold, and evaluate it on a benchmark suite of 642 industrial examples. We show that it performs very well in practice: It always provides the exact value, and never takes more than 30 milliseconds for any workflow, even for those with a huge number of reachable markings.

[1]  Lothar Thiele,et al.  The Complexity of Deadline Analysis for Workflow Graphs with Multiple Resources , 2016, BPM.

[2]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[3]  Dirk Fahland,et al.  The relationship between workflow graphs and free-choice workflow nets , 2015, Inf. Syst..

[4]  Michael Pinedo,et al.  Scheduling: Theory, Algorithms, and Systems , 1994 .

[5]  Sudipto Guha,et al.  Machine minimization for scheduling jobs with interval constraints , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[6]  Jeffrey D. Ullman,et al.  NP-Complete Scheduling Problems , 1975, J. Comput. Syst. Sci..

[7]  Julia Chuzhoy,et al.  Resource Minimization Job Scheduling , 2009, APPROX-RANDOM.

[8]  Selmin Nurcan,et al.  Resources allocation and scheduling approaches for business process applications in Cloud contexts , 2012, 4th IEEE International Conference on Cloud Computing Technology and Science Proceedings.

[9]  Chelliah Sriskandarajah,et al.  A Survey of Machine Scheduling Problems with Blocking and No-Wait in Process , 1996, Oper. Res..

[10]  Jiajie Xu,et al.  Resource Allocation vs. Business Process Improvement: How They Impact on Each Other , 2008, BPM.

[11]  Wil M. P. van der Aalst,et al.  Workflow Verification: Finding Control-Flow Errors Using Petri-Net-Based Techniques , 2000, Business Process Management.

[12]  Karsten Wolf,et al.  Generating Petri Net State Spaces , 2007, ICATPN.

[13]  Wil M. P. van der Aalst,et al.  Fundamentals of control flow in workflows , 2003, Acta Informatica.

[14]  R. Lougee-Heimer,et al.  The Common Optimization INterface for Operations Research: Promoting open-source software in the operations research community , 2003 .

[15]  Jörg Desel,et al.  Free choice Petri nets , 1995 .

[16]  Dirk Fahland,et al.  Instantaneous Soundness Checking of Industrial Business Process Models , 2009, BPM.

[17]  Li Liu,et al.  A Survey on Workflow Management and Scheduling in Cloud Computing , 2014, 2014 14th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[18]  Javier Esparza,et al.  Polynomial analysis algorithms for free choice Probabilistic Workflow Nets , 2017, Perform. Evaluation.

[19]  Wil M. P. van der Aalst,et al.  Verification of Workflow Nets , 1997, ICATPN.