ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
SIMULACE DYNAMICKÝCH MODELŮ S VYUŽITÍM METOD SYSTÉMOVÉ DYNAMIKY SIMULATION OF DYNAMIC MODELS WITH UTILIZATION OF SYSTEM DYNAMICS Eva Burianová Ostravská univerzita v Ostravě Přírodovědecká fakulta, Katedra informatiky a počítačů,
[email protected] Abstrakt
Příspěvek je zaměřen na využití systémového myšlení a systémové dynamiky při simulaci složitých dynamických modelů. V příspěvku jsou popsány základní metody a principy systémové dynamiky a možnosti využití při tvorbě modelu. Metody systémového myšlení a systémové dynamiky byly aplikovány i do výuky jak v USA, kde byla systémová dynamika definována panem J. Forresterem v Massatchussetts Institute of Technology, tak v Evropských státech, například v Německu, Rakousku a ve Švédsku. Abstract
Paper is dedicated to utilization of system thinking as well as system dynamics upon simulation of complex dynamic models. We described basic methods and principles of system dynamics and possibilities of application in establishment of a model. Methods of system thinking and system dynamics were applied in learning all in the U.S.A., where system dynamics was defined by J. Forrester of Massachusetts Institute of Technology, and in European states, e.g. in Germany, Austria and Sweden. Klíčová slova
Dynamické systémy, systémové myšlení, systémová dynamika, simulace, systém, model. Keywords
Dynamic systems, system dynamics, simulation, systém, model.
1 Dynamické systémy Pro poznávání komplexních dynamických systémů není uplatnění klasických nástrojů modelování rozhodovacích procesů dostatečné. Vhodným nástrojem se stává takový model, na němž můžeme simulovat fungování systému, interaktivně ovlivňovat chování modelu, navrhovat zdokonalení modelu. Metody simulující komplexní dynamický systém nebo proces řadíme mezi metody založené na systémovém přístupu. Vhodným nástrojem pro analýzu a racionalizaci řízení složitých procesů a systémů jsou simulační metody.
19
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
Využívání simulačních metod v různých oblastch má souvislost se zaváděním výpočetní techniky a využíváním počítačů. V současné době v souvislosti s vývojem technických, ale i programových prostředků, které umožňují rychlé zpracování mnoho složitých výpočtů, je možno uvažovat o rozšiřování tvorby simulačních modelů v řízení a rozhodování, které by umožnily kontrolované experimenty s některými typy zkoumaných systémů, podobně jako v oblasti přírodních věd, kde experimentální práce je jednou z nejdůležitějších metod jak získávat nové poznaty, tak ověřovat teorii a hypotézy. Simulační modely poskytují informace o pravděpodobných důsledcích alternativních rozhodnutí. Jejich použití je výhodné zejména tehdy, sledujeme-li více cílů. Použití simulačních metod: Tvorba modelů je nedílnou součástí metodologie počítačové simulace. Modely libovolného charakteru se používají pro jeden či více z následujících cílů [2]: • systemizace myšlenkových pochodů, • usnadnění komunikace mezi lidmi, • výchova a výcvik, • predikace chování modelovaného systému, • experimenty (jako náhrada za experimenty s modelovaným systémem). Simulace se zpravidla používá k dosažení jednoho z následujících cílů: • pochopení reálného (modelovaného systému), • parametrické studie reálného systému, • náhrada za experimenty s reálným systémem.
2 Definice simulace Obecně platnou definici pojmu simulace, stejně jako pojmu systémy na podporu rozhodování v literatuře nenajdeme. Jedna z vhodných definic je uvedena v [8]: Simulace je v širším slova smyslu proces tvorby modelu reálného systému a provádění experimentů s tímto modelem za účelem dosažení lepšího pochopení chování studovaného systému nebo za účelem posouzení různých variant činnosti systému. Simulace nám dává možnost prověřit plány a strategie předtím, než jsou realizovány. Simulace sama o sobě neřeší manažerský problém. Rozhodnutí provádí manažer (rozhodovatel). Dalšími definicemi simulace se zabývají následující autoři [2]: Podle Shannona je simulace proces tvorby modelu reálného systému a provádění experimentů s tímto modelem za účelem dosažení lepšího pochopení chování studovaného systému či za účelem posouzení různých variant činnosti systému. Taylor definuje simulaci jako numerickou metodu, která spočívá v experimentování s matematickými modely (dynamickými) reálných systému na číslicových počítačích. Dahl považuje simulaci za techniku, která nahrazuje dynamický systém modelem s cílem získat informace o systému pomocí experimentů s modelem. Zeigler charakterizuje problematiku simulace pomocí tří elementů (reálný systém, model, počítač) a dvou vztahů – modelového a simulačního.
20
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
3 Matematické řešení modelu dynamického systému Dynamický sytém lze chápat jako soubor vzájemně propojených prvků, jejichž hodnoty se vyvíjejí v čase a které se navzájem ovlivňují. Při modelování dynamického systému je nutné definovat stavové veličiny v jejich závislosti na čase. Tvorba modelu dynamického systému je popisem toho, jak se mění hodnoty stavových veličin X v čase t. (tj z X(t) na hodnotu v čase t+dt, tj. X(t+dt), kde dt je nějaký časový okamžik, malý z hlediska významu jednotlivých veličin). Změny hodnot stavových veličin můžeme popsat dvěmi způsoby (případně jejich kombinací): • jako diskrétní modely (změny hodnoty X(t) na hodnotu X(t+dt) je náhodná veličina, základní charakteristiky náhodné veličiny jsou známé). • jako spojité modely ( změny hodnoty X(t) jsou na hodnotu X(t+dt) vyjádřeny pomocí spojité funkce, která je známá, • smíšené modely (část stavových veličin je ovlivňována náhodnými změnami a část se mění spojitě. Vytvořit matematický model dynamického systému složený ze systému diferenciálních rovnic, které popisují dynamiku systému je obtížné. Principy simulací, algoritmizací simulačních modelů a klasifikací simulačních jazyků se zabývá [3]. Podle charakteru uvažovaných vazeb rozlišujeme simulace na deterministické a stochastické. Deterministické simulace lze opsat deterministickými rovnicemi a nerovnostmi, ve stochastických simulacích uvažujeme náhodné veličiny. V Massachusetts Institute of Technology v USA byla vyvinuta profesorem Sloanovy školy managementu panem Jay W. Forresterem koncem 50. let jedna z metod, která popisuje dynamiku systému, popisuje komplexní a dynamické přírodní a ekonomické systémy. Tato metoda byla nazvána systémovou dynamikou a zabývá se konstrukcí matematického modelu dynamického systému ve třech krocích: • konstrukce kauzálních diagramů, popisujících daný systém • konstrukce proudových diagramů, • vytvoření diferenciálních rovnic z proudových diagramů. Z této metodiky vycházejí další školy systémové dynamiky (Švédsko, Německo), v jejich metodice (v českém překladu) jsou kauzální diagramy nazývány příčinnými diagramy a proudové diagramy diagramy toků, přičemž třetí krok, tvorba diferenciálních rovnic, je řešen v rámci aplikačního software, který je vytvořen jako nástroj pro tvorbu dynamických simulačních modelů na základě metodologie systémové dynamiky. (například software Powersim, Vensim a další).
4 Systémová dynamika a její modelování Pojem systémová dynamika je chápán ve dvou úrovních: • jako systémový způsob myšlení či řešení problémů, přičemž jsou zkoumané jevy a procesy chápány komplexně v jejich vnitřních a vnějších souvislostech,
21
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
• jako jedna z matematických metod řešení dynamických modelů. V oblasti moderních systémových přístupů k sociálním systémům představuje systémová dynamika jednu ze systémových disciplin, mezi které dále patří metodologie měkkých systémů (SSM - Soft System Methodology), akční výzkum a další. Blíže se z tohoto pohledu zabývá systémovou dynamikou publikace [7]. 4.1 Vývoj a současný stav teorie systémové dynamiky
Zpočátku byly metody systémové dynamiky těsně spojovány s matematickými počítačovými simulacemi. V současné době se mnozí autoři se zabývají vazbou systémové dynamiky a systémového myšlení. Každoročně je konána světová konference systémové dynamiky. Prvním úspěchem těchto dynamických modelů a simulačních projektů bylo jejich uplatnění v průmyslu. Na počátku 70.tých let se začaly metody systémové dynamiky prosazovat ve světě. V současné době hrají tyto metody důležitou úlohu v poznávání a porozumění komplexních dynamických systémů. Metody systémové dynamiky jsou často využívány v netechnických oblastech, jako např. modelování sociálních a ekonomických systémů. Klasifikací názvů pro oblast počítačových simulací v socio-ekonomických systémech se zabývá článek F. Maiera a A. Groslera [4]. Tito autoři přehledně rozdělili počítačové simulátory k výuce socio-ekonomických systémů na dvě hlavní oblasti. První oblast zahrnuje modelově orientované simulační nástroje a druhá simulační nástroje orientované na manažerské hry. Aplikace systémové dynamiky jsou obsaženy v desítkách monografií, metod systémové dynamiky se používá pro analyzování chování složitých systémů v řadě zemí. 4.2 Systémové myšlení a systémová dynamika
Nejznámějším obhájcem systémového myšlení je Peter Senge [5]. Systémové myšlení znamená změnu paradigmat způsobu, jak funguje svět, způsobu jak fungují společnosti, a lidských rolí v nich. Senge a jeho kolegové učí manažery hledat vztahy mezi prvky systému; aby se vyvarovali dlouhodobého řešení problémů; aby hledali klíčové body systému (místa, kde drobná změna bude mít obrovský efekt na chování systému); a aby se vyvarovali řešení, které ošetřuje pouze symptomy vlastního problému. Vztah mezi oběma obory (systémovým myšlením a systémovou dynamikou) můžeme ilustrovat pomocí Vennova diagramu.
Systémové myšlení
Systémová dynamika
Obr. 1 Vennův diagram Systémového myšlení a Systémové dynamiky:
22
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
Diagram znázorňuje, že obě odvětví mají mnoho společného. Cílem systémové dynamiky bylo poskytnout manažerům nástroj k porozumění komplexních systémů, které byli pověřeni řídit. Metodologie systémové dynamiky používá počítačové simulace modelů, vytvořených podle vztahu struktury systému a jeho chování v čase. Podle Forrestera je lidské vědomí nejbrilantnější existující pamětí, ale máme problémy přiřazovat důsledky k příčinám, zvláště pokud nejsou časově blízké, a nemůžeme spolehlivě předpovídat výsledek jakékoliv, ani té nejjednodušší situace s nejjednoduššími příčinami. Jinými slovy nejsme dynamickými simulátory. To není překvapující, uvážíme-li, že simulace výsledku nejkomplexnějších problémů je tak obtížná, jako je řešení soustavy sta diferenciálních rovnic. Forrester používá k ilustraci těchto představ nálevku.
Obr. 2 Nálevková reprezentace našich mentálních informací
Vrcholek nálevky reprezentuje naši mentální informaci, tedy všechno, co nosíme v hlavě. Tato informační databáze je největší a nejkomplexnější, která je nám dostupná. Další je psaná databáze, která je stokrát nebo dokonce tisíckrát menší. Reprezentuje všechny informace, které máme na papíru nebo uloženy elektronicky. Dále máme numerickou databázi, reprezentující všechny informace v podobě čísel a představující další sto až tisíckrát menší hodnotu a bohatství informace. Je zřejmé, že místo nálezu nejúplnějších informací je na vrcholku nálevky v mentální databázi. 4.3 Metodologie systémové dynamiky
Tvorba modelu pomocí systémové dynamiky má několik kroků: 1) definování problémů k řešení, 2) definování systémových prvků modelu, 3) vytvoření mentálního modelu, 4) formalizace modelu, 5) vytvoření simulačního modelu za pomoci některého softwarového programu, který je založen na principech systémové dynamiky. Hlavními prvky metod systémové dynamiky (SD) - jsou: • rozdíly mezi zásobami a toky v systémových modelech, • speciální metody zápisu v ”zásoby a toky” diagramech (stock and flow diagrams),
23
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
•
počítačové jazyky pro numerickou simulaci dynamických systémů na počítačích.
1) Definování problému Modelování problému začíná definicí problému. Problém, který chceme modelovat, je základním kamenem celé aktivity. Definování problému je v podstatě definování účelu modelu. K definování problému patří definování hranic modelu pomocí diagramu hranic. Diagram hranic pomáhá rozhodnout, které proměnné zahrneme do modelu a zda budou vnitřní nebo vnější.
Obr. 3 Diagram hranic:
2) Definování systémových prvků modelu Definováním systémových prvků rozumíme identifikovat klíčové pojmy a složky modelu, které zahrneme do modelu. Je nutné všechny prvky modelu pojmenovat a promyslet jednotky míry pro každou proměnnou. 3) Mentální vyjádření systému K mentálnímu vyjádření systému používá systémová dynamika především dva nástroje: příčinné smyčkové diagramy nebo diagramy toků. Někdy je využívána pro popis mentálního modelu i soustava navzájem přilehlých šestiúhelníků, tato soustava však nepopisuje ani polaritu vlivu jednotlivých prvků. Příčinný smyčkový diagram Příčinný smyčkový diagram popisuje prvky systému a příčinné vztahy mezi nimi. Na následujícím obrázku je popis používané symboliky.
24
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
Symboly příčinných smyčkových diagramů
Příčinné spoje
O
Změna s opačnou tendencí
S
Změna se stejnou tendencí Zpožďovací spoj
Zesilující smyčka se zpětno vazbou, která zesiluje změnu
R nebo + nebo Smyčky se zpětnou vazbou
Vyrovnávací smyčka se zpětnou vazbou, která hledá rovnováhu.
B nebo - nebo
Obr. 4 Systémové prvky
K příčinným smyčkovým diagramům je potřeba přistupovat opatrně, protože v sobě skrývají jistá úskalí. Největší úskalí spočívá v různém charakteru prvků systému, některé prky mají charakter hladin (akumulací) a některé charakter toků. V příčinných smyčkových diagramech jsou hladiny od toků odlišeny tak, že hladiny jsou opatřeny rámečkem. Diagram toků Diagram toků obsahuje prvky systému vzájemně propojené, prvky systému jsou pak definovány pomocí rovnic. Symboly diagramu toků Konstanta
Ventil toku (regulátor) Přítok
Inicializační spoj
Hladina
Chování systému
Odtok
trubice toku Míra toku (změna systému) Pomocná_proměnná
Zpožděný spoj
příčinná smyčka
Symbol mraku (hranice systému)
Obr. 5 Symboly diagramu toků
25
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
4) Formalizace modelu Dalším stupněm je formalizace modelu. V tomto stadiu jsou navrhovány rovnice modelu. Je nutné určit vzájemnou závislost proměnných. Současně s odvozením rovnic zahrnuje toto stádium výběr hodnot parametrů. Parametry jsou konstanty, počáteční hodnoty hladin a grafické funkce (tabulové funkce). 5) Tvorba simulačního modelu Jestliže je vytvořen model podle předcházejících kroků, potom můžeme za pomoci softwarového nástroje vytvořit simulační model. Musí být definovány všechny proměnné a rovnice, vyřešeno časování modelu, následně můžeme simulovat model a prohlédnout jeho chování v čase. Při tvorbě počítačového simulačního modelu si musíme definovat tři body: • Prvním je časový horizont; to znamená časový úsek, ve kterém chceme model simulovat. Ten se bude lišit v závislosti na účelu modelu. • Druhým je časový krok, který měří, jak často bude aplikace vykonávat své výpočty. Čím menší je časový krok, tím častěji se budou provádět matematické výpočty a tím pomaleji model poběží. • Třetím je integrační metoda. (Powersim nabízí několik metod, včetně Eulerovy a různých Runge Kuttových metod.) Jestliže model přiměřeně reprezentuje opravdový problém, můžeme ho používat pro analýzu a experimentování, můžeme simulovat efekty rozmanitých změn politiky před tím, než například přijmeme důležité rozhodnutí.
5 Principy systémové dynamiky Jay W. Forrester [8] stanovil čtyři základní principy systémové dynamiky: První z nich je, že veškeré dynamické chování ve světě nastává, jestliže se toky akumulují v hladinách. Hladinu si můžeme představit jako vanu a tok jako potrubí s kohoutkem, které vanu plní.
Hladina Tok
Druhou základní myšlenkou je, že hladiny a toky systémů tvoří smyčky se zpětnou vazbou. Zpětná vazba je přenos a návrat informace. V modelech systémové dynamiky putuje informace o hladině systému strukturou modelu, až dosáhne tok této hladiny. Tok reaguje na informaci tím, že ovlivní hladinu, a tím se smyčka se zpětnou vazbou uzavře.
26
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
Hladina
Tok
Smyčka se zpětnou Hladina vazbou
Tok
Existují dva druhy smyček se zpětnou vazbou - pozitivní a negativní. Pozitivní smyčka generuje samozesilující chování a negativní smyčka generuje stabilizující neboli vyvažující chování. Příkladem pozitivní smyčky je vztah mezi narozením a populací v rozvíjející se zemi. Když populace země roste, roste počet narození a čím více dětí se narodí každý rok, tím více se nárůst populace zesílí. Populace
+ Narození
Příkladem negativní smyčky je vztah mezi úmrtím a populací v rozvíjející se zemi. Když populace země roste, více lidí zemře a čím více lidí zemře každý rok, tím více smyčka brání původnímu růstu populace. Populace
_ Úmrtí
Třetí základní myšlenkou modelování v systémové dynamice je, že smyčky se zpětnou vazbou jsou navzájem spojeny nelineárními vazbami.
6 Software pro tvorbu dynamických simulátorů Skupina pracovníků vedená J. Forresterem vyvinula systém DYNAMO, který je představitelem prvních moderních simulačních jazyků. Moderní softwarové produkty pro systémovou dynamiku jsou již grafické, umožňují zobrazení toků diagramů, vytvoření grafů, krokování atd. Aplikační programy, které jsou založeny na systémových přístupech jsou zdokonalovány na takovou úroveň, že je možné, aby je využívali nejen informatici a programátoři, ale běžní uživatelé. Prostředí programů, uživatelské rozhraní a jeho obsluha je tomu přizpůsobena. DYNAMO Dynamo je prvním systémovým dynamickým simulačním jazykem. Byl vytvořen v šedesátých letech v Cambridge. Je možné ho nainstalovat na PC a kompatibilních počítačích pod DOS nebo Windows. Powersim Poversim je simulační programové vybavení, pracující pod Windows. Umožňuje interaktivní experimentování v oblastech obchodní strategie, operace, marketing, analýza konkurence a
27
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
podpora rozhodování. Pomocí tohoto simulačního programu můžeme vytvářet diagramy, které reprezentují systémy, např. továrny, oddělení, firmy. Tyto diagramy můžeme přetvářet na interaktivní dynamické modely. Pomocí těchto modelů může uživatel sledovat důsledky svého rozhodnutí – jak krátkodobé tak dlouhodobé. S modelem pracujeme interaktivně, můžeme měnit vstupní nastavení a zkoušet nové strategie. Tento simulátor je vhodný i pro výuku. Představuje možnost stavby fyzikálních, chemických, biologických, ekonomických modelů a zjišťování možných výsledků podle zvolené strategie. Je totiž představitelem systémové dynamické metody modelování a simulace daného systému, jeho chování v reálném čase. IThink/Stella Tento program umožňující dynamické modelování byl vyroben pro počítače Macintosh, je graficky orientován. Vensim Vensim je integrované prostředí pro tvorbu, analýzu dynamických zpětnovazebních modelů. Vensim podporuje vývoj systémově dynamických modelů a dalších modelů, které se mění s časovými změnami. Modely jsou konstruovány v grafickém prostředí nebo v textovém editoru. Vensim je charakterizován dynamickými funkcemi. CreditSim CreditSim je manažerský simulátor, jeho demo verzi je možno rovněž stáhnout z internetu.
7 Závěr Softwarové produkty založené na principech systémové dynamiky umožňují rozhodovateli vytvářet simulace v „přívětivém“ grafickém prostředí, měnit hodnoty vstupů, studovat chování systému a srovnávat výsledky v závislosti na změně vstupních dat, případně měnit strukturu vytvořeného modelu Využívání dynamických systémů a manažerských simulátorů v praxi vede k racionalitě v rozhodování. Zavádění nových metod, mezi nimiž jsou metody založené na modelování dynamických systémů, do praxe v oblasti řízení, pomáhá v cestě od empiricko-intuitivního rozhodování k rozhodování vědeckému. Systémy pracující na bázi metod systémové dynamiky, nám umožňují vytvářet takové modely komplexních složitých dynamických systémů, které mohou sloužit jako systémy na podporu rozhodování a navíc mohou být využívány rozhodovateli interaktivním způsobem.
Literatura [1] Forrester, Jay W.: The Beginning of System Dynamics, Banquet Talk at the international meeting of the SystemDynamics Society, Studgart, 1989 [2] Chobot, M., Turnovcová A.: Modely rozhodovania v konfliktných situáciách a za neurčitosti, Alfa, 1980 [3] Koontz, H.:Management, Victoria Publishing, Praha, 1993 [4] Maier, Frank H., Grosler, A.: A Taxonomy for Computer Simulations to Support Learning about Socio-Economic System, 1998 [5] Senge, P.: The Fifth Discipline, New York, 1994 [6] Šustav, M., Wild, J.: Referenční příručka k úvodnímu kurzu Powersim
28
ISKI 2007 - Využitie operačných systémov a počítačových sietí v podpore výučby informatických predmetov
[7] [8]
Construktor 2.5, Chomutov, 1998 Vodáček, L., Rosický, A.: Informační management, Management Press, 1997 Zonková, Z.,Poštová,E.,Moravcová,E.,Hančlová,J.:Operační výzkum, skripta VŠB, 1994
O autorovi Ing. Eva Burianová, Ph.D., Katedra informatiky a počítačů, PřF OU, 30. dubna 22, 70103 Ostrava,
[email protected]
29