Petrinetze

Aus Operations-Research-Wiki
Version vom 28. Februar 2010, 13:00 Uhr von Gehring (Diskussion | Beiträge) (Konflikte in Petri-Netzen)


Wechseln zu: Navigation, Suche

Grundlagen Petri-Netze

Eine weitere formale Beschreibungsmethode für den Ablauf von Prozessen in Systemen stellen die sogenannten Petri-Netze dar (benannt nach ihrem Erfinder Carl Adam Petri). Hierbei ist zu beachten, dass der Begriff "System" nicht ausschließlich Rechner, sondern auch organisatorische, technische und rechnerintegrierte Systeme aller Art umfasst, in denen geregelte Flüsse von Gegenständen und Informationen von Bedeutung sind.

Ein Petri-Netz ist ein markierter Graph, in dem die Knoten die Prozesse und ihre zugehörigen Zustände darstellen und die Kanten deren Ablaufbeziehungen symbolisieren.

Einsatzgebiete für Petri-Netze

Petri-Netze werden in vielen Bereichen der Datenverarbeitung eingesetzt,

  • um Abläufe zu modellieren (z. B. Kommunikationsprotokolle)
  • um parallele Programmabläufe zu modellieren,
  • um verteilte Datenbankarbeiten zu planen und
  • im Rahmen des Requirements Engineering, d.h. in den ersten Phasen des Systementwurfs.

Grundelemente von Petri-Netzen

In Petri-Netzenn unterscheidet man zwischen 2 Arten von Elementen:

  1. statische Elemente, die der der Darstellung der Struktur dienen, und
  2. dynamische Elemente, die der Simulation der Abläufe innerhalb des Modells dienen.


Arten von Petri-Netzen

Es gibt 3 verschiedene Arten von Petri-Netzen:

Konflikte in Petri-Netzen

Im Zusammenhang mit Petri-Netzen bezeichnet man mit einem Konflikt ein nicht eindeutiges Verhalten eines Systems. Dies bedeutet, dass 2 Ereignisse um eine Bedingung in Konkurrenz stehen, beide aktiviert sind, aber nur ein Ereignis stattfinden kann, da durch den Eintritt des einen das andere nicht mehr aktiviert ist.

Konflikte lassen sich:

  • exogen, durch Vorgabe einer Entscheidungsregel, oder
  • endogen, durch Einrichtung eines sog. Regulationskreises lösen.

In B/E-Systemen lassen sich folgende 3 Konfliktarten unterscheiden:

  • Verzweigungskonflikte. Hierbei verzweigen von einer markierten Stelle zwei (oder mehrere) Transitionen, von denen aber nicht alle geschaltet werden können (da nach dem Schalten einer Transition die andere nicht mehr aktiviert wäre). Dieses Problem lässt sich durch einen inneren Regelkreis beheben.
  • Wettbewerbskonflikte. Diese entstehen, wenn zwei (oder mehrere ) Transitionen auf dieselbe Nachbedingung schalten wollen. Auch dieses Problem lässt sich mit einem inneren Regelkreis lösen.
  • Konfusion. Hierbei handelt es sich um eine Kombination der beiden Konfliktarten Verzweigungs- und Wettbewerbskonflikt. Um dieses Problem zu beheben muss das Modell um einen Regelkreis oder durch von außen vorgegebenen Entscheidungsregeln erweitert werden.