Definicja sieci. Sieć Petriego jest czwórką C = ( P, T, I, O ), gdzie: P = { p 1, p 2,, p n } T = { t 1, t 2,, t m }

Podobne dokumenty
Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń)

1. Sieci Petriego. Rys. 1-1 Przykład sieci Petriego

Analiza sieci Petriego

Analiza sieci Petriego

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI

miejsca przejścia, łuki i żetony

Sieci Petriego. Sieć Petriego

Zastosowanie kolorowej sieci Petriego do modelowania transakcji rozproszonej

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18

Filogeneza: problem konstrukcji grafu (drzewa) zależności pomiędzy gatunkami.

Wreferacie przedstawiono propozycję metody modelowania procesów transportowych

Modelowanie procesów współbieżnych

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Sterowniki Programowalne (SP) Wykład 11

Logika Temporalna i Automaty Czasowe

Modelowanie produkcji obudowy separatora olejowego za pomocą diagramów aktywności UML i -sieci

Wstęp do Techniki Cyfrowej... Teoria automatów

TEORIA GRAFÓW I SIECI

a) 7 b) 19 c) 21 d) 34

SIECI PETRIEGO WYŻSZEGO RZEDU Kolorowane sieci Petriego. Kolorowane sieci Petriego 1

ANALIZA POPRAWNOŚCI OPROGRAMOWANIA WSPÓŁBIEŻNEGO Z WYKORZYSTANIEM FUNKCJI OBSERWACJI

CZĘŚĆ PIERWSZA. Seminarium grupy RSPN. Piotr Lasek Uniwersytet Rzeszowski. Kontakt

ODWZOROWANIE DZIAŁANIA PROTOKOŁU DWUFAZOWEGO ZATWIERDZANIA Z WIELOMA UCZESTNIKAMI ZA POMOCĄ KOLOROWANEJ SIECI PETRIEGO

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Rozszerzenia sieci Petriego

Rozszerzenia sieci Petriego

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Symboliczna analiza układów sterowania binarnego z wykorzystaniem wybranych metod analizy sieci Petriego

WOJSKOWA AKADEMIA TECHNICZNA

Grafy i sieci w informatyce - opis przedmiotu

Algorytmy i Struktury Danych

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Sieć (graf skierowany)

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Podstawy Automatyki. Wykład 4 - algebra schematów blokowych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

koniec punkt zatrzymania przepływów sterowania na diagramie czynności

Bioinformatyka Laboratorium, 30h. Michał Bereta

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Technika Cyfrowa 1 wykład 11: liczniki sekwencyjne układy przełączające

Łyżwy - omówienie zadania

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Information Systems Analysis

Wykład 1 Wprowadzenie do algorytmów. Zawartość wykładu 1. Wstęp do algorytmów i struktur danych 2. Algorytmy z rozgałęzieniami.

Języki formalne i automaty Ćwiczenia 9

Wykład nr 3 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

Odwzorowanie BPMN w sieć Petriego

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Nierówność Krafta-McMillana, Kodowanie Huffmana

Język UML w modelowaniu systemów informatycznych

Twój wynik: 4 punktów na 6 możliwych do uzyskania (66,67 %).

Poprawność semantyczna

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD III: Problemy agenta

Metoda Tablic Semantycznych

Laboratorium MATLA. Ćwiczenie 6 i 7. Mała aplikacja z GUI

Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji.

Typy danych. 2. Dane liczbowe 2.1. Liczby całkowite ze znakiem i bez znaku: 32768, -165, ; 2.2. Liczby rzeczywiste stało i zmienno pozycyjne:

Diagramy czynności. Widok logiczny. Widok fizyczny

Modelowanie motywów łańcuchami Markowa wyższego rzędu

WYKORZYSTANIE LOGIKI SEKWENTÓW GENTZENA DO SYMBOLICZNEJ ANALIZY SIECI PETRIEGO

Podstawy Automatyki. Wykład 4 - algebra schematów blokowych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU

MODELE SIECIOWE 1. Drzewo rozpinające 2. Najkrótsza droga 3. Zagadnienie maksymalnego przepływu źródłem ujściem

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym.

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Problem eliminacji nieprzystających elementów w zadaniu rozpoznania wzorca Marcin Luckner

Estymacja wektora stanu w prostym układzie elektroenergetycznym

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Diagramy czynności. sekwencyjnych i współbieŝnych. pomiędzy uporządkowanymi ciągami czynności, akcji i obiektów

Transformacja wiedzy w budowie i eksploatacji maszyn

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Podstawowe procedury przy tworzeniu programu do sterownika:

Sortowanie. Bartman Jacek Algorytmy i struktury

Projektowanie Scalonych Systemów Wbudowanych VERILOG

Sortowanie. Kolejki priorytetowe i algorytm Heapsort Dynamiczny problem sortowania:

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Modelowanie obiektowe - Ćw. 6.

Modelowanie produkcji. Drzewo produktu

Podstawy programowania III WYKŁAD 4

TEORETYCZNE PODSTAWY INFORMATYKI

Języki formalne i automaty Ćwiczenia 8

Wstęp do programowania

Wyznaczanie strategii w grach

Wstęp do programowania

Asynchroniczne statyczne układy sekwencyjne

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

Podstawy Automatyki. Wykład 4 - algebra schematów blokowych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Turing i jego maszyny

Metody Kompilacji Wykład 1 Wstęp

Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające

Metody Kompilacji Wykład 3

Wykład 2. Drzewa zbalansowane AVL i 2-3-4

Przetwarzanie rozproszone

Transkrypt:

Sieci Petriego Źródła wykładu: 1. http://www.ia.pw.edu.pl/~sacha/petri.html 2.M. Szpyrka: Sieci Petriego w modelowaniu i analizie systemów współbieżnych, WNT 2008

Definicja sieci Sieć Petriego jest czwórką C = ( P, T, I, O ), gdzie: P = { p 1, p 2,, p n } T = { t 1, t 2,, t m } I : T P* O : T P* P T = {} zbiór miejsc zbiór tranzycji funkcja wejściowa funkcja wyjściowa I ( t j ) kolekcja miejsc wejściowych tranzycji t j # ( p i, I ( t j ) ) liczba wystąpień p i w I ( t j ) O ( t j ) kolekcja miejsc wyjściowych tranzycji t j # ( p i, O ( t j ) ) liczba wystąpień p i w O ( t j ) kolekcja = multi-zbiór 2

Reprezentacja graficzna p 1 t 1 t 2 p 2 p 3 P = { p 1, p 2, p 3, p 4 } T = { t 1, t 2, t 3 } I ( t 1 ) = { p 1 } I ( t 2 ) = { p 1 } I ( t 3 ) = { p 2, p 3 } p 4 t 3 O ( t 1 ) = { p 1, p 2 } O ( t 2 ) = { p 3, p 3 } O ( t 3 ) = { p 3, p 4 } # ( p i, I ( t j ) ) liczba łuków od miejsca p i do tranzycji t j # ( p i, O ( t j ) ) liczba łuków od tranzycji t j do miejsca p i 3

Znakowanie Znakowanie sieci jest funkcją µ : P N p 2 p 1 t 1 t 2 µ ( p 2 ) = 2 µ ( p 1 ) = 1 p 3 µ ( p 3 ) = 0 µ ( p 4 ) = 0 t 3 p 4 Definicja alternatywna Znakowanie sieci jest wektorem: µ = ( µ ( p 1 ), µ ( p 2 ),, µ ( p n ) ) Zbiór wszystkich możliwych znakowań: N n 4

Znakowana sieć Petriego jest parą Z = ( C,µ 0 ), gdzie: C sieć Petriego µ 0 : P N znakowanie początkowe Tranzycja jest wzbudzona w znakowaniu µ jeśli: p i P # ( p i, I ( t j ) ) µ( p i ) Wynikiem odpalenia wzbudzonej tranzycji t j w znakowaniu µ jest nowe znakowanie µ, takie że: p i P µ ( p i ) =µ( p i ) # ( p i, I ( t j ) ) + # ( p i, O ( t j ) ) 5

Sieć Petriego jako maszyna abstrakcyjna Znakowana sieć Petriego tworzy maszynę abstrakcyjną : przestrzeń stanów: N n funkcja przejścia: δ : N n T N n, gdzie: 1. Wartość δ ( µ, t j ) jest określona wtw. gdy: p i P # ( p i, I ( t j ) ) µ( p i ) Warunek wzbudzenia t j 2. Jeśli δ ( µ, t j ) jest określona, to δ ( µ, t j ) =µ, gdzie: p i P µ ( p i ) =µ( p i ) # ( p i, I ( t j ) ) + # ( p i, O ( t j ) ) Wynik odpalenia t j 6

Wykonanie sieci to odpalenie sekwencji wzbudzonych tranzycji zaczynając od znakowania początkowego t j0 t j1 t jk µ 0 µ 1 µ 2 µ k µ k+1 gdzie: t jk wzbudzona w znakowaniu µ k µ k+1 = δ ( µ k, t jk ) 7

Osiągalność znakowań Znakowanie µ k jest bezpośrednio osiągalne z µ l wtw., gdy: t j T µ k = δ ( µ l, t j ) Znakowanie µ k jest osiągalne z µ l wtw., gdy istnieje sekwencja znakowań µ l, µ l+1,..., µ l+n =µ k, taka że: i = l,..., l + n 1 µ i+1 jest bezpośrednio osiągalne z µ i Zbiór znakowań osiągalnych R ( C,µ 0 ) jest najmniejszym zbiorem, takim że: µ 0 R ( C, µ 0 ) jeśli µ l R ( C, µ 0 ) oraz istnieje tranzycja t j T taka,że µ k = δ ( µ l, t j ), to µ k R ( C, µ 0 ) 8

Zastosowania sieci Petriego Modelowanie przepływu sterowania w systemach współbieżnych Modelowanie zdarzeń złożonych Modelowanie konfliktów przy dostępie do zasobów 9

Bezpieczeństwo Właściwości sieci Miejsce p i P jest bezpieczne, jeśli: µ k R ( C, µ 0 ) µ k ( p i ) 1 Sieć ( C, µ 0 ) jest bezpieczna, jeśli wszystkie jej miejsca są bezpieczne Ograniczoność Miejsce p i P jest q-ograniczone, jeśli: µ k R ( C, µ 0 ) µ k ( p i ) q Sieć ( C, µ 0 ) jest ograniczona, jeśli wszystkie jej miejsca są q-ograniczone dla pewnego q 10

Zachowawczość Sieć ( C, µ 0 ) jest ściśle zachowawcza, jeśli: µ k R ( C, µ 0 ) i = 1.. n µ k ( p i ) = i = 1..n µ 0 ( p i ) Sieć ( C, µ 0 ) jest zachowawcza, jeśli istnieje taki dodatni wektor w = ( w 1, w 2,..., w n ), że: µ k R ( C, µ 0 ) i = 1.. n w i µ k ( p i ) = i = 1..n w i µ 0 ( p i ) 11

Żywotność Tranzycja t jest żywa, jeśli: µ k R ( C, µ 0 ) µ R ( C, µ k ) ( µ, t ) Dom ( δ ) Z dowolnego znakowania osiągalnego można dojść do takiego znakowania, w którym t będzie mogła odpalić Brak martwego kodu w każdym stanie wykonania programu Sieć ( C, µ 0 ) jest żywa, jeśli każda jej tranzycja jest żywa 12

Zakleszczenie Sieć ma zakleszczenie, jeśli: µ R ( C, µ 0 ) t T ( µ, t ) Dom ( δ ) Istnieje znakowanie, w którym żadna tranzycja nie jest wzbudzona Zawieszenie się wszystkich procesów programu Sieć jest wolna od zakleszczeń, jeśli: µ R ( C, µ 0 ) t T ( µ, t ) Dom ( δ ) 13

Osiągalność znakowania 1. Problem osiągalności: Czy dla danego µ k, µ k R ( C, µ 0 )? 2. Problem pokrycia: Porównanie wektorów Czy dla danego µ k istnieje µ l R ( C, µ 0 ) takie, że µ l µ k? 3. Osiągalność znakowania częściowego: Czy dla danego µ k określonego na zbiorze P x P istnieje µ l R ( C, µ 0 ) takie, że µ k ( p ) =µ l ( p ) dla p P x? 14

Drzewo osiągalności węzły znakowania łuki odpalenia tranzycji korzeń znakowanie początkowe liście znakowania końcowe lub powtórzone znakowanie graniczne znakowanie wewnętrzne znakowanie końcowe znakowanie powtórzone nowe, czekające na analizę znakowanie już poddane analizie bez wzbudzonych tranzycji już wcześniej analizowane Jeśli w gałęzi µ 0,..., µ k,..., µ l,... zachodzi: µ l jest większe od µ k p P µ l ( p ) µ k ( p ) oraz p i P µ l ( p i ) >µ k ( p i ), to przyjmuje się: µ l ( p i ) =ω 15

Algorytm konstrukcji drzewa osiągalności 1. Utwórz korzeń drzewa jako znakowanie graniczne µ 0 2. Dla każdego znakowania granicznego µ x : a. jeśli brak tranzycji wzbudzonych w µ x, to µ x jest znakowaniem końcowym (liść) b. jeśli w drzewie istnieje już znakowanie µ y, które nie jest znakowaniem granicznym i µ y =µ x, to µ x jest znakowaniem powtórzonym (liść) c. jeśli µ x nie jest ani końcowe ani powtórzone, to dla każdej wzbudzonej tranzycji t oblicz δ ( µ x, t ) i utwórz µ z : jeśli dla pewnego p Pµ x ( p ) =ω, to również µ z ( p ) =ω jeśli w drodze od korzenia do µ x istnieje znakowanie µ y takie, że δ ( µ x, t ) µ y oraz δ ( µ x, t )( p ) >µ y ( p ), to µ z ( p ) =ω w każdym innym przypadku µ z ( p ) = δ ( µ x, t )( p ) Znakowanie µ x staje się teraz wewnętrznym, a µ z granicznym 16