84
2 Spezifikation und Modellierung
2.6 Petrinetze
2.6.1 Einführung
Eine sehr umfassende Beschreibung von Kontrollflüssen ist mit den als Petrinetzen
bezeichneten Berechnungsgraphen möglich. Genau genommen modellieren Petrinetze ausschließlich Kontrollmechanismen und Kontrollabhängigkeiten. Die gleichzeitige Modellierung von Daten ist nur durch Erweiterungen von Petrinetzen realisierbar. Der Schwerpunkt von Petrinetzen liegt also auf der Modellierung kausaler
Abhängigkeiten.
Im Jahr 1962 veröffentlichte Carl Adam Petri seine Methoden zur Darstellung
kausaler Abhängigkeiten [450], die unter dem Namen Petrinetze bekannt wurden.
Petrinetze gehen nicht von einer globalen Synchronisation aus und sind daher besonders gut zur Modellierung verteilter Systeme geeignet.
Bedingungen, Ereignisse und eine Flussrelation sind die Kernelemente von
Petrinetzen. Bedingungen sind entweder erfüllt oder nicht erfüllt, Ereignisse können
eintreten. Die Flussrelation beschreibt die Bedingungen, die erfüllt sein müssen,
damit Ereignisse eintreten können. Außerdem beschreibt sie, welche Bedingungen
wahr werden, wenn ein Ereignis eintritt. Graphische Darstellungen von Petrinetzen
verwenden typischerweise Kreise, um Bedingungen darzustellen und Rechtecke, um
Ereignisse darzustellen. Pfeile stellen die Flussrelation dar.
Beispiel 2.23: Abb. 2.45 zeigt eine Modellierung von Zugverkehr als Petrinetz. Es
beschreibt den gegenseitigen Ausschluss von Zügen auf einem eingleisigen Streckenabschnitt, der in beide Richtungen befahren werden muss. Ein Token oder eine Marke
Zug fährt von links ein
Zug fährt nach rechts aus
Zug will nach rechts
nach rechts
Zug fährt
Zug fährt
nach links
Gleis frei
eingleisig
Abb. 2.45 Eingleisiger Abschnitt einer Bahnstrecke
wird verwendet, um die Kollision von Zügen zu vermeiden, die in unterschiedliche
Richtungen fahren. Im Beispielnetz wird das Token durch eine erfüllte Bedingung in
der Mitte des Modells dargestellt. Der kleine, im großen Kreis enthaltene ausgefüllte
Kreis symbolisiert die Situation, in der die Bedingung erfüllt ist (im Beispiel: der
Abschnitt ist frei). Dementsprechend kennzeichnet eine weitere Marke die Tatsache,
2 Spezifikation und Modellierung
2.6 Petrinetze
2.6.1 Einführung
Eine sehr umfassende Beschreibung von Kontrollflüssen ist mit den als Petrinetzen
bezeichneten Berechnungsgraphen möglich. Genau genommen modellieren Petrinetze ausschließlich Kontrollmechanismen und Kontrollabhängigkeiten. Die gleichzeitige Modellierung von Daten ist nur durch Erweiterungen von Petrinetzen realisierbar. Der Schwerpunkt von Petrinetzen liegt also auf der Modellierung kausaler
Abhängigkeiten.
Im Jahr 1962 veröffentlichte Carl Adam Petri seine Methoden zur Darstellung
kausaler Abhängigkeiten [450], die unter dem Namen Petrinetze bekannt wurden.
Petrinetze gehen nicht von einer globalen Synchronisation aus und sind daher besonders gut zur Modellierung verteilter Systeme geeignet.
Bedingungen, Ereignisse und eine Flussrelation sind die Kernelemente von
Petrinetzen. Bedingungen sind entweder erfüllt oder nicht erfüllt, Ereignisse können
eintreten. Die Flussrelation beschreibt die Bedingungen, die erfüllt sein müssen,
damit Ereignisse eintreten können. Außerdem beschreibt sie, welche Bedingungen
wahr werden, wenn ein Ereignis eintritt. Graphische Darstellungen von Petrinetzen
verwenden typischerweise Kreise, um Bedingungen darzustellen und Rechtecke, um
Ereignisse darzustellen. Pfeile stellen die Flussrelation dar.
Beispiel 2.23: Abb. 2.45 zeigt eine Modellierung von Zugverkehr als Petrinetz. Es
beschreibt den gegenseitigen Ausschluss von Zügen auf einem eingleisigen Streckenabschnitt, der in beide Richtungen befahren werden muss. Ein Token oder eine Marke
Zug fährt von links ein
Zug fährt nach rechts aus
Zug will nach rechts
nach rechts
Zug fährt
Zug fährt
nach links
Gleis frei
eingleisig
Abb. 2.45 Eingleisiger Abschnitt einer Bahnstrecke
wird verwendet, um die Kollision von Zügen zu vermeiden, die in unterschiedliche
Richtungen fahren. Im Beispielnetz wird das Token durch eine erfüllte Bedingung in
der Mitte des Modells dargestellt. Der kleine, im großen Kreis enthaltene ausgefüllte
Kreis symbolisiert die Situation, in der die Bedingung erfüllt ist (im Beispiel: der
Abschnitt ist frei). Dementsprechend kennzeichnet eine weitere Marke die Tatsache,
