Aufgaben Petrinetze Aufgabe 1

Slides:



Advertisements
Ähnliche Präsentationen
Kapitel 11 Deadlocks RW-Systemarchitekur Kap. 11.
Advertisements

10.2 Wechselseitiger Ausschluss in Hardware
Beim Start eines Prozesses in Windows NT, 2000 wird a der Programmtext aus der exe-Datei ab der dort angegebenen Adresse gespeichert.
Petrinetz Stufenweises Vorgehen beim Modellieren
Übungen/Aufgaben zur Vorlesung „Realzeitsysteme“
Nebenläufigkeit Teil I
Systeme 1 Kapitel 7 Deadlocks WS 2009/10.
Kapitel 7.2 Dining philosophers problem
FH-Hof Deadlocks Richard Göbel. FH-Hof Deadlock - Definition Menge von Prozessen ist an einem Deadlock beteiligt: wenn jeder Prozess in dieser Menge auf.
Kapitel 10 Nebenläufigkeit und wechselseitiger Ausschluss
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Genetische Algorithmen
Vortrag im Rahmen des Seminars
Vorlesung 10 Mutual Exclusion Peter B. Ladkin Sommersemester 2001 Universität Bielefeld Technische Fakultät.
So erstellen Sie schnell und einfach eine Übersichtsfolie Herbert Manthei
Der Ablauf eines Entschuldigungsvorganges 1. Nehmen Sie die Kärtchen und bringen Sie diese in eine sinnvolle Reihenfolge! 2. Beachten Sie dabei: - Ereignisse.
The XeriScape Artificial Society Von: Ralf Kopsch Seminar: Artifical Life.
Inhalt danach. inhalt danach inhalt danach inhalt danach inhalt danach inhalt danach.
und relative Häufigkeit Bettina delert, andreas mertke
Kurzüberblick über ereignisgesteuerte Prozessketten (EPK)
Grundkurs Theoretische Informatik
Effiziente Algorithmen
Steuerung externer Komponenten über ein USB-Interface.
Einleitung.
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss
Analyse von Ablaufdiagrammen
Betriebssysteme Übung 2. Tutorium. Task 1 – Locks (1) Wozu Locks? Dienen dazu, exklusiven Zugriff auf eine Ressource sicherzustellen Lock = binäre Semaphore.
Zustandsübergangsdiagramme (1)
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Petri-Netze Grundlagen
Vorlesung Automatisierungsprojekte Seite 6/1
Mehrbenutzerzugriff auf GIS-Daten
Prüfung Technische Informatik I (INF 1210) - Teil B (Kurzfragenteil, ohne Hilfsmittel zu lösen) Prof. W. Adi Zeit: 10 Minuten Bitte schreiben.
Technische Informatik II (INF 1211) Aufgabenteil (Mit Unterlagen)
Aufgabe 4 Betrachten Sie das unten dargestellte Klassendiagramm, das für eine Bibliothek zur Verwaltung ihrer Buchbestände modelliert wurde. Modellieren.
Ringvorlesung Einführung in das Graduiertenkolleg (INF 3)
Mechanik I Lösungen.
Gliederung der Vorlesung
Binärbäume.
Petri-Netze mathematisch fundierte Theorie zur formalen Beschreibung von (Informations-) Transformationsprozessen Entwicklung einer allgemeinen Theorie,
Holz|K|noten B-A 2.8 Stegreif Entwerfen | WS Lehrgebiet Entwerfen und Konstruieren Prof. i.V. Bernadette Heiermann Max Ernst.
Manuel Friedrich Schiller-Gymnasium Hof Geschäftsprozesse modellieren Ereignisgesteuerte Prozessketten (EPKs)
Graphen.
Übung zu den Modellannahmen des vollkommenen Marktes
Unmöglichkeitsbeweise
6.3 Verteilte Transaktionen
Der kritische Abschnitt
Kontrollstrukturen von Algorithmen
Laufzeitverhalten beim Sortieren
Projekt Graphentheorie Eulerpfad
verkettete Strukturen
Technische Informatik II
Analog and Digital Design Switching and transitions
Aufgaben Semaphore Übersicht (Dijkstra)
Unterschiedliche Kontrollstrukturen
4. Modellieren und Diagrammarten
Übung 1 Gegeben ist folgender Pfad. Die Notation ( ... ) * soll bedeuten, daß sich die eingeklammerte Sequenz bis ins Unendliche wiederholt. Welche Pfadeigenschaften.
Arrays in C Ein Array ist eine Variable, die aus einer Anzahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
Hindernisbahn Arbeiten der Gruppe.
3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen
Abläufe zum Anfang des Jahres
Schnitt Ebene/Ebene Voraussetzungen Die Ebenen
TECHNIK.
 Präsentation transkript:

Aufgaben Petrinetze Aufgabe 1 Task C läuft an, wenn A und B abgelaufen sind. A B Task A REL S1 Task B REL S2 REQ S1 REQ S2 Task C S1 S2 C Aufgabe: Task C läuft an, wenn A oder B abgelaufen sind. Zeichne das Petrinetz und formuliere die Semaphor-Anweisungen.

Aufgaben Petrinetze Aufgabe 2 Gegeben ist folgendes Petri-Netz zur Beschreibung der Ablaufreihenfolge dreier Tasks A, B und C. Wie lautet die Ablaufreihenfolge, wenn S1 = S2 = S3 = 0, S4 = 1 ist und S1 mit 1 initialisiert wird? Ergänzen Sie die Taskanweisungen für A, B und C am Anfang und am Ende mit den entsprechenden Semaphor-Anweisungen (REQ und REL), so dass der Ablauf der o. g. Reihenfolge entspricht und kein Deadlock möglich ist? B S1 S2 A S3 S4 Init C

Aufgaben Petrinetze Aufgabe 3 Gegeben ist folgendes Petri-Netz zur Beschreibung der Ablaufreihenfolge der zwei Task A und B: ABABAB…. Erweitern Sie das Netz um Transitionen und Stellen, damit die Reihenfolge lautet: AABBAABB… Gewicht und Kapazität sollen weiter = 1 sein. Sie können für dieselbe Reihenfolge AABBAABB… die Anzahl der Transitionen und Stellen verringern, wenn sie ein Gewicht > 1 zulassen. Zeichnen Sie ein entsprechendes Petrinetz. B S1 S2 A Init Simulationsprogramm im Netz: http://olli.informatik.uni-oldenburg.de/PetriEdiSim/edisim.html

Aufgaben Petrinetze Aufgabe 4 Durch eine geeignete Synchronisierung soll der folgende Ablauf von 4 Tasks (3 Überwachungs-tasks und 1 Protokollierungstask) erzwungen werden: U1 P U2 P U3 P Führen Sie in jeder Task die erforderlichen Semaphor-Anweisungen ein, mit denen die geforderte Reihenfolge sichergestellt ist. Wie müssen die von Ihnen benutzten Semaphor-Variablen initialisiert werden, damit die geforderte Reihenfolge bei der Task U1 beginnt? Hinweis: Zur Lösung der Aufgabe bietet es sich an, ein Petrinetz für den geforderten Ablauf zu entwerfen.

Aufgaben Petrinetze Stufenweises Vorgehen beim Modellieren Interpretation für Stellen und Transitionen Kausalen Stellen-/Transitionszusammenhang formulieren Entwurf eines zusammenhängenden Prozess-Netzes Festlegung von Anfangsmarkierungen und Schaltregeln Netztypen Stellen Transitionen Kante Marke Bedingung/Ereig-nis-Netz (B/R-Netz) Bedingung (eine Marke) Ereignis (eine Marke) ungewichtet Identischer Informationsgehalt Stellen/Transitio-nen-Netz (S/T-Netz) Stelle (mehrere Marken) Transition (mehrere Marken) ganzzahlig gewichtet Prädikat/Transitio-nen-Netz (Pr/T-Netz) Prädikat (mehrere Marken) unterschiedlicher Informationsgehalt Dann folgt die Analyse des Netzes: Erreichbarkeit: welche Folgezustände können erreicht werden? Sicherheit: wird eine kritische Markenzahl für eine bestimmte Stelle überschritten? Lebendigkeit: kann immer eine Transition feuern?

Aufgaben Petrinetze Stellen/Transitionen-Netz Beispiele für Stellen und Transitionen bei einem S/T-Netz: Stellen (passive Elemente) Transitionen (aktive Elemente) Zustände Übergänge Aussagen Beweise Reagenzien Chem. Reaktionen Materialien Produktionsaktivitäten Speicher Prozessoren Gewicht n>1: Kanten bewegen beim Schalten n Marken. Kapazität k>1 : Transition t kann erst dann schalten, wenn die Kapazität keiner der Stellen im Nachbereich von t überschritten wird.

Aufgaben Petrinetze Aufgabe 5 Bilden Sie folgenden Ablauf bei einem Frisör als Bedingung/Ereignis-Netz ab: Kunde betritt den Frisörladen und setzt sich in den Warteraum Er wird durch einen Frisör bedient, wenn dieser keinen anderen Kunden hat Eine Bedienung läuft immer in folgender Reihenfolge ab: Haare waschen, Haare schneiden, Haare trocknen, während dieser Bedienung soll der Frisör den Kunden nicht wechseln Zum Haare schneiden benötigt der Frisör eine Schere, die er danach wieder weg legt Zum Haare trocknen ist eine Trockenhaube vonnöten, die nicht belegt sein darf Wenn die Haare des Kunden getrocknet sind, kann der Frisör wieder neue Kunden bedienen Analysieren Sie die Aufgabe dahingehend, dass Sie zuerst die Bedingungen formulieren, die notwendig sind, damit gewisse Ereignisse (z.B. Beginn einer Tätigkeit) eintreten können. Eine andere Möglichkeit wäre, von (Ruhe)Zuständen aus zu gehen und zu prüfen, welche Ereignisse zu einem Zustandswechsel führen.

Aufgaben Petrinetze Aufgabe 6 Bilden Sie folgenden Ablauf einer Leiterplattenbestückung durch zwei Roboter als Bedingung/Ereignis-Netz ab: 2 Roboter bestücken Leiterplatten mit elektronischen Bauelementen Bauelemente (unbestückte Leiterplatinen) werden auf einem Fließband antransportiert Ist einer der Roboter frei, nimmt er die Leiterplatte vom Fließband und montiert die Bauelemente Sind beide Roboter frei, wird nichtdeterministisch entschieden, wer die Leiterplatte nimmt Nur jeweils eine Leiterplatte darf zu einem Zeitpunkt abtransportiert werden Zusatzaufgabe: Beim Bestücken darf jeweils nur EIN Roboter auf das Bauelemente-Magazin zugreifen

Aufgaben Petrinetze Aufgabe 7 Erstellen Sie für das Petri-Netz den Erreichbarkeitsgraphen; es sind insgesamt nur 6 Markierungen M0 bis M5 möglich, da alle Stellen eine max. Kapazität = 1 haben sollen.   S1 S3 t2 t3 t4 S2 S4 t1 Markierung Nr. S1 S2 S3 S4 Schaltung M3 t1 -> t2 -> t3 -> t4 -> M4 M5 Markierung Nr. S1 S2 S3 S4 Schaltung M0 1 t1 -> M1 t2 -> M2 t3 -> t4 -> M1 t1 -> t2 -> M2 9

Aufgaben Petrinetze Aufgabe 8 Stellen Sie den Erreichbarkeitsgraphen für das nebenstehende Petri-Netz (Bedingung/Ereignis-Netz) auf, um nachzuweisen, dass es einen Knoten ohne abgehende Kanten gibt, so dass es zu einer Verklemmung kommen kann. Das Verhalten eines Lese-/Schreiblocks soll mit Hilfe normaler Semaphore nachgebildet werden, so dass zwei Rechenprozessen der lesende Zugriff oder einem Rechenprozess der schreibende Zugriff erlaubt ist. Dazu wird ein Semaphor mit 2 vorinitialisiert. Ein Prozess, der nur lesend auf den kritischen Abschnitt zugreift, allokiert das Semaphor wie gewohnt einmal, ein Rechenprozess, der schreibend zugreifen möchte, allokiert dagegen das Semaphor zweimal. Zur Vereinfachung sind 3 zugreifende Prozesse maximal aktiv. Sequenz zum Lesen Sequenz zum Schreiben P(S1) ... // kritischer Abschnitt V(S1)

Aufgaben Petrinetze Aufgabe 8 Vorschlag: Entwurf einer Hilfstabelle, um die Transitionen übersichtlich darzustellen (z.B. bei der Transition t1 werden 2 Marken entnommen (von Sema1 und Sema2) und eine Marke erzeugt bei Sema3) Transitionen Nr. Sema1 Sema2 Sema3 Sema4 Sema5 Sema6 t1: -1 +1 t2: t3: t4: t5: t6:

Aufgaben Petrinetze Aufgabe 8 Formular für den Lösungsweg: Alle Transitionen t1 bis t6 müssen nun bei jedem (neuen) Zustand geprüft werden, ob Zustand verlassen werden kann. Z.B. bei der Initialmarkierung M0: Markierung M0 Schaltungen Nr. S1 S2 S3 S4 S5 S6 M0 3 2 t1 -> 211000 (M1) t2 -> 210100 (M2) t3 -> t4 -> t5 -> t6 ->

Aufgaben Petrinetze Aufgabe 8 Formular für den Lösungsweg: Zwischenergebnis: 3 Markierungen wurden bisher gefunden Markierungsmenge Schaltungen Nr. S1 S2 S3 S4 S5 S6 M0 3 2 t1 -> 211000 (M1) t2 -> 210100 (M2) M1 1 t1 -> ? t2 -> ? t3 -> ? t4 -> ? t5 -> ? t6 -> ? M2

Aufgaben Petrinetze Aufgabe 8 Zwischenergebnis: Erreichbarkeitsgraph für die Markierungsmenge {M0, M1, M2} M1 Markierungsmenge Schaltungen Nr. S1 S2 S3 S4 S5 S6 M0 3 2 t1 -> 211000 (M1) t2 -> 210100 (M2) M1 1 tx -> ? (M?) M2 M3 M4 M5 M6 M7 M8 M9 211000 M0 t1 320000 t2 210100 M2