1 / 39

Claudio Di Ciccio , Massimo Mecella

Process Mining An index to the state of the art and an outline of open research challenges at DIAG. Claudio Di Ciccio , Massimo Mecella. Seminars in Software and Services for the Information Society. Process Mining. Definition.

yule
Download Presentation

Claudio Di Ciccio , Massimo Mecella

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Process MiningAn index to the state of the art and an outline of open research challenges at DIAG Claudio Di Ciccio, Massimo Mecella Seminars in Software and Services for the Information Society

  2. Process Mining Definition • Process Mining [Aalst2011.book], also referred to as Workflow Mining, is the set of techniques that allow the extraction of process descriptions, stemming from a set of recorded real executions (logs). • ProM [AalstEtAl2009] is one of the most used plug-in based software environment for implementing workflow mining (and more) techniques. • The new version 6.0 is available for download at www.processmining.org Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  3. Process Mining Definition • Process Mining involves: • Process discovery • Control flow mining, organizational mining, decision mining; • workflow • Conformance checking • Operational support • We will focus on the control flow mining • Many control flow mining algorithms proposed • α [AalstEtAl2004], α++ [WenEtAl2007] and α# [WenEtAl2010] • Fuzzy [GüntherAalst2007] • Heuristic [WeijtersEtAl2001] • Genetic [MedeirosEtAl2007] • Two-step [AalstEtAl2010] • … Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  4. Process Mining Further reading • The rest of the lesson is based on the following material: • Van der Aalst, W. M. P.: “Process Discovery: An Introduction” • Available athttp://www.processmining.org/_media/processminingbook/process_mining_chapter_05_process_discovery.pdf • From the teaching material for [Aalst2011.book] • De Medeiros, A. K. A.: “Process Mining: Control-Flow Mining Algorithms” • Available athttp://www.processmining.org/_media/courses/processmining/lecture3_controlflowminingalgorithms.ppt Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  5. A different context for process mining Artful processes and knowledge workers • Artful processes [HillEtAl06] • informal processes typically carried out by those people whose work is mental rather than physical (managers, professors, researchers, engineers, etc.) • “knowledge workers”[ACTIVE09] • Knowledge workers create artful processes “on the fly” • Though artful processes are frequently repeated, they are not exactly reproducible, even by their originators, nor can they be easily shared • Loosely structured • Highly flexible Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  6. A different context (2) Email conversations • In collaborative contexts, knowledge workers share their information and outcomes with other knowledge workers • E.g., a software development mgr. • Typically, by means of several email conversations • Email conversations are actual traces of running processes that knowledge workers adhere to Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  7. A different context (4) Some areas of applicability • Personal information management (PIM) • how to organize one’s own activities, contacts, etc. through the usage of software • Information warfare • in supporting anti-crime intelligence agencies • Enterprise engineering • for knowledge-heavy industries, where preserving documents making up product data is not enough • eHealth • for the automatic discovery of medical treatment procedures on top of patient health records Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  8. MailOfMine What is MailOfMine? • MailOfMineis the approach and the implementation of a collection of techniques, the aim of which is to is to automatically build, on top of a collection of email messages, a set of workflow models that represent the artful processes laying behind the knowledge workers’ activities. • [DiCiccioEtAl11] • [DiCiccioMecella12] • [DiCiccioMecella/TR12] • [DiCiccioMecella13] Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  9. On the visualization of processes The imperative model • Represents the whole process at once • The most used notation is based on a subclass of Petri Nets (namely, the Workflow Nets) Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  10. On the visualization of processes If A is performed, B must be perfomed, no matter before or afterwards (responded existence) The declarative model • Rather thanusing a procedural language for expressing the allowed sequence of activities, it is based on the description of workflows through the usage of constraints • the idea is that every task can be performed, except the ones which do not respect such constraints • this technique fits with processes that are highly flexible and subject to changes, such as artful processes Whenever B is performed, C must be performed afterwards and B can not be repeated until C is done (alternate response) The notation here is based on [AalstEtAl06,MaggiEtAl11] (DecSerFlow, Declare) Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  11. On the visualization of processes Imperative vS declarative Declarative Declarative models work better in presence of a partial specification of the process scheme Imperative Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  12. A real discovered process model “Spaghetti process” [Aalst2011.book] Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  13. Declare constraint templates Existence templates Existence(n, A)Activity A occurs at least n times in the process instanceBCAAC✓ BCAAAC✓ BCAC✗ (for n = 2) Absence(A)Activity A does not occur in the process instance BCC✓ BCAC✗ Absence(n+1, A)Activity A occurs at most n+1 times in the process instance BCAAC✗ BCAC✓ BCC✓ (for n = 2) Exactly(n, A)Activity A occurs exactly n times in the process instance BCAAC✗ BCAAAC✗ BCAC✗ (for n = 2) Init(A)Activity A is the first to occur in each process instance BCAAC✗ ACAAAC ✓BCC✗ Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  14. Declare constraint templates Relation templates RespondedExistence(A, B)If A occurs in the process instance, then B occurs as wellCAC✗ CAACB✓ BCAC✓ BCC✓ Response(A, B)If A occurs in the process instance, then B occurs after ABCAAC✗ CAACB✓ CAC✗ BCC✓ AlternateResponse(A, B)Each time A occurs in the process instance, then B occurs afterwards, before A recurs BCAAC✗ CAACB✗ CACB✓ CABCA✗ BCC✓ CACBBAB✓ ChainResponse(A, B)Each time A occurs in the process instance, then B occurs immediately afterwards BCAAC✗ BCAABC✗ BCABABC✓ Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  15. Declare constraint templates Relation templates RespondedExistence(B, A)If B occurs in the process instance, then A occurs as wellCAC✓ CAACB✓ BCAC✓ BCC✗ Precedence(A, B)B occurs in the process instance only if preceded by ABCAAC✗ CAACB✓ CAC✓ BCC✓ AlternatePrecedence(A, B)Each time B occurs in the process instance, it is preceded by A and no other B can recur in between BCAAC✗ CAACB✓ CACB✓ CABCA✓ BCC✗ CACBAB✓ ChainPrecedence(A, B)Each time B occurs in the process instance, then B occurs immediately beforehand BCAAC✗ BCAABC✗ CABABCA✓ Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  16. Declare constraint templates Relation templates CoExistence(A, B)If B occurs in the process instance, then A occurs, and viceversaCAC✗ CAACB✓ BCAC✓ BCC✗ Succession(A, B)A occurs if and only if it is followed by B in the process instanceBCAAC✗ CAACB✓ CAC✗ BCC✗ AlternateSuccession(A, B)A and B occur in the process instance if and only if the latter follows the former, and they alternate each other in the trace BCAAC✗ CAACB✗ CACB✓ CABCA✗ BCC✗ CACBAB✓ ChainSuccession(A, B)A and B occur in the process instance if and only if the latter immediately follows the former BCAAC✗ BCAABC✗ CABABC✓ Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  17. Declare constraint templates Negative relation templates NotCoExistence(A, B)A and B never occur together in the process instanceCAC✓ CAACB✗ BCAC✗ BCC✓ NotSuccession(A, B)A can never occur before B in the process instanceBCAAC✓ CAACB✗ CAC✓ BCC✓ NotChainSuccession(A, B)A and B occur in the process instance if and only if the latter does not immediately follows the former BCAAC✓ BCAABC✗ CBACBA✓ Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  18. Relation constraint templates subsumption Constraint templates are not independent of each other Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  19. MINERful++ Our mining algorithm • MINERful++ is the workflow discovery algorithm of MailOfMine • Its input is a collection of strings T and an alphabet ΣT • Each stringt is a trace • Each character is an event (enacted task) • The collection represents the log • Its output is a declarative process model • What is a declarative process model? Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  20. The declarative specification of an artful process (e.g.) Scenario • A project meeting is scheduled • We suppose that a final agenda will be committed (“confirmAgenda”) after that requests for a new proposal (“requestAgenda”), proposals themselves (“proposeAgenda”) and comments (“commentAgenda”) have been circulated. • Shortcuts for tasks (process alphabet): • p (“proposeAgenda”) • r (“requestAgenda”) • c (“commentAgenda”) • n(“confirmAgenda”) Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  21. The declarative specification of an artful process (e.g.) Constraints on activities • Existence constraints • Participation(n) • Uniqueness(n) • End(n) • Relation constraints • Response(r, p) • RespondedExistence(c, p) • Succession(p, n) • The agenda • must be confirmed, • only once: • it is the last thing to do. • During the compilation: • the proposal follows a request; • if a comment circulates, there has been / will be a proposal; • after the proposal, there will be a confirmation, and there can be no confirmation without a preceding proposal. Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  22. MINERful++ Workflow discovery by constraints inference • MINERful++ is a two-stepalgorithm • Construction of a Knowledge Base • Constraints inference by means of queries evaluated on the KB • This allows the discovery of constraints through a fasterprocedure on data which are smaller in size than the whole input • Returned constraints are weighted with their support • the normalized fraction of cases in which the constraint is verified over the set of input traces Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  23. MINERful++ by example Workflow discovery by constraints inference • In order to see how it works now • we see a run of MINERful++ over a string, compliant with the previous example:r r p c r p c r c p c n • We start with the construction of the algorithm’s Knowledge Base Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  24. MINERful++ by example Building the “ownplay” of p and n • p • p occurred 3 times in 1 stringγp(3) = 1 • For each m ≠ 3γp(m) = 0 • p did not occur as the first nor as the last charactergi(p) = 0gl(p) = 0 • n • γn(1) = 1 • For each m ≠ 1, γn(m) = 0 • n occurred as the last character in 1 stringgi(n) = 0gl(n) = 1 r r p c r p c r c p c n r r p c r p c r c p c n Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  25. MINERful++ by example Building the “interplay” of p and n • With respect to the occurrence of p, n occurred… • Never before: 3 timesδp,n(-∞) = 3 • 2 char’s after: 1 timeδp,n(2) = 1 • 6 char’s after: 1 timeδp,n(6) = 1 • 9 char’s after: 1 timeδp,n(9) = 1 • Repetitions in-between: • onwards: 2 timesb→p,n = 2 • backwards: neverb←p,n = 0 • Looking at the string • r r p c r p c r c p c n • r r p c r p c r c p c n • r r p c r p c r c p c n • r r p c r p c r c p c n • r r p c r p c r c p c n • r r p c r p c r c p c n Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  26. MINERful++ by example Building the “interplay” of r and p b→r,p = 1 b←r,p = 0 r rp c r p c r c p c n Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  27. MINERful++ Computing the support of constraints • Let Gr and Gp be the number of times in which r and p respectively appear in the log we have, e.g., • support for Response(r, p) • hint: how many times p was not read in the traces after r occurred?In those cases, Response(r, p) does not hold • support for Succession(r, p) • how many times p was not read in the traces after r occurred, nor r was read before p occurred?In those cases, Succession(r, p) does not hold • … Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  28. MINERful++ Computing the support of constraints Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  29. MINERful++ by example Computing the support of constraints • r r p c r p c r c p c n • r c c r p p c p c r c p p n • c c c c c r r p c r r p r r p r p p p n • c p r p n • r p p n • r r r c r c p n • r p c n • c r p r r c c p p n • p c c n • c r r c c c r r p c p c c p n • Support for… • Response(r, p)1.0 • Succession(r, p)0.96364 • Precedence(c, n)0.9 • The support can be used to prune out those constraints falling under a given threshold • E.g., 0.95 • A thresholdequal to 1.0 selects those constraints which are always validon the log Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  30. Relation constraint templates subsumption Constraint templates are not independent of each other • E.g., • A trace likea b a b c a b c csatisfies (w.r.t. b and a): • RespondedExistence(a, b), RespondedExistence(b, a),CoExistence(a, b), CoExistence(b, a), Response(a, b), AlternateResponse(a, b), ChainResponse(a, b), Precedence(a, b), AlternatePrecedence(a, b), ChainPrecedence(a, b),Succession(a, b), AlternateSuccession(a, b),ChainSuccession(a, b) • The mining algorithm would have to show the most strict constraint only (ChainSuccession(a, b)) • MINERful++faces this issue, by pruning the returned constraints on the basis of the subsumption hierarchy of constraints Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  31. Relation constraint templates subsumption Constraint templates are not independent of each other Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  32. Relation constraint templates subsumption A hint on the pruning procedure ✖ ✖ 1.0 1.0 ✖ ✖ ✖ 1.0 1.0 1.0 ✖ ✖ ✖ 1.0 1.0 1.0 ✖ ✖ 1.0 1.0 1.0 Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  33. Relation constraint templates subsumption A hint on the pruning procedure Support ✖ ✖ 0.9 0.9 ✖ ✖ 0.9 0.9 0.9 ? ✖ ✖ ? ✖ 0.9 0.7 0.8 ✖ ? ✖ ? 0.9 0.7 0.8 Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  34. Evaluation Characteristics of MINERful++ • MINERful++ is • Independent on the formalism used for expressing constraints • Modular (two-phase) • Capable of eliminating redundancy in the process model • Fast Sony VAIO VGN-FE11H Intel Core Duo T2300 1.66 GHz 2 MB L2 cache 2 GB of DDR2 RAM @ 667 Mhz Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  35. Evaluation On the complexity of MINERful++ • Linear w.r.t. the number of traces in the log|T| • Quadratic w.r.t. the size of traces in the log|tmax| • Quadratic w.r.t. the size of the alphabet|ΣT| • Hence, polynomial in the size of the inputO(|T|·|tmax |2·|ΣT |2) Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  36. Preliminary results MINERful++ on real data • Logs extracted from 2 mailboxes • [DiCiccioMecella2012] • 5 traces • 34.75 events each on average • 139 events read in total • Evaluation of inferred constraints conducted with an expert domain • Precision ≈ 0.794 Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  37. Future work Research in progress • Integrate MINERful++ with ProM • MINERful++ is already capable of reading/writing XES logs • Study the effects of errors in logs on the inferred workflow • Error-injected synthetic logs can help us conduct an automated analysis on the quality of results • Refine the estimation calculi for support • Auto-tune the support threshold • Depending on the constraint template, which can be more or less “robust” • Enlarge the set of discovered constraint templates to the branching Declare constraints Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  38. References Cited articles and resources, in order of appearance • [Aalst2011.book] van der Aalst, W.M.P.: Process Mining: Discovery, Conformance and Enhancement of Business Processes. Springer (2011). • [AalstEtAl2009] van der Aalst, W.M.P., van Dongen, B.F., Güther, C.W., Rozinat, A., Verbeek, E., Weijters, T.: Prom: The process mining toolkit. In de Medeiros, A.K.A., Weber, B., eds.: BPM (Demos). Volume 489 of CEUR Workshop Proceedings., CEUR-WS.org (2009) • [AalstEtAl2004] van der Aalst, W.M.P., Weijters, T., Maruster, L.: Workflow mining: Discovering process models from event logs. IEEE Trans. Knowl. Data Eng. 16(9) (2004) 1128–1142. • [WenEtAl2007] Wen, L., van der Aalst, W.M.P., Wang, J., Sun, J.: Mining process models with non-free-choice constructs. Data Min. Knowl. Discov. 15(2) (2007) 145–180. • [WenEtAl2010] Wen, L., Wang, J., van der Aalst, W. M. P., Huang, B., Sun, J.: Mining process models with prime invisible tasks. Data Knowl. Eng., 69 (2010), 999-1021. • [GüntherEtAl2007] Günther, C.W., van der Aalst, W.M.P.: Fuzzy Mining - Adaptive Process Simplification Based on Multi-perspective Metrics. Proc. BPM 2007. • [WeijtersEtAl2001] Weijters, A., van der Aalst, W.: Rediscovering workflow models from event-based data using little thumb. Integrated Computer-Aided Engineering 10 (2001) 2003. • [MedeirosEtAl2007] Medeiros, A.K., Weijters, A.J., Aalst, W.M.: Genetic process mining: an experi- mental evaluation. Data Min. Knowl. Discov. 14(2) (2007) 245–304. • [AalstEtAl2010] van der Aalst, W., Rubin, V., Verbeek, H., van Dongen, B., Kindler, E., Gnther, C.: Process mining: a two-step approach to balance between underfitting and overfitting. Software and Systems Modeling 9 (2010) 87–111 10 Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

  39. References Cited articles and resources, in order of appearance • [HillEtAl06] Hill, C., Yates, R., Jones, C., Kogan, S.L.: Beyond predictable workflows: Enhancing productivity in artful business processes. IBM Systems Journal 45(4), 663–682 (2006) • [ACTIVE09] Warren, P., Kings, N., et al.: Improving knowledge worker productivity - the ACTIVE integrated approach. BT Technology Journal 26(2), 165–176 (2009) • [DiCiccioEtAl11] Di Ciccio, C., Mecella, M., Catarci, T.: Representing and visualizing mined artful processes in MailOfMine. Proc. USAB 2011:83-94 • [DiCiccioMecella12] Di Ciccio, C., Mecella,M.: Mining constraints for artful processes. Proc. BIS 2012 • [DiCiccioMecella/TR12] Di Ciccio, C., Mecella, M.: MINERful, a mining algorithm for declarative process constraints in MailOfMine. Technical report, Dipartimento di Ingegneria Informatica, Automatica e Gestionale “Antonio Ruberti” – SAPIENZA, Universita` di Roma (2012). • [DiCiccioMecella13] Di Ciccio, C., Mecella, M.: A Two-Step Fast Algorithm for the Automated Discovery of Declarative Workflows. Proc. CIDM 2013 • [AalstEtAl06] van der Aalst, W.M.P., Pesic, M.: Decserflow: Towards a truly declarative service flow language. Proc. WS-FM 2006 • [MaggiEtAl11] Maggi, F.M., Mooij, A.J., van der Aalst, W.M.P.: User-guided discovery of declar- ative process models. Proc. CIDM 2011 Process Mining Claudio Di Ciccio (DIAG, SAPIENZA – Università di Roma)

More Related