DECOMPOSED CONFORMANCE Jorge Munoz-Gama, Josep Carmona and W.M.P van der Aalst
About Myself Jorge Munoz-Gama Barcelona Universitat Politecnica de Catalunya (UPC) Advisor: Josep Carmona Studies Bachelor in Computer Science (2009) Master in Computation (2010) PhD in Computation ( expected Oct. 2014) TUE (2012 and 2013) and NII (2012) Conformance Checking and Diagnosis in Process Mining Topics Precision within Conformance Arya, Wil and Boudewijn Decomposed Conformance Wil and Eric 2
Abstract Wordle 3
Outline Diagnosis using SESE + RPST SESE / RPST Benefits and limitations Valid Decomposition using SESE + RPST Valid Decomposition Transform SESE into Valid Decomposition Alignments and Fitness from Valid Decomposition Stitching Check Divide and Conquer Algorithm 4
Diagnosis using SESE+RPST
Conformance Diagnosis in the Large 6
Process Diagnosis like a Map 7
8
Decomposition Goals Intuitive structural decomposition Low decoupling Sub-processes within the main process SESE Hierarchy between components Nested components RPST 9 * Artem Polyvyanyy: Structuring Process Models. PhD Thesis. University of Potsdam (Germany), January 2012
Structure instead of Behavior 10
Interior, Boundary, Entry, and Exit nodes Given a subgraph and a node of it: Interior node: connected only to nodes of the subgraph. Boundary node: not interior Entry node: boundary where no incoming edge in subgraph or all outgoing edges in Exit node: boundary where no outgoing edge in subgraph or all incoming edges in 11
SESE, Canonical SESE and RPST SESE : set of edges which subgraph has a Single Entry node and a Single Exit node Canonical SESE: not overlap with any other SESE Refined Process Structure Tree (RPST) containing the Canonical SESEs Unique Modular 12
Example of SESE and RPST 13
Conformance and Markings The analysis is strongly depended on the markings 14 A B C A B C D E
Best Effort Analysis Best Effort Analysis oriented to understanding, diagnosis and testing Include artificial place when the entry (or exit) is a transition Short-circuited the component to allow repetitions Heuristic based on invariants of the whole net Use of the particularities of the net Safe, Sound, Bounded, … But at this point there are not guarantees for the general case 15
Implementation 16 Package JorgeMunozGama
Implementation 17 Package JorgeMunozGama
Published Work 9 Sep 2010Process Conformance and Refinement 18 Hierarchical Conformance Checking of Process Models Based on Event Logs J. Munoz-Gama, J. Carmona and W. van der Aalst Petri Nets 2013
Valid Decomposition using SESE+RPST
Hierarchy is not Decomposition Hierarchy aids in the diagnosis But does not make conformance computation faster Actually, the conformance is computed much more times Possible to limit to some range of levels or to focus on particular part Not guarantees for the general case Can we achieve a decomposition of the conformance problem? That reduces the time? With guarantees on the fitness result? 20
Partitioning the RPST Any cut in the RPST is partitioning on the edges 21 Algorithm to cut by the size of the component (k-partitioning)
Properties of the Partitioning It is faster … … but what about the guarantees? Decomposed Perfectly Fitting Checking: A model/log is perfectly fitting if and only if all the components are perfectly fitting 22
SESE and Decomposed Perfectly Fitting SESEs (per se) do not satisfy the Decomposed Perfectly Fitting Checking property 23 1 token in p => abcdef fits S but not S2 2 tokens in p => abdecf fits S1 and S2 but not S
Valid Decomposition Each place appears in precisely one of the subnets Each edge appears in precisely one of the subnets Transitions may appear in multiple subnets Invisible transitions must appear in precisely one subnet Duplicate transitions must appear in precisely one subnet 24 * Wil M.P. van der Aalst: Decomposing Petri Nets for Process Mining: A Generic Approach. BPMCenter.org, 2012 Valid Decompositions satisfy Decomposed Perfectly Fitting Checking property !
SESE to Valid Decomposition Create a ‘bridge’ for each shared place 25
Results (1) 1 Net – 1h 15min 7 Subnets – 2min 26
Results (2) 27
Topology 28
Topology and NFCC and NFN Non Fitting Connected Components (NFCC) 29 Non Fitting Net (NFN)
Topology Algorithms on Large 30
DivideAndConquer Package 31
DecomposedConformance Package 32
Published Work 9 Sep 2010Process Conformance and Refinement 33 Conformance Checking in the Large: Partitioning and Topology J. Munoz-Gama, J. Carmona and W. van der Aalst Business Process Management (BPM) 2013
Alignments and Fitness on Valid Decompositions
Adapted Cost Function 35 Cost involving the task # subnets having the task Theorem: The sum of the costs of all the subnets using the adapted cost function is a lower bound of the cost in overall alignment Upper bound on the fitness
Lower bound on the costs - Idea 36 AAAA SN SN1SN2SN3 BBBB C-C- DDDD EEEE FFFF GGGG -H-H IIII JJJJ KKKK LLLL AAAA BBBB DDDD EEEE KKKK LLLL C-C- AAAA C-C- FFFF GGGG -H-H IIII JJJJ A-A- CCCC FFFF GGGG HHHH IIII JJJJ
Stitching Check 37 SN1-SN2 SN2-SN3SN1-SN3 AAAA SN BBBB C-C- DDDD EEEE FFFF GGGG -H-H IIII JJJJ KKKK LLLL SN1 AAAA BBBB DDDD EEEE AAAA C-C- FFFF GGGG -H-H IIII JJJJ SN2 SN3 KKKK LLLL C-C- AAAA AAAA C-C- C-C- SN1 SN2 SN3 The order of the tasks matters
Stitching Check Theorem 38 Theorem: Given a trace, if it agrees on the stitching check, the sum of the costs using the adapted cost function is not a bound but the exact result. An optimal alignment for the whole trace can be constructed straightforward from the alignments of the subnets
Stitching Check Corollary 39 Corollary: if all the shared transitions are synchronous moves, is not a bound but exact. Interesting from a Diagnosis point of view Two optimal alignments: one with synchronous moves in the shared transitions, and the other no.
Two possible optimal alignments 40 B-B- AAAA -B-B CCCC DDDD EEEE FFFF -A-A BBBB A-A- CCCC DDDD EEEE FFFF
Two possible optimal alignments 41 B-B- AAAA -B-B -A-A BBBB A-A- BBBB DDDD EEEE BBBB CCCC EEEE EEEE FFFF BBBB DDDD EEEE BBBB CCCC EEEE EEEE FFFF They do not agree on B (not even in the # occurrences
Modified Alignment Algorithm Modify the alignment algorithm to prioritize solutions with synchronous moves for a given set of tasks (if exists) 42 Priority queue
Estimating Fitness If all traces in the log satisfy the stitching check the fitness is exact (unlikely) Just that one trace does not satisfy, the fitness is not formally guaranteed However, it must be experimentally accurate traces satisfy stitching check 1 trace not satisfy stitching check fitness The error is negligible
Fitness Interval Give the percentage of traces with exact value But also a confidence interval on the fitness 44 Lower Bound of trace Upper Bound of trace fitness fitness (if satisfy stitching check) 0 (if not satisfy stitching check) The bounds for the log are the average of the bounds per trace
Merging Subnets If they don’t agree, merge them 45
Stitching Matrix Stitching problems between subnets Blueprint for merging 46 SN1SN2SN3 SN SN SN L
Stitching Matrix Stitching problems between subnets Blueprint for merging 47 SN1SN2SN3 SN SN SN L
Decomposed Conformance Algorithm 48 dc (L,SN) L[ ], SN[ ] = decompose (L, SN) A[ ] = align (L[ ], SN[ ]) Lp, Ap[ ] = pass_stitching_check (L, A[ ]) Lf, Af[ ] = fail_stitching_check (L, A[ ]) while (not_final_condition) Ms = stitching_matrix (Af[ ]) L[ ] = project_log (Lf, SN[ ]) A[ ] = align (L[ ], SN[ ]) Lp, Ap[ ] = Lp, Ap[ ] + pass_stitching_check (L, A[ ]) Lf, Af[ ] = fail_stitching_check (L, A[ ]) SN[ ] = merge_subnets (Ms) compute_fitness (Ap[ ], Af[ ]) compute_alignments (Ap[ ])
Conclusions How SESE and RPST may help for diagnosis How to create Valid Decompositions from SESE Partitioning the Problem Bridging Topology and Topological Algorithms Estimating fitness from Valid Decompositions Stitching Check Fitness Interval Decomposed Conformance Algorithm 49
Future Work New approaches for creating Valid Decompositions Based on Transition-Separation Pairs SESE+Passages Study on the decomposed fitness When it’s more effective and when to stop More complex merging strategies Real-case scenarios Conformance Checking in Hierarchy 50
Thank You