PODSTAWY MODELOWANIA UKŁADÓW DYNAMICZNYCH W JĘZYKACH SYMULACYJNYCH ( Na przykładzie POWERSIM) M. Berndt-Schreiber 1
Plan Zasady modelowania Obiekty symbole graficzne Dyskretyzacja modelowania Predefiniowane funkcje Stosowane procedury Przykładowe zastosowania M. Berndt-Schreiber 2
Trzy zasady modelowania M. Berndt-Schreiber 3
Zasada: I. Istotę zachowań dynamicznych opisują przepływy, które dochodzą lub wychodzą z poziomów. Uwaga: Poziom można traktować jako zbiornik, przepływy jako rury, dzięki którym zbiornik jest napełniany lub opróżniany. M. Berndt-Schreiber 4
Zasada: II. Pętla sprzężenia zwrotnego stanowi podstawowy mechanizm przepływu informacji i reakcji układu. Uwaga: W układzie modelowym informacja o poziomie dociera poprzez strukturę za pośrednictwem przepływów w pętlach dodatniego i ujemnego sprzężenia zwrotnego. M. Berndt-Schreiber 5
Zasada: III. W pętlach sprzężenia zwrotnego mogą występować funkcje nieliniowe, powodujące często skomplikowane i nieprzewidywalne zachowania układu. M. Berndt-Schreiber 6
Obiekty w systemie POWERSIM M. Berndt-Schreiber 7
Obiekty POWERSIM dostępne z pasków narzędzi Modelowe - określają strukturę modelu: typy zmiennych i odpowiednich połączeń Dynamiczne - wyświetlają na bieżąco wyniki symulacji w postaci tabel, wykresów, suwaków itp. Statyczne - pozwalają na dodatkowe informacje o modelu, nie związane z symulacjami M. Berndt-Schreiber 8
Ad. Obiekty modelowe Symbole graficzne M. Berndt-Schreiber 9
Symbole graficzne elementy diagramu modelowania Level / poziom typ zmiennej akumulującej zmiany wywołane przepływami Constant / stała typ zmiennej o ustalonej wartości, która jest wykorzystywana w obliczeniach pomocniczych lub przepływach M. Berndt-Schreiber 10
Symbole graficzne elementy diagramu modelowania Auxiliary / funkcja pomocnicza typ zmiennej zawierającej formułę obliczeniową, zależną od innych zmiennych Flow / przepływ obiekt modyfikujący poziomy M. Berndt-Schreiber 11
Symbole graficzne elementy diagramu modelowania Flow with rate / przepływ kontrolowany obiekt modyfikujący poziomy regulowany przez zmienną pomocniczą Cloud / chmurka niezdefiniowane źródło, symbol końca modelu M. Berndt-Schreiber 12
Symbole graficzne elementy diagramu modelowania Information link / połączenie informacyjne obiekt przekazujący informacje o zmiennych pomocniczych i innych Delayed info-link / połączenie opóźnione obiekt używany przy stosowaniu funkcji opóźniających M. Berndt-Schreiber 13
Symbole graficzne elementy diagramu modelowania Initialization link / połączenie inicjujące obiekt nadający początkowe wartości poziomowi M. Berndt-Schreiber 14
Dyskretyzacja w modelowaniu komputerowym M. Berndt-Schreiber 15
Dyskretyzacja w modelowaniu Układy dynamiczne w świecie rzeczywistym - ciągłe w czasie; np.. zmiany temperatury ruchy planet wzrost komórek M. Berndt-Schreiber 16
Dyskretyzacja w modelowaniu Układy dynamiczne w świecie rzeczywistym - nieciągłe, DYSKRETNE, w czasie; np.. oprocentowania w bankach ceny rynkowe kursy walut M. Berndt-Schreiber 17
Dyskretyzacja w modelowaniu Numerycznie często nie możemy uwzględniać zmian ciągłych - w modelach układów dynamicznych czas traktujemy DYSKRETNIE symulacja w POWERSIM dotyczy zmian poziomów w określonych przedziałach czasowych w każdym kroku symulacji aktualizowana jest wartość poziomu M. Berndt-Schreiber 18
Predefiniowane funkcje w POWERSIM M. Berndt-Schreiber 19
Funkcje dostępne w POWERSIM PODSTAWOWE GRUPY FUNKCJI Funkcje tablicowe (array ) Funkcje zespolone (complex ) Funkcje warunkowe (condition) Funkcje kontrolne (control) Funkcje konwersji (conversion) Funkcje losowe (random) M. Berndt-Schreiber 20
Funkcje dostępne w POWERSIM PODSTAWOWE GRUPY FUNKCJI Funkcje opóźniające (delay) Funkcje finansowe (financial ) Funkcje graficzne (graph) Funkcje matematyczne (mathematical) Funkcje statystyczne (statistical) Funkcje czasowe (time-related) M. Berndt-Schreiber 21
Procedury stosowane w POWERSIM M. Berndt-Schreiber 22
Proces symulacji w POWERSIM Matematyczna definicja poziomu (Level), czyli typu zmiennej stanowiącej zasadniczy element modelowania struktury dynamicznej składa się z dwóch części: Inicjacja (Initial) - określa wartość początkową poziomu Przepływ (Flow) - określa zmiany poziomu w procesie symulacji M. Berndt-Schreiber 23
Proces symulacji w POWERSIM POWERSIM automatycznie generuje procedurę dla przepływu na podstawie określonych połączeń na diagramach, modelujących struktury układów dynamicznych: M. Berndt-Schreiber 24
Proces symulacji w POWERSIM Algorytm EULERA: Założenia: L=poziom w chwili t F(L,t)=przepływ w czasie t 1. obliczanie pochodnej przepływu dla t=t: F(L,T) 2. obliczanie wartości poziomu L dla t=t+ t: L(T+ t)= L(T) + t* F M. Berndt-Schreiber 25
Przykład struktury generowanej przez diagram przy założeniu kroku t = 1 Init L= 100 Flow L=+dt*(F) Aux F = -L/5 M. Berndt-Schreiber 26
Przykład struktury generowanej przez diagram przy założeniu kroku t = 1 dla t=0 L = 100 ; F = -L/5 = -20 dla t=1 L(0+1) = L(0) + 1*F(0) =100-20=80 dla t=2 F=-L/5=-80/5=-16 L(1+1) = L(1) + 1*F(1)=80-16=64 itd.. M. Berndt-Schreiber 27
Przykład struktury generowanej przez diagram przy założeniu kroku t = 1 t 0 1 2 3 4 5 6 7 L 100 80 64 51.20 40.96 32.77 26.21 20.97 F -20-16 -12.80-10.24-8.19-6.55-4.19-3.36 M. Berndt-Schreiber 28
Proces symulacji w POWERSIM Uwaga: Algorytm EULERA zakłada, że przepływ jest stały w danym przedziale czasowym korzysta się tylko z informacji na początku przedziału czasowego (tzw. metoda stałego nachylenia) Ważny staranny dobór przedziału czasowego - algorytm bywa często niestabilny M. Berndt-Schreiber 29
Proces symulacji w POWERSIM Algorytm RUNGEGO - KUTTY: Uwzględnia zmiany poziomów w dwóch lub kilku punktach w danym przedziale czasowym Bywa dokładniejszy, ale wymaga dłuższych obliczeń (por. ćw.) M. Berndt-Schreiber 30
Proces symulacji w POWERSIM W systemie POWERSIM dostępne: trzy typy procedur metody Rungego-Kutty, gwarantujące odpowiednio większą dokładność wyników obliczeń: M. Berndt-Schreiber 31
Proces symulacji w POWERSIM Opcje metody Rungego-Kutty rząd 2 3 4 4 krok ustalony ustalony ustalony zmienny skrót RK2 RK3 RK4 fixed step RK4 var step M. Berndt-Schreiber 32
Przykładowe zastosowania epidemia video-feedback inne M. Berndt-Schreiber 33
POWERSIM opcja diagramy M. Berndt-Schreiber 34
POWERSIM wyniki symulacji M. Berndt-Schreiber 35
POWERSIM opcja diagramy M. Berndt-Schreiber 36
POWERSIM opcja diagramy M. Berndt-Schreiber 37
POWERSIM opcja równania w pseudokodzie M. Berndt-Schreiber 38
POWERSIM wyniki symulacji M. Berndt-Schreiber 39
POWERSIM wyniki symulacji M. Berndt-Schreiber 40
POWERSIM wyniki symulacji M. Berndt-Schreiber 41
Rozwój nowotworu M. Berndt-Schreiber 42
POWERSIM opcja diagramy M. Berndt-Schreiber 43
POWERSIM opcja równania w pseudokodzie M. Berndt-Schreiber 44
POWERSIM wyniki symulacji M. Berndt-Schreiber 45
POWERSIM wyniki symulacji M. Berndt-Schreiber 46
POWERSIM wyniki symulacji M. Berndt-Schreiber 47
POWERSIM wyniki symulacji M. Berndt-Schreiber 48
Analiza ruchów ludnościowych i nie tylko... M. Berndt-Schreiber 49
POWERSIM opcja diagramy M. Berndt-Schreiber 50
POWERSIM opcja równania w pseudokodzie M. Berndt-Schreiber 51
POWERSIM wyniki symulacji M. Berndt-Schreiber 52
POWERSIM parametry M. Berndt-Schreiber 53
POWERSIM wyniki symulacji M. Berndt-Schreiber 54
POWERSIM wyniki symulacji M. Berndt-Schreiber 55
POWERSIM wyniki symulacji M. Berndt-Schreiber 56
POWERSIM wyniki symulacji M. Berndt-Schreiber 57
POWERSIM wyniki symulacji M. Berndt-Schreiber 58
POWERSIM wyniki symulacji M. Berndt-Schreiber 59
POWERSIM opcja diagramy M. Berndt-Schreiber 60
POWERSIM opcja diagramy M. Berndt-Schreiber 61
POWERSIM opcja diagramy M. Berndt-Schreiber 62
POWERSIM opcja równania w pseudokodzie M. Berndt-Schreiber 63
POWERSIM opcja diagramy M. Berndt-Schreiber 64
POWERSIM opcja diagramy M. Berndt-Schreiber 65
POWERSIM opcja równania w pseudokodzie M. Berndt-Schreiber 66