970 likes | 1.5k Views
MODELOWANIE SYMULACYJNE Simulation Modelling (ang.) Edycja 2013/2014. Wykład (15h), Laboratorium (15h). Roman Pietroń , dr inż. I-23 PWr ., B4 p. 423 (B1 413) e-mail : roman.pietron@pwr.wroc.pl http://www.ioz.pwr.wroc.pl/pracownicy/pietron Konsultacje:
E N D
MODELOWANIE SYMULACYJNESimulationModelling (ang.)Edycja 2013/2014 Wykład (15h),Laboratorium (15h)
Roman Pietroń, dr inż.I-23 PWr., B4 p. 423 (B1 413) e-mail: roman.pietron@pwr.wroc.pl http://www.ioz.pwr.wroc.pl/pracownicy/pietron Konsultacje: Poniedziałek 1100 - 1300 (Wrocław PWr., B4, 423) Czwartek 1300 - 1500 (Wrocław PWr., B4, 423)
Bibliografia podstawowa • Gajda J.B., Prognozowanie i symulacja a decyzje gospodarcze, C.H.Beck Warszawa, 2001. • Mielczarek B., Modelowanie symulacyjne w zarządzaniu. Symulacja dyskretna, Oficyna PWr., Wrocław, 2009. • Pietroń R., Modelowanie symulacyjne. Wybrane zagadnienia, E-Materiał PWr., 2012. http://www.ioz.pwr.wroc.pl/pracownicy/pietron • Pietroń R., Zbiór zadań z modelowania symulacyjnego, E-Materiał PWr., 2012. http://www.ioz.pwr.wroc.pl/pracownicy/pietron • Maciąg A., Pietroń R., Kukla S., Prognozowanie i symulacja w przedsiębiorstwie, Wyd. PWE Warszawa 2013. • Zeigler B.P., Teoria modelowania i symulacji, PWN Warszawa, 1984.
Bibliografia uzupełniająca • Fishman G.S., Symulacja komputerowa. Pojęcia i metody, PWE Warszawa 1981. • Gordon G., Symulacja systemów, WNT Warszawa, 1974. • Kondratowicz L., Modelowanie symulacyjne systemów, WNT Warszawa, 1978. • Kowal R., Stanek S., Zadora Żytniewski P., Symulacja komputerowa z wykorzystaniem modeli Dynamiki Systemowej, ss. 40-78 [w:] Modele hybrydowe w podejmowaniu finansowych decyzji gospodarczych, praca zb. Pod red. S.Stanka, AE Katowice, 2007. • Krupa K., Modelowanie symulacja i prognozowanie. Systemy ciągłe, WNT Warszawa, 2008. • Naylor T.H., Modelowanie cyfrowe systemów ekonomicznych, PWN Warszawa, 1975. • Nowak M., Symulacja komputerowa w problemach decyzyjnych, AE Katowice, 2007. • Tarajkowski J. (red.), Elementy dynamiki systemów, AE Poznań, 2008. • Tyszer J., Symulacja cyfrowa, WNT Warszawa, 1990.
Bibliografia uzupełniająca – cd. Systemy modelowania i symulacji – oprogramowanie, tutorial: • Produkt Demo: Vensim PLE - Ventana Systems, Inc.: http://www.vensim.com • Produkt Demo: IThink- High Performance Systems: http://www.iseesystems.com • Produkt Demo: GPSS World - Minuteman Software: http://www.minutemansoftware.com • Produkt Demo: ExtendSim- ImagineThat!: http://www.imaginethatinc.com • Produkt Edu: ARENA – Rockwell Software Inc. (Systems Modeling Corp.): http://www.software.rockwell.comhttp://www.arenasimulation.com • Produkt Demo:iGrafxProcess for Six Sigma 2013- MGX-Corel Corp.: http://www.igrafx.com
Bibliografia – poziom zaawansowany Czasopisma: • System Dynamics Review • Simulation • Simulation & Gaming • Simulation Modelling. Practice and Theory
CEL PRZEDMIOTU Celem kursu jest dostarczenie podstawowych wiadomości o symulacji jako metodzie badania i analizy systemów dynamicznych, przygotowanie do korzystania z języków i systemów narzędziowych modelowania i symulacji komputerowej oraz do współpracy z symulogami.
TEMATY ZAJĘĆ WYKŁADOWYCH (RP) • Wprowadzenie do modelowania symulacyjnego. Przykłady modeli i badań. • Zagadnienia ogólne. Etymologia, źródła historyczno-filozoficzne. • Zagadnienia metodologiczne. Definicje, struktury, budowa modeli, weryfikacja, eksperyment symulacyjny, wnioskowanie. • Metody i techniki modelowania symulacyjnego: symulacja ciągła (metoda J.W.Forrestera), symulacja dyskretna (metody planowania zdarzeń, przeglądu i wyboru działań, interakcji procesów), symulacja za pomocą gier, symulacja rozproszona, technologia agentowa w symulacji. • Zastosowania badań symulacyjnych w ekonomii i zarządzaniu. • Problemy przekazywania wyników symulacji. Dokumentowanie projektów symulacyjnych i standaryzacja. Profesjonalizm i etyka w symulacji. • Podsumowanie i zaliczenie wykładu
FORMA ZALICZENIA LABORATORIUM Obecność (15%), Pytania kontrolne (20%), Aktywność (25%), Sprawozdania (40%) Termin zaliczenia: Ostatnie zajęcia w semestrze
OCENY • Celujący 5.5 (≥ 95%), • Bardzo dobry 5.0 (≥ 85%), • Ponad dobry 4.5 (≥ 75%), • Dobry 4.0 (≥ 65%), • Ponad dostateczny 3.5 (≥ 55%), • Dostateczny 3.0 (≥ 45%), • Niedostateczny 2.0 (< 45%).
TEMATY ZAJĘĆ LABORATORYJNYCH • Wprowadzenie. Pojęcie systemu i modelu systemu. Konceptualizacja modelu systemu dynamicznego. Myślenie systemowe. (1 godzina). • Metoda Monte Carlo – próbkowanie i symulacja. Zastosowanie arkusza kalkulacyjnego Excel. (2 godziny) • Interakcja procesów - metoda symulacji dyskretnej. Zastosowanie języka GPSS World, systemów Arena, ExtendSim. (4 godziny) • Projekt i budowa modelu symulacyjnego systemu dynamicznego o charakterystyce dyskretnej. Eksperyment i wnioskowanie z badań. (1godzina) • "Dynamika systemów" - metoda J.W.Forrestera symulacji ciągłej. Zastosowanie systemów zintegrowanych modelowania i symulacji Vensim/IThink. Przykłady modelowania i symulacji. (4 godziny) • Projekt i budowa modelu symulacyjnego systemu dynamicznego o charakterystyce ciągłej. Eksperyment i wnioskowanie z badań. (1godzina) • Podsumowanie i zaliczenie zajęć. (2godziny)
Laboratorium 1-4 Podstawy metodologiczne symulacji Pojęcie systemu i konceptualizacja modelu systemu Symulacja dyskretna Metoda Monte Carlo (finanse, ryzyko,…) Modelowanie zdarzeń, czynności, procesów
Definiowanie systemu • Idea wyodrębnienia systemu z otoczenia (system jako pewna wyodrębniona całość) • Idea budowy systemu z elementów, podsystemów(system jako złożenie wzajemnie oddziałujących elementów) • Idea funkcji spełnianej przez system (system jest całością o określonej funkcji) • Idea zmienności (ograniczonej) systemu w czasie (system jako całość zmienna w czasie ale zachowująca istotę – właściwości podstawowe)
Czynniki modelowania • Cel budowy modelu • Cel funkcjonowania systemu • Otoczenie systemu • Obiekty systemu (agenci systemu) • Atrybuty obiektów systemu • Pomiar atrybutów obiektów systemu • Relacje pomiędzy atrybutami i obiektami • Metody, techniki, narzędzia modelowania
OGÓLNA CHARAKTERYSTYKA METOD SYMULACYJNYCH Metoda symulacyjna Sposób budowy modelu systemu dynamicznego (modelowania) i znajdywania rozwiązań tego modelu (wartości zmiennych stanu). • Metody symulacji ciągłej Cecha charakterystyczna: wykorzystanie funkcji ciągłych w opisie formalnym charakterystyk zmiennych stanu systemu (zmiana stanu systemu jako funkcja ciągła); wykorzystanie funkcji ciągłych lub quasi-ciągłych w opisie zjawiska upływu czasu. Przykłady: metoda układu równań różniczkowych, metoda Dynamiki Systemów (SD). • Metody symulacji dyskretnej Cecha charakterystyczna: wykorzystanie funkcji dyskretnych w opisie formalnym charakterystyk zmiennych stanu systemu (zmiana stanu systemu jako funkcja dyskretna); wykorzystanie funkcji dyskretnych w opisie zjawiska upływu czasu. Przykłady: metoda planowania zdarzeń, metoda przeglądu i wyboru działań, metoda interakcji procesów. • Metody symulacji mieszanej (hybrydowe) Cecha charakterystyczna: wykorzystanie funkcji dyskretnych i ciągłych w opisie formalnym charakterystyk zmiennych stanu systemu (zmiana stanu systemu jako funkcja dyskretna i ciągła); wykorzystanie funkcji dyskretnych, ciągłych i quasi-ciągłych w opisie zjawiska upływu czasu. Przykłady: połączenie metod symulacyjnych, połączenie symulacji i AI, gry symulacyjne, połączenie symulacji na modelach formalnych i fizycznych.
Symulacja ciągła a dyskretna • Symulacja ciągła („podejście makroskopowe”) • zmiany stanu systemu opisane są funkcjami ciągłymi, • zazwyczaj systemy o funkcjonowaniu ciągłym. • Symulacja dyskretna („podejście mikroskopowe”) • zmiany stanu systemu opisane są funkcjami dyskretnymi, • zazwyczaj systemy o funkcjonowaniu dyskretnym.
Języki i systemy modelowania dyskretnego(przykłady) • GPSS (GPSS/H, GPSS World) • Arena • ExtendSim • ...
ETAPY BUDOWY I WYKORZYSTANIA MODELU SYMULACYJNEGO Podmioty: odbiorca wyników symulacji, symulog • Określenie systemu, sytuacji problemowej i celu budowy modelu • Budowa modelu (konceptualizacja, formalizacja) • Przygotowanie danych wejściowych symulacji • Programowanie modelu (operacjonalizacja modelu) • Ocena zasadności i weryfikacja modelu (eksperyment wstępny) • Planowanie eksperymentu symulacyjnego • Realizacja eksperymentu symulacyjnego (eksperyment właściwy) • Analiza i interpretacja wyników symulacji • Dokumentowanie symulacji • Praktyczne wykorzystanie wyników symulacji
Praktyka modelowania symulacyjnego • Typ 1: modelowanie symulacyjne jako projekt budowy symulatora (inżynieria oprogramowania) • Typ 2: modelowanie symulacyjne jako projekt budowy i rozgrywki gry symulacyjnej (gra) • Typ 3: modelowanie symulacyjne jako projekt (proces) zmian organizacyjnych (interwencja) • Typ 4: modelowanie symulacyjne jako projekt grupowego budowania modeli (dyskusja) • Typ 5: modelowanie symulacyjne jako podprojekt modelowania procesów (moduł BPM)
Przykład modelowania symulacyjnego systemu ciągłego • System logistyczny „zaopatrzenie-produkcja-dystrybucja” Zbuduj model symulacyjny opisujący dynamikę zmian w systemie „produkcja-dystrybucja” z odwzorowaniem popytu i podaży dóbr trwałego użytku. System składa się sektorów: klienci, detaliści, dystrybutorzy, hurtownicy, producenci, fabryki. Zamówienia złożone przez klientów wpływają na funkcjonowanie pozostałych sektorów. Klienci zakupują towary u detalisty, który dostarcza towary klientom, jeśli dysponuje odpowiednim zapasem. Detalista składa zamówienia u dystrybutora, który dostarcza towar detaliście a sam składa zamówienia u hurtownika, który z kolei zaopatruje się u producenta. Producent może dostarczać towar dzięki dostawom z fabryk, które je produkują. Czas dostawy pomiędzy dwoma sąsiadującymi sektorami jest stały i wynosi 1 dzień. Z kolei czas przygotowania i przepływu zamówień traktowany jest jako pomijalnie mały (tryb natychmiastowy). W przypadku, gdy zapasy w danym sektorze nie pozwalają na pełną wysyłkę towaru, wysyła się tyle ile jest możliwe. Zamówienia zaległe realizowane są w przyszłości. Wykonaj schemat przyczynowo-skutkowy, schemat strukturalny oraz podaj równania modelu. Określ na podstawie analizy struktury typ zachowania się odwzorowanego systemu.
Detalista(t) = Detalista(t - dt) + (DostDyDe - Sprzedaz) * dt INIT Detalista = 4 DostDyDe = ZamDet/TDDe Sprzedaz = ZamKlienta/TDK Dystrybutor(t) = Dystrybutor(t - dt) + (DostHuDy - DostDyDe) * dt INIT Dystrybutor = 4 DostHuDy = ZamDyst/TDDy DostDyDe = ZamDet/TDDe Hurtownik(t) = Hurtownik(t - dt) + (DosPrHu - DostHuDy) * dt INIT Hurtownik = 4 DosPrHu = ZamHur/TDHu DostHuDy = ZamDyst/TDDy Producent(t) = Producent(t - dt) + (DosFaPr - DosPrHu) * dt INIT Producent = 4 DosFaPr = DosPrHu+(NPr-Producent)/TDP DosPrHu = ZamHur/TDHu ZamDet(t) = ZamDet(t - dt) + (ZDe - DDe) * dt INIT ZamDet = 4 ZDe = DK+(NDe-Detalista)/DT DDe = DostDyDe ZamDyst(t) = ZamDyst(t - dt) + (ZDy - DDy) * dt INIT ZamDyst = 4 ZDy = DDe+(Ndy-Dystrybutor)/DT DDy = DostHuDy ZamHur(t) = ZamHur(t - dt) + (ZH - DH) * dt INIT ZamHur = 4 ZH = DDy+(NHu-Hurtownik)/DT DH = DosPrHu ZamKlienta(t) = ZamKlienta(t - dt) + (PK - DK) * dt INIT ZamKlienta = 4 PK = PopytKlienta OUTFLOWS: DK = Sprzedaz NDe = 4 Ndy = 4 NHu = 4 NPr = 4 PopytKlienta = 4+STEP(8,10) TDDe = 1 TDDy = 1 TDHu = 1 TDK = 1 TDP = 1
Przykład modelowania symulacyjnego systemu dyskretnego • SYMULACJA FUNKCJONOWANIA BANKU *************************************************************************** * Symulacja Banku * * Jednostka czasu: godzina * *************************************************************************** Czas EQU 0.1112 ;Średni czas obsługi (komentarz od znaku ;) Kod VARIABLE C1+10 ;Kod czasu dla Urzednik2. Func1 FUNCTION RN1,D2 ;Definicja skumulowanej funkcji gęstości prawdopodobieństwa .7,Urzednik1/1,Urzednik2 ;wyboru urzędnika. Klienci wybierają Urzednika1 z ;prawdopodobieństwem 0.7, Urzędnika2 z prawdopodo;bieństwem 0.3. GENERATE 0.0834,0.0278 ;Kreowanie (generowanie) kolejnego klienta w banku. ASSIGN Urzednik_nr,FN$Func1 Przypisanie numeru urzędnika do parametru transakcji. QUEUE P$Urzednik_nr; ;Początek dla statystyki kolejkowej. SEIZE P$Urzednik_nr ;Zajęcie urzędnika. DEPART P$Urzednik_nr ;Koniec dla statystyki kolejkowej. ADVANCE CzasObslugi,0.0028 ;Wykonanie obsługi klienta. RELEASE P$Urzednik_nr ;Zwolnienie urzędnika. TERMINATE ;Klient opuszcza bank. *************************************************************************** * Segment 2 * * Zegar i zbieranie statystyk * *************************************************************************** GENERATE ;Pomiar statystyk co 1 godzinę pracy banku. SAVEVALUE C1,Q$Urzednik1 ;Pomiar długości kolejki przed Urzednik1. SAVEVALUE V$KodCzasu,Q$Urzednik2 ;Pomiar długości kolejki przed Urzednik2 TERMINATE 1 ;Koniec kolejnej godziny pracy banku START 8 ;Symulacja 8 godzinnego dnia pracy banku
Wyniki symulacji • Raport symulacji GPSS World Simulation Report - Sample6-Bank.1.1 Friday, January 02, 2004 11:17:34 START TIME END TIME BLOCKS FACILITIES STORAGES 0.000 8.000 12 2 0 NAME VALUE CZASOBSLUGI 0.111 FUNC1 10002.000 KODCZASU 10001.000 URZEDNIK1 10004.000 URZEDNIK2 10005.000 URZEDNIK_NR 10003.000 FACILITY ENTRIES UTIL. AVE. TIMEAVAIL. OWNER PEND INTER RETRY DELAY 10004 70 0.968 0.111 1 102 0 0 0 2 10005 25 0.346 0.111 1 0 0 0 0 0 QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY 10004 8 2 72 3 3.924 0.436 0.455 0 10005 1 0 25 18 0.042 0.013 0.048 0
ODWZOROWANIE UPŁYWU CZASU W MODELACH SYMULACYJNYCH • Symulacja ciągła - metoda stałego kroku • Symulacja dyskretna - metoda kolejnych zdarzeń Oznaczenia: E1, E2, ... - zdarzenie nr 1, zdarzenie nr 2, ... T1, T2, ... - czas bieżący symulacji w chwili nr 1, chwili nr 2, ... DT - krok symulacji (wielkość przesunięcia bieżącego)
Różnice: • Metoda krokowa (stałego kroku w symulacji ciągłej): • w symulacji uwzględnia się brak aktywności systemu (obliczenia bez zdarzeń), • przetwarzanie zdarzeń traktowanych jako równoczesne na końcu odcinka DT, • istnieje DT (problem doboru wartości); • Metoda kolejnych zdarzeń (w symulacji dyskretnej): • w symulacji nie uwzględnia się braku aktywności systemu (tylko dla zdarzeń), • brak przetwarzania zdarzeń jako równoczesnych (wyjątek: Ei = Ej), • brak DT.
Metoda Monte Carlo • Algorytm metody: • Wybór losowych zmiennych wejściowych(rozkłady prawdopodobieństw) • Wybór zmiennych wyjściowych(ustalenie formuł i algorytmu obliczeń) • Wykonanie obliczeń dla n obserwacji: • Generowanie zmiennych losowych(np. popyt, …) • Wyznaczenie zmiennych wyjściowych(formuły, algorytm) • Powtórzenia (n obserwacji) • Wyznaczenie statystyk wyjściowych(np. średnia, odchylenie standardowe, odchylenie kwadratowe, wariancja, przedziały ufności) • Wykonanie obliczeń dla k replikacji: • Powtórzenia n prób (k replikacji)(k powtórzeń w jednym eksperymencie) • Eksperymenty(rozkłady prawdopodobieństw) • Wyniki obliczeń: • Średnia arytmetyczna • Odchylenie standardowe (ocena rozproszenia) • Odchylenie kwadratowe (ocena rozproszenia) • Wariancja (ocena rozproszenia) • Współczynnik skośności (miara asymetrii rozkładu) • Kurtoza(wyostrzenie rozkładu) • Przedział ufności (pokrycie z zadanym prawdopodobieństwem prawdziwej wartości dla charakterystyki rozkładu)
Przykład zastosowania metodyMonte Carlo - problem • Problem: Sprzedawca jabłek chciałby określić średnią liczbę dni, w ciągu których sprzeda 40 kg (wtedy ponownie zakupi nową partię jabłek do sprzedaży).
Przykład zastosowania metodyMonte Carlo - dane • Sprzedawca zaobserwował, że popyt na jabłka w kolejnych 20 dniach kształtował się następująco: Prawdopodob. Skumulowane (obliczone) prawdopodob. 2/20=0,10 0,10 3/20=0,15 0,25 4/20=0,20 0,45 6/20=0,30 0,75 4/20=0,20 0,95 1/20=0,05 1,00 20/20=1,00 Popyt na jabłka Częstość(kg) (liczba dni) 0 2 1 3 2 4 3 6 4 4 5 1 Razem: 20 dni
Przykład zastosowania metodyMonte Carlo - podejścia • Sprzedawca zaobserwował, że: • P(sprzedaż 0 kg jabłek dziennie) = 0.10 • P(sprzedaż 1 kg jabłek dziennie) = 0.15 • P(sprzedaż 2 kg jabłek dziennie) = 0.20 • P(sprzedaż 3 kg jabłek dziennie) = 0.30 • P(sprzedaż 4 kg jabłek dziennie) = 0.20 • P(sprzedaż 5 kg jabłek dziennie) = 0.05 • Oczekiwany dzienny popyt to • 0.1*0 + 0.15*1 + 0.20*2 + 0.30*3 + 0.20*4 +0.05*5 = 2,5 kg/dzień • Rozwiązanie teoretyczne: wartość oczekiwana czasu pomiędzy dostawami • 40/(0.1*0 + 0.15*1 + 0.20*2 + 0.30*3 + 0.20*4 +0.05*5) = 40/2.5 = 16 dni • W celu sprawdzenia rozwiązania można przeprowadzić „symulację” - próbkowanie
Przykład zastosowania metodyMonte Carlo - próbkowanie • „Symulacja” trwa do momentu, w którym całkowita sprzedaż osiągnie 40 kg. • Powtórna „symulacja” zakończy się najprawdopodobniej przy innej liczbie dni. • Powtórzenie 1: 18 dni • Powtórzenie 2: 14 dni • ... W Excelu liczby losowe generowane są za pomocą funkcji LOS()
Metoda Monte Carlo – użyteczne funkcje arkusza Excel • LOS() • WYSZUKAJ.PIONOWO(…) • JEŻELI(…) • SUMA(…) • ŚREDNIA(…) • ODCH.STANDARDOWE(…) • UFNOŚĆ(…) • MIN(…)
Modelowanie procesów dyskretnych – zdarzenia w procesach Są 2 typy zdarzeń: • bezwarunkowe, jako zdarzenia bezpośrednio zależne od czasu; • warunkowe, jako zdarzenia pośrednio zależne od czasu i wyznaczone stanami systemu.
Podstawowe elementymodeli dyskretnych • Zegar systemu, który jest obiektem dynamicznym rejestrującym czas systemu rzeczywistego; • Kalendarz systemu, który jest obiektem dynamicznym zawierającym zegar systemu oraz zbiór informacji o zdarzeniach (typ zdarzeń, parametry zdarzeń); • Transakcje, które są obiektami dynamicznymi systemu pojawiającymi się w systemie jako zgłoszenia o określonych atrybutach; • Zasoby systemu, które są obiektami statycznymi systemu (jednokanałowe, wielokanałowe stanowiska obsługi) wraz z regulaminami kolejkowymi i obsługowymi.
Podstawowe elementymodeli dyskretnych • Liczniki statystyczne Zmienne z informacją statystyczną o funkcjonowaniu systemu. • Generator liczb losowych Moduł obliczania liczb pseudolosowych o podanym rozkładzie prawdopodobieństwa. • Moduł inicjalizacji symulacji Moduł uruchomienia symulacji dla czasu zerowego. • Moduł zmiany czasu Moduł wyznaczający następne zdarzenie z kalendarza i zmieniający czas symulacji. • Moduł obsługi zdarzeń Moduł przetwarzający stan systemu przy zajściu zdarzenia (moduł dla każdego typu zdarzenia). • Generator raportu symulacji Moduł obliczania estymatorów dla miar funkcjonowania systemu (dla liczników statystycznych) oraz prezentacji raportu na koniec symulacji. • Program główny symulacji Podprogram uruchamiania modułów: zmiany czasu, obsługi zdarzeń w celu wyznaczenia zmiany stanu systemu.
Metody modelowania dyskretnego • Planowanie zdarzeń (Event Oriented) Polega na zastosowaniu w modelu obiektu o nazwie kalendarz zdarzeń definiującego następstwo typów zdarzeń bezwarunkowych oraz szczegółowym opisie czynności, które są realizowane w systemie po zajściu określonego zdarzenia. • Przegląd i wybór działań (Activity Oriented) Polega na rozpatrywaniu wszystkich działań systemu celem określenia, które z nich z chwilą zajścia określonego zdarzenia powinny być rozpoczęte, a które zakończone. • Interakcja procesów (Process Oriented) Łączy w sobie cechy charakterystyczne metod planowania zdarzeń oraz przeglądu i wyboru działań. Polega na grupowaniu działań w procesy wykonywane na pojedynczych dynamicznych obiektach (transakcjach) systemu i rejestracji ich stanu od chwili pojawienia się w systemie do chwili zaniku.
Język GPSS – podstawowe bloki • GENERATE – Kreowanie transakcji i umieszczenie jej w łańcuchu FEC. TERMINATE – Kasowanie transakcji, zmniejszenie licznika. PRIORITY – Modyfikacja priorytetu transakcji. ASSIGN – Modyfikacja parametru transakcji. • ADVANCE – Opóźnienie transakcji: umieszczenie jej w łańcuchu FEC. • QUEUE – Początek statystyki kolejkowej: zwiększenie zawartości. DEPART – Koniec statystyki kolejkowej: zmniejszenie zawartości kolejki. • SEIZE – Zajęcie stanowiska obsługi 1-kanałowej. RELEASE – Zwolnienie stanowiska obsługi 1-kanałowej. • ENTER – Zajęcie jednostki stanowiska wielokanałowego (magazynu). LEAVE – Zwolnienie stanowiska obsługi wielokanałowej. • FAVAIL – Zmiana statusu stanowiska 1-kanałowego na „dostępny”. FUNAVAIL - Zmiana statusu stanowiska 1-kanałowego na „niedostępny”. • SAVAIL – Zmiana statusu stanowiska obsługi wielokanałowej na „dostępne". SUNAVAIL – Zmiana statusu stanowiska obsługi wielokanałowej na „niedostępne". • TEST – Testowanie wartości wyrażenia i modyfikacja przepływu transakcji. GATE – Testowanie i modyfikacja w sekwencji przepływu transakcji. TRANSFER – Przemieszczenie transakcji do określonego bloku. • MARK – Zapis wartości czasu z zegara w parametrze transakcji. TABULATE– Zmiana zawartości obiektu tablicowego.
PRZYKŁAD PROGRAMU SYMULACYJNEGO W JĘZYKU GPSS • Program źródłowy 1 GENERATE 18,6 Zgłoszenie się klienta co 18 ± 6 minut ADVANCE 0.5 Opóźnienie: wieszanie płaszcza SEIZE JANZajęcie stanowiska obsługi JAN przez klienta ADVANCE 15,3 Opóźnienie: obsługa w czasie 15 ± 3 minuty RELEASE JANZwolnienie stanowiska obsługi JAN TERMINATE 1Wyjście klienta: aktualny stan licznika -1 * START 100Start przebiegu symulacji dla 100 klientów
PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE ARENA – Moduł CREATE Nazwa bloku Typ zgłoszenia Czas pomiędzyprzybywaniem kolejnych zgłoszeń Liczba zgłoszeń przybywających razem Maksymalna liczba zgłoszeń, które mogą opuścić moduł Create Czas przybycia pierwszego zgłoszenia
PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE ARENA – Moduł PROCESS Nazwa bloku Typ procesu Typ akcji Definicja zasobu Zdefiniowanie czasu przebywania zgłoszenia na stanowisku
Laboratorium 5-8 Symulacja ciągła Wprowadzenie do dynamiki systemów
ZAŁOŻENIA METODY SD • CIĄGŁOŚĆ Przedmiotem opisu (quasi ciągłego) są procesy systemów ciągłych (interpretowanych jako ciągłe). • DYNAMIKA ZMIAN Orientacja na dynamikę (nie kinetykę) zmian w funkcjonowaniu systemów. Źródłem dynamiki jest struktura regulacyjna systemów (sprzężenia, opóźnienia, wzmocnienia) w dualnym układzie "sfera realna - sfera regulacyjna". • PRZYCZYNOWOŚĆ Opis systemu poprzez zależności przyczynowo-skutkowe (kauzalizm). • OKRESOWOŚĆ Działania regulacyjne w systemach mają charakter okresowy (co krok DT). • PRAGMATYZM Orientacja na utylitarne (np. decyzyjne) wykorzystanie rezultatów symulacji przez człowieka. • WERYFIKOWALNOŚĆ Postulat możliwości potwierdzenia "dobroci" budowanych modeli (stwierdzenia zasadności i prawdziwości modeli).