Karel Vlček, E-mail: karel.vlcek@vsb.cz Modelování a simulace Karel Vlček, E-mail: karel.vlcek@vsb.cz
Motivace - abstrakce „Žádná hmotná část světa není tak jednoduchá, aby mohla být chápána bez použití abstrakce. Abstrakce spočívá v nahrazení uvažované části universa modelem, jenž má podobnou, ale jednodušší strukturu.“ (N. Wiener) Každé (i sebedokonalejší) modelování zjednodušuje skutečnost
Modelování a simulace Nejpružnější prostředek pro modelování je popis modelované entity pomocí programu - modelu Abychom se co nejvíce přiblížili skutečnosti, snažíme se, aby model mohl být interpretován v prostředí, které napodobuje skutečnost. Tato interpretace se nazývá simulace
Důvody pro aplikace MaS Chybí-li matematická formulace úlohy Je-li řešení modelem jednodušší než řešení analytické Máme-li zobrazit časový vývoj řešení Chceme-li znát dynamiku nějakého řešeného děje
Obory aplikace MaS Řešení procesů v oborech: Fyzika Chemie Ekonomie Návrh v technicky složitých odvětvích Lékařství Sociologie (a další obory)
Postup řešení modelováním Formulace zjednodušeného popisu Zápis abstraktního modelu formou programu Vytvoření simulačního modelu Simulace za požadovaných podmínek
Dílčí kroky aplikace MaS Popis matematickými relacemi Návrh modelu ve vhodném jazyce Návrh podmínek ověřování chování Verifikace chování modelu simulací Využití modelu pro implementaci Vytvoření dokumentace návrhu
Typy simulačních systémů Se „spojitým časem“ - popis modelu a jeho simulace je prováděna výpočtem soustavy diferenciálních rovnic S „diskrétním časem“ - model je určen hodnotami v daných časových okamžicích výpočty diferenčních rovnic Systémy s „diskrétním časem“ jsou úspornější na paměť a dobu výpočtu
Přesnost simulace Číslicové počítače pracují se vzorky číselných hodnot veličin Veličiny tedy musejí být určeny v čase: Jsou vzorkovány - určeny pouze v daných časových okamžicích Jejich hodnoty jsou nahrazeny čísly jsou kvantovány
Vytvoření abstraktního modelu Slovní popis modelu - popis chování Míra abstrakce musí vystihovat skutečnost - čím větší míra abstrakce, tím méně detailních informací model poskytne Musíme rozhodnout, zda bude model popisovat „spojitý“ nebo diskrétní čas
Cíle tvorby modelů Vyhodnocení - sledování zvolených specifických kriterií Srovnání - vyhledání alternativních řešení Analýza parametrů Optimalizace - nalezení vhodných kombinací Odhalení vztahů a závislostí při řešení
Co je to simulační model? Jedná se o abstraktní model (popis slovy), který je zapsaný formou programu Dvojice modelovaný systém - abstraktní systém má homomorfní vztah Dvojice abstraktní systém - simulační model má izomorfní vztah
Izomorfní vztah Izomorfismus je silnější: je to vztah ekvivalence se shodností struktur a chování prvků v uvažovaném systému
Representace výsledků Výsledky simulace jsou často pro přehlednost representovány graficky i jako vícerozměrné grafy či obrazy I když je v této podobě vnímáme jako spojité, mají stále diskrétní charakter To může ovlivňovat jejich spektrální vlastnosti nebo to může ovlivnit chyby výsledných hodnot
Základ modelování - jazyk Základem modelování je často definice nového symbolického jazyka Symbolické programování umožňuje representovat data, funkce, grafy, programy a dokonce i celý dokument jednotným způsobem a to jako symbolický výraz
V systému „Mathematica“ Může fungovat výraz popsaný v jazyce jako vstup i výstup jiné funkce a může tak umožňovat stručný a jednoduchý zápis Využití popisu je podmíněno existencí nezávislého interakčního dokumentu, známého jako notebook
Notebookové rozhraní Zápis kombinuje textový procesor se zřetelně definovanou představou “buněk“ Buňky jsou důležité, protože vizuálně a funkčně oddělují text na vstupy, výstupy, grafiku, nadpisy atd. Buňky jsou snadno rozšířitelné pro velké výpočty a dokumenty
Klíčové prvky prostředí Systém zápisu Programovací jazyk Interaktivní nápověda Grafika Symbolické a numerické výpočty Palety
V systému „Matlab“ Modelování pomocí matematických výpočtů Umožňuje analýzu a vizualizaci dat Měření a zpracování dat Vývoj algoritmů a aplikace počítačů pro řídicí a komunikační systémy
Základní komponenty MATLAB obsahuje: Výpočetní jádro Grafický subsystém Pracovní nástroje Toolboxy - soubory komplexních metod pro řešení specifických úloh MATLAB má „otevřenou architekturu“
Simulink Systém SIMULINK je nadstavbou systému MATLAB. Umožňje: Pracovat se všemi funkcemi a příkazy jako s grafickými bloky Propojovat tyto grafické bloky a tím vytvářet složitější modely Umožňuje používat nezávislé zdroje dat při simulaci
Literatura Rábová, Z., Češka, M., Zendulka, J.: Modelování a simulace, SNTL, (1981) Zaplatílek, K., Doňar, B.: Matlab pro začátečníky, BEN, Praha (2003)