Sieci Petriego. Sieć Petriego

Podobne dokumenty
miejsca przejścia, łuki i żetony

Rozszerzenia sieci Petriego

Rozszerzenia sieci Petriego

Analiza sieci Petriego

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

Analiza sieci Petriego

Odwzorowanie BPMN w sieć Petriego

Język UML w modelowaniu systemów informatycznych

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 }

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

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

Sterowniki Programowalne (SP)

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

Wymiar poziomy: oś na której umieszczono instancje klasyfikatorów biorące udział w interakcji.

Proces rozproszony 1

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

Sterowniki Programowalne (SP) Wykład 11

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

APIO. W4 ZDARZENIA BIZNESOWE. ZALEŻNOŚCI MIĘDZY FUNKCJAMI. ELEMENTY DEFINICJI PROCESU. DIAGRAM ZALEŻNOŚCI FUNKCJI.

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Diagramy czynności. Widok logiczny. Widok fizyczny

1 Automaty niedeterministyczne

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Wykład 5: Specyfikacja na poziomie systemowym

Problem zakleszczenia

UML. dr inż. Marcin Pietroo

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Spacery losowe generowanie realizacji procesu losowego

NIFIED M L ODELLING ANGUAGE. Diagramy czynności

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

Podstawy programowania III WYKŁAD 4

Eksploracja logów procesów. Process mining

Modelowanie procesów biznesowych

Diagramy czynności Na podstawie UML 2.0 Tutorial

Proces rozproszony. Plan wykładu. Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński. Proces rozproszony. Zbiór stanów globalnych (1)

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

Algorytm. Krótka historia algorytmów

Funkcje: wejściowe, wyjściowe i logiczne. Konfigurowanie zabezpieczeń.

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

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.

Modelowanie procesów współbieżnych

1. Logika, funkcje logiczne, preceptron.

Diagram sekwencji. Komunikaty mogą być opisane w sposób sformalizowany. poprz / [warunek] *[iter] nr sekw : wynik := operacja(lista)

Diagramy sekwencji. wymienianych między nimi

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

Przetwarzanie rozproszone

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Architektura komputerów Wykład 2

Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne

Programowanie dynamiczne i algorytmy zachłanne

Język UML w modelowaniu systemów informatycznych

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1

Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone

Modelowanie procesów współbieżnych

Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia

Definicja układu kombinacyjnego była stosunkowo prosta -tabela prawdy. Opis układu sekwencyjnego jest zadaniem bardziej złożonym.

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

Urządzenia sieciowe. Tutorial 1 Topologie sieci. Definicja sieci i rodzaje topologii

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

Przykład planowania sieci publicznego transportu zbiorowego

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Układ regulacji ze sprzężeniem zwrotnym: - układ regulacji kaskadowej - układ regulacji stosunku

Stan globalny. Krzysztof Banaś Systemy rozproszone 1

Rodzaje analiz w SIT/GIS

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI

Elementy cyfrowe i układy logiczne

Projektowanie Scalonych Systemów Wbudowanych VERILOG

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD X: Sztuczny neuron

G. Wybrane elementy teorii grafów

Informatyka wprowadzenie do algorytmów (II) dr hab. inż. Mikołaj Morzy

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

Definicje. Najprostszy schemat blokowy. Schemat dokładniejszy

4 Klasyczny rachunek zdań

Wprowadzenie. Dariusz Wawrzyniak 1

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1

Podejście obiektowe - podstawowe pojęcia

Modelowanie obiektowe - Ćw. 6.

Najprostszy schemat blokowy

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

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

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Sztuczne sieci neuronowe

W_4 Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC

Diagram Przepływu Danych - podstawowe bloki składowe i reguły konstrukcji

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

PL B1. ABB Sp. z o.o.,warszawa,pl BUP 26/01. Michał Orkisz,Kraków,PL Mirosław Bistroń,Jarosław,PL

Technologie informacyjne - wykład 12 -

1 Moduł Modbus ASCII/RTU 3

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Programowanie współbieżne i rozproszone

Temat: Sieci neuronowe oraz technologia CUDA

Transkrypt:

Sieci Petriego Sieć Petriego Formalny model procesów umożliwiający ich weryfikację Główne konstruktory: miejsca, przejścia, łuki i żetony Opis graficzny i matematyczny Formalna semantyka umożliwia pogłębioną analizę Historia Carl Adam Petri (1962, PhD thesis) W latach sześćdziesiątych i siedemdziesiątych skoncentrowana głownie na teorii Od lat osiemdziesiątych różne implementacje Ukryta w wielu technikach i narzędziach programowych Tomasz Koszlajda II PP 1

Konstruktory sieci Petriego p4 miejsce (nazwa) miejsce t34 p3 t43 przejście nazwa przejście łuk żeton t23 p2 t32 żeton Miejsca, przejścia i łuki służą do modelowania statycznej struktury procesów, a żetony pozwalają na modelowanie ich dynamiki. t12 p1 t21 Działanie sieci Petriego Wyjdź Pojawienie się żetonów na wszystkich wejściach określonego przejścia, aktywuje to przejście Aktywne przejścia mogą być odpalone Odpalenie wiąże się z pobraniem żetonów ze wszystkich miejsc wejściowych i wysłaniem żetonów do wszystkich miejsc wyjściowych danego przejścia Tomasz Koszlajda II PP 2

Aktywacja przejść Wyjdź Aktywne Nieaktywne Nieaktywne Przejście jest aktywowane jeżeli każde z jego wejściowych miejsc zawiera co najmniej jeden żeton Odpalanie przejść Wyjdź Odpalone Aktywne przejście może być odpalone Odpalane przejście pobiera jeden żeton z każdego miejsca wejściowego i produkuje po jednym żetonie dla każdego miejsca wyjściowego. Tomasz Koszlajda II PP 3

Własności sieci Petriego Topologia sieci Petriego jest spójnym, dwudzielnym (miejsca i przejścia) grafem skierowanym o następujących cechach statycznych i dynamicznych: Struktura sieci jest statyczna Jedno miejsce i jedno przejście mogą być połączone więcej niż jedną krawędzią (krawędzie mogą mieć przypisane wagi) Stan sieci jest reprezentowany przez rozłożenie żetonów Miejsca mogą składować zero lub więcej żetonów Odpalanie przejść jest atomowe Może być aktywnych wiele przejść, ale odpalić może tylko jedno niedeterminizm Sumaryczna liczba żetonów może się zmieniać w czasie (np. dla różnej liczby wejść i wyjść) Formalna definicja sieci Petriego Struktura klasycznej sieci Petriego jest zdefiniowana przez uporządkowaną czwórkę (P,T,I,O) gdzie: P jest skończonym zbiorem miejsc, T jest skończonym zbiorem przejść, I : P x T > N jest funkcją wejść, N jest liczbą krawędzi między p i t, O : T x P > N jest funkcją wyjść, N jest liczbą krawędzi między t i p. Dowolny diagram może być odwzorowany w taką czwórkę i na odwrót. Stan (znakowanie) sieci Petriego: (P,T,I,O) jest zdefiniowany następująco: S: P > N, jest to funkcja odwzorowująca zbiór miejsc w zbiór liczb naturalnych reprezentujących liczbę żetonów w danym miejscu. Tomasz Koszlajda II PP 4

Przykład Odwzoruj poniższy diagram w (P,T,I,O) and s red black rb rr bb Przykład Narysuj diagram reprezentujący zdefiniowaną poniżej sieć Petriego Sieć Petriego (P,T,I,O): P = {a,b,c,d} T = {e,f} I(a,e)=1, I(b,e)=2. O(e,c)=1, O(f,b)=2, O(f,d)=3. Stan s: s(a)=1, s(b)=2. Tomasz Koszlajda II PP 5

Formalizacja zachowania sieci Przejście t jest aktywne w stanie s wtedy i tylko wtedy, gdy: p P : s (p) I(p,t) Jeżeli przejście t jest aktywne w stanie s i, może być odpalone i wynikiem będzie zmiana stanu sieci na stan s j : p P : s j (p) = s i (p) I(p,t) + O(t,p) Ścisła reguła odpalania Specyfikacja sieci Petriego może obejmować dodatkowo informację o pojemności każdego miejsca K(p) jest maksymalną liczbą żetonów, które może zmieścić miejsce p Odpalenie przejścia t jest ścisłe jeżeli pojemność K(p) żadnego z miejsc wyjściowych p nie została przekroczona p P : s (p) I(p,t) and s (p) O(p,t) Tomasz Koszlajda II PP 6

Interpretacja elementów sieci Petriego Interpretacja elementów sieci Petriego jest zależna od dziedziny zastosowania: Miejsca wejściowe Przejścia Miejsca wyjściowe Warunki początkowe Zdarzenia Warunki końcowe Dane wejściowe Obliczenia Dane wyjściowe Sygnaływejściowe Procesor sygnałów Sygnały wyjściowe Niezbędne zasoby Zadanie Zwolnione zasoby Warunki Wyrażenie logiczne Konkluzje Bufor Procesor Bufor Modelowanie procesów Miejsca: elementy pasywne procesów Przejścia: elementy aktywne procesów Łuki: związki przyczynowo skutkowe Żetony: stany i dane Stan procesu jest modelowany przez rozkład żetonów w sieci Tomasz Koszlajda II PP 7

Znaczenia żetonów Żetony mogą odgrywać następujące role: informacja dane, dokumenty, komunikaty, sygnały, raporty; obiekt fizyczny na przykład produkt, towar, osoba; lub zbiór obiektów na przykład ciężarówka z produktami, hurtownia z towarami; wskaźnik stanu,w którym znajduje się proces lub fragment procesu; wskaźnik warunku obecność żetonu w danym miejscu oznacza spełnienie pewnych warunków. Znaczenia miejsc stany lub warunki miejsca umożliwiają określenie stanów wątków procesu, lub warunków wymaganych do dalszego przebiegu wątków. bufory fizyczne miejsca przechowywania przedmiotów, informacji lub ludzi, np. magazyn, kolejka, skrzynka pocztowa; lokalizacja geograficzna miejsce w magazynie, w biurze; typ medium komunikacyjnego linia telefoniczna, sieć komputerowa, doręczyciel, pośrednik, goniec; Tomasz Koszlajda II PP 8

Znaczenia przejść działanie cała praca wykonywana w ramach procesów jest modelowana za pomocą przejść: przetwarzanie danych lub produktów zmiana dokumentu, modyfikacja danej w bazie danych; wyprodukowanie danych lub produktów utworzenie dokumentu, danej; transport danych lub produktów na przykład, przetransportowanie towarów, wysłanie komunikatu. zdarzenie na przykład, sprzedaż towaru, przyjęcie pacjenta, zmiana sezonu, przyjęcie zamówienia; Typowe wzorce przepływu sterowania Sekwencja Współbieżność (AND split AND join) Wybór (XOR split XOR join) Iteracja (XOR join XOR split) Pętla zwrotna Wzajemne wykluczanie Naprzemienność Tomasz Koszlajda II PP 9

Sekwencja Początek P T2 Koniec krok 1 krok 2 Przejścia i T2 są po kolei aktywowane i odpalane, dzięki czemu działania modelowane przez przejścia są realizowane sekwencyjnie. Przesuwany między kolejnymi miejscami żeton reprezentuje kolejne stany sekwencyjnego przepływu pracy. Współbieżność: AND split AND-split P2 P3 YAWL Przejście, z jednego żetonu w miejscu wejściowym, produkuje dwa żetony w miejscach wyjściowych P2 i P3. Utworzenie dwóch żetonów reprezentuje współbieżną realizację procesu. Tomasz Koszlajda II PP 10

Współbieżność: AND join P3 P2 AND-join YAWL Przejście konsumuje po jednym żetonie z dwóch miejsc wejściowych i produkuje jeden żeton do miejsca wyjściowego. Alternatywa: XOR split P2 Explicit OR-split T2 P3 YAWL Żeton z miejsca wejściowego jest konsumowany przez dokładnie jedno z przejść i T2. Następnie generowany jest pojedynczy żeton do miejsca wyjściowego odpalonego przejścia. Tomasz Koszlajda II PP 11

Alternatywa: XOR join P2 XOR-join T2 P3 YAWL Pojawienie się żetonu w jednym z miejsc wejściowych przejść lub T2 spowoduje odpalenie dokładnie jednego przejście i przeniesienie żetonu do miejsca wyjściowego P3. Iteracja: 1 lub więcej razy T5? T2 T3 P2? T4 W zależności od tego, czy odpali przejście T4, czy T5 proces zapętli się, tj. żeton wróci to miejsca, lub będzie kontynuowany dalej (poza slajdem). Liczba iteracji jest niedeterministyczna. Tomasz Koszlajda II PP 12

Iteracja: 0 lub więcej razy T3 działania T2 Jeżeli za pierwszym razem, od pojawienia się żetonu w miejscu, odpali przejście to zbiór działań będzie wykonany. Jeżeli odpali przejście T2 działania te nie zostaną wykonane. Sprzężenie zwrotne P2 P3 T2 działania Kolejne wykonywanie działań wymaga żetonów w miejscu, które są generowane w wyniku wykonania tych działań i odpalania przejścia T2. Tomasz Koszlajda II PP 13

Wzajemne wykluczanie działania 1 T3 P4 P3 P2 T2 działania 2 T4 P5 Występowanie pojedynczego żetonu w miejscu P3 gwarantuje odpalenie tylko jednego z pary przejść i T2. Dzięki temu tylko jedno z działań będzie wykonane. Naprzemienność działania 1 T3 P5 P3 P2 T2 P4 działania 2 T4 P6 Występowanie pojedynczego żetonu w miejscu P3 gwarantuje odpalenie tylko jednego z pary przejść i T2. Dzięki temu tylko jedno z działań będzie wykonane. Tomasz Koszlajda II PP 14