Úvod

Ekonomie tradičně využívá dvou přístupů ve výzkumu: induktivní a deduktivní. Na základě předpokladů slouží deduktivní přístup k budování hypotéz a teorémů, které jsou následně porovnány s empirickými důkazy. Induktivní přístup je založen na vyhledávání vzorů v emprických datech. (Ing. et Ing. Tomáš Šalamon, 2010)

Jedna z nejdůležitějších metod přírodních věd je experiment. Vědci mohou vybudovat umělé prostředí, ve kterém následně testují své hypotézy za optimálních podmínek. Pro ekonomy je však takováto metoda zřídkakdy dostupná. Ekonomové nemají žádné laboratoře, ve kterých by mohli testovat své hypotézy a provádění experimentů pro ně znamená například zahrnout celý jeden stát bez možnosti opakování experimentu. Některé experimenty jsou pro ekonomy zcela nemožné.

Významnou změnou byl pro ekonomii nástup výpočetní techniky. Simulační metoda Monte Carlo (1940, Los Alamos National Laboratory) poprvé umožnila vznik nových simulačních metod, které umožnily studium komplexních systémů a jejich chování.

Tato práce se zabývá simulačními metodami a především multiagentními modely, které lze využít pro simulaci societálních jevů a přínáší tak ekonomům možnost experimentovat a testovat své teorie.

Terminologický základ

Systém

Systém je celek, jehož fungování závisí na jeho částech a vztazích mezi nimi. Části vytváří celek, celek dává smysl částem.

Emergence

Emergence je vznik takových charakteristik systému, které nejsou popsatelné v rámci jednotlivých prvků tvořících tento systém. Např. elementární částice nepohlcují nějakou specifickou vlnovou délku elmag. záření a proto nemají barvu. Ale systém elementárních částic (např. soubor molekul) již nějakou vlnovou délku může pohlcovat a tedy má barvu. Barva je tedy emergentní jev, který není popsatelný prvky systému.

Stejně tak vědomí nikde v organismu nenajdeme. Organismus je systémem vzájemně propojených buněk, které se sdružují do tkání a tyto tkáně vytváří orgány a ty tvoří organismus.

Systémové myšlení

Kolem roku 1930 se stal tématem život, který byl v rozporu s redukcionismem a mechanistickým pojetím. Systémové myšlení (holismus) si uvědomuje, že fyzikálně a chemicky je těžké rozlišit mezi životem, umíráním a smrtí (např. DNA je stejná). Zabývá se problémy jako stabilita – ta je ve fyzice spojená s minimalizací energie (např. těleso je stabilní, pokud je těžiště na nejnižším místě a potenciální energie je minimální.) Organismus, organizace a např. výrobní linka jsou stabilní při stavu vysoké energie.

Lidské systémy se podobají živým organismům (viz. celulární automaty). Jak mohou ve světě neřízeného fyzikálně chemického pohybu vzniknout stroje?

Samoorganizace

Samoorganizace je jednou z teorií o vzniku života na naší planetě. Současná věda poukazuje na fakt, že hmota je schopna sama sebe organizovat a vytvářet struktury. Tímto způsobem je možno vysvětlit vznik života na zemi, jako samoorganizující se proces. Je to proces, při němž organizace určitého systému roste spontánně, tedy bez ovládání prostředí, nebo zásahu nějakého jiného vnějšího systému.

Příkladem může být mraveniště a mravenec. Samotný mravenec je jen primitivním automatem, ať už se jedná o mravence posledního z posledních nebo královnu. Každý z nich dělá jen přesně specifikovanou množinu ukonů a nic víc. Přesto mraveniště jako takové funguje jako perfektně řízený celek, který umí flexibilně a tudíž inteligentně reagovat na nečekané a nepřirozené podněty. Znamená to snad, že si mraveniště uvědomuje samo sebe, že si uvědomuje fakt, že je hromadou jehličí s nějakým hmyzem uvnitř?

Formálně je pojem samoorganizace vysvětlován pomocí pojmu entropie, který určuje míru neuspořádanosti daného systému. Čím je entropie větší, tím větší je míra neuspořádanosti. Samoorganizace pak vzniká v sytému, který se skládá z velkého množství samostatných jednotek, které tvoří menší systémy, mezi nimiž dochází k tokům entropie. Vzniká tedy mezi částmi tvořící celek.

Celulární automaty

Jakýmsi „předchůdcem“ multiagentních modelů, který vhodně ilustruje jejich základní vlastnosti, jsou celulární automaty. Celulární automaty jsou výpočetní systémy, které se skládají z buněk umístěných v jedno, dvou nebo vícerozměrné prostorové struktuře – mřížce.

Celulární automaty vznikly ve 40. letech 20. století vznikly pod záštitou Johna von Neumanna, který hledal způsob, jakým vytvořit sebe-reprodukující se stroje, první celulární automaty. Ty pak umožnily vytvořit fyzikální modely reálných situací. Sloužily k časové i prostorové diskrétní idealizaci fyzikálních systémů, kde hodnoty veličin nabývají pouze diskrétních hodnot v průběhu času. Pomocí jednoduchých pravidel bylo a je možné vytvořit celulární automat se složitým dynamickým chováním, čehož v roce 1970 využil John H. Conway se svou Hrou života. Ta vyšla v časopise Scientific American. Vydavatel tehdy napsal:

Hra života ihned po vydání proslavila Conwaye, ale také otevřela nové pole matematického výzkumu celulárních automatů. Stalo se tak hlavně z důvodu analogií hry a růstu, úpadku a změn ve společnosti živých organismů.

Počítačová simulace

Simulace je imitací procesu, systému, či fenoménu reálného systému. Simulace napodobuje klíčové charakteristiky simulované entity a nutně tedy pracuje s určitou abstrakcí. Simulace dovoluje provádět experiment opakovaně a umožňuje tak výzkumníkovi měnit parametry systému tak, aby se přibližovaly reálnému systému. Modely, které výzkumník vytvoří, pak slouží k analýze, předpovědi, či ověření chování reálného systému. Simulace je často jediným prostředkem získávání informací o zkoumaném systému – např. simulace srážky galaxií, nebo simulace šíření viru. V neposlední řadě jsou simulační modely také skvělým výukovým prostředkem, který slouží k vizualizaci daného problému.

Postup
Obrázek 1 – Postup při simulaci – (R)ealita -> (Z)nalosti -> Abstraktní model (AM) -> Simulační model (SM)

Aplikace simulačních metod našla své využití v návrhu komplexních logistických systémů, v implementaci leteckých simulátorů, které slouží pro výcvik pilotů, v předpovědi počasí, při testování chování budov a dílů pod jejich namáháním, v umělé inteligenci (chování robotů), nebo také ve finančnictví a pojišťovnictví.

Ve statistice je simulace rozšířenou metodou, která je používána pro řešení pravděpodobnostních modelů, které jsou příliš složité pro řešení analytickým postupem. Analytickým postupem se rozumí řešení matematického modelu, který pro vstupní hodnoty poskytne přesné výstupní hodnoty. V případě řešení pomocí simulace dostáváme odhad, který je často dostačující pro praktické využití. Statistická simulace je úzce svázána s výpočetní technikou, jelikož simulační experimenty bývají typicky výpočetně náročné úkony. Statictická simulace je využívána v ekonomii, finančnictví, managementu, sociologii a dalších societálních vědách. Vzhledem k rozmachu informační techniky dnes simulační metody zažívají prudký rozvoj.

Přístupy počítačové simulace

Diskrétní simulace

Diskrétní simulace umožňuje řešení pokročilých problémů front, které nejsou řešitelné analytickou cestou. Hodnoty modelu se mění pouze v případě, že nastane relevantní událost, která zapříčiní změny v modelu. Interval mezi dvěma událostmi je “vypuštěn”. Tento typ simulace by se použil např. pro simulaci zatíženosti pokladen v obchodu s potravinami.

Disrete
Obrázek 2 – Diskrétní čas

Spojitá simulace

Spojitá simulace umožňuje studium komplexních systémů a jejich chování ve spojitém čase. Simulace je založena na diferenciálních rovnicích, které určují vztahy mezi proměnnými modelu. Hodnoty proměnných se mění průběžně – je tak možné sledovat chování modelu v jakémkoliv čase. Tato simulace se používá např. pro systémovou dynamiku.

Obrázek 3 - Spojitý čas
Obrázek 3 – Spojitý čas

Kombinovaná simulace

Simulace, která kombinuje oba předchozí přístupy. Může se jednat například o míček, který se spojitě pohybuje v krabici, která diskrétně mění svou polohu o 90 stupňů.

Typy simulací

Monte Carlo

Metoda Monte Carlo je založena na generování náhodných čísel, které algoritmu slouží pro zisk parametrů distribuce pravděpodobnosti. Distibuce je určena dle reálného systému – víme např. že příchod zákazníků do obchodu má Poissonovo pravděpodobnostní rozložení  Simulace probíhá v iteracích a s každou iterací dostáváme jiný průběh simulace – ten je zaznamenán a následně vyhodnocen. Chyba této metody závisí na počtu iterací – čím více iterací provedeme, tím přesnější vyhodnocení získáme.

MonteCarlo
Obrázek 4 – Normální rozdělení pravděpodobnosti pomocí generování náhodných čísel

Simulace diskrétních událostí

Tento typ simulace využívá tzv. next-event algoritmus, který řadí události do výpočetního kalendáře, ze kterého jsou události v daný systémový čas vybírány a zpracovávány. Může se jednat např. o simulaci hradlového pole, kde je zpoždění jednotlivých prvků (AND, OR, XOR, NAND, …) pevně stanovené a při změně vstupních hodnot hradla bude s tímto zpožděním na výstupu hradla požadovaná hodnota.

Gates
Obrázek 5 – Hradlové pole

Systémová dynamika

Pomocí systémové dynamiky simulujeme komplexní systémy jako např. domácí systém vytápění. Systém je popsán pomocí diferenciálních rovnic, které popisují vztahy mezi jednotlivými prvky systému. Systém pak na základě pozitivních a negativních vazeb mění svůj stav.

Obrázek 6 - Stock & Flow diagram populace
Obrázek 6 – Stock & Flow diagram populace

Na obrázku 7 můžete vidět systém vytápění, který obsahuje prvek plynového kotle, který spalováním plynu ohřívá vodu, která proudí v uzavřeném systému. Voda cirkuluje skrze radiátory. Radiátory mají určitou plochu skrze kterou je pomocí stefan-boltzmanova zákonu vyzařována energie a ohříván vzduch v místnostech. Vzduch je ochlazován venkovním prostředím. V závislosti na aktuální teplotě vzduchu pak termostat zapíná a vypíná kotel a udržuje tím stálou teplotu v rámci bytu.

Obrázek 7 - Systémová dynamika vytápění
Obrázek 7 – Systémová dynamika vytápění

Multiagentní simulace

Přestože jsou diskrétní a spojité metody velmi užitečné, nejsou vhodným prostředkem, který by byl vhodný pro simulaci ekonomických a dalších societálních problémů. Nové možnosti přinesl právě rozvoj multiagentních modelů. Multiagentní přístup je považován za nový přístup k architektuře výpočetní techniky. Klasický model von Neumannovské architektury vykonává program, který je prováděn na CPU. Při daných vstupech můžeme teoreticky předpovědět výstupy. Multiagentní systémy nemají předdefinovanou funkcionalitu nebo algoritmus – je to množina autonomních jednotek – agentů.  Mezi agenty a jejich prostředím a mezi agenty samotnými dochází ke vzájemným interakcím. Ty mohou být jak strukturálně, tak funkčně komplexní. Agenti mohou být různorodí – mohou mít odlišné nejen své parametry, ale i funkce, které určují jejich chování. Multiagentní modely jsou užívány ve fyzice (např. modelování tekutin), biologii (modelování ekosystémů) nebo v sociálních vědách (např. modely šíření názorů mezi lidmi) a v ekonomii (např. modelování trhů). (Ing. Jan Burian, 2010)

 

Historie multiagentních modelů

První multiagentní modely se objevily v 70. letech, některé z nich nebyly ani implementovány softwarově. Rozkvět multiagentních modelů nastal až na přelomu 80. a 90. let a souvisel s růstem výkonu výpočetní techniky. Multiagentí modely, které obsahují velké množství agentů, jejichž dynamiku sledujeme po dlouhou dobu, jsou na výpočetní výkon velmi náročné. (Ing. Jan Burian, 2010)

V posledních deseti letech vznikala snadno ovladatelná vývojová prostředí pro tvorbu multiagentních modelů, jako např. systém NetLogo. Díky tomu se mulitagentní modely stávají pomůckou nejen vědců, ale začínají se používat i ve výuce.

Dynamika multiagentních systémů

Tyto modely představují tzv. bottom-up přístup k modelování systémů – systém je modelován od jeho elementárních prvků – agentů. Díky interakci agentů je možno odvodit emergentní charakteristiky systému jako celku.

Agenti mohou být různorodí – mohou mít odlišné parametry i zcela odlišné funkce řídící jejich chování – tyto funkce mohou být mnohem složitější než u celulárních automatů.

Agenti

Agenti mají několik charakteristik:

  • Jsou sociální – jsou schopni kooperace, komunikace, vyjednávání a učení se od ostatních
  • Jsou iniciativní – jsou schopni proaktivního jednání, nědělají pouze to, co jim bylo řečeno
  • Jsou orientovaní na cíl – mají vlastní cíle a chtějí je naplnit
  • Jsou autonomní – jsou schopni jednat na vlastní pěst
  • Jsou reaktivní – jsou schopni interakce s prostředím a dalšími agenty

Prostředí se liší podle toho, zda je přístupné, nebo nepřístupné. Přístupnost informací z prostředí je však omezena v určité míře a není to jen to či ono. Prostředí může být statické, nebo se může měnit – a to nejenom diskrétně, ale i spojitě. Agenti si mohou pamatovat svou minulost, nebo také nemusejí a jednají pouze dle aktuálního podnětu.

Dle zvolených agentů a prostředí může simulovaný model dospět ke komplexnímu chování – vždy je však potřeba mít na paměti, že čas, po který simulace může běžet, je omezený – potřebujeme výsledky v relativně krátkém čase.

Podle toho, jaké charakteristiky v jednání agenti projevují, rozdělují se na deliberativní a reaktivní agenty.

Deliberativní agenti pracují s individuální reprezentací externího světa. Tito agenti mají vlastní inteligentní jednání, které vychází z jejich vnitřní umělé inteligence a z jejich adaptace vůči jejich prostředí.

Reaktivní agenti nijak vnitřně nevytvářejí reprezentace okolního světa – jednaní pouze podle příchozích podnětů.

Stejně jako se kombinuje diskrétní a spojitá simulace, kombinují se i přístupy při návrhu agentů – vznikají tak hybridní agenti, kteří se v něčem chovají reaktivně a v něčem deliberativně.

Přístupy agentů

Agenti jsou schopni přijímat informace z prostředí pomocí vlastních sensorů, nebo komunikací s dalšími agenty. Čím je informačně přístupnější prostředí, tím jednodušší vstupní funkce informací. Pro většinu reálných systému však spíše platí, že vstupní funkce je složitá.

Logika agentů se dá vyjádřit pomocí logických predikátů, neurálními sítěmi, ontologiemi, objekty a také všemožnými kombinacemi těchto přístupů. Přesto přese všechno však dnes nejsme prozatím schopni vytvořit skutečně inteligentního agenta. Možnosti však teď přichází v podobě obecných AI, které je možné naučit vykonávat složité úkony, které se uči ze souboru dat, který je určen pro jejich výuku. Tyto AI se dají použít pro hraní šachů, rozpoznávání obrázku, automatickou filtraci dat – obecná AI je schopná se učit.

Dnes se agenti dle své logiky rozdělují do několika skupin.

Přístup založený na užitku 

Akce agentů jsou prováděny tak, aby při dané míře informace, kterou mají k dispozici, maximalizovali svůj užitek. Každá možnost, která se naskytne je kardinálně ohodnocena dle užitku v rámci cíle agenta a následně je provedena odpovídající akce. Přestože dnes většina ekonomů již dnes neuznává teorii užitku jako všeobjímající teorii ekonomie, tento přístup nabízí možnosti jednoduchého počítačového vyhodnocení. Problémem je však právě vyhodnocování utility dané možnosti – odpovídá filosofickému problému ohodnocení statků.

Přístup založený na logice

Agenti se řídí dle logických výroků, které se interpretují. Je tomu podobně jako např. při programování pomocí jazyků LISP a PROLOG. Agenti obsahují databázi logických formulí, ty jsou logickou dedukcí vyhodnoceny a převedeny na následné akce.

Interakce agentů

Interakcí agentů vzniká komplexní chování systému jako celku. Agenti se snaží dosáhnout svého cíle v interakci ostatními agenty, kteří se snaží dosáhnout stejného cíle. Každý agent má určité okolí, které může ovlivnit – interakce vzniká v přídapě vzniku průniku okolí agentů.

Agenti mohou interagovat těmito způsoby

  • Kooperace – dosahování cílu respektováním obecných zákonů
  • Koordinace – spolupráce za cílem dosažení cíle
  • Kompetice – rivalita při dosahování cílů
  • Komunikace – způsob interakce

Příklad chování agentního systému – Routery

Na síť internetu můžeme nahlížet jako na síť vzájemně propojených routerů, které tvoří komplexní síť. Bez routerů není žádný internet – routery jsou agenti, kteří navzájem kooperují a přeposílají pakety, které přichází na jejich vstupní porty. Routery samotné nemají kompletní informaci, která by jim řekla, kam přesně mají pakety poslat – ví však, kam mají informaci poslat, aby se dostala až tam, kam ji její odesílatel zamýšlel zaslat.  Přestože je fungování individuálního routeru poměrně jednoduché, funguje kvůli nim celý internet s jeho charakteristikami.

Multiagentní modely v ekononomii

Pro multiagentní modely v ekonomii se vžila zkratka ACE (Agent-based computational economy). ACE dnes představuje rozvíjející se alternativu nebo doplněk k běžným ekonomickým modelům, které jsou založeny na ekonometrii nebo metodách operačního výzkumu.

Podle (Axelrod, 2006) může rozvoj ACE přispět k:

  • Porozumění empiricky získaným datům o chodu ekonomiky. (Proč ekonomika funguje zrovna tímto způsobem.)
  • Porozumění kvalitativním vlastnostem ekonomických systémů. (Jaké chování můžeme očekávat pro různé parametry.)
  • Porozumění normativnímu. (Jaká opatření mohou vést k žádoucím společenským výsledkům.)
  • Rozvoji nových výpočetních metod a nástrojů pro systematické výpočetní experimenty.

Často jsou multiagentní modely využívány ke zkoumání dynamiky systému, které je možno popsat v jazyce teorie her. V těchto případech jsou multiagentní modely užitečné zejména pokud jsou hry opakované, hraje je větší množství agentů a neexistují Nashova ekvilibria, nebo tato ekvilibria nemusí vést při opakovaných sehrávkách k optimálnímu výsledku. Ekonometrické metody se mohou uplatnit zejména při kalibraci multiagentních modelů, když hledáme na základě empirických dat konkrétní hodnoty parametrů modelu. Největší prostor je v současné době věnován vztahu mezi multiagentními modely a ekonomickým mainstreamem – neoklasickými analytickými modely.

Analytické modely v ekonomii představují soustavu diferenciálních rovnic a jejich řešením jsou rovnovážné body ve stavovém prostoru. Neoklasické modely se označují jako CGE (Computable General Equilibria) a charakterizují je agregátní veličiny jako nabídka, poptávka, velikost populace, atd. Jedná se o top-down přístup. Častěji se dnes také objevují modely DSGE (Dynamic Stochastic General Equilibria), které mají tyto agregátní veličiny stanovovány dynamicky. Analytické modely stanovují omezující předpoklady, které umožní vypočítat rovnovážné stavy. V ACE modelech nelze předvídat výsledek vývoje systému  – dynamika systému je zkoumána v diskrétních časových krocích iterací rekurentních funkcí určujících chování agentů. Tímto se zbavíme řady omezujících a nerealistických předpokladů. V analytických modelech dnes často zjednodušujeme člověka na racionálního agenta, ale v ACE modelech se chování agentů může odlišovat a vytvořit tak určitou variabilitu, která dává vznik komplexnímu chování systému. Globální vlastnosti ACE modelů mohou být stanoveny globálně (např. Walrasovým aukcionářem) a všechny ostatní globální vlastnosti systému se vytváří interakcí mezi agenty. Analytické modely předpokládají rovnováhu stavů, které jsou zaručeny prostřednictvím negativních zpětných vazeb (např. předpoklady klesajících výnosů). V ACE modelech systém nemusí dospět k žádné rovnováze – jsou zde totiž možné i pozitivní zpětné vazby. Rovnovážných stavů může systém obsahovat více – tento přístup je možnou softwarovou implementací evoluční teorie.

Nevýhodou multiagentních modelů je nutnost zjišťovat robustnost modelu jeho opakovaným spouštěním a statistickou analýzou výsledků.

Často slouží vizualizace multiagentního systému jako dobrá pomůcka pro znázornění  systému, které se ve výsledku řeší analytickým modelem.

Multiagentní simulace v programu NetLogo
Multiagentní simulace v programu NetLogo

Virtuální online světy

Přístup simulace ve virtuálních světech využívá toho, že zde jako agenti působí reální lidé, kteří mezi sebou soupeří a kooperují, aby dosáhli svého cíle. Jak příklad lze uvést MMORPG hru World of Warcraft, která je druhou nejrozšířenější hrou nynější doby – tou první je hra Farmville, která funguje v prostředí sociální sítě Facebook. World of Warcraft je velice komplexní hra, která v mnohém napodobuje realitu. Mimo toho, že zde hráčí dosahující plněním úkolů a zabíjením příšer vyšších a vyššich úrovní, mohou také předměty, které naleznou v herním světě obchodovat na burze. Prostřednictvím aukčních domů je možné nabízet předměty, které mohou představovat akcii obchodované např. na NASDAQu a pomocí vysledovaného chování hráčů pak automaticky obchodovat tyto akcie obchodovat. Výhoda tohoto přístupu je právě v tom, že chování jednotlivých hráčů – agentů – není nijak abstrahované a není řízeno programově. Při správném návrhu simulace má tento přístup široký potenciál.

Souhrn

V této práci jsem se zabýval možnostmi využití multiagentních systémů v ekonomii. Popsal jsem postupy, které používá neoklasická ekonomie a jak je možné využít multiagentních simulací k získání poznatků o systému holistickým způsobem. Multiagentní simulace představují počítačovou obdobu tvorby spontánního řádu, takového jaký např. popisu Friedrich August von Hayek, Ludwig von Mises a další členové rakouské školy.

Zdroje

Axelrod, R. T. (2006). A Guide for Newcomers to Agent-Based Modeling in the Social Sciences. Amsterdam: Elsevier/North-Holland.

Ing. et Ing. Tomáš Šalamon, M. (2010). Development of Agent-based Models for Economic Simulation. Praha: VŠE Praha.

Ing. Jan Burian, P. (2010). Reaktivní multiagentní modely v ekonomii. Praha: VŠE Praha.