background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

1

Projekt i implementacja 

symulatora sieci SMO

Sprawozdanie

Autor: Rafał Lemancewicz I8E1S1

Prowadzący zajęcia: mgr inż. Michał Kapałka

Ocena:

Część modelowa

Część implementacyjna

Oceniany element

Punkty

Oceniany element

Szczegółowość modelu

/15

Wprowadzanie danych

„Elastyczność” modelu

/5

Przebieg symulacji

Prezentacja aspektów 
dynamicznych

/15

Wyniki symulacji

Zbierane charakterystyki

/5

Wykorzystanie bibliotek symulacyjnych

Sprawozdanie cz. 1

/10

Wykonywanie eksperymentów
Organizacja kodu
Sprawozdanie cz. 2

Suma punktów

/50

Suma punktów

Ocena

Ocena

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

2

1. Część modelowa

1.1 Wybrany system SMO - założenia

Wybrane parametry systemu masowej obsługi:

Generator z rozkładem Weibulla, zgłoszenia wchodzą do systemu pojedynczo

Gniazdo O1 z rozkładem jednostajnym, 2 kanały

Gniazdo O2 z rozkładem normalnym, 1 kanał

Gniazdo O3 z rozkładem trójkątnym, 1 kanał

Kolejka 1 ograniczona, FIFO

Kolejka 2 nieograniczona, LIFO

Kolejka 3 nieograniczona, FIFO

Zmienne losowe czasu czekania na zgłoszenie i czasu obsługi są niezależne.

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

3

1.2.

Model systemu - obiekty, aktywności, zdarzenia

a) obiekty:

Gniazdo1Obj

Gniazdo2Obj

Gniazdo3Obj

Kolejka1Obj

Kolejka2Obj

Kolejka3Obj

GeneratorObj

KlientObj

b) aktywności:

Generuj - generuje nowego klienta, używana przez GeneratorObj

Obsługuj - obsługuje klienta, używana przez Gniazdo1Obj, Gniazdo2Obj, 
Gniazdo3Obj

c) zdarzenia:

Ustaw, używane przez wszystkie obiekty

Wstaw, używane przez Kolejka1Obj, Kolejka2Obj, Kolejka3Obj

UstawCzas, używane przez KlientObj, Kolejka1Obj, Kolejka2Obj, 
Kolejka3Obj

UsunKlienta, używane przez KlientObj

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

4

1.3.

Model - aspekty dynamiczne

Losowe odstępy czasu przy generowaniu nowych elementów systemu

Losowe odstępy czasu obsługi klientów w gniazdach

Czas obsługi klienta w gnieździe jest zmienną losową

Usuwanie klienta w przypadku, gdy kolejka jest przepełniona

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

5

1.4.

Dane wejściowe

parametry dla generatora z rozkładem Weibulla (intensywność 
strumienia zgłoszeń)

parametry dla gniazda 1 z rozkładem jednostajnym

parametry dla gniazda 2 z rozkładem normalnym

parametry dla gniazda 3 z rozkładem trójkątnym

zadeklarowana liczba dostępnych miejsc w kolejce 1

wartości prawdopodobieństw p1, p2, p3

liczba klientów

1.5.

Dane wyjściowe

czas przebywania klienta w systemie (średnia, odchylenie standardowe)

czas przebywania klienta w O1 (średnia, odchylenie standardowe)

czas przebywania klienta w O2 (średnia, odchylenie standardowe)

czas przebywania klienta w O3 (średnia, odchylenie standardowe)

czas przebywania klienta w kolejce 1 (średnia, odchylenie standardowe)

czas przebywania klienta w kolejce 2 (średnia, odchylenie standardowe)

czas przebywania klienta w kolejce 3 (średnia, odchylenie standardowe)

prawdopodobieństwo obsłużenia klienta w O1

prawdopodobieństwo obsłużenia klienta w O2

prawdopodobieństwo obsłużenia klienta w O3

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

6

1.6.

Wnioski

       Celem projektu było zamodelowanie zachowania się systemu z wieloma 
stanowiskami obsługi. Rozpatrywany był system z wieloma gniazdami i kolejkami, po 
jednej do każdego stanowiska. Głównym zadaniem projektowym, było 
zasymulowanie takiego systemu i zbadanie jego zachowania. 

System działa w następujący sposób: generator dodaje klientów do systemu w 
czasie określonym przez rozkład Weibulla, następnie trafiają one do ograniczonej 
kolejki FIFO, skąd trafiają do gniazda obsługi. Następnie klienci trafiają z ustalonymi 
przez użytkownika prawdopodobieństwami do jednego z dwóch gniazd obsługi. Po 
wyjściu z drugiego lub trzeciego gniazda klient może pozostać w systemie lub go 
opuścić.

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

7

2. Część implementacyjna

   2.1. Zaimplementowane obiekty

RandomObj - dostarcza rozkłady statystyczne dla generowanych losowo liczb

TriggerObj - obiekt wyzwalacza

ALL FileUseType – wszystkie opcje dla wejście/wyjście ASCII oraz wartości 
binarnych

StreamObj - strumien wejscia/wyjścia

QueueObj - kolejka FIFO

StackObj - kolejka LIFO

RankedObj - kolejka priorytetowa

StatQueueObj – kolejka FIFO plus dane statystyczne

StatStackObj – sumuje liczbę obiektów zebranych w kolejce LIFO

StatRankedObj – sumuje liczbę obiektów zebranych w kolejce priorytetowej

ITimedStatObj - czasowo ważona statystyka dla INTEGER

RStatObj - monitor statystyczny dla REAL

IStatObj - monitor statystyczny dla INTEGER

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

8

2.2. Wykorzystanie bibliotek symulacyjnych

RandMod      –    dostarcza   możliwość   generowania    liczb  losowych,   w   skład

     zaimportowanych obiektów wchodzą:

           RandomObj

MathMod       –    dostarcza    możliwość    wykorzystania    podstawowych    funkcji

     matematycznych

           SQRT – zwraca pierwiastek kwadratowy z liczby

SimMod – dostarcza interfejs dla przeprowadzenia symulacji, w skład

     zaimportowanych funkcji i obiektów wchodzą:

           SimTime - zwraca bieżący czas symulacji

           StartSimulation - rozpoczyna symulacje

           StopSimulation – zatrzymuje symulacje

           InerruptMethod – przesyła wiadomość przerwania do specjalnej metody

            opisanej przez „activity”

           Interrupt - powoduje ze metoda zadanego typu odbiera wiadomość przerwania

            po powrocie z oczekiwania

           TriggerObj

IOMod – dostarcza funkcjonalność interfejsu wejścia/wyjścia, w skład zaimportowanych

     obiektów wchodzą:

           ReadKey –zatrzymuje wyniki rozwiązania na ekranie

           ALL FileUseType

           StreamObj

GrpMod – dostarcza funkcjonalność do reprezentowania i przechodzenia poprzez grupy

     elementów, w skład zaimportowanych obiektów wchodzą:

           QueueObj

           StackObj

           RankedObj

           StatQueueObj

           StatStackObj

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

9

           StatRankedObj

StatMod - dostarcza statystykę dla obiektów, w skład zaimportowanych obiektów i

     zmiennych wchodzą:

           SREAL - statystyki dla obiektu REAL

TSINTEGER - statystyki czasowo ważone dla INTEGER

ITimedStatObj

RStatObj

IStatObj

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

10

2.3.

Wprowadzanie danych wejściowych

Dane podawane w programie:

parametry rozkładów dla gniazd i generatora

długość kolejek

liczba „okienek” obsługi w gniazdach

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

11

2.4.

Przebieg symulacji

Podczas procesu symulacji następuje wyświetlanie poniższych informacji:

czas wystąpienia zdarzeń

rodzaj zdarzeń

Przykładowe komunikaty wyświetlane podczas symulacji:

Generator: Wygenerowano klienta nr.: 4

Gniazdo1 klient nr: 4 priorytet 14

Gniazado1 dodano klienta nr: 4 SimTime 0.069467

Generator: Wygenerowano klienta nr.: 5

Gniazdo1 klient nr: 5 priorytet 17

Gniazdo1 dodano klienta nr: 5 SimTime 0.069467

Gniazdo1 pobrano do obslugi klienta nr 3 czas: 0.069467

Gniazdo1 pobrano do obslugi klienta nr 5 czas: 0.069467

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

12

2.5.

Wyniki symulacji

Wynikami symulacji są następujące charakterystyki:

Średnie czasy przebywania klienta

Liczba klientów

Liczba zajetych kanałów

Liczba klientów w kolejce

Prawdopodobieństwa

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

13

2.6.

WIelokrotne przeprowadzenie eksperymentów

Eksperyment można przeprowadzić wielokrotnie dzięki ręcznemu wprowadzaniu 
danych przez użytkownika. Dane (wyniki) są zapisywane do pliku. Wynik 
przeprowadzenia eksperymentu widoczny jest w czasie działania programu.

Rafał Lemancewicz, I8E1S1

     

background image

Sprawozdanie – projekt i implementacja symulatora Sieci SMO

Wojskowa Akademia Techniczna, Podstawy symulacji, Zajęcia 

laboratoryjne

14

2.7.

Wnioski

Możliwość wielokrotnego przeprowadzenia eksperymentu dla różnych danych
pokazuje, że program nie zawsze będzie działać. Wszystko zależy od tego jakie dane 
będziemy wpisywać między innymi dla poszczególnych rozkładów. Może zaistnieć 
sytuacja, że w wyniku źle dobranych danych nie nastąpi pożądany przepływ 
klientów. Stąd wniosek, że dane nie mogą być dowolne. Warto także podkreślić, że 
wpływ na działanie SMO ma również liczba oczekujących klientów. Im większa liczna 
klientów i krótsza kolejka tym dłuższa jest symulacja.

W programie istnieje możliwość włączenia lub wyłączenia komunikatów w trakcie 
działania symulacji. Włączenie komunikatów pozwala nam obserwować jak 
następuje przypływ klientów w poszczególnych SMO, czy jest on zajęty, czy klient 
jest obsługiwany itp.

Rafał Lemancewicz, I8E1S1

     


Document Outline