PRZYKLAD modele masowej obsl
Transkrypt
PRZYKLAD modele masowej obsl
Opis tworzenia przykładowych systemów programem Micro Saint Uruchomienie programu Program Micro Saint słu y do symulacji procesów dyskretnych. Działa w rodowisku systemu Windows i w zwi zku z tym ogólny sposób posługiwania si programem jest zgodny ze standardami Windows. Program mo na uruchomi wywołuj c plik saint.exe. W trakcie korzystania z programu dost pna jest pomoc dla u ytkownika (polecenie Help). Definiowanie modelu Definiowanie modelu przebiega w dwu fazach. W fazie pierwszej nale y zdefiniowa topologi modelu, w fazie drugiej - jego parametry. Topologi modelu definiuje si buduj c schemat blokowy (korzystaj c z paska narz dzi znajduj cego si u góry arkusza) składaj cy si z nast puj cych obiektów: Task - obiekt reprezentuj cy np. stanowisko obsługi klientów, maszyn , na której wykonywane s operacje. Queue - kolejka, bufor, itp. umieszczany na wej ciu obiektu Task. Path - poł czenie mi dzy obiektami typu Task, okre laj ce kolejno M obsługi klientów, kolejno wykonywania operacji, itp. Decision node - obiekt decyzyjny, umieszczany automatycznie na rozgał zieniu cie ek. Po zdefiniowaniu topologii modelu nale y okre li parametry funkcjonalne poszczególnych obiektów oraz zdefiniowa zmienne, które b d wyst powa w wyra eniach steruj cych symulacj procesu. Wprowadzenie parametrów danego obiektu (Task, Queue, Decision node) jest mo liwe po wskazaniu kursorem obiektu i podwójnym klikni ciu lewym przyciskiem myszy. Przykładowy Problem Rozwa any jest system obsługi typu (M|M|c) . Klienci zgłaszaj si do systemu zgodnie z rozkładem Poissona (długo czasu mi dzy zgłoszeniami ma rozkład wykładniczy). redni czas mi dzy zgłoszeniami wynosi 1 λ =6. Czas obsługi klienta na stanowisku ma rozkład wykładniczy, przy czym redni czas obsługi wynosi 1 µ =5. Wyznaczy redni czas oczekiwania klienta na obsług w systemie składaj cym si z jednego stanowiska oraz w systemie składaj cym si z 2 równoległych, identycznych stanowisk obsługi. Zbada , jak cz sto nast puje odmowa obsługi, je eli pojemno bufora na wej ciu do systemu o jednym stanowisku wynosi 5. Schemat systemu utworzonego za pomoc programu Micro Saint: N etw o rk 0 M O D E L B 1 G e n era to r z g lo s z e n M 2 S ta n o w i sk o o b slu g i Deklaracje zmiennych nazwa zmiennej warto pocz tkowa clock 0.0 duration 0.0 run 0 seed 564 tag 0 stan 1 lub 2 Typ opis Real Real Integer Integer Integer Integer kol czas_czek wy Integer Real Integer zmienna systemowa - aktualny czas symulacji zmienna systemowa - aktualny czas obsługi klienta lub czas oczekiwania klienta w kolejce zmienna systemowa - numer przebiegu symulacji zmienna systemowa - strumie generatora pseudolosowego zmienna systemowa - numer aktualnego klienta podczas symulacji systemu o jednym stanowisku nale y przyj stan=1, natomiast podczas symulacji systemu składaj cego si z 2 równoległych stanowisk, nale y przyj stan=2 liczba zgłosze oczekuj cych aktualnie w kolejce czas oczekiwania zgłoszenia na obsług liczba obsłu onych zgłosze 0 0 0 Tworzenie generatora zgłosze nazwa pola Name Time Distribution Mean Time Release Condition Ending Effect Opis rozgał zienia cie ek nazwa pola Decision Type What Happens Next: if 1 2 wpisywane wyra enie Generator zgłosze Exponential 6; 1; tag:=tag+1; opis, wynik działania nazwa obiektu rozkład prawdopodobie stwa, według którego generowany jest czas mi dzy zgłoszeniami redni czas mi dzy zgłoszeniami zwi kszenie liczby wygenerowanych zgłosze wpisywane wyra enie Multiple opis, wynik działania generowanie wielu zgłosze tag < 1000; kol<5; je eli liczba zgłosze jest mniejsza od 1000, to generowane jest nowe zgłoszenie wygenerowane zgłoszenie jest przesyłane do kolejki przed stanowiskiem, je eli mniej ni 5 zgłosze oczekuje na obsług 1 Tworzenie kolejki nazwa pola Name Sorting Order Entering Effect Departing Effect wpisywane wyra enie Kolejka FIFO kol:=kol+1; czas_czek:=czas_czek+duration/1000; kol:=kol-1; Tworzenie stanowiska obsługi nazwa pola wpisywane wyra enie Name Stanowisko Time Distribution Exponential Mean Time 5; Release Condition stan>=1; Beginnig Effect stan:=stan-1; Ending Effect stan:=stan+1; wy:=wy+1; opis, wynik działania nazwa kolejki zadania wykonywane s w kolejno ci zgłaszania si zgłoszenie wchodzi do kolejki zmienna czas_czek zwi kszana jest o czas oczekiwania ka dego klienta na obsług , przez podzielenie przez liczb zgłosze otrzymywany jest redni czas oczekiwania klienta w kolejce zgłoszenie wychodzi z kolejki opis, wynik działania nazwa obiektu rozkład prawdopodobie stwa, według którego generowany jest czas obsługi klienta redni czas obsługi klienta stanowisko zaczyna obsługiwa klienta, je eli jest wolne wynik rozpocz cia obsługi klienta wynik zako czenia obsługi klienta zliczanie obsłu onych zgłosze Uruchomienie symulacji i tworzenie statystyk Uruchomienie symulacji nast puje po wywołaniu polecenia Execute/Go. Wykonanie zadanej liczby przebiegów symulacji i zapisanie do pliku ich wyników odbywa si przez wywołanie Execute/Go po wł czeniu opcji Execute/Settings/Snapshots of Variables oraz ustawieniu w polu Number of Times to Run the Model zadanej liczby przebiegów. Warto ci zmiennych okre lonych w Display/Snapshots zostan wówczas zapisane do podanych plików; w oknie Display/Snapshots nale y: poda nazw pliku wynikowego, odpowiednio ustawi pole Trigger Type (np. End of Run, je eli chcemy zapisa warto zmiennej po zako czeniu przebiegu symulacji), w polu Variables to Store nale y poda nazwy zmiennych, których warto ci chcemy zapami ta (np. czas_czek). Aby obejrze wyniki zapisane w pliku po przeprowadzeniu symulacji, nale y otworzy odpowiedni plik (File/Open) z rozszerzeniem .res. Aby wyznaczy rednie warto ci zapisanych wielko ci, nale y wybra Analyze/Statistics. Wzory umo liwiaj ce obliczanie wielko ci operacyjnych dla systemu (M|M|c). λ - rednia liczba zgłosze przybywaj cych w jednostce czasu 1 λ - rednia długo czasu mi dzy zgłoszeniami µ - rednia liczba zgłosze , które mogłyby zosta obsłu one na jednym stanowisku w jednostce czasu c - liczba identycznych równoległych stanowisk obsługi wielko oznaczenie warto dla systemu o jednym warto dla systemu o dowolnej liczbie identycznych stanowisku (c=1) równoległych stanowisk ρ 1µ 1 cµ λ µ 1− ρ λ cµ Lq ρ2 1− ρ ρ ( cρ ) c Π 0 c!(1 − ρ )2 L ρ redni czas obsługi intensywno ruchu prawdopodobie stwo, e w systemie nie Π 0 ma adnego zgłoszenia rednia długo kolejki rednia liczba klientów w systemie redni czas oczekiwania w kolejce redni czas przebywania klienta systemie Wq w W 1− ρ ρ µ (1 − ρ ) 1 µ (1 − ρ ) ( cρ ) c + c! (1 − ρ ) Lq + c −1 n=0 (cρ )n n! −1 λ µ (cρ )c Π 0 c!cµ (1 − ρ )2 Wq + 1 µ 2