Techniques to analyze workflows (design-time)

Slides:



Advertisements
Similar presentations
Vector Spaces A set V is called a vector space over a set K denoted V(K) if is an Abelian group, is a field, and For every element vV and K there exists.
Advertisements

Modeling issues Book: chapters 4.12, 5.4, 8.4, 10.1.
Workflow Mining: Concepts and Algorithm Dr. Boleslaw Mikolajczak.
1 SE-561 Formal Methods in Software Petri Nets - I.
Hardware and Petri nets Symbolic methods for analysis and verification.
1 Analysis of workflows : Verification, validation, and performance analysis. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
Petri Nets Section 2 Roohollah Abdipur.
Based on: Petri Nets and Industrial Applications: A Tutorial
26 September 2003U. Buy -- SEES 2003 Sidestepping verification complexity with supervisory control Ugo Buy Department of Computer Science Houshang Darabi.
Workflow Management Kap. 4. Analyzing Workflows Wil van der Aalst has copyrights to almost all figures in the following slideshow made by Lars Frank.
Linear Equations in Linear Algebra
Chapter 3 Petri nets Learning objectives : Introduce Petri nets
Merged Processes of Petri nets Victor Khomenko Joint work with Alex Kondratyev, Maciej Koutny and Walter Vogler.
Petri nets Classical Petri nets: The basic model
1 A class of Generalized Stochastic Petri Nets for the performance Evaluation of Mulitprocessor Systems By M. Almone, G. Conte Presented by Yinglei Song.
IE 469 Manufacturing Systems
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Trees and BFSs Page 1 The Network Simplex Method Spanning Trees and Basic Feasible Solutions.
Entropy Rates of a Stochastic Process
Petri net modeling of biological networks Claudine Chaouiya.
Tirgul 12 Algorithm for Single-Source-Shortest-Paths (s-s-s-p) Problem Application of s-s-s-p for Solving a System of Difference Constraints.
Assignment Problem Step by Step illustration automatically generated by a C# application:)
CSC 402 Requirements Engineering 1 Requirements Techniques, cont. Formal requirements analysis techniques include: – DFD (covered) – ERD (covered) – Finite.
1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department.
Chapter 2 Section 2 Solving a System of Linear Equations II.
Requirements Techniques, cont. Brief review Formal Requirements Techniques –Finite State Machines –Petri Nets.
Orthogonality and Least Squares
Merged processes – a new condensed representation of Petri net behaviour V.Khomenko 1, A.Kondratyev 2, M.Koutny 1 and W.Vogler 3 1 University of Newcastle.
/faculteit technologie management PN-1 Petri nets refesher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
Decidability of Minimal Supports of S-invariants and the Computation of their Supported S- invariants of Petri Nets Faming Lu Shandong university of Science.
Barnett/Ziegler/Byleen Finite Mathematics 11e1 Review for Chapter 4 Important Terms, Symbols, Concepts 4.1. Systems of Linear Equations in Two Variables.
4 4.4 © 2012 Pearson Education, Inc. Vector Spaces COORDINATE SYSTEMS.
1 1.4 Linear Equations in Linear Algebra THE MATRIX EQUATION © 2016 Pearson Education, Inc.
Modeling with ordinary Petri Nets Events: Actions that take place in the system The occurrence of these events is controlled by the state of the system.
Soundness problem for Resource-Constrained Workflow nets revisited Natalia Sidorova and Christian Stahl.
We will use Gauss-Jordan elimination to determine the solution set of this linear system.
Orthogonality and Least Squares
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
Computing Eigen Information for Small Matrices The eigen equation can be rearranged as follows: Ax = x  Ax = I n x  Ax - I n x = 0  (A - I n )x = 0.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Petri nets Introduced in 1962 by Carl Adam Petri in his PhD thesis. Focus.
Modelling by Petri nets
Ch8. Analysis Joosung, Ko.
Solve a system of linear equations By reducing a matrix Pamela Leutwyler.
10.3 Systems of Linear Equations: Matrices. A matrix is defined as a rectangular array of numbers, Column 1Column 2 Column jColumn n Row 1 Row 2 Row 3.
1 Petri Nets Ina Koch and Monika Heiner. 2 Petri Nets(1962) Carl Adam Petri.
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
CHARACTERIZATIONS OF INVERTIBLE MATRICES
Copyright ©2015 Pearson Education, Inc. All rights reserved.
1.7 Linear Independence. in R n is said to be linearly independent if has only the trivial solution. in R n is said to be linearly dependent if there.
5 5.1 © 2016 Pearson Education, Ltd. Eigenvalues and Eigenvectors EIGENVECTORS AND EIGENVALUES.
The Matrix Equation A x = b (9/16/05) Definition. If A is an m  n matrix with columns a 1, a 2,…, a n and x is a vector in R n, then the product of A.
1 1.4 Linear Equations in Linear Algebra THE MATRIX EQUATION © 2016 Pearson Education, Ltd.
Diagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets) Cédric Favre(1,2), Hagen Völzer(1), Peter Müller(2)
Technology of information systems Lecture 5 Process management.
1 1.3 © 2016 Pearson Education, Ltd. Linear Equations in Linear Algebra VECTOR EQUATIONS.
/faculteit technologie management PN-1 مهندسی مجدد فرآیندهای تجاری بخش چهارم: تحلیل فرآیندها Analysis of workflows.
REVIEW Linear Combinations Given vectors and given scalars
Polynomial analysis algorithms for free-choice workflow nets
Requirements Techniques, cont.
Linear Equations in Linear Algebra
CSS 496 Business Process Re-engineering for BS(CS)
Concurrent Systems Modeling using Petri Nets – Part II
Wil van der Aalst Eindhoven University of Technology
Linear Equations in Linear Algebra
مهندسی مجدد فرآیندهای تجاری
Wil van der Aalst Eindhoven University of Technology
1.3 Vector Equations.
Objective: Students will solve systems by graphing
Workflow Mining: Concepts and Algorithm
Vector Spaces COORDINATE SYSTEMS © 2012 Pearson Education, Inc.
Presentation transcript:

Petri-net based Analysis of workflows: Verification, validation, and performance analysis

Techniques to analyze workflows (design-time) Validation is concerned with the relation between the model and reality. Verification is typically used to answer qualitative questions Is there a deadlock possible? It is possible to successfully handle a specific case? Will all cases terminate eventually? It is possible to execute two tasks in any order? Performance analysis is typically used to answer quantitative questions How many cases can be handled in one hour? What is the average flow time? How many extra resources are required? How many cases are handled within 2 days?

Three Analysis Techniques Reachability graph Place & transition invariants Simulation

Traffic lights are safe! Reachability Graph (0,0,1,1,0,0,0) (1,0,0,0,0,1,0) (1,0,0,1,0,0,1) (0,1,0,1,0,0,0) (1,0,0,0,1,0,0) Five reachable states. Traffic lights are safe!

Alternative Notation o1+r2 r1+o2 r1+r2+x g1+r2 r1+g2

Reachability Graph Graph containing a node for each reachable state. Constructed by starting in the initial state, calculate all directly reachable states, etc. Expensive technique. Only feasible if finitely many states Difficult to generate diagnostic information.

Infinite Reachability Graph

Exercise: Construct Reachability Graph

Structural Analysis Techniques To avoid state-explosion problem and bad diagnostics. Properties independent of initial state. We only consider place and transition invariants. Proof the PN is live (transition invariants) and bounded (place invariants)

Place Invariant Assigns a weight to each place. The weight of a token depends on the weight of the place. The weighted token sum is invariant, i.e., no transition can change it 1 man + 1 woman + 2 couple

Other invariants 1 man + 0 woman + 1 couple (Also denoted as: man + couple) 2 man + 3 woman + 5 couple -2 man + 3 woman + couple man – woman woman – man (Any linear combination of invariants is an invariant.)

Example: traffic light r1 + g1 + o1 r2 + g2 + o2 r1 + r2 + g1 + g2 + o1 + o2 x + g1 + o1 + g2 + o2 r1 + r2 - x

Exercise: Give place invariants

Transition invariant Assigns a weight to each transition. If each transition fires the number of times indicated, the system is back in the initial state. i.e. transition invariants indicate potential firing sets without any net effect. 2 marriage + 2 divorce

Other invariants 1 marriage + 1 divorce (Also denoted as: marriage + divorce) 20 marriage + 20 divorce Any linear combination of invariants is an invariant, but transition invariants with negative weights have no obvious meaning.

Example: traffic light rg1 + go1 + or1 rg2 + go2 + or2 rg1 + rg2 + go1 + go2 + or1 + or2 4 rg1 + 3 rg2 + 4 go1 + 3 go2 + 4 or1 + 3 or2

Incidence matrix of a Petri net Each row corresponds to a place. Each column corresponds to a transition. Recall that a Petri net is described by (P,T,I,O). N(p,t)=O(t,p)-I(p,t) where p is a place and t a transition.

man Example woman marriage couple divorce

Place invariant Let N be the incidence matrix of a net with n places and m transitions Any solution of the equation X.N = 0 is a transition invariant X is a row vector (i.e., 1 x n matrix) O is a row vector (i.e., 1 x m matrix) Note that (0,0,... 0) is always a place invariant.

Example Solutions: (0,0,0) (1,0,1) (0,1,1) (1,1,2) (1,-1,0)

Transition invariant Let N be the incidence matrix of a net with n places and m transitions Any solution of the equation N.X = 0 is a place invariant X is a column vector (i.e., m x 1 matrix) 0 is a column vector (i.e., n x 1 matrix) Note that (0,0,... 0)T is always a place invariant. Basis can be calculated in polynomial time.

Example Solutions: (0,0)T (1,1)T (32,32)T

Performance Analysis Questions: Techniques: throughput, waiting and service times service levels Techniques: simulation