# Petri-Netze und Erreichbarkeitsgraph



## Wang (3. Feb 2011)

Hallo,

ich denke mal einigen von Euch sagen diese Begriffe etwas. Wir müssen uns zumindest in Betriebssysteme damit herumschlagen und ich habe da einige Probleme, aus einem Petri-Netz einen Erreichbarkeitsgraphen zu erstellen. Unten ist ein Beispiel, aber mir gelingt es nicht, das "Kochrezept" zu erkennen, wie man ein Petri-Netz in einen Erreichbarkeitsgraphen übersetzt. Es wäre super, wenn jemand in einfachen Worten schreiben könnte, wie man da vorgeht.

Vielen Dank für die Mühe.

Gruß
Wang


----------



## SlaterB (3. Feb 2011)

einfach in alle Richtungen denken, was M0 usw. bedeutet weißt du ja hoffentlich,
du gehst von der Anfangssituation aus und schaust welche Transaktionen alle schalten können,
je nachdem malst du sternförmig Linien und neue Zustände auf, 

wie in der Abbildung korrekt eingetragen gehen nur T0 und T3 zu neuen Zuständen, die hier dann passend benannt sind, M1 und M2,
danach von dort aus weiter, erstmal ist noch unbekannt wie es am Ende aussehen wird, ruhig kreuz und quer in alle Richtungen ausbreiten,
wenn man auf einen schon bekannten Zustand trifft, dann die aktuelle Linie eben durch die ganze Skizze dorthin ziehen,
am Ende alles nochmal neu malen mit möglichst optimiert verschobenen Elementen, wobei das Beispiel-Bild schon zeigt dass es nicht immer perfekt werden kann,

es ist natürlich von Vorteil das Netz vorher anzuschauen und etwas zu verstehen, 
wenn man die Grundprinzipien kennt, dann sieht man gleich dass von M0 nach drei Schaltungen T0, T1 und T2 wieder der Ausgangszustand erreicht ist, 
entsprechend kann man gleich einen guten Teil des Erreichbarkeitsgraphen sauber anfangen,

ansonsten geht Brute Force, man kann sogar ein Programm schreiben das alle möglichen Zustände abklappert,
zum guten Teil reiner Fleiß ohne nötige Kreativität

mit nur 6 Token im Spiel und den vorhanden Beschränkungen kann man auch ahnen dass es kaum mehr als eine Handvoll Zustände geben wird,
der Erreichbarkeitsgraph ist meiner Ansicht nach aber noch nicht vollständig


----------



## Wang (3. Feb 2011)

SlaterB hat gesagt.:


> einfach in alle Richtungen denken, was M0 usw. bedeutet weißt du ja hoffentlich,



Ich glaube genau diese Ms sind das Problem. Ich habe deren Funktion nicht verstanden. 
Der Rest ergibt sich dann denke ich aus Deiner Erklärung.


----------



## SlaterB (3. Feb 2011)

M0 bedeutet dass anfangs 3 Token auf S0 liegen, 3 auf S5, die anderen leer,
alle sechs Stellen betrachtet ist die Kurzschreibweise 3, 0, 0, 0, 0, 3,

bei T0 wird in S0 ein Token weggenommen, auf S1 eins draufgelegt, neuer Zustand ergo 2, 1, 0, 0, 0, 3
usw.


----------

