Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

MODELOWANIE SYMULACYJNE Simulation Modelling (ang.) Edycja N2M 2015/2016 Wykład (10h), Laboratorium (10h)

Podobne prezentacje


Prezentacja na temat: "MODELOWANIE SYMULACYJNE Simulation Modelling (ang.) Edycja N2M 2015/2016 Wykład (10h), Laboratorium (10h)"— Zapis prezentacji:

1 MODELOWANIE SYMULACYJNE Simulation Modelling (ang.) Edycja N2M 2015/2016 Wykład (10h), Laboratorium (10h)

2 Roman Pietroń, dr inż. K-4/IZ/ PWr., B1 p. 413c Konsultacje: Wtorek (Wrocław PWr., B1, 413c) Czwartek (Wrocław PWr., B1, 413c)

3 Bibliografia podstawowa  Gajda J.B., Prognozowanie i symulacja a decyzje gospodarcze, C.H.Beck Warszawa,  Mielczarek B., Modelowanie symulacyjne w zarządzaniu. Symulacja dyskretna, Oficyna PWr., Wrocław,   Pietroń R., Modelowanie symulacyjne. Wybrane zagadnienia, E-Materiał PWr.,   Pietroń R., Zbiór zadań z modelowania symulacyjnego, E-Materiał PWr.,   Maciąg A., Pietroń R., Kukla S., Prognozowanie i symulacja w przedsiębiorstwie, Wyd. PWE Warszawa  Zeigler B.P., Teoria modelowania i symulacji, PWN Warszawa, 1984.

4 Bibliografia uzupełniająca  Fishman G.S., Symulacja komputerowa. Pojęcia i metody, PWE Warszawa  Gordon G., Symulacja systemów, WNT Warszawa,  Kondratowicz L., Modelowanie symulacyjne systemów, WNT Warszawa,  Kowal R., Stanek S., Zadora Żytniewski P., Symulacja komputerowa z wykorzystaniem modeli Dynamiki Systemowej, ss [w:] Modele hybrydowe w podejmowaniu finansowych decyzji gospodarczych, praca zb. Pod red. S.Stanka, AE Katowice,  Krupa K., Modelowanie symulacja i prognozowanie. Systemy ciągłe, WNT Warszawa,  Naylor T.H., Modelowanie cyfrowe systemów ekonomicznych, PWN Warszawa,  Nowak M., Symulacja komputerowa w problemach decyzyjnych, AE Katowice,  Tarajkowski J. (red.), Elementy dynamiki systemów, AE Poznań,  Tyszer J., Symulacja cyfrowa, WNT Warszawa, 1990.

5 Bibliografia uzupełniająca – cd. Systemy modelowania i symulacji – oprogramowanie, tutorial:  Produkt Demo: - Ventana Systems, Inc.:  Produkt Demo: Vensim PLE - Ventana Systems, Inc.:  Produkt Demo: - High Performance Systems:  Produkt Demo: IThink - High Performance Systems:  Produkt Demo: - Minuteman Software:  Produkt Demo: GPSS World - Minuteman Software:  Produkt Demo: - Imagine That!:  Produkt Demo: ExtendSim - Imagine That!:  Produkt Edu: – Rockwell Software Inc. (Systems Modeling Corp.):  Produkt Edu: ARENA – Rockwell Software Inc. (Systems Modeling Corp.):  Produkt Demo: Process for Six Sigma MGX-Corel Corp.:  Produkt Demo: iGrafx Process for Six Sigma MGX-Corel Corp.:

6 Bibliografia – poziom zaawansowany Czasopisma:  System Dynamics Review  Simulation  Simulation & Gaming  Simulation Modelling. Practice and Theory

7 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.

8 TEMATY ZAJĘĆ WYKŁADOWYCH 1. Wprowadzenie do modelowania symulacyjnego. Przykłady modeli i badań. 2. Zagadnienia ogólne. Etymologia, źródła historyczno-filozoficzne. 3. Zagadnienia metodologiczne. Definicje, struktury, budowa modeli, weryfikacja, eksperyment symulacyjny, wnioskowanie. 4. 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. 5. Zastosowania badań symulacyjnych w ekonomii i zarządzaniu. 6. Problemy przekazywania wyników symulacji. Dokumentowanie projektów symulacyjnych i standaryzacja. Profesjonalizm i etyka w symulacji. 7. Podsumowanie i zaliczenie wykładu

9 FORMA ZALICZENIA LABORATORIUM Obecność (15%), Pytania kontrolne (20%), Aktywność (25%), Sprawozdania (40%) Termin zaliczenia: Ostatnie zajęcia w semestrze

10 OCENY  Celujący5.5(≥ 95%),  Bardzo dobry5.0(≥ 85%),  Ponad dobry4.5(≥ 75%),  Dobry4.0(≥ 65%),  Ponad dostateczny3.5(≥ 55%),  Dostateczny 3.0(≥ 45%),  Niedostateczny2.0(< 45%).

11 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. (2 godziny)  Projekt i budowa modelu symulacyjnego systemu dynamicznego o charakterystyce dyskretnej. Eksperyment i wnioskowanie z badań. (1 godzina)  "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. (2 godziny)  Projekt i budowa modelu symulacyjnego systemu dynamicznego o charakterystyce ciągłej. Eksperyment i wnioskowanie z badań. (1 godzina)  Podsumowanie i zaliczenie zajęć. (1 godzina)

12 Laboratorium 1-3 Podstawy metodologiczne symulacji Pojęcie systemu i konceptualizacja modelu systemu Symulacja dyskretna Metoda Monte Carlo (finanse, ryzyko,…) Modelowanie zdarzeń, czynności, procesów

13 Co to jest system?

14 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)

15 Jakie czynniki są istotne w konceptualizacji modelu systemu?

16 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

17 Jakie zastosować metody modelowania?

18 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.

19 Symulacja ciągła a dyskretna  Symulacja ciągła („podejście makroskopowe”) zmiany stanu systemu opisane są funkcjami ciągłymi, zmiany stanu systemu opisane są funkcjami ciągłymi, zazwyczaj systemy o funkcjonowaniu ciągłym. zazwyczaj systemy o funkcjonowaniu ciągłym.  Symulacja dyskretna („podejście mikroskopowe”) zmiany stanu systemu opisane są funkcjami dyskretnymi, zmiany stanu systemu opisane są funkcjami dyskretnymi, zazwyczaj systemy o funkcjonowaniu dyskretnym. zazwyczaj systemy o funkcjonowaniu dyskretnym.

20 Aspekty modelowaniaSymulacja ciągłaSymulacja dyskretna Zdarzenie w systemie – zmiana stanu systemu Matematyczna funkcja ciągła.Matematyczna funkcja dyskretna. Upływ czasu – charakter obserwacji stanów systemu Interwał obserwacji systemu jest zazwyczaj stały – quasi- ciągłość (dt=const); Iteracje symulacyjne są sekwencją obliczeń zależną od czasu systemu. Interwał obserwacji jest stały lub zależny od zdarzeń (metoda następstwa zdarzeń); Iteracje symulacyjne zależą od warunków logicznych lub czynności zdarzeń. Obiekt modelowania Jednostkowo nie-identyfikowalny i jednorodny (homogeniczny) przepływ (strumień) materii, energii, informacji; Reguły decyzyjne sterowania przepływem. Identyfikowalny pojedynczy obiekt dynamiczny przemieszcza- jący się w sieci czynności; Struktura obiektów statycznych do wykonania czynności z zasobami. Orientacja modelowania Dynamika systemu; Relacje przyczynowo-skutkowe; Relacja struktura-zachowanie; Analiza pętli sprzężeń zwrotnych; Identyfikacja struktur rodzajowych. Produktywność, wydajność, sprawność i efektywność systemu; Wykorzystanie zasobów systemu; Czas wykonania procesów; Identyfikacja „wąskich gardeł”. Opis systemu: charakterystyka wejściowa symulacji Reguły decyzyjne dla sterowania (zarządzania) przepływem strumieni; Charakterystyka struktury systemu (relacje przyczyna-skutek, opóźnienia przepływu, wzmocnienia, ograniczenia pojemnościowe). Charakterystyka atrybutów obiektów dynamicznych (reguły decyzyjne, reguły łączenia i rozdziału, marszruta, czasy kreacji i opóźnienia przepływu); Opis obiektów statycznych (pojemności, dostępności). Opis systemu: charakterystyka wyjściowa symulacji Własności dynamiczne (przebiegi przejściowe, stacjonarność, niestacjonarność, stabilność, niestabilność, równowaga, dominacja pętli sprzężeń zwrotnych, stan systemu). Zagregowane własności statystyczne systemu i obiektów (stan systemu, wykorzystanie zasobów, sprawność, wydajność, efektywność, dostępność). Upływ czasu Czas pomiędzy dwoma kolejnymi obserwacjami systemu jest zazwyczaj stały (dt=const); Iteracje symulacyjne są sekwencją obliczeń zależną od czasu systemu. Czas pomiędzy dwoma kolejnymi obserwacjami jest stały (metoda krokowa) lub zależny od zdarzeń Iteracje symulacyjne są przetwarzaniem warunków logicznych lub czynności zdarzeń Regulaminy przepływu dynamicznych obiektów Regulamin FIFO.Obiekty statyczne i dynamiczne z regulaminami: FIFO, LIFO, SPT, priorytetowym, losowym. Marszruty Przepływy muszą mieć jednoznaczną definicję marszruty (rozdzielenie strumienia i przepływy do wielu miejsc w tym samym czasie). Obiekty dynamiczne kierowane do pierwszego z możliwych miejsc (obiekty mogą być w danym czasie tylko w jednym miejscu); Klony (kopie) obiektów są odrębnymi obiektami (te same atrybuty). Statystyki Ogólne charakterystyki (rzadziej statystyki) systemu: ilość, sprawność, czas przejścia. Ogólne charakterystyki systemu; Ponadto statystyki obiektów: liczniki, wykorzystanie, czas. Dziedziny zastosowania metody symulacji – przypadki użycia Badania naukowe, praktyka gospodarcza: myślenie systemowe, inżynieria systemów, zarządzanie, ekonomia, ekologia, produkcja, logistyka, BPM, BPR, finanse. Praktyka gospodarcza, badania naukowe: usługi, wytwarzanie, produkcja, BPM, BPR, sieci, inżynieria systemów, zarządzanie, finanse. Symulacja ciągła a dyskretna

21 Języki i systemy modelowania dyskretnego (przykłady)  GPSS (GPSS/H, GPSS World)  Arena  ExtendSim ...

22 Jakie są etapy (fazy) modelowania?

23 ETAPY BUDOWY I WYKORZYSTANIA MODELU SYMULACYJNEGO Podmioty: odbiorca wyników symulacji, symulog 1. Określenie systemu, sytuacji problemowej i celu budowy modelu 2. Budowa modelu (konceptualizacja, formalizacja) 3. Przygotowanie danych wejściowych symulacji 4. Programowanie modelu (operacjonalizacja modelu) 5. Ocena zasadności i weryfikacja modelu (eksperyment wstępny) 6. Planowanie eksperymentu symulacyjnego 7. Realizacja eksperymentu symulacyjnego (eksperyment właściwy) 8. Analiza i interpretacja wyników symulacji 9. Dokumentowanie symulacji 10. Praktyczne wykorzystanie wyników symulacji

24 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)

25 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.

26

27 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

28 Stany zasobów systemu

29 Przepływy w systemie

30 Przykład modelowania symulacyjnego systemu dyskretnego  SYMULACJA FUNKCJONOWANIA BANKU *************************************************************************** * Symulacja Banku * * Jednostka czasu: godzina * *************************************************************************** CzasEQU ;Średni czas obsługi (komentarz od znaku ;) KodVARIABLE C1+10;Kod czasu dla Urzednik2. Func1FUNCTION 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. GENERATE0.0834,0.0278;Kreowanie (generowanie) kolejnego klienta w banku. ASSIGNUrzednik_nr,FN$Func1Przypisanie numeru urzędnika do parametru transakcji. QUEUEP$Urzednik_nr;;Początek dla statystyki kolejkowej. SEIZEP$Urzednik_nr;Zajęcie urzędnika. DEPARTP$Urzednik_nr;Koniec dla statystyki kolejkowej. ADVANCECzasObslugi,0.0028;Wykonanie obsługi klienta. RELEASEP$Urzednik_nr;Zwolnienie urzędnika. TERMINATE;Klient opuszcza bank. *************************************************************************** * Segment 2 * * Zegar i zbieranie statystyk * *************************************************************************** GENERATE;Pomiar statystyk co 1 godzinę pracy banku. SAVEVALUEC1,Q$Urzednik1;Pomiar długości kolejki przed Urzednik1. SAVEVALUEV$KodCzasu,Q$Urzednik2;Pomiar długości kolejki przed Urzednik2 TERMINATE1;Koniec kolejnej godziny pracy banku START8;Symulacja 8 godzinnego dnia pracy banku

31 Wyniki symulacji  Raport symulacji GPSS World Simulation Report - Sample6-Bank.1.1 GPSS World Simulation Report - Sample6-Bank.1.1 Friday, January 02, :17:34 Friday, January 02, :17:34 START TIME END TIME BLOCKS FACILITIES STORAGES START TIME END TIME BLOCKS FACILITIES STORAGES NAME VALUE NAME VALUE CZASOBSLUGI CZASOBSLUGI FUNC FUNC KODCZASU KODCZASU URZEDNIK URZEDNIK URZEDNIK URZEDNIK URZEDNIK_NR URZEDNIK_NR FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

32 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)

33 Różnice:  Metoda krokowa (stałego kroku w symulacji ciągłej): w symulacji uwzględnia się brak aktywności systemu (obliczenia bez zdarzeń), w symulacji uwzględnia się brak aktywności systemu (obliczenia bez zdarzeń), przetwarzanie zdarzeń traktowanych jako równoczesne na końcu odcinka DT, przetwarzanie zdarzeń traktowanych jako równoczesne na końcu odcinka DT, istnieje DT (problem doboru wartości); 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ń), w symulacji nie uwzględnia się braku aktywności systemu (tylko dla zdarzeń), brak przetwarzania zdarzeń jako równoczesnych (wyjątek: Ei = Ej), brak przetwarzania zdarzeń jako równoczesnych (wyjątek: Ei = Ej), brak DT. brak DT.

34 Metoda Monte Carlo  Algorytm metody: Wybór losowych zmiennych wejściowych (rozkłady prawdopodobieństw ) Wybór losowych zmiennych wejściowych (rozkłady prawdopodobieństw ) Wybór zmiennych wyjściowych (ustalenie formuł i algorytmu obliczeń) Wybór zmiennych wyjściowych (ustalenie formuł i algorytmu obliczeń) Wykonanie obliczeń dla n obserwacji: Wykonanie obliczeń dla n obserwacji: Generowanie zmiennych losowych (np. popyt, …)Generowanie zmiennych losowych (np. popyt, …) Wyznaczenie zmiennych wyjściowych (formuły, algorytm)Wyznaczenie zmiennych wyjściowych (formuły, algorytm) Powtórzenia (n obserwacji)Powtórzenia (n obserwacji) Wyznaczenie statystyk wyjściowych (np. średnia, odchylenie standardowe, odchylenie kwadratowe, wariancja, przedziały ufności)Wyznaczenie statystyk wyjściowych (np. średnia, odchylenie standardowe, odchylenie kwadratowe, wariancja, przedziały ufności) Wykonanie obliczeń dla k replikacji: Wykonanie obliczeń dla k replikacji: Powtórzenia n prób (k replikacji) (k powtórzeń w jednym eksperymencie)Powtórzenia n prób (k replikacji) (k powtórzeń w jednym eksperymencie) Eksperymenty (rozkłady prawdopodobieństw) Eksperymenty (rozkłady prawdopodobieństw)  Wyniki obliczeń: Średnia arytmetyczna Średnia arytmetyczna Odchylenie standardowe (ocena rozproszenia) Odchylenie standardowe (ocena rozproszenia) Odchylenie kwadratowe (ocena rozproszenia) Odchylenie kwadratowe (ocena rozproszenia) Wariancja (ocena rozproszenia) Wariancja (ocena rozproszenia) Współczynnik skośności (miara asymetrii rozkładu) Współczynnik skośności (miara asymetrii rozkładu) Kurtoza (wyostrzenie rozkładu) Kurtoza (wyostrzenie rozkładu) Przedział ufności (pokrycie z zadanym prawdopodobieństwem prawdziwej wartości dla charakterystyki rozkładu) Przedział ufności (pokrycie z zadanym prawdopodobieństwem prawdziwej wartości dla charakterystyki rozkładu)

35 Przykład zastosowania metody Monte 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).

36 Przykład zastosowania metody Monte Carlo - dane  Sprzedawca zaobserwował, że popyt na jabłka w kolejnych 20 dniach kształtował się następująco: Popyt na jabłka Częstość (kg)(liczba dni) Razem: 20 dni Prawdopodob.Skumulowane (obliczone) prawdopodob. 2/20=0,100,10 3/20=0,150,25 4/20=0,200,45 6/20=0,300,75 4/20=0,200,95 1/20=0,051,00 20/20=1,00

37 Przykład zastosowania metody Monte Carlo - podejścia  Sprzedawca zaobserwował, że: P(sprzedaż 0 kg jabłek dziennie)= 0.10P(sprzedaż 0 kg jabłek dziennie)= 0.10 P(sprzedaż 1 kg jabłek dziennie)= 0.15P(sprzedaż 1 kg jabłek dziennie)= 0.15 P(sprzedaż 2 kg jabłek dziennie)= 0.20P(sprzedaż 2 kg jabłek dziennie)= 0.20 P(sprzedaż 3 kg jabłek dziennie)= 0.30P(sprzedaż 3 kg jabłek dziennie)= 0.30 P(sprzedaż 4 kg jabłek dziennie)= 0.20P(sprzedaż 4 kg jabłek dziennie)= 0.20 P(sprzedaż 5 kg jabłek dziennie)= 0.05P(sprzedaż 5 kg jabłek dziennie)= 0.05  Oczekiwany dzienny popyt to 0.1* * * * * *5 = 2,5 kg/dzień0.1* * * * * *5 = 2,5 kg/dzień  Rozwiązanie teoretyczne: wartość oczekiwana czasu pomiędzy dostawami 40/(0.1* * * * * *5) = 40/2.5 = 16 dni 40/(0.1* * * * * *5) = 40/2.5 = 16 dni  W celu sprawdzenia rozwiązania można przeprowadzić „symulację” - próbkowanie

38 Przykład zastosowania metody Monte 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 1: 18 dni Powtórzenie 2: 14 dni Powtórzenie 2: 14 dni W Excelu liczby losowe generowane są za pomocą funkcji LOS()

39 Metoda Monte Carlo – użyteczne funkcje arkusza Excel  LOS()  WYSZUKAJ.PIONOWO(…)  JEŻELI(…)  SUMA(…)  ŚREDNIA(…)  ODCH.STANDARDOWE(…)  UFNOŚĆ(…)  MIN(…)

40 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.

41 Podstawowe elementy modeli 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.

42 Podstawowe elementy modeli 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.

43 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.

44 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.

45 PRZYKŁAD PROGRAMU SYMULACYJNEGO W JĘZYKU GPSS  Program źródłowy 1 GENERATE18,6Zgłoszenie się klienta co 18 ± 6 minut ADVANCE0.5Opóźnienie: wieszanie płaszcza SEIZEJANZajęcie stanowiska obsługi JAN przez klienta ADVANCE15,3Opóźnienie: obsługa w czasie 15 ± 3 minuty RELEASEJANZwolnienie stanowiska obsługi JAN TERMINATE 1Wyjście klienta: aktualny stan licznika -1 * START100Start przebiegu symulacji dla 100 klientów

46 PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE ARENA

47 PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE ARENA – Moduł CREATE Nazwa bloku Typ zgłoszenia Czas pomiędzy przybywaniem 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

48 PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE ARENA – Moduł PROCESS Nazwa bloku Typ procesu Zdefiniowanie czasu przebywania zgłoszenia na stanowisku Typ akcji Definicja zasobu

49 PRZYKŁAD MODELOWANIA SYMULACYJNEGO W SYSTEMIE EXTENDSIM

50 Laboratorium 4-5 Symulacja ciągła Wprowadzenie do dynamiki systemów

51 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).

52 PARADYGMATY METODY SD Zbiór koncepcji dotyczących natury rzeczywistości  IZOMORFIZM STRUKTUR I ZACHOWAŃ Systemy o podobnych strukturach mają podobne zachowania. Ale także: systemy o różnych strukturach mogą mieć podobne zachowania.  MIKROSTRUKTURA OKREŚLA MAKROZACHOWANIE Zachowanie się systemu ma charakter endogeniczny i wynika z jego struktury. Np. sprzężenia zwrotne dodatnie destabilizują system a sprzężenia zwrotne ujemne najczęściej stabilizują system.  ANTYINTUICYJNOŚĆ Złożoność systemu powoduje trudności przewidywania sposobów jego zachowania się - istnieją częste przypadki błędnego prognozowania zachowań systemów (archetypy).  NIELINIOWOŚĆ ZACHOWANIA SYSTEMÓW Zachowanie się systemu ma charakter nieliniowy (efekt sprzężeń zwrotnych, opóźnień i wzmocnień).  OGRANICZONA RACJONALNOŚĆ Decyzje podejmowane są w warunkach tzw. ograniczonej racjonalności.  BRAK METAREGUŁ MODELOWANIA W procesie budowy modelu wykorzystuje się intuicje, wiedzę i doświadczenie ekspertów, teorie dyscyplin szczegółowych, dane obserwacyjne i empiryczne.

53 PODSTAWOWE ELEMENTY METODY SD  Związki przyczynowo - skutkowe i pętle sprzężeń zwrotnych  Opóźnienia  Zasoby i strumienie przepływu

54 Związki przyczynowo - skutkowe i pętle sprzężeń zwrotnych  Pętla przyczynowa sprzężenia zwrotnego (ang. feed back) reprezentuje własność elementu systemu polegającą na tym, że element ten wpływa na samego siebie poprzez następstwo łańcucha związków przyczynowych. Podobnie jak w przypadku związków przyczynowych można mówić o pętlach dodatnich, ujemnych, neutralnych oraz o pętlach mieszanych, jako kombinacji pętli elementarnych.  Typy sprzężeń zwrotnych: Dodatnie sprzężenie zwrotne Dodatnie sprzężenie zwrotne Ujemne sprzężenie zwrotne Ujemne sprzężenie zwrotne Neutralne sprzężenie zwrotne Neutralne sprzężenie zwrotne Ukłądy mieszane sprzężeń zwrotnych Ukłądy mieszane sprzężeń zwrotnych

55 Dodatnie sprzężenie zwrotne  Dodatnia pętla przyczynowa sprzężenia zwrotnego w odniesieniu do pewnego elementu systemu oznacza, że zmiana charakterystyki tego elementu wywołuje po pewnym czasie nową zmianę tej charakterystyki w tym samym kierunku zmiany.  Przykłady: Model inflacji - jako efekt dodatnich związków przyczynowych pomiędzy kosztem wytworzenia, ceną zakupu, "naciskiem" na płace. Model inflacji - jako efekt dodatnich związków przyczynowych pomiędzy kosztem wytworzenia, ceną zakupu, "naciskiem" na płace. Model ewolucji maltuzjańskiej populacji - jako rezultat dodatnich związków przyczynowych pomiędzy wielkością populacji a wzrostem urodzeń osobników populacji. Model ewolucji maltuzjańskiej populacji - jako rezultat dodatnich związków przyczynowych pomiędzy wielkością populacji a wzrostem urodzeń osobników populacji.

56 Przykłady dodatnich sprzężeń zwrotnych  Model inflacji  Model rozwoju populacji

57 Ujemne sprzężenie zwrotne  Ujemna pętla sprzężenia zwrotnego powstaje wtedy, gdy zmiany charakterystyki elementu systemu równoważone są przez działanie przeciwdziałające zmianie wywołując "efekt przeciwny" zmiany.  Przykłady: Regulacja temperatury przez termostat, Regulacja temperatury przez termostat, Regulacja poziomu wody w zbiorniku. Regulacja poziomu wody w zbiorniku.

58 Przykłady ujemnych sprzężeń zwrotnych  Ujemna pętla sprzężenia zwrotnego w modelu regulacji temperatury przez termostat.

59 Neutralne sprzężenie zwrotne  Istnieją również pętle sprzężenia zwrotnego określane jako neutralne, które nie są pętlami ani dodatnimi ani ujemnymi. Neutralne pętle sprzężenia zwrotnego charakteryzują się alternatywnym funkcjonowaniem w kierunkach zmian w systemie.  Przykłady: Cykl decyzyjny zawierający informacje prowadzącą od określonej decyzji do podjęcia działania na podstawie tej decyzji. Informacja o skutkach działania może być podstawą decyzji o wstrzymaniu lub ponownym podjęciu działania w systemie. Cykl decyzyjny zawierający informacje prowadzącą od określonej decyzji do podjęcia działania na podstawie tej decyzji. Informacja o skutkach działania może być podstawą decyzji o wstrzymaniu lub ponownym podjęciu działania w systemie. Relacja pomiędzy elementami modelu systemu nauczania w szkole: motywacją ucznia do nauki, dokonanych postępach w nauce, wynikami nauczania, presją nauczyciela. Relacja pomiędzy elementami modelu systemu nauczania w szkole: motywacją ucznia do nauki, dokonanych postępach w nauce, wynikami nauczania, presją nauczyciela.

60 Przykłady neutralnych sprzężeń zwrotnych  Cykl decyzyjny  Nauczanie

61 Układy mieszane sprzężeń zwrotnych  W złożonych systemach, przedstawione powyżej pętle elementarne (dodatnia, ujemna, neutralna) sprzężenia zwrotnego często występują obok siebie tworząc układy mieszane (kombinacje) tych pętli.  Przykład: Model rozwoju populacji uwzględniający procesy narodzin nowych członków populacji oraz zgonów w populacji. Model rozwoju populacji uwzględniający procesy narodzin nowych członków populacji oraz zgonów w populacji.

62 Opóźnienia  Zmiany stanów elementów systemu połączonych związkiem przyczynowym mogą zachodzić równocześnie, co jest zazwyczaj zjawiskiem bardzo rzadkim, lub z pewnym przesunięciem w czasie. W przypadku przesunięcia w czasie mówimy o opóźnieniu reakcji elementu zależnego od zmiany stanu elementu wywołującego bodziec. Charakter występujących opóźnień w systemach może być różny.  Na ogół można wyróżnić dwa typy opóźnień: jednorazowe (tzw. opóźnienie skupione) - kiedy skumulowana reakcja pewnego elementu systemu jest przesunięta w czasie względem bodźca ze strony innego elementu systemu, oraz rozłożone w czasie - kiedy reakcja pewnego elementu systemu jest rozłożona w czasie.  Opóźnienie skupione charakteryzuje się tym, że zmiana wielkości wyjściowej yt jest taka sama jak zmiana wielkości wejściowej ut, ale następuje z przesunięciem w czasie o okres T, tzn. T: yt = ut-T. W przypadku opóźnienia rozłożonego w czasie, zmiana wielkości wyjściowej yt jest funkcją zmiany wielkości wejściowej oraz tzw. funkcji wagowej z opóźnienia t:

63 Zasoby i strumienie przepływu  Pojęcie zasobu oznacza wielkość, której wymiar nie odnosi się do czasu, i która oznacza stan ilościowy określonego medium w danym momencie. Jeżeli przedmiotem rozważań są zmiany tej wielkości w czasie, to stosuje się również pojęcie strumienia, który wyraża przepływ określonej ilości medium w rozpatrywanym przedziale czasu.  Zasób wiąże się na ogół z występowaniem strumieni wejściowych i wyjściowych. Pierwszy opisuje dopływ medium do zasobu, natomiast drugi opisuje odpływ medium od zasobu.  Zasoby w systemach pełnią często rolę akumulacyjną, stąd określa się je także jako zasoby akumulacyjne. Mogą one także pełnić rolę źródła określonego medium lub także ujścia dla medium.  Jeżeli przez x t oznaczymy zasób medium w chwili t, przez v t strumień wejściowy do zasobu w okresie dt, przez w t strumień wyjściowy zasobu w okresie dt, to zasób medium w momencie t+dt możemy wyrazić jako: x t +dt = x t + dt (v t - w t ). Jeżeli dt jest dostatecznie małe (bliskie 0), to podstawowe równanie kinetyczne zasobów i strumieni możemy przedstawić jako: x t = v t - w t, gdzie x t jest wartością funkcji pochodnej w chwili t. Rozwiązanie ostatniego równania prowadzi do funkcji x t :

64 Podstawowe struktury i obliczenia modeli SD  Relacje pomiędzy wielkościami systemu odwzorowane schematycznie i jakościowo w modelu graficznym są konkretyzowane w modelu matematycznym przedstawionym za pomocą układu równań. Wyróżnia się trzy rodzaje równań: równania poziomów, równania poziomów, równania strumieni, równania strumieni, równania zmiennych pomocniczych. równania zmiennych pomocniczych.

65 Równania modeli SD  Równania poziomów w modelach SD mają postać: POZIOM.K = POZIOM.J + DT (STRWE.JK - STRWY.JK), gdzie DT jest przyjętym okresem obliczeń symulacyjnych, POZIOM.K jest zmienną stanu opisującą dany zasób w chwili K-tej, STRWE.JK jest zmienną stanu opisującą strumień wejściowy do zasobu POZIOM w okresie od chwili J-tej do chwili K-tej, STRWY.JK jest zmienną stanu opisującą strumień wyjściowy zasobu POZIOM w okresie od chwili J-tej do chwili K- tej.  Równania strumieni mają postać: STRUMIEŃ.KL = f (Poziomy.K, Zmienne_Pomocnicze.K, Strumienie.JK, Strumienie.KL,Stałe), gdzie STRUMIEN.KL jest wielkością strumienia w okresie od chwili K-tej do chwili L-tej, f jest pewną funkcją wielkości poziomów systemu w chwili K-tej, zmiennych pomocniczych w chwili K-tej, strumieni w okresie JK (czasem także KL) i stałych modelu.  Równania wielkości pomocniczych w modelach SD mają postać: ZMIENNA_POMOCNICZA.K = h (Poziomy.K, Strumienie.JK, Stałe), gdzie h jest pewną funkcją wiążącą określone poziomy systemu ze stałymi modelu.

66 Przykłady zapisu równań modeli SD  Notacja klasyczna (język DYNAMO) ZAPAS.K = ZAPAS.J + DT * (DOSTAWA.JK – WYSYŁKA.JK) ZAPAS.K = ZAPAS.J + DT * (DOSTAWA.JK – WYSYŁKA.JK) WYSYŁKA.JK = ZAPAS.K / CZAS_WYSYŁKI WYSYŁKA.JK = ZAPAS.K / CZAS_WYSYŁKI  Notacja IThink ZAPAS(t) = ZAPAS(t-dt) + dt * (DOSTAWA – WYSYŁKA) ZAPAS(t) = ZAPAS(t-dt) + dt * (DOSTAWA – WYSYŁKA) WYSYŁKA = ZAPAS / CZAS_WYSYŁKI WYSYŁKA = ZAPAS / CZAS_WYSYŁKI  Notacja Vensim ZAPAS = INTEG (DOSTAWA – WYSYŁKA, 100) ZAPAS = INTEG (DOSTAWA – WYSYŁKA, 100) WYSYŁKA = ZAPAS / CZAS_WYSYŁKI WYSYŁKA = ZAPAS / CZAS_WYSYŁKI

67 Sekwencja obliczeń symulacyjnych modeli SD  Sekwencja obliczeń w modelu matematycznym SD przebiega według schematu, w którym czas zmienia się od chwili J (przeszłość), poprzez chwilę K (teraźniejszość) do chwili L (przyszłość). Chwile te są odległe od siebie o wielokrotność kroku DT (tj. DT, 2DT).  Znając stan systemu w chwili J można wyznaczyć stan systemu w chwili K wykorzystując znajomość zmiennych stanu w chwili J, strumieni w okresie JK.  Znając z kolei wartości zmiennych stanu w chwili K można wyznaczyć wartości zmiennych pomocniczych w chwili K, strumieni w okresie KL.  Stan systemu w chwili L można z kolei wyznaczyć w oparciu o stan systemu w chwili K oraz strumieni w okresie KL. Należy zwrócić uwagę jednak, że występowanie zmiennych pomocniczych nie jest zawsze konieczne. Wartości strumieni mogą wtedy być wyznaczone w oparciu o zmienne stanu systemu i stałe modelu.

68 Notacja graficzna metody SD  Opis struktury systemu w modelu SD: Schemat graficzny struktury Schemat graficzny struktury Równania modelu Równania modelu  Schemat graficzny Schemat przyczynowo-skutkowy (diagram wpływów) Schemat przyczynowo-skutkowy (diagram wpływów) Schemat strukturalny Schemat strukturalny  Schemat graficzny struktury (schemat strukturalny)  Do przedstawienia modelu w formie graficznej używa się następujących elementów i symboli graficznych:, reprezentujący poziom (zasób) medium w systemie i stowarzyszonego z określoną zmienną stanu modelu matematycznego Prostokąt, reprezentujący poziom (zasób) medium w systemie i stowarzyszonego z określoną zmienną stanu modelu matematycznego, zakończona grotem strzałki, symbolizująca przepływ materialny lub energetyczny Linia ciągła, zakończona grotem strzałki, symbolizująca przepływ materialny lub energetyczny, zakończona grotem strzałki, symbolizująca przepływ informacyjny Linia przerywana, zakończona grotem strzałki, symbolizująca przepływ informacyjny przepływu nazywany strumieniem (dwa trójkąty równoramienne złączone wierzchołkiem i uzupełnione prostokątem), określający stanowisko regulacji przepływu medium na podstawie pewnej funkcji regulacyjnej, zapisanej formalnie w modelu matematycznym Znak regulatora przepływu nazywany strumieniem (dwa trójkąty równoramienne złączone wierzchołkiem i uzupełnione prostokątem), określający stanowisko regulacji przepływu medium na podstawie pewnej funkcji regulacyjnej, zapisanej formalnie w modelu matematycznym, reprezentujący wielkość pomocniczą, która jest definiowana w procesie przetwarzania informacji wykorzystywanej do regulacji strumieni Okrąg, reprezentujący wielkość pomocniczą, która jest definiowana w procesie przetwarzania informacji wykorzystywanej do regulacji strumieni odcinkiem, symbolizujący wielkości stałe w systemie (parametry) Okrąg przekreślony odcinkiem, symbolizujący wielkości stałe w systemie (parametry) reprezentujący źródło zewnętrzne wypływu medium lub ujście zewnętrzne przepływającego medium. Nieregularny owal (‘chmurka’) reprezentujący źródło zewnętrzne wypływu medium lub ujście zewnętrzne przepływającego medium.

69 Notacja graficzna metody SD – schemat strukturalny

70 Proces modelowania SD

71 Metody tworzenia DPS Istotnym elementem procesu konceptualizacji modelu SD jest odpowiednio skonstruowany DPS. Istnieją trzy podstawowe metody tworzenia DPS:  odwzorowanych wielkości (ang. List Extention Method),  metoda wg rozszerzającej się listy odwzorowanych wielkości (ang. List Extention Method),  (ang. Entity/State Transition Method),  metoda wg logiki przejścia obiektów ze stanu do stanu (ang. Entity/State Transition Method),  (ang. Common Modules Method).  metoda wg wspólnych (powtarzalnych) modułów (ang. Common Modules Method).

72 Postępowanie badawcze modelowania za pomocą metody SD 1. Sformułowanie problemu badawczego. 2. Ustalenie czynników analizowanego zjawiska (etap konceptualizacji modelu). 3. Wyodrębnienie związków przyczynowych i pętli sprzężeń zwrotnych wiążących działania regulacyjne z decyzjami, informacjami i tworzących mechanizm przyczynowo-skutkowy modelowanego systemu (schemat przyczynowo-skutkowy, schemat strukturalny). 4. Identyfikacja i ustalenie opisu formalnego reguł decyzyjnych (równania). 5. Skonstruowanie matematycznego modelu systemu (układ równań SD). 6. Wykonanie eksperymentów symulacyjnych na modelu. 7. Porównanie wyników symulacyjnych z dostępnymi informacjami o badanym systemie jego funkcjonowaniu. 8. Wprowadzenie do modelu zmian mających na celu uzyskanie akceptowanej zgodności modelu z zachowaniem się oryginału. 9. Projektowanie zmian lub ingerencji w modelowanym systemie, poprawiających charakterystyki dynamiczne systemu. 10. Wdrożenie w systemie rzeczywistym zaprojektowanych zmian lub ingerencji.

73 Problemy obliczeniowe w metodzie Dynamiki Systemów   Dobór kroku DT symulacji Dokładność całkowania Dokładność całkowania Szybkość obliczeń Szybkość obliczeń Interpretacja DT jako wielkości modelu Interpretacja DT jako wielkości modelu   Dobór metody całkowania numerycznego Dokładność obliczeń Dokładność obliczeń Szybkość obliczeń Szybkość obliczeń  Dobór postaci równań Błędy w obliczeniach zmiennoprzecinkowych Błędy w obliczeniach zmiennoprzecinkowych Bifurkacje (katastrofy) Bifurkacje (katastrofy)

74 Problem doboru DT w modelach SD – przykład zaburzeń numerycznych DT = 1DT = 20

75 Problemy wyboru metody całkowania numerycznego w modelach SD (Euler, Runge-Kutta)

76 Dobór DT  Zasada J.W.Forrester’a (zależność DT od opóźnień modelu)  Zasada R.L.Coyle’a (zależność DT od opóźnień modelu)  Zasada N.Roberts (zależność DT od struktury modelu)  Zasada E.Zwieckera (zależność DT od przyjętej jednostki czasu w modelu)

77 Dobór DT Zasada Forrester’a  Długość kroku czasowego DT w modelu nie powinna być większa od połowy wartości minimalnego opóźnienia 1. rzędu użytego w tym modelu, nie powinna jednak być mniejsza od 1/5 wartości tego opóźnienia. Oznacza to, że: gdzie DEL i jest i-tym opóźnieniem odwzorowanym w modelu, n i jest rzędem i-tego opóźnienia odwzorowanego w modelu.

78 Dobór DT Zasada R.L.Coyle’a  Długość kroku czasowego DT w modelu nie powinna być większa od 1/10 wartości minimalnego opóźnienia 1. rzędu odwzorowanego w tym modelu. Oznacza to, że: gdzie DEL i jest i-tym opóźnieniem odwzorowanym w modelu, n i jest rzędem i-tego opóźnienia odwzorowanego w modelu.

79 Dobór DT Zasada N.Roberts  Długość kroku czasowego DT dobieramy dla każdego modelu SD, aż zostanie dobrana taka długość, że jej zmniejszenie nie powoduje dostrzegalnych zmian w wynikach tego modelu.  W modelach z dodatnią pętlą sprzężenia zwrotnego wywołującą wzrost wykładniczy, długość kroku DT przyjmujemy w granicach od 1/5 do 1/10 "czasu podwojenia" T 2 (czasu podwojenia początkowej wartości poziomu). W modelach z ujemną pętlą sprzężenia zwrotnego długość kroku DT przyjmujemy w granicach od 1/3 do 1/4 czasu T 1/2 zmniejszenia o połowę początkowej wartości poziomu. Warunki te możemy przedstawić następująco: dla dodatniej pętli sprzężenia ze wzrostem wykładniczym: dla dodatniej pętli sprzężenia ze wzrostem wykładniczym: dla ujemnej pętli sprzężenia zwrotnego: dla ujemnej pętli sprzężenia zwrotnego:

80 Dobór DT Zasada E.Zwiecker’a  Rozumowanie jest oparte na sposobie interpretowania procesu decyzyjnego, agregacji wielkości odwzorowanych w modelu oraz zasadzie włączenia kroku czasowego DT w obręb struktury modelu (sprzeczność z założeniami metody SD J.W.Forrestera).  Zdaniem E.Zwiecker’a, w modelach typu SD należy przyjmować długość kroku czasowego DT zawsze równą 1 (DT=1), niezależnie od występujących w modelu opóźnień i pętli sprzężeń zwrotnych. DT = 1

81 Dobór metody całkowania  Podstawy zagadnienia całkowania numerycznego w modelach SD są następujące. W modelach SD określa się postać funkcji: gdzie funkcja xt podcałkowa jest z kolei funkcją y t oraz czasu t:  Wartość funkcji y t jest określana iteracyjnie dla kolejnych przedziałów zmiennej niezależnej t i wyznaczonych przyjętym krokiem iteracyjnym  t = DT. Problem całkowania numerycznego w modelach SD sprowadza się do wyznaczenia wartości funkcji:  Wartość funkcji całkowanej jest wyznaczana jedynie w określonych punktach czasowych różniących się wielokrotnością t, zatem funkcję całkowaną y t można wyrazić jako funkcję y n, gdzie t=n  t.

82 Dobór metody całkowania  W modelowaniu SD wykorzystuje się do całkowania numerycznego zarówno metody ekstrapolacyjne jak i nieekstrapolacyjne.  W metodach ekstrapolacyjnych wykorzystuje się więcej wartości funkcji podcałkowej, tzn. np. x n, x n-1, x n-2, itd, aby poprzez odpowiednią formułę ekstrapolacyjną oszacować wartość x n+1.  W metodach nieekstrapolacyjnych do obliczenia wartości funkcji y n+1 wykorzystuje się tylko wartości funkcji y n i x n. Jakkolwiek metody ekstrapolacyjne zapewniają większą dokładność wyników niż metody nieekstrapolacyjne, nie powinny być one jednak, ze względu na potencjalne nieciągłości funkcji podcałkowej x t, stosowane w modelach SD.

83 Dobór metody całkowania  Najczęściej stosowaną metodą całkowania nieekstrapolacyjnego jest metoda Eulera (zwana także metodą prostokątów). W metodzie tej zakłada się, że wartość funkcji podcałkowej jest stała w całym zakresie przedziału kroku iteracyjnego i jest równa wartości funkcji podcałkowej na początku tego przedziału. Wartość funkcji całkowanej na końcu przedziału iteracyjnego wynosi: y n+1 = y n + x n  t, zaś funkcji podcałkowej: x n+1 = f(y n+1,t).  Metoda prostokątów jest stosowana najczęściej w metodzie SD, gdzie zgodnie z przyjętą w tej metodzie notacją punkty czasowe n-1, n, n+1oznacza się odpowiednio J, K, L.

84 Dobór metody całkowania  Istnieją również metody nieekstrapolacyjne o powtarzalnym kroku całkowania. W takich metodach pierwsze obliczenie wartości y n+1 wykonuje się stosując metodę pojedynczego kroku. Obliczona następnie wartość x n+1 jest traktowana jako pierwsze przybliżenie wartości x n+1 i jest wykorzystywana do powtórnego, dokładniejszego całkowania. Przykładem nieekstrapolacyjnej metody całkowania z podwójnym krokiem jest metoda Runge-Kutta, zwana nieraz także metodą trapezową. Operacja całkowania jest w niej dokonywana w sposób następujący:  W metodzie trapezowej wartość funkcji podcałkowej jest średnią arytmetyczną wartości początkowej x n oraz przybliżonej wartości końcowej.

85 Dobór metody całkowania  W modelach SD, zgodnie z przyjętą procedurą całkowania numerycznego za pomocą metody trapezowej, obliczone wartości zmiennych pomocniczych w chwili K-tej i strumieni na okres KL są wykorzystane do obliczenia przybliżonej wartości poziomów w chwili L. Przybliżona wartość poziomów jest wykorzystana z kolei do wyznaczenia przybliżonych wartości zmiennych pomocniczych i strumieni, które z kolei pozwalają po zastosowaniu reguły trapezowej Runge-Kutta na wyznaczenie dokładniejszej wartości poziomów, zmiennych pomocniczych i strumieni.

86 Problemy reprezentacji zmiennoprzecinkowej w symulacji komputerowej dynamiki systemów  Komputerowe obliczenia symulacyjne modeli dynamiki systemów, jak każde inne iteracyjne procesy obliczeniowe wykonywane na liczbach rzeczywistych, dokonywane są zazwyczaj w arytmetyce zmiennoprzecinkowej (ang. floating point). Procesy te, w odróżnieniu od arytmetyki klasycznej, charakteryzują się występowaniem błędów reprezentacji zmiennoprzecinkowej.  Ponadto komputerowa reprezentacja liczby zmiennoprzecinkowej również obciążona jest błędami wynikającymi z ograniczenia długości słowa maszynowego komputera pomimo stosowania koprocesorów arytmetycznych. Wielkość błędu reprezentacji danych i operacji arytmetycznych zależy od długości słowa maszynowego i długości rejestru arytmometru. Dla współczesnych komputerów błąd względny reprezentacji zmiennoprzecinkowej w arytmometrze waha się od do 10-6.

87 Problemy reprezentacji zmiennoprzecinkowej w symulacji komputerowej dynamiki systemów  Każdą liczbę rzeczywistą można przedstawić w postaci zmiennoprzecinkowej: gdzie z jest znakiem liczby, m jest liczbą rzeczywistą z przedziału [1/2, 1], zwaną mantysą, c jest liczbą całkowitą zwaną cechą. Reprezentacja ta jest jednoznaczna dla x≠0. Nazwa liczb zmiennoprzecinkowych pochodzi stąd, że położenie przecinka liczby rzeczywistej ustalane jest przez wartość wykładnika (cechy), mantysa natomiast ma przecinek na ustalonej pozycji.  Liczba zmiennoprzecinkowa jest reprezentowana w maszynie cyfrowej (komputerze) z określoną dokładnością. Jeżeli długość słowa maszynowego wynosi d, to cechę c zapisujemy na d-t bitach słowa maszynowego w sposób stałopozycyjny, natomiast na pozostałych t bitach zapisujemy mantysę m.  Błąd reprezentacji zmiennoprzecinkowej wyrazić można jako:

88 Problemy reprezentacji zmiennoprzecinkowej w symulacji komputerowej dynamiki systemów  Do najbardziej "niebezpiecznych" zmiennoprzecinkowych operacji arytmetycznych należą dodawanie i odejmowanie, które w sytuacji zbliżonych argumentów operacji mogą powodować znoszenie się cyfr znaczących prowadzących do powstawania znacznych błędów. Błędy numeryczne mogą powstawać w obliczeniach: równań zmiennych stanu (poziomów), równań zmiennych stanu (poziomów), równań natężeń strumieni przepływów, równań natężeń strumieni przepływów, równań zmiennych pomocniczych, równań zmiennych pomocniczych, równania upływu czasu. równania upływu czasu.  Stosunkowo najmniejsze wartości błędów powstają w obliczeniach poziomów. Znacznie poważniejsze zaburzenia i niedokładności mogą jednak powstać w obliczeniach wykonywanych w równaniach natężeń strumieni przepływów i równaniach zmiennych pomocniczych. Brak meta-reguł tworzących te wielkości oraz indukcyjny charakter konceptualizacji tych równań modelu powodują, że postać algebraiczna tych równań może być różna. Analizę dokładności obliczeniowej uzyskiwanej dla tych równań, podobną do przeprowadzonej dla uogólnionego przypadku równania poziomu, należy zatem przeprowadzać dla każdego przypadku z osobna, co jest znacznym utrudnieniem dla modelującego. Znaczne niedokładności wyników obliczeń realizowanych przy użyciu komputera mogą także powstać w operacji sumowania realizowanej w pętli obliczeń rekurencyjnych. W symulacji modeli dynamiki systemów sytuacja taka może powstawać w równaniach zasobów akumulacyjnych lub w równaniu upływu czasu: CZAS.K = CZAS.J +DT  Powstawaniu błędów można zapobiec stosując algorytmy sumowania z poprawkami, np. algorytm Gilla-Moellera.

89 Dobór danych wejściowych symulacji Przed rozpoczęciem obliczeń symulacyjnych należy zdefiniować stan początkowy systemu. Stan początkowy systemu w chwili t=t 0 wyznaczony jest przez określenie wartości zmiennych stanu w chwili t 0. W zależności od celu i kontekstu badań symulacyjnych istnieją dwa zasadnicze sposoby definiowania wartości początkowych dla zmiennych stanu:  wartości początkowe zmiennych stanu odwzorowują stany systemu rzeczywistego;  wartości początkowe zmiennych stanu odpowiadają warunkom równowagi dynamicznej modelu.

90 Modelowanie ograniczeń pojemnościowych L1(t) = L1(t - dt) + (R1 - R2) * dt INIT L1 = 100 INFLOWS: R1 = MIN(F,(C1-L1)/DT) OUTFLOWS: R2 = L1/T1 C1 = 250 F = 100+STEP(10,50) T1 = 5

91 TYPY ZACHOWAŃ SYSTEMÓW

92

93 Stany ustalone w modelach SD (Równowaga modelu)  Równowaga dynamiczna Wszystkie poziomy (zasoby) są stałe, tzn. Inflows=Outflows (Dopływy=Odpływy)  Równowaga statyczna Wszystkie poziomy (zasoby) są stałe i strumienie równe 0, tzn. Inflows=Outflows=0 (Dopływy=Odpływy=0)

94 Stany ustalone w modelach SD (Równowaga modelu - przykład)

95 OPROGRAMOWANIE MODELOWANIA SD Ewolucja systemów

96 Modele SD Zastosowanie pakietu EXCEL Przykład

97 Modele SD Zastosowanie pakietu EXCEL Wyniki symulacji TimeZSPZSTODPGWSPP 0,00 150,000,0030,000,00 1,0030,000,00150,000,0030,0015,00 2,0045,0015,00135,003,0030,0022,50 3,0052,5034,50115,506,9030,0026,25 4,0056,2553,8596,1510,7730,0028,13 5,0058,1371,2178,8014,2430,0029,06 6,0059,0686,0363,9717,2130,0029,53 7,0059,5398,3551,6519,6730,0029,77 8,0059,77108,4541,5521,6930,0029,88 9,0059,88116,6433,3623,3330,0029,94 10,0059,94123,2526,7524,6530,0029,97 11,0059,97128,5721,4325,7130,0029,99 12,0059,99132,8417,1626,5730,0029,99 13,0059,99136,2713,7327,2530,00 14,0060,00139,0110,9927,8030,00 15,0060,00141,218,7928,2430,00 16,0060,00142,967,0428,5930,00 17,0060,00144,375,6328,8730,00 18,0060,00145,504,5029,1030,00 19,0060,00146,403,6029,2830,00 20,0060,00147,122,8829,4230,00


Pobierz ppt "MODELOWANIE SYMULACYJNE Simulation Modelling (ang.) Edycja N2M 2015/2016 Wykład (10h), Laboratorium (10h)"

Podobne prezentacje


Reklamy Google