Rozszerzenia sieci Petriego

Podobne dokumenty
Rozszerzenia sieci Petriego

Sieci Petriego. Sieć Petriego

miejsca przejścia, łuki i żetony

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

Analiza sieci Petriego

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

Wykład 5: Specyfikacja na poziomie systemowym

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

Analiza sieci Petriego

Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer

S Instrukcje programowania instrukcje obsługi Ethernetu

Modelowanie procesów współbieżnych

EGZAMIN MATURALNY Z INFORMATYKI. 10 maja 2017 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I

Rozkład menu narzędzi

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 }

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

Problem detekcji zakończenia (I)

LICZNIKI PODZIAŁ I PARAMETRY

dwójkę liczącą Licznikiem Podział liczników:

Modelowanie i Analiza Systemów Informatycznych

Przetwarzanie rozproszone

Sortowanie przez wstawianie Insertion Sort

SFC zawiera zestaw kroków i tranzycji (przejść), które sprzęgają się wzajemnie przez połączenia

Katedra Inżynierii Komputerowej Politechnika Częstochowska. Zastosowania protokołu ICMP Laboratorium podstaw sieci komputerowych

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

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

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

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

Stan globalny. Krzysztof Banaś Systemy rozproszone 1

Automatyka SPZ. 1. ZASADA DZIAŁANIA SCHEMAT FUNKCJONALNY PARAMETRY SPZ WYKRESY CZASOWE DZIAŁANIA AUTOMATYKI SPZ...

RS485 MODBUS Module 6RO

Hardware mikrokontrolera X51

Definicje. Algorytm to:

Technologie informacyjne - wykład 12 -

Kody Tunstalla. Kodowanie arytmetyczne

MODELOWANIE STANDARDU PROFIBUS W ŚRODOWISKU LABVIEW

Modelowanie procesów współbieżnych

ĆWICZENIE 7. Wprowadzenie do funkcji specjalnych sterownika LOGO!

Podstawy Informatyki Systemy sterowane przepływem argumentów

Podstawy Informatyki Elementarne podzespoły komputera

Strefy dostępu i obwodowe

Problem detekcji zakończenia

1 Automaty niedeterministyczne

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

Odwzorowanie BPMN w sieć Petriego

W ielofunkcyjne linie wejściowe

Wprowadzenie do algorytmiki

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

SYSTEM KONTROLI DOSTĘPU. XChronos

Zasady analizy algorytmów

Algorytm. a programowanie -

Information Systems Analysis

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

Modelowanie sytuacji konfliktowych, w których występują dwie antagonistyczne strony.

Wreferacie przedstawiono propozycję metody modelowania procesów transportowych

Instrukcja wprowadzania graficznych harmonogramów pracy w SZOI Wg stanu na r.

Paweł Kurzawa, Delfina Kongo

POLITECHNIKA OPOLSKA

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

Sterowniki Programowalne (SP)

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

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

INFORMATYKA SORTOWANIE DANYCH.

Jednostka Sterująca - Menu

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24

1 Wprowadzenie do algorytmiki

Podstawowe pojęcia. Własności próby. Cechy statystyczne dzielimy na

ZASOBY ZMIENNYCH W STEROWNIKACH SAIA-BURGESS

W narzędziu typu Excel, Calc czy Gnumeric napisz formułę logiczną która wyznaczy wartośd przynależności dla podanej temperatury do zbioru gorąco.

MODELOWANIE PRZEPŁYWU DANYCH

GRUPA ĆWICZENIOWA (ZAKREŚL ODPOWIEDNIĄ): MG8 MG13 MB13 MD13 BT13

Sterowniki Programowalne (SP) Wykład 11

WFiIS CEL ĆWICZENIA WSTĘP TEORETYCZNY

System plików. Warstwowy model systemu plików

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

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP

INFORMATYKA POZIOM ROZSZERZONY

Mini Modbus 1AO. Moduł rozszerzający 1 wyjście analogowe, 2 wyjście cyfrowe. Wyprodukowano dla

Automatyka SPZ. ZCR 4E; ZCS 4E; ZZN 4E; ZZN 5; ZRL 4E Automatyka SPZ

E-book: Automatyzacja powiadomień SMS. CASE STUDY

Bazy danych w sterowaniu

Przetwarzanie równoległesprzęt. Rafał Walkowiak Wybór

POLITECHNIKA OPOLSKA

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

W przypadku spostrzeżenia błędu proszę o przesłanie informacji na adres

Plan wykładu. Statystyka opisowa. Statystyka matematyczna. Dane statystyczne miary położenia miary rozproszenia miary asymetrii

Obliczenia inspirowane Naturą

RS485 MODBUS Module 8I8O

RS485 MODBUS Module 6RO

Przepływy danych. Oracle Designer: Modelowanie przepływów danych. Diagramy przepływów danych (1) Diagramy przepływów danych (2)

Język UML w modelowaniu systemów informatycznych

Podstawowe procedury przy tworzeniu programu do sterownika:

Transkrypt:

Rozszerzenia sieci Petriego Ograniczenia klasycznej sieci Petriego Trudność w modelowaniu specyficznych przepływów: testowania braku żetonów w danym miejscu, blokowania odpalania, itp. Brak determinizmu dla konfliktowych przejść Dla złożonych procesów modele ze względu na wielkość są trudne do specyfikacji i interpretacji Modele nie odzwierciedlają aspektów czasowych, np. czasu pozostawania żetonów w miejscach, uniemożliwiając wykonywanie analizy wydajnościowej Brak możliwości modelowania semantyki przepływu i przetwarzania danych Tomasz Koszlajda Instytut Informatyki PP 1

Rozszerzenia sieci Petriego Sieci Petriego są rozszerzane o następujące własności: Nowe typy łuków: zerujące i inhibitory Sieci priorytetowe Czasowe sieci Petriego Kolorowane sieci Petriego Czasowe i kolorowane sieci Petriego Hierarchiczna struktura sieci Łuki zerujące Łuki zerujące są specjalnym rodzajem łuków służących do całkowitego zerowania zawartości przyłączonych do nich miejsc w wyniku odpalenia przejścia Dwie alternatywne notacje: P1 T1 T1 P1 Przejście konsumuje wszystkie żetony z miejsca wejściowego Odpalenie przejścia zeruje wszystkie żetony w miejscu wyjściowym Tomasz Koszlajda Instytut Informatyki PP 2

Inhibitory Łuki typu inhibitor, blokują odpalanie aktywnych przejść, kiedy miejsce połączone z przejściem za pomocą inhibitora zawiera żetony P1 P2 T1 P3 Aktywne przejście T1 nie może odpalić z powodu zablokowania przez miejsce P3. Priorytetowe sieci Petriego Przez przypisanie przejściom sieci Petriego priorytetów można określić częściowy porządek w zbiorze przejść, który wyeliminuje lub ograniczy sytuacje niejednoznaczne brak determinizmu w działaniu sieci. Jeżeli aktywne są dwa przejścia, które rywalizują o ten sam zbiór żetonów, to odpalone zostanie przejście o wyższym priorytecie. Tomasz Koszlajda Instytut Informatyki PP 3

Priorytetowe sieci Petriego Formalnie, priorytetowa sieć Petriego jest uporządkowaną szóstką: (P, T, I, O, R, S), 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, R : T > N 0 jest funkcją priorytetów, przypisującą każdemu z przejść liczbę całkowitą nieujemną, S: P > N jest to funkcja odwzorowująca zbiór miejsc w zbiór liczb naturalnych reprezentujących liczbę żetonów w danym miejscu. Przykład sieci priorytetowej W danym stanie sieci priorytetowej aktywne są przejścia, których miejsca wejściowe mają wystarczającą liczbę znaczników oraz ich priorytet jest nie mniejszy niż dowolnego innego przejścia z którym jest w konflikcie. W danym stanie sieci aktywne są jedynie przejścia t 1 i t 3. Miejsce t 4 nie jest aktywne, bo ma priorytet mniejszy niż t 3. Tomasz Koszlajda Instytut Informatyki PP 4

Przykład sieci priorytetowej Przejazd kolejowy przejazd pociągu ma większy priorytet od przejazdu samochodów (domyślny priorytet równy 0). t 1 t4 samochód przed przejazdem opuść szlaban pociąg przed przejazdem samochód za przejazdem przejedź przez tory podniesiony szlaban pociąg za przejazdem przejedź przez przejazd Sieci czasowe Sieci czasowe umożliwiają modelowanie czasu odpalenia przejść Proste pozwalają przypisać przejściom czas ich odpalenia liczony od momentu uaktywnienia przejścia Przedziałowe pozwalają przypisać przejściom przedział czasu [t min, t max ] liczony od momentu uaktywnienia, w którym mogą być odpalone. Tomasz Koszlajda Instytut Informatyki PP 5

Proste sieci czasowe Formalnie, czasowa sieć Petriego jest uporządkowaną szóstką: (P, T, I, O, σ, S), gdzie: σ : T -> Q, gdzie Q jest liczbą reprezentującą opóźnienie odpalenia przejścia t T. Aktywne przejście musi być odpalone po dokładnie σ jednostkach czasu, chyba że wcześniej zostanie dezaktywowane. Aktywne są przejścia: t1 i t3. Po dwóch jednostkach czasu odpali przejście t1. Jeżeli dwa aktywne przejścia mają takie same opóźnienie, odpalone zostanie niedeterministycznie wybrane jedno z nich. Przedziałowe sieci czasowe Formalnie, przedziałowa czasowa sieć Petriego jest uporządkowaną szóstką: (P, T, I, O, σ, S), gdzie: σ : T -> Q Q, gdzie Q są liczbami reprezentującymi minimalny i maksymalny czas odpalenia przejścia t T Aktywne są przejścia: t1 i t3. W przedziale czasu [0-4] niedereministycznie może odpalić przejście t3, w przedziale czasu [2-4] przejście t1. Tomasz Koszlajda Instytut Informatyki PP 6

Przykład model protokołu komunikacyjnego W każdym ze stanów poniższej sieci Petriego, znajduje się dokładnie jeden znacznik reprezentujący jeden z 6 stanów, w którym może znajdować się protokół. t1 wygenerowanie wiadomości t2 wysłanie wiadomości przez nadawcę t3 odebranie wiadomości przez odbiorcę t4 wysłanie potwierdzenia przez odbiorcę t5 odebranie potwierdzenia przez nadawcę t6 zgubienie wiadomości t7 zgubienie potwierdzenia t8 żądanie ponowienia transmisji Kolorowane sieci Petriego nowe własności Miejsca mają przypisane typy danych Znaczniki mają wartości Łuki mają przypisane wyrażenia logiczne (zastrzeżenia), które opisują warunki konsumowania żetonów z miejsc wejściowych Łuki mają przypisane wyrażenia typu przypisanego miejscom, określające sposób wyznaczania wartości konsumowanych i produkowanych żetonów Tomasz Koszlajda Instytut Informatyki PP 7

Typy i wartości danych Żetony mają kolor, czyli przypisane są im wartości Miejsca są typowane, mają przypisany zbiór kolorów Wyznaczanie wartości żetonów W przejściach można zdefiniować wyrażenia wyznaczające wartości produkowanych żetonów. 3 2 3 in x add x+y y sum 0 1 Wartości produkowanych żetonów w miejscu sum jest sumą wartości konsumowanych żetonów. Tomasz Koszlajda Instytut Informatyki PP 8

Kolorowane sieci Petriego przykład zastrzeżenie: wyrażenie: zmienna: nazwa miejsca: typ miejsca: stała: zbiór znaczników: - dwa o wartości a - cztery o wartości b - trzy o wartości c Rozszerzenie kolorowanych sieci Petriego o element czasu Każdy żeton ma przypisany znacznik czasowy Znacznik czasowy żetonu określa czas kiedy żeton może być najwcześniej skonsumowany 2 5 Tomasz Koszlajda Instytut Informatyki PP 9

Rozszerzenie o element czasu Czas aktywowania przejścia odpowiada największemu znacznikowi czasowemu ze zbioru żetonów przeznaczonych do konsumpcji przez to przejście. Jeżeli w danym miejscu jest wiele żetonów, żeton o najmniejszym znaczniku czasowym jest konsumowany jako pierwszy. Przejście o najmniejszym czasie odpalenia będzie odpalone jako pierwsze. Przejścia są odpalane natychmiast, kiedy tylko mogą być odpalone. Produkowane żetony mogą mieć opóźnienie. Znaczniki czasowe produkowanych żetonów są równe czasowi odpalenia powiększonym o czas opóźnienia. Ustalenie czasu aktywacji Czas aktywacji przejścia start w poniższym przykładzie wynosi: 2 = max{0,min{2,4,4}}. 0 4 2 wait start free stop done 4 busy Tomasz Koszlajda Instytut Informatyki PP 10

Czas produkowania żetonów Żetony produkowane do miejsca busy mają opóźnienie równe 3 @+3 = czas odpalenia przejścia start plus 3 jednostki opóźnienia 4 0 2 wait start @+3 free @+0 stop @+0 done 4 busy Czas odpalenia przejścia Przejście start zostanie odpalone w jednostce czasu 2. Żeton wyprodukowany do miejsca busy będzie miał wartość 2 + 3 =5 4 wait @+0 done start @+3 free stop @+0 4 5 busy Tomasz Koszlajda Instytut Informatyki PP 11

Hierarchiczne sieci Petriego Hierarchiczne sieci kolorowane umożliwiają tworzenie dużych modeli przez łączenie mniejszych fragmentów sieci zwanych pod stronami w wielopoziomową hierarchię stron. Strony sieci mogą być łączone za pomocą dwóch konstrukcji: Podstawiane przejścia, które służą do łączenia sieci podstron, z sieciami nad stron poprzez gniazda (miejsca w nadstronach) i miejsca portowe (miejsca w pod stronach) Fuzje miejsc, które są nierozróżnialnymi miejscami występującymi w różnych pod stronach sieci Umożliwia to modelowanie procesów na różnych poziomach abstrakcji Strona główna sieci Strona główna sieci Sortowanie obejmuje trzy przejścia podstawiane Zliczanie HS (ang. hierarchy substitution): t2, t3 i t4 oraz odpowiadające im gniazda wejściowe i wyjściowe (p2,p5), (p3,p6) i (p4,p7). Hierarchia stron Tomasz Koszlajda Instytut Informatyki PP 12

Pod strony sieci Pod strona Zliczanie, zawiera dwa miejsca portowe: miejsce p8 typu IN odpowiadające gniazdom wejściowym, miejsce p9 typu OUT odpowiadające gniazdom wyjściowym, oraz fuzję miejsc: miejsce p10 które jest współdzielone przez wszystkie trzy wystąpienia strony licznik. Tomasz Koszlajda Instytut Informatyki PP 13