Slovník | Vyhledávání | Mapa webu
 
Analýza a modelování dynamických biologických datÚvod do matematického modelování Metodologie matematického modelování s využitím Maple Základní metodika matematického modelování s využitím Maple Výpočet řešení modelu

Logo Matematická biologie

Počítačová simulace

Počítačovou simulaci, v procesu výpočtu řešení modelu na počítači, rozumíme běh aplikačního programu, pomocí kterého simulujeme chování matematického modelu konkrétního systému, když se pokoušíme nalézt analytické řešení modelu, které umožňuje predikovat chování systému na základě jeho parametrů, počátečních a okrajových podmínek. Počítačová simulace je často užívána jako doplnění nebo nahrazení modelovaného systému, u něhož nalezení uzavřené analytické formy řešení není možné. Existuje mnoho typů počítačové simulace; společným rysem, který všechny simulace sdílejí je pokus generovat vzorek reprezentativních scénářů pro matematický model, ve kterém úplný výpočet všech možných stavů modelu je nemožný nebo nepřípustný.

Počítačovou simulaci dělíme vzhledem různým kritériím na:

  • Stochastickou (užívající generátorů náhodných čísel a metodu Monte Carlo) nebo deterministickou (jako speciální případ deterministické je chaotická). Stochastická simulace je typicky využívána pro diskrétní systémy, kde se události vyskytují s určitou pravděpodobností a nemohou být popsány přímo např. pomocí diferenciálních rovnic. Jevy v této kategorii zahrnují např. genetický drift, biochemické nebo genové sítě s malým počtem molekul.
  • Statickou a dynamickou (závislou na čase). Ve statické simulaci se používají rovnice definující rovnovážné vztahy mezi prvky modelovaného systému a hledá se stav, ve kterém je systém v rovnováze. Tento způsob je často využíván při simulaci fyzikálních systémů, které jsou dynamické, aby se zjednodušila jejich simulace, než se přistoupí k dynamické simulaci.
  • Spojitou a diskrétní. Spojitá dynamická simulace je řešena většinou pomocí aplikačních programů pro numerické řešení diferenciálně algebraických rovnic, algebraicko-diferenciálních rovnic nebo diferenciálních rovnic (buď parciálních, nebo obyčejných). Speciálním typem diskrétní simulace, která nezávisí na modelu s příslušnou rovnicí, ale může být víceméně representována formálně, je „agent based“ (zprostředkovatelská) simulace. V této simulaci nejsou individuální entity (např. molekuly, buňky, stromy nebo zákazníci) modelu reprezentovány přímo, nýbrž zprostředkovaně (např. jejich hustotou nebo koncentrací) a je řízen vnitřní stav modelu pomocí množiny chování nebo pravidel, která určují jak agentův (zprostředkovatelův) stav, který je aktualizován od jednoho časového kroku k následujícímu.
  • Lokální a distribuovanou (je řešena na počítačových sítích a prostřednictvím Internetu).

Příklad 4: Výpočet a simulace řešení matematického modelu systému výskytu sezónní chřipky v Maple

Pro výpočet řešení matematického modelu v Maple, kde jsme v předchozím příkladu 3 zapsali rovnice modelu (1)-(3) a počáteční podmínky (4) máme několik dalších možností využití Maple pro simulaci řešení. V Maple stačí tyto rovnice (1)-(3) označit a stlačit pravé tlačítko myši, které způsobí, že se nám objeví  menu, kde můžeme zvolit buď funkci Solve DE System nebo Solve DE Interactively. Když zvolíme Solve DE Systém, získáme stejné obecné řešení jako v příkladu 2. Pokud zvolíme Solve DE Interactively, Maple vyvolá okno ODE Analyzer Assistant, které nám umožní počítačovou simulaci pokud budou známé hodnoty parametrů α a β a počáteční podmínky S0 a I0. S využitím tlačítek Edit zadáme obecné počáteční podmínky (4) a hodnoty parametrů α, β a počátečních podmínek I0, S0 převezmeme z příkladu 3. Rovněž můžeme editovat i soustavu diferenciálních rovnic.


Obr. 3. Okno ODE Analyzer Assistant pro řešení problému (1) – (4).

V okně ODE Analyzer Assistant můžeme zvolit tlačítko Solve Symbolic a Maple nám nabídne další okno, obr. 4, kde po stisknutí tlačítka Solve zobrazí v okénku analytické řešení, které lze zvětšit stisknutím tlačítka Large Display. Toto okno nabízí další možnosti, které najdeme v nápovědě Maple, jako je např. zobrazení příkazů Maple při zatrhnutí Show Maple commands.


Obr. 4. Okno Solve Symbolic v ODE Analyzer Assistant pro řešení problému (1) – (4).

Další možnost je, že zvolíme numerické řešení, ale nejprve musíme místo symbolických počátečních hodnot S0, I0 a parametrů α, β pomocí tlačítka Editor zadat numerické hodnoty, viz obr. 5 a uložit tlačítkem Done.


Obr. 5. Zadání hodnot I0, S0 a parametrů α, β pro řešení problému (1) – (4).

Po zadání numerických hodnot už lze v okně ODE Analyzer assistant, obr. 3, řešit model (1) –(4) numericky stisknutim tlačítka Solve Numerically, která vyvolá okno, viz obr. 6.


Obr. 6. Zadání hodnot I0, S0 a parametrů α, β pro řešení problému (1) – (4).

V okně Solve Numericaly lze volit numerickou metodu řešení soustavy diferenciálních rovnic (zde Runge-Kutta Fehberg 4. – 5. řádu), absolutní a relativní přesnost přibližného řešení. Pak je možné nechat vypočítat numerické řešení pomocí tlačítka Solve ve zvoleném bodě (t=10), zadat parametry grafu pomocí tlačítka Plot Options, které vyvolá okno, viz obr. 7, a zvolené volby (např. barvy grafu jednotlivých řešení) uložit je pomocí tlačítka Done.


Obr. 7. Okno Plot Options pro zadání parametrů grafu numerického řešení problému (1) – (4).

Po stisknutí tlačítka Plot se v okně Solve Numerically zobrazí příslušné grafy numerického řešení počátečního problému (1) – (4) a funkční hodnoty řešení v daném bodě, viz obr. 8.


Obr. 8. Okno Solve Numerically s numerickým řešením problému (1) – (4) v čase t=10 a grafy řešení na intervalu <0, 40>.

Na obr. 8 vidíme, že jsme obdrželi využitím funkce Solve DE Interactively stejné numerické řešení jako v příkaldu 3, avšak interaktivním způsobem, aniž bylo nutno znát příkazy solve a odeplot jazyka Maple.

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity