+ All Categories
Home > Documents > Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein...

Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein...

Date post: 07-Aug-2019
Category:
Upload: phunghanh
View: 225 times
Download: 0 times
Share this document with a friend
38
Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 1 Kapitel 4: Analyse von Petrinetzen 1. Beispiele 2. Analyseansatz 3. Markierungsgraph 4. Beschränktheit 5. State Space Explosion: Beispiel 6. Komplementbildung 7. Zusammenhängend 8. Tot, lebendig, verklemmungsfrei 9. Eigenschaften in Sätzen 10. Stelleninvarianten 11. Free Choice Vorlesung Workflow-Management-Systeme Unter Mitnutzung von Folien der Vorlesung WFMS von Prof. Stucky, AIFB, WS 2000/01
Transcript
Page 1: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 1

Kapitel 4: Analyse von Petrinetzen

1. Beispiele2. Analyseansatz3. Markierungsgraph4. Beschränktheit5. State Space Explosion: Beispiel 6. Komplementbildung7. Zusammenhängend8. Tot, lebendig, verklemmungsfrei9. Eigenschaften in Sätzen10. Stelleninvarianten11. Free Choice

Vorlesung Workflow-Management-SystemeUnter Mitnutzung von Folien der Vorlesung

WFMS von Prof. Stucky, AIFB, WS 2000/01

Page 2: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 2

Wdh.: Ziel der Modellierung: Analyse (I)

Arten der Analyse

Validierung» Ist das Modell richtig bzgl. der Realität/Vorstellung?» z.B. Kundenbezug, Medien- und Organisationsbrüche

Verifikation» Nachweis der Korrektheit des Geschäftsprozesses» Struktur (z.B. Vor- und Nachbedingungen für alle Aktivitäten)» Verhalten (z.B. Deadlocks, nie ausgeführte Aktivitäten)

Leistungsbewertung » Leistungsfähigkeit des Geschäftsprozesses» z.B. Durchlaufzeit, Kostenrechnung, Ressourcenauslastung

Page 3: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 3

Wdh.: Ziel der Modellierung: Analyse (II)

Analyseverfahren „Hinschauen“ Korrekte Verfahren

» automatische Verifikation: Ermittlung spezieller Eigenschaften (z.B. Invarianten, Ziele,...)

» semiautomatische Verifikation: Beweisverfahren (z.B. Proof Checker)

Simulation» sequentielle Abläufe/ nichtsequentielle Abläufe » animierte Simulation

Page 4: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 4

Ist die Prozessdefinition korrekt?

zahlen

Versicherungprüfen

BeendetStart

registrieren

c5

c6

c4

c3

c2

c1

Schadenprüfen

Brief schicken

4.1 Ein Beispiel

Page 5: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 5

Ist die Prozessdefinition korrekt?

Versicherungprüfen

zahlen

BeendetStart

registrieren

c5

c6

c4

c3

c2

c1

Schadenprüfen

Brief schicken

4.1 Ein Beispiel

Page 6: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6

Ist die Prozessdefinition korrekt?

zahlen

Versicherungprüfen

BeendetStart

registrieren

c5

c6

c4

c3

c2

c1

Schadenprüfen

Brief schicken

4.1 Ein Beispiel

Page 7: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 7

4.1Noch ein Beispiel

c14

start

t2

c1

t1

t3

c2

t4

c3

t5

c4

t6

c5

c6

t7

c7

t8

c8

t9

c9

t11

c11

t12

c13

t13

c15

t14

c16

t15

c17

t16

c18

t10

c10

c12

c20

t17

t18

c22

t21

t21

t20

t19

c19

t22c23

klar

Ist die Prozessdefinition korrekt?

Page 8: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 8

4.2 Analyse-Ansatz

Prozessdefinitionen können nur für einfache Beispiele „von Hand“ überprüft werden

Daher: Petrinetz-basierter Ansatz» erfüllt Anforderungen an Modellierungssprache» viele Methoden zur Analyse» viele Werkzeuge zur „automatischen“ Verifikation

Page 9: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 9

Petrinetz-Modell

ProblemWerkzeuge

Modellierung

Erreichbarkeitsanalyse

Graphische Validierung

Simulation

Strukturanalyse

OR-Methoden

Analyse

Lösung

4.2 Analyse-Ansatz

Page 10: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 10

Sei N=(S, T, F) ein S/T-Netz und m0 eine Markierung von N, genannt Anfangsmarkierung.

Der Graph aus Knoten [m0> und mit Transitionen beschrifteten Kanten {(m, t, m’)| m m’} heißt Markierungsgraph von (N,m0). Die Anfangsmarkierung wird im Markierungsgraph besonders dargestellt : • .

4.3 Markierungsgraph

t

Page 11: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 11

4.3 Markierungsgraph: Beispiel (I)Fertig Münzeinwurf

AusgabeMünzrückgabe

MünzannahmeFertig zur Ausgabe

Münzeerhalten

Fertig Münzeinwurf

Ausgabe Münzrückgabe

MünzannahmeFertig zur Ausgabe

Münzeerhalten

Page 12: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 12

4.3 Markierungsgraph: Beispiel (II)Fertig Münzeinwurf

Aus-gabe

Münzrückgabe

MünzannahmeFertig zur Ausgabe

Münzeerhalten

Speicher

Nach-füllung

Nachfüllanforderung

Münzeinwurf

Münzannahme

Münz-rückgabe

Aus-gabe

Nachfüllung

Münzeinwurf

Münz-rückgabe

MünzannahmeNachfüllung

Nachfüllung

Page 13: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 13

4.3 Markierungsgraph: Beispiel (III)Fertig Münzeinwurf

Aus-gabe

Münzrückgabe

MünzannahmeFertig zur Ausgabe

Münzeerhalten

Speicher

Nach-füllung

Nachfüllanforderung

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

MA MA MA MA MA

MRMRMR MRMRME ME ME ME MEA A A A

Nach-füllung

Nach-füllung

Nach-füllung

Nach-füllung

Page 14: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 14

4.3 Markierungsgraph: Beispiel (IV)Fertig

Aus-gabe

Münzrückgabe

MünzannahmeFertig zur Ausgabe

Münzeerhalten

Münzen inMaschine

Münzeinwurf

Münzeinwurf

Münz-rückgabe

Münz-annahme

Aus-gabe

Münz-rückgabe

Münzeinwurf

Münz-annahme

Aus-gabe

Page 15: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 15

4.4 Beschränktheit

(N,m0) heißt beschränkt, wenn eine Schranke b existiert, so dass m(s) b für alle m [m0>.

(N,m0) heißt 1-beschränkt, wenn b=1.

Für beschränkte S/T-Netze wächst die Zahl erreichbarer Markierungen exponentiell in der Größe des Netzes (Anzahl der ST) (State Space Explosion). Eine Analyse des Verhaltens mittels Konstruktion des Markierungsgraphen ist deshalb praktisch unmöglich.

Page 16: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 16

4.5 State Space Explosion: Beispiel

n

Page 17: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 17

Für n=k hat der Markierungsgraph 2k+1 Knoten, entsprechend viele Markierungen sind erreichbar.

n=1 n=2n=3

4.5 State Space Explosion: Beispiel

Page 18: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 18

4.6 KomplementbildungVgl. Beispiel 4.3 (IV): Stelle „Münzen in Maschine“ nicht beschränkt Markierungsgraph nicht endlich. Oft sinnvoll: Beschränkung der Kapazität einer Stelle s

durch Schranke k(s).Hilfsmittel: „Komplementstelle“

Sei s eine Stelle; eine neue Stelle s* mit

– s* • = • s \ s •– • s* = s • \ • s– m0(s*) = k(s) - m0(s),

wird als das Komplement (die Komplementstelle) von s bezeichnet.

k(s) ist die gewünschte Schranke für s.

Page 19: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 19

4.6 Komplementbildung: Beispiel

k = 3

Page 20: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 20

Ein Netz N = (S,T,F) ist zusammenhängend, wenn keine Zerlegung S T = X1 X2,X1, X2 Ø, X1X2 = Ø mit F (X1X1) (X2X2) existiert.

N heißt stark zusammenhängend, wenn für je zwei Elemente x, y S T mit x y eine Sequenz (z1,z2), (z2,z3), ..., (zn-1,zn) F existiert (n 2), so dass x = z1 und y = zn.

4.7 Zusammenhängend

Page 21: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 21

4.8 Tot, lebendig, verklemmungsfrei

Eine Transition t heißt tot unter einer Markierung m,wenn kein m’ [m> die Transition t aktiviert.

Eine Markierung heißt tot, wenn alle Transitionen tot sind.

Eine Markierung heißt verklemmungsfrei,wenn keine tote Markierung erreichbar ist.

Eine Transition heißt lebendig unter einer Markierung m,wenn sie unter keiner Folgemarkierung m’ tot ist.

Eine Markierung heißt lebendig,wenn alle Transitionen lebendig sind.

Page 22: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 22

Noch mehr

Ein markiertes Petrinetz heißt reversibel,falls m0 von jeder erreichbaren Markierung aus erreichbar ist.

Ein markiertes Petrinetz terminiert,wenn die Menge der Schaltfolgen endlich ist.

Page 23: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 23

verklemmungsfrei, aber nicht lebendig

4.8 Beispiel

Page 24: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 24

beliebig lange Schaltfolgen, aber nicht verklemmungsfrei

4.8 Beispiel

a

b c

d e

Page 25: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 25

4.9 Eigenschaften in Sätzen

Ein markiertes Petrinetz ist genau dann verklemmungsfrei,wenn der dazugehörige Markierungsgraph keinen Knoten ohne Nachfolger besitzt.

Ein markiertes Petrinetz terminiert genau dann,wenn der dazugehörige Markierungsgraph zyklenfrei ist.

Es gibt kein markiertes Petrinetz, das terminiert und verklemmungsfrei ist.

Page 26: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 26

4.9 Eigenschaften (II)

Jedes lebendige markierte Petrinetz mit mindestens einer Transition ist verklemmungsfrei.

Ein markiertes Petrinetz ist genau dann lebendig,wenn unter keiner erreichbaren Markierung eine tote Transition existiert.

Ein markiertes Petrinetz ist genau dann beschränkt,wenn die Menge der erreichbaren Markierungen endlich ist.

Page 27: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 27

4.9 Eigenschaften (III)

Falls (N,m0) beschränkt ist mit Schranke b,dann sind höchstens (b+1)|s| Markierungen erreichbar.

Ein markiertes Petrinetz ist genau dann reversibel,wenn der dazugehörige Markierungsgraph stark zusammenhängend ist.

Page 28: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 28

4.10 Stelleninvarianten

Ein Stelleninvariante weist jeder Stelle eine Gewichtung zu, derart, dass die gewichtete Summe der Marken für alle Markierungsübergänge konstant bleibt.

Für jede erreichbare Markierung entspricht die gewichtete Summe der Marken der gewichteten Markensumme der Anfangsmarkierung (eine Konstante).

Page 29: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 29

• 1Mann + 1Frau + 2Paar = const.• (Mann + Frau + 2Paar = 7)• Frau + Paar• Mann + Paar• Mann - Frau

ScheidungHeirat

Mann

Frau

Paar

4.10. Stelleninvarianten: Beispiel

Page 30: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 30

rg1

rot1

gelb1

grün1

gr1

gg1

rg2

rot2

gelb2

grün2

gr2

gg2

sicher

rot1 + gelb1 + grün1 = 1rot2 + gelb2 + grün2 = 1

sicher + grün1 + grün2 + gelb1 + gelb2 = 1rot1 + rot2 - sicher = 1

4.10. Stelleninvarianten: Beispiel

Page 31: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 31

Ein Free-Choice-Netz ist ein Netz bei dem gilt: (s,t) F (S T): t s Fd.h. die Transitionen einer vorwärts verzweigten Stelle dürfen nicht rückwärts verzweigt sein

Daraus folgt:

» t1, t2 T: t1 t2 t1 = t2» s1,s2 S: s1 s2 s1 = s2

d.h., zwischen den Transitionen kann frei und unabhängig von anderen als den beteiligten Stellen ausgewählt werden

4.11. Free Choice

Page 32: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 32

Ein Free-Choice-Netz ist ein Netz bei dem gilt:

für je zwei Transitionen t1 und t2 mit t1 t2 gilt t1 = t2

Daraus folgt: zwischen den Transitionen kann frei und unabhängig von anderen

Stellen ausgewählt werden.

Ein Konflikt zwischen mehreren Transitionen soll also nur dadurch verschwinden können, dass er zu Gunsten einer der beteiligten Transitionen gelöst wird (und nicht durch Schalten einer unbeteiligten weiteren Transition).

Alternative Definition: Free Choice Netz

Page 33: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 33

Soundness-Eigenschaftund Zusammenhang mit Finite-State-

Netzen

Page 34: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 34

Soundness-Eigenschaft - informellVon einem Prozess sollen minimal die folgenden Eigenschaften erfüllt

werden: Ein Prozess enthält keine unnötigen Tasks (Aktivitäten) und jeder

Fall (Case, Anfangsmarkierung) der an den Prozess zur Abarbeitung geschickt wird, muss vollständig fertig gestellt werden und es sollen keine Markierungen übrig bleiben.

Definiert man den Prozess als Petrinetz, dann gilt auch dass es eine einzige Start- und eine einzige Endestelle besitzt.

Ein solcher Prozess wird als intakt (sound) oder auch einwandfrei bezeichnet.

Ein Petrinetz, dass einen intakten Prozess modelliert, wird als Workflow-Netz (WF-Netz) bezeichnet und zur Modellierung von Workflows genutzt.

Page 35: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 35

Soundness-Eigenschaft - formal

Ein Workflow-Netz wird als intakt (sound) definiert wenn es die folgenden drei Anforderungen erfüllt:

1. Für jede Markierung, die in die Startstelle gelegt wird, erscheint eventuell eine (und höchstens eine) Markierung in der Endestelle.

2. Wenn die Markierung in der Endestelle erscheint, dann sind alle anderen Stellen des Netzes unmarkiert.

3. Für jede Transition (Task) ist es möglich vom initialen Zustand in einen Zustand zu kommen, in dem die Transition aktiviert ist, also schalten kann.

Page 36: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 36

Soundness-Eigenschaft - ErgänzungZu den drei Eigenschaften für intakte WF-Netze kommt noch die

Fairness-Annahme:

Wenn eine Task ausgeführt werden kann, dann wird sie nicht auf unbestimmte Zeit verschoben.

Z.B. bei iterativem Routing könnte man sich im Prinzip vorstellen, dass die Iteration unendlich oft durchgeführt wird, dann wäre die Soundness-Eigenschaft verletzt.

Genauso wird davon ausgegangen, dass zwei Tasks nicht eine dritte Task auf unbestimmte Zeit „aushungern“ lassen.

Ohne diese Annahmen wäre ein Prozess mit selektivem oder iterativem Routing nicht intakt (sound).

Page 37: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 37

Soundness-Eigenschaft - AnalyseIm Prinzip sind die drei geforderten Eigenschaften nachzuweisen. - Strukturbetrachtung- Markierungsgraph analysierenAllerdings ist das sehr aufwändig und bietet keine guten Anhaltspunkte

für „Reparatur“möglichkeiten.

Daher wird folgendes Vorgehen für die Analyse verwendet:Das WF-Netz wird um eine Transition t* erweitert, wobei t* die

Endestelle als Eingabe und die Startstelle als Ausgabe erhält. (Resultat: ein „short-circuited“ Netz.)

Hiermit wird die Soundness des WF-Netzes (also ohne t*) mit den Eigenschaften Lebendigkeit und Beschränktheit des Netzes mit t* nachgewiesen. Hierfür gibt es effiziente Algorithmen.

Für einige wichtige Unterkategorien, einschließlich der sog. Free-Choice-Petri-Netzen, kann Lebendigkeit und Beschränktheit mit polynomialem Zeitaufwand nachgewiesen werden.

Page 38: Kapitel 4: Analyse von Petrinetzen · c6 c4 c3 c2 c1 Schaden prüfen Brief schicken 4.1 Ein Beispiel. Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 6 Ist die Prozessdefinition

Dipl.-Inform. Jutta Mülle Analyse von Petrinetzen - Folie 38

Exemplarische Fragen – Kapitel 4

Welche Analysemöglichkeiten bieten Petri-Netze? Was ist ein Markierungsgraph und wozu wird er

verwendet? Was bedeutet, dass ein Petri-Netz terminiert, …?

(informell) Was ist die Soundness-Eigenschaft? Was bieten Free-Choice-Netze für Vorteile und wie

werden sie in der Workflow-Modellierung eingesetzt?


Recommended