discovering petri nets: evidence-based business process management

34
Discovering Petri Nets: Evidence-Based Business Process Management Wil van der Aalst Carl Adam Petri Memorial Symposium Humboldt-Universität zu Berlin February 4, 2011

Upload: wil-van-der-aalst

Post on 07-Nov-2014

431 views

Category:

Technology


2 download

DESCRIPTION

Invited Talk for the Carl Adam Petri Memorial Symposium, February 2010, Berlin, Germany Carl Adam Petri was one of the most influential computer scientists of our time. This symposium commemorated the life and work of Petri. See http://www2.informatik.hu-berlin.de/top/lehre/petriweb/.

TRANSCRIPT

Page 1: Discovering Petri Nets: Evidence-Based Business Process Management

Discovering Petri Nets: Evidence-Based Business Process ManagementWil van der Aalst

Carl Adam Petri Memorial Symposium Humboldt-Universität zu BerlinFebruary 4, 2011

Page 2: Discovering Petri Nets: Evidence-Based Business Process Management

Commandeur in de Orde van de Nederlandse Leeuw(Petri net conference 2003 in Eindhoven)

9-2-2011 PAGE 1

About 50 people are Commandeur in de Orde van de Nederlandse Leeuw, e.g., Wim Duisenberg, Gerard 't Hooft, Harry Mulisch, Gerard Reve, Joop den Uyl

Page 3: Discovering Petri Nets: Evidence-Based Business Process Management

Carl Adam Petri (12 July 1926 – 2 July 2010)

• Started a new subfield of computer science.“Much of what I have been saying was already well understood in the

sixties by Carl Adam Petri, who pioneered the scientific modeling of discrete concurrent systems. Petri's work has a secure place at the

root of concurrency theory.” (Robin Milner 1991)

• Guiding principles:- Concurrency as a starting point rather than an

afterthought (locality of actions).- Formalism should be consistent with the laws of

physics.• Researchers in the growing Business Process

Management (BPM) community use these principles.- Modeling languages have Petri-net like semantics.- More and more emphasis on empirical validation.

PAGE 2

Page 4: Discovering Petri Nets: Evidence-Based Business Process Management

PAGE 3

Page 5: Discovering Petri Nets: Evidence-Based Business Process Management

Process Mining

PAGE 4

software system

(process)model

eventlogs

modelsanalyzes

discovery

records events, e.g., messages,

transactions, etc.

specifies configures implements

analyzes

supports/controls

enhancement

conformance

“world”

people machines

organizationscomponents

businessprocesses

Page 6: Discovering Petri Nets: Evidence-Based Business Process Management

Play-Out

PAGE 5

event logprocess model

Page 7: Discovering Petri Nets: Evidence-Based Business Process Management

Play-In

PAGE 6

event log process model

Page 8: Discovering Petri Nets: Evidence-Based Business Process Management

Replay

PAGE 7

event log process model

• extended model showing times, frequencies, etc.

• diagnostics• predictions• recommendations

Page 9: Discovering Petri Nets: Evidence-Based Business Process Management

Simple example log

PAGE 8

Page 10: Discovering Petri Nets: Evidence-Based Business Process Management

Simple control-flow discovery (Play-In)

PAGE 9

astart register

request

bexamine

thoroughly

cexamine casually

d

check ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

c1

c2

c3

c4

c5

Page 11: Discovering Petri Nets: Evidence-Based Business Process Management

Alpha algorithm

PAGE 10

a b

(a) sequence pattern: a→b

a

b

c

(b) XOR-split pattern:a→b, a→c, and b#c

a

b

c

(c) XOR-join pattern:a→c, b→c, and a#b

a

b

c

(d) AND-split pattern:a→b, a→c, and b||c

a

b

c

(e) AND-join pattern:a→c, b→c, and a||b

Page 12: Discovering Petri Nets: Evidence-Based Business Process Management

Discovering places

PAGE 11

a1

...

a2

am

b1

b2

bn

p(A,B) ...

A={a1,a2, … am} B={b1,b2, … bn}

Page 13: Discovering Petri Nets: Evidence-Based Business Process Management

Challenge

PAGE 12

process discovery

fitness

precisiongeneralization

simplicity

“able to replay event log” “Occam’s razor”

“not overfitting the log” “not underfitting the log”

Page 14: Discovering Petri Nets: Evidence-Based Business Process Management

Example

PAGE 13

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

acdeh

abdeg

adceh

abdeh

acdeg

adceg

adbeh

acdefdbeh

adbeg

acdefbdeh

acdefbdeg

acdefdbeg

adcefcdeh

adcefdbeh

adcefbdeg

acdefbdefdbeg

adcefdbeg

adcefbdefbdeg

adcefdbefbdeh

adbefbdefdbeg

adcefdbefcdefdbeg

455

191

177

144

111

82

56

47

38

33

14

11

9

8

5

3

2

2

1

1

1

# trace

1391

Page 15: Discovering Petri Nets: Evidence-Based Business Process Management

Model 1: Seems right

PAGE 14

acdeh

abdeg

adceh

abdeh

acdeg

adceg

adbeh

acdefdbeh

adbeg

acdefbdeh

acdefbdeg

acdefdbeg

adcefcdeh

adcefdbeh

adcefbdeg

acdefbdefdbeg

adcefdbeg

adcefbdefbdeg

adcefdbefbdeh

adbefbdefdbeg

adcefdbefcdefdbeg

455

191

177

144

111

82

56

47

38

33

14

11

9

8

5

3

2

2

1

1

1

# trace

1391

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

fitness = +precision = +generalization = +simplicity = +

Page 16: Discovering Petri Nets: Evidence-Based Business Process Management

Model 2: Simple and precise, but …

PAGE 15

acdeh

abdeg

adceh

abdeh

acdeg

adceg

adbeh

acdefdbeh

adbeg

acdefbdeh

acdefbdeg

acdefdbeg

adcefcdeh

adcefdbeh

adcefbdeg

acdefbdefdbeg

adcefdbeg

adcefbdefbdeg

adcefdbefbdeh

adbefbdefdbeg

adcefdbefcdefdbeg

455

191

177

144

111

82

56

47

38

33

14

11

9

8

5

3

2

2

1

1

1

# trace

1391

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

fitness = -precision = +generalization = -simplicity = +

Page 17: Discovering Petri Nets: Evidence-Based Business Process Management

Model 3: Simple but underfitting

PAGE 16

acdeh

abdeg

adceh

abdeh

acdeg

adceg

adbeh

acdefdbeh

adbeg

acdefbdeh

acdefbdeg

acdefdbeg

adcefcdeh

adcefdbeh

adcefbdeg

acdefbdefdbeg

adcefdbeg

adcefbdefbdeg

adcefdbefbdeh

adbefbdefdbeg

adcefdbefcdefdbeg

455

191

177

144

111

82

56

47

38

33

14

11

9

8

5

3

2

2

1

1

1

# trace

1391

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

fitness = +precision = -generalization = +simplicity = +

Page 18: Discovering Petri Nets: Evidence-Based Business Process Management

Model 4: Complex and overfitting

PAGE 17

acdeh

abdeg

adceh

abdeh

acdeg

adceg

adbeh

acdefdbeh

adbeg

acdefbdeh

acdefbdeg

acdefdbeg

adcefcdeh

adcefdbeh

adcefbdeg

acdefbdefdbeg

adcefdbeg

adcefbdefbdeg

adcefdbefbdeh

adbefbdefdbeg

adcefdbefcdefdbeg

455

191

177

144

111

82

56

47

38

33

14

11

9

8

5

3

2

2

1

1

1

# trace

1391

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

fitness = +, precision = +, generalization = -, simplicity = -

Page 19: Discovering Petri Nets: Evidence-Based Business Process Management

Overview

PAGE 18

process discovery

fitness

precisiongeneralization

simplicity

“able to replay event log” “Occam’s razor”

“not overfitting the log” “not underfitting the log”

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

astart register

request

bexamine

thoroughly

cexamine casually

dcheck ticket

decide

pay compensation

reject request

reinitiate request

e

g

h

f

end

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

astart register

request

bexamine thoroughly

cexamine casually

d checkticket

decide

pay compensation

reject request

reinitiate requeste

g

hfend

astart register

request

cexamine casually

dcheckticket

decide reject request

e hend

aregister request

dexamine casually

ccheckticket

decide reject request

e h

a cexamine casually

dcheckticket

decide

e g

a dexamine casually

ccheckticket

decide

e g

register request

register request

pay compensation

pay compensation

aregister request

b dcheckticket

decide reject request

e h

aregister request

d bcheckticket

decide reject request

e h

a b dcheckticket

decide

e gregister request

pay compensation

examine thoroughly

examine thoroughly

examine thoroughly

… (all 21 variants seen in the log)

Page 20: Discovering Petri Nets: Evidence-Based Business Process Management

PAGE 19

Page 21: Discovering Petri Nets: Evidence-Based Business Process Management

WMO process Harderwijk

PAGE 20

Page 22: Discovering Petri Nets: Evidence-Based Business Process Management

Process model discovered by HM10 Proces registratie

(start)530

10 Proces registratie(complete)

530

0,991530

20 Rapportage & beschikking(start)532

0,998530

20 Rapportage & beschikking(complete)

532

0,987532

0,998

Page 23: Discovering Petri Nets: Evidence-Based Business Process Management

Conformance checking of discovered model

PAGE 22

Page 24: Discovering Petri Nets: Evidence-Based Business Process Management

Performance Analysis

PAGE 23

Page 25: Discovering Petri Nets: Evidence-Based Business Process Management

Rijkswaterstaat

PAGE 24

Page 26: Discovering Petri Nets: Evidence-Based Business Process Management

PAGE 25

Page 27: Discovering Petri Nets: Evidence-Based Business Process Management

Catharina hospital (Eindhoven)

PAGE 26

2765 patients, 114,592 events, 619 different activities (taking event types into account) executed by 266 different individuals (doctors, nurses, etc.)

Page 28: Discovering Petri Nets: Evidence-Based Business Process Management

Fragment of process (2.9%)

18 activities of the 619 activities

PAGE 27

Page 29: Discovering Petri Nets: Evidence-Based Business Process Management

AMC hospital Amsterdam

PAGE 28

627 gynecological oncology patients, 24331 events, 376 different activities

Page 30: Discovering Petri Nets: Evidence-Based Business Process Management

ASML testing process

PAGE 29

Page 31: Discovering Petri Nets: Evidence-Based Business Process Management

Conclusion

PAGE 30

Petri’s guiding principles:1) Concurrency as a

starting point rather than an afterthought (locality of actions).

2) Formalism should be consistent with the laws of physics.

Page 32: Discovering Petri Nets: Evidence-Based Business Process Management

• We can observe processes; they leave footprints in event logs that can be extracted from various data sources.

• We can learn process models.• We can quantify the conformance of process

models (standard equivalence notions are useless).

• Ignoring this source of information is like studying physics while ignoring experimental results.

• Evidence-based Business Process Management!

PAGE 31

Process mining

Page 33: Discovering Petri Nets: Evidence-Based Business Process Management

PAGE 32

Page 34: Discovering Petri Nets: Evidence-Based Business Process Management

More Information

PAGE 33PAGE 33

IEEE Task Force on Process Mining

• ProM Software: prom.sourceforge.net• Process mining: www.processmining.org• ProM 5 series nightly builds: prom.win.tue.nl/tools/prom/nightly5/• ProM 6 series nightly builds: prom.win.tue.nl/tools/prom/nightly/• Converting logs (MXML-based) promimport.sourceforge.net • XES: www.xes-standard.org and www.openxes.org• Papers et al.: vdaalst.com• IEEE Task Force on Process Mining: www.win.tue.nl/ieeetfpm/