petrinetze 1. einführung informatik : wesentlich modellierung von struktur und verhalten realer...

Post on 06-Apr-2015

103 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Petrinetze 1. Einführung

Informatik : wesentlich Modellierung von Struktur und Verhalten realer oder virtueller Systeme

Systeme: Netze aus Personen, Geräten, Prozessoren, die miteinander kooperieren oder konkurrieren

Modellierungshilfsmittel: formal anschaulich

Petrinetze: sehr beliebt bei Anwendern, insbes. Ingenieuren

Einführendes Beispiel

(Reisig/Rozenberg: Informal Introduction to Petri Nets, LNCS 1491, SS 1 - 11)

2. Anschauliche Erläuterung des Konzepts der Petrinetze

Intuitive Bedeutung von

Ellipse (oder Kreis): passive Komponente (Speicher; Bedingung, (Stelle/place) die erfüllt oder nicht erfüllt sein kann; lokale Zustandskomponente; sie bewahrt auf, macht zugreifbar/sichtbar)

Rechteck (oder Quadrat): aktive Komponente (Transition) (Prozessor, Mensch, Ereignis; sie erzeugt, transportiert, ändert)

Pfeil: repräsentiert nicht eine Systemkomponente sondern ist Mittel der Beschreibung für Zusammenhang/Beziehung, Zugriffsmöglichkeit/-recht, physikalische Nähe, direkte Verbindung. Verbindet nur Komponenten verschiedenen Typs (passiv-aktiv, aktiv-passiv)

Bisher nur "Bilder", statische Ansichten / Schnappschüsse

Wie wird Dynamik / werden Abläufe / Zustandsänderungen dargestellt?

Zustandsänderung im System bewirkt durch Ereignis/Aktivität im Petrinetz durch "Schalten" von Transitionen

Was ist "der aktuelle Zustand" ?

Im System: der relevante Speicherinhalt, das Erfüllt- oder Nichterfülltsein der relevanten Bedingungen,... Zustandsinformation für eine aktive Komponente ist stets lokal.

Im Petrinetz: Die Inhalte ("Markierungen") der Stellen. Der relevante (lokale) Zustand für eine Transition ist bestimmt durch die mit der Transition durch Pfeile verbundenen Stellen

Einfachste Art der Markierung: Schwarze Punkte („Marken“, token) # zunächst werden nur solche Markierungen betrachtet #

+ eine Marke in einer Stelle kann z.B. das Erfülltsein einer Bedingung bedeuten + mehrere Marken bedeuten z.B. einen Vorrat an Ressourcen, die zum Schalten benötigt werden

Was passiert beim Schalten einer Transition?

Nur relevante lokale Zustände werden berücksichtigt/verändert:

Schalten der Transition t: Entlang jedes mit t verbundenen Pfeiles wird in Pfeilrichtung eine Marke transportiert - von einer Stelle weggenommen oder auf sie gelegt.

Also Voraussetzung fürs Schalten von t: Es müssen genügend Marken (in jeder mit t verbundenen Stelle) vorhanden sein: t muß "aktiviert" sein

Schalten einer Transition

3. Grundlegende Definitionen

Netz N = ( S, T, F ) S T = F (S T) (T S)

Stellen Transitionen Flußrelation, Pfeile

•x = {y N | (y,x) F} , •X = {•x  | x X } analog x• = {y ... | (x,y) ...} , X• = ... x•

Markierung: Abbildung m : S –––––> |N = { 0,1,2,3, ... } Stelle s aus S heißt markiert, wenn m(s) > 0 -------------

Transition t heißt aktiviert, wenn alle Stellen aus •t markiert sind.

Dann kann t schalten, d.h. die Markierung von •t t• so ändern: m(s) -1 für s aus •t - t• m´(s) = { m(s) + 1 für s aus t• - •t m(s) sonst Man schreibt auch m[t > m´

Äquivalent ist m´(s) = m(s) - | F {(s,t)} | + | F {(t,s)} | ---------------------Markierung m heißt tot, wenn sie keine Transition aktiviert

Sei m eine Markierung des Netzes N = (S,T,F). Eine Folge t1 , t2 , ... ,tk von Transitionen von N heißt bei m aktivierte Schaltfolge, wenn k = 0 oder wenn m[t1 > m1 und t2 , ...,tk bei m1 aktiviert ist.

Mit = bzw. = t1 t2 ... tk gelte m[ > m bzw. m[ > mk , wobei m1 [t2 .... tk > mk

Feststellung:* Aus m[ > m´ und l[ > l´ folgt für jede Stelle s aus S m´(s) - m(s) = l´(s) - l(s)* Seien m, l Markierungen mit m(s) >= l(s) für jedes s aus S, dann ist jede bei l aktivierte Schaltfolge auch bei m aktiviert.* Seien u, v aus T mit v• •u = , dann gilt mit m[vu > m´ auch m[uv > m´.

Eigenschaften markierter Netze

Markiertes Netz (Netzsystem): (N,m) Netz N mit (Anfangs)markierung m

Markierung m´ heißt erreichbar in (N,m), wenn es eine bei m aktivierte Schaltfolge mit m[ > m´ gibt.

Stelle s von (N,m) heißt beschränkt, wenn nat. Zahl b existiert mit m´(s) <= b für jede erreichbare Markierung von (N,m).

Mark. Netz heißt beschränkt, wenn jede Stelle beschränkt

Satz: Für endliche mark. Netze ist Beschränktheit entscheidbar

Bemerkung: Bei beschränkten Netzen kann die Zahl der erreichb. Markierungen exponentiell mit der Netzgröße wachsen

Markierungsgraph eines markierten Netzes

• Knoten ~ alle erreichbaren MarkierungenStartknoten ~ Anfangsmarkierung

• Pfeil mit Transitionsbezeichner t von Knoten (Markierung) m zu Knoten m’ g.d., w. t bei m aktiviert und m[t>m’

- endlich g.d., w. markiertes Netz beschränkt

- markiertes Netz ist verklemmungsfrei g.d.,w. von jedem Knoten des Markierungsgraphen mindestens ein Pfeil wegführt.

Transition t heißt tot bei der Markierung m, wenn sie bei keiner von m aus erreichbaren Markierung aktiviert ist.

Ein markiertes Netz heißt lebendig, wenn bei keiner erreichbaren Markierung eine Transition tot ist

Ein mark. Netz heißt verklemmungsfrei (schwach lebendig), wenn keine erreichbare Markierung tot ist.

Ein mark. Netz heißt reversibel, wenn seine Anfangsmarkierungvon jeder anderen erreichbaren Markierung erreichbar ist.

Überdeckungsgraph eines markierten Netzes (N, m0)

Für unbeschränkte markierte Netze statt Markierungsgraph eine reduzierte endliche Darstellung

Knoten ~ verallgemeinerte Markierungen m

Konstruktion analog zu der eines Markierungsgraphen • Start mit Anfangsmarkierung

• sukzessive Pfeile von Knoten m zu Knoten m’, wenn m[t> m’,

aber

wenn auf Weg von m0 zu m’ schon ein m’’ auftrat mit m’(s)≥ m’’(s) für alle s, dann setze m’(s’) = für alle s’ mit m’(s’)> m’’(s’)

m’(s’) = bedeutet, daß s’ unbeschränkt ist, (und mindestens, eine Marke enthält). Denn von m’ aus kann man dieselbe Schaltfolgeablaufen lassen, die von m’’ zu m’ führte, und so die Markenzahl wieder echt vergrößern usw.

Satz: (N, m) ist beschränkt g.d., w. bei der Konstruktion des Überdeckungs-Graphen kein auftritt.

top related