background image

WOJSKOWA AKADEMIA TECHNICZNA 

WYDZIAŁ CYBERNETYKI 

 

 
 

Modelowanie Systemów Teleinformatycznych 

 

Sprawozdanie z ćwiczenia laboratoryjnego nr 6 

 
 
 
 
 

Temat ćwiczenia:  

Modelowanie systemów równoległych z zastosowaniem  

sieci Petriego 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Data wykonania ćwiczenia 14.06.2012r. 
 
 
 
Ćwiczenie wykonał: 
Mateusz Suchocki, I1G1S4 
 

Ćwiczenie prowadził: 
mgr inż. Łukasz LASZKO 

background image

1.  Treść zadania laboratoryjnego 
 

Zad.1 

W programie PIPE odtworzyć niżej pokazaną sieć Petriego (rysunek 1) symulującą działanie automatu 
do kawy. Zbadać jej własności (ograniczoność, bezpieczeństwo, występowanie zakleszczeń) oraz 
wygenerować i opisać graf osiągalności. Następnie zmodyfikować sieć, uszczegółowiając proces 
przygotowania napoju tak, aby składał się on z kawy, wody, mleka i cukru (przyjąć założenie o 
niewyczerpalności wspomnianych składników). Po tym znów zbadać własności utworzonej sieci (jak 
zmieniły się one w stosunku do sieci pierwotnej ?). 

Ograniczyć liczbę możliwych do przygotowywania napojów do 30. Zbadać własności sieci, wyciągnąć 
wnioski. 

 

Rysunek 1 

Zad.2 

Za pomocą sieci Petriego zamodelować proces nawiązywania połączenia  
w protokole TCP (tzw. 3-way TCP handshake). Zbadać własności utworzonej sieci. 

Zad.3 

Poniższa sieć Petriego (rysunek 2) stanowi prezentację najprostszego przypadku problemu 
producenta i konsumenta. Należy odtworzyć ją w programie PIPE oraz zbadać jej własności. 
Następnie dokonać modyfikacji tej sieci, dodając jednego producenta (jaki ma to wpływ na bufor ?). 

Ponownie zmodyfikować sieć, dodając jeszcze jednego producenta i drugiego konsumenta. 
Wyeliminować problem nieograniczoności sieci. Pokazać jak może dojść do zakleszczenia w tej sieci. 

Powrócić do pierwotnej postaci sieci (jeden producent, jeden konsument). Zmodyfikować sieć tak, 
by działała ona zgodnie z następującym scenariuszem: 

 

W stanie początkowym producent ma wyprodukowanych 5 elementów, 

background image

 

Konsument, który może skonsumować tylko dokładnie 2 elementy naraz, po konsumpcji 

wysyła sygnał zwrotny do producenta, informując go  
o zakończeniu konsumpcji, 

 

Po otrzymaniu sygnału od konsumenta, producent wznawia produkcję. 

Nie dopuścić do zakleszczenia w sieci. 

 

Rysunek 2 

 
2.  Realizacja zadania 

2.1. Automat do kawy 

2.1.1.  Sieć Petriego symulująca działanie automatu do kawy 

 

 

 

2.1.1.1. 

Badanie własności sieci 

 

 

Rysunek powyżej przedstawia wyniki przeprowadzonych badań własności zamodelowanej 

sieci. Widać jest na nim, iż sieć ograniczona, bezpieczna i nie posiada zakleszczeń. 

background image

 

2.1.1.2. 

Graf osiągalności 

 

 

Na powyższym diagramie osiągalności można zaobserwować, trzy stany ja również 

przedstawione jest które wykonanie tranzycji prowadzi do danego stanu. 
 

2.1.2.  Sieć Petriego symulująca działanie automatu do kawy z uszczegółowieniem 

procesu przygotowania napoju 

 

 

 
 
 

 

background image

2.1.2.1. 

Badania własności sieci 

 

 

 

2.1.2.2. 

Graf osiągalności 

 

 

 

Jak widać graf osiągalności nie zmienił się po dodaniu 4 miejsc, związane jest to z tym, iż 

przejście do stanu S2 uzależnione jest jedynie od terazycji T3 jak również nie jest naniesione żadne 

ograniczenie blokujące wykonanie tej tranzycji. 
 

2.1.3.  Sieć Petriego symulująca działanie automatu do kawy z ograniczoną liczbą 

przygotowywanych napojów 

 

 

 

background image

2.1.3.1. 

Badanie własności sieci 

 

 

2.1.3.2. 

Graf osiągalności 

 

 

 

Po dodaniu ograniczenia wykonywanych napojów do 30, automatycznie graf osiągalności 

zmienia się i przypomina ‘łańcuch’. Związane jest to z tym, iż zostało dodane nowe miejsce P7 
(naniesiono na nim ograniczenie liczby przetrzymywanych znaczników do 30), które przyjmuje 
jedynie znaczniki. Tak więc przyjmując znaczniki zmienia się znakowanie sieci,  z czym wiąże się 
graf osiągalności. 

 

 
 
 
 
 
 
 
 
 
 
 
 

background image

2.2. Nawiązywanie połączenia w protokole TCP (3-way TCP handshak) 

2.2.1.  Sieć Petriege symulująca działanie nawiązywanie połączenia w protokole TCP 

 

 

 

2.2.1.1. 

Badanie własności sieci 

 

 

 

2.2.1.2. 

Graf osiągalności 

 

 

 
 
 
 
 
 
 
 

background image

2.3. Problem producenta i konsumenta 

2.3.1.  Sieć Petriego symulująca problem producenta i konsumenta 

 

 

 

2.3.1.1. 

Badania własności sieci 

 

 

 

2.3.1.2. 

Graf osiągalności 

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 

background image

2.3.2.  Sieć Petriego symulująca problem producenta i konsumenta (2producentów) 

 

 

 

2.3.2.1. 

Badanie zajętości bufora 

 

Po wykonaniu symulacji dla 300 kroków dla sieci z jednym producentem w buforze 

znajdowało się zaledwie 12 znaczników. Natomiast dla wykonania symulacji również dla 300 

kroków dla zamodelowanej sieci Petriego z dwoma konsumentami liczba znaczników w buforze 
znacznie wzrosła (72 znaczniki w buforze). Może to prowadzić do zapchania bufora jeśli zostanie 
ograniczona liczba znaczników jaką może przechowywać.  

 

2.3.3.  Sieć Petriego symulująca problem producenta i konsumenta (2 producentów i 2 

konsumentów) 

 

 

 
 
 
 
 
 
 
 
 

 

background image

2.3.3.1. 

Badania własności sieci 

 

 

   Na powyższym rysunki widać iż zamodelowana sięc jest ograniczona, nie jest bezpieczna jak 
również posiada zakleszczenie. Przedstawiona jest również najktótsza ścieżka wykonywanych 
tranzycji do doprowadzenia sytuacji, w której nastąpi zagłodzenie. Zagłodzenia nastąpi w 
przypadku jak w miejscu P11 liczba dostarczonych znaczników będzie równa ograniczeniu jakie 
zostało naniesione P11 (ograniczenie równe 10 znacznikó). W tym przypadku zagłodzeni zostaną 
producencji jak również konsumencji po skonsumowaniu wszystkich produktów 
wyprodukowanych do tego momentu.  

 

2.3.4.  Sieć Petriego symulująca problem producenta i konsumenta (sygnalizacja 

producenta o skończonej konsumpcji) 

 

 

 

2.3.4.1. 

Badania własności sieci 

 

 

 

Jak widać na rysunku przedstawionym po wyżej, w zamodelowanej sieci nie możliwe jest 

wystąpienei zagłodzenia. 

 

 
 
 
 

background image

3.  Wnioski 

 

Zadanie zostało zrealizowane w programie PIPE, który umożliwia modelowanie sieci 

Petriego. Narzędzie te udostępnia wiele funkcji związanych z modelowaniem jak i również 

testowaniem stworzonych sieci. Głównym celem zadania laboratoryjnego było opracowanie 
kilku sieci i zbadania jej własności, jak również wygenerowanie przy pomocy udostępnianych 
narzędzi graf osiągalności. Po wykonaniu zadania można stwierdzić że sieci Petriego mają 
szerokie zastosowanie co było widać na przykładach dla których były tworzone sieci.