Agentní prostředí
Contents
Úvod
„Veškerý život na Zemi závisí na vodě. Průměrná povrchová teplota musí být v rozmezí 10-16 °C, aby mohlo být přítomno dost vody v kapalném skupenství – a tyto podmínky panují již po 3,5 miliardy let. Buňky potřebují stálou slanost a obecně nepřežijí při větší než5 % koncentraci solí ve vodě – a salnost oceánu dlouhobě činí kolem 3,4 %. Poté co se před přibližně dvěma miliardami let kyslík objevil v atmosféře, zůstává jeho koncentrace blízká 20 % - kdyby poklesla pod 16 %, byl by vzduch nedýchatelný, a kdyby vzrostla nad 25 %, lesy by sežehly obří požáry.“[1 s. 315]
Tyto podmínky, které umožňují život na planetě Zemi nejsou výsledkem existujícího rovnovážného systému, ale právě naopak – živě probíhajícího procesu biochemické výměny mezi organizmy a jejich prostředím, která má cíl a účinek stabilizaci podmínek na zemském povrchu obklopeném vysoce reaktivními plyny. Organizmy své životní prostředí vyčerpávají a životní prostředí zase zpětně reguluje a omezuje organizmy, které v něm žijí. Celý systém života organizmů je úzce provázán se svým prostředím. Díky tomu povstává jedna z jeho jedinečných vlastností, jíž je seberegulace. To je ve zkratce tak zvaná hypotéza Gaia, se kterou přišel britský vědec James Ephraim Lovelock.[2]
Tím, čím je pro živé organizmy Země, tím je pro agenty v agentním modelování simulační prostředí. Simulační prostředí neposktuje jen simulaci hranice a prostor, kam je agent vsazen. Agentní prostředí se prolíná celou simulační situací, ohraničuje možnosti celého systému. Agentovi umožňuje dosahovat jeho cíle nebo mu v tom překáží, nebo dokonce brání, informuje agenta o tom, kde se nachází ve vztahu k jeho cíli, ovlivňuje to, jaké jsou možnosti agenta, v některých simulacích dokonce ovlivňuje samotnou existenci agentů, jejich vznik, trvání i zánik. Agent může činit pouze to, co mu jeho okolí dovolí. Agentní okolí je tak pro agenta mezí možného. Agent a jeho okolí tvoří dohromady systém. Volba podoby agentního prostřdí vychází z problému a je rozhodnutím o granularitě, v jaké budeme daný problém řešit. Agentní prostředí ztělesňuje problém řešený simulací. Problém je vlastně extenzí vnějšího prostředí. Určité rysy vnějšího prostředí vystupují vůči řešiteli, resp. Agentovi, jako problém, který se snaží vyřešit. Řešitel se tedy rozhoduje o rozsahu systému, jeho hranicích a o jeho vlastnostech. Volba se činí na základě toho, jaký problém konkrétně se řeší. Řešitel usiluje o to, aby ve zvolené reprezentaci prostředí nechybělo nic, co je pro danou úroveň modelování podstatné a nepřebývalo tam nic, co je nepodstatné. Při tvorbě simulace tedy není cílem navrhnout prostředí, které co nejvěrněji a nejúplněji zrcadlí reálné prostředí, ale najít způsob, jak vytvořit co nejjednodušší prostředí, kterému nechybí žádné vlastnosti podstatné pro daný úkol.
Typy agentního prostředí
Agentní prostředí lze dělit z různých hledisek. To, jaké pojetí prostředí zvolíme, by mělo především odpovídat charakteru problému a představě o jeho řešení.
Přístupné versus nepřístupné
Agent s prostředím interaguje a dostává informace o stavu prostředí (softwarově nebo přes senzory). Naprosto přístupné je takové prostředí, o němž má agent kompletní, přesné a aktuální informace [3 s. 18]. V reálném každodenním světě se jedná o konstrukt, neboť takové informace nemá k dispozici ani člověk. Ve virtuálním prostředí je možné se přístupnosti přiblížit. Nicméně pokud kompletnost informací, které agent o prostředí má, hraje důležitou roli, neměla by míra informovanosti agenta převyšovat míru informovanosti, které může dosáhnout entita, kterou agent reprezentuje, v reálném světě.
Statické versus dynamické
Statické prostředí jsou taková, jejichž charakteristiky se v průběhu jednání agenta nemění, resp. se mění pouze na základě jednání agenta [4 s. 21]. Reálné prostředí se většinou vyznačuje různými mírami dynamičnosti. Ve fyzickém prostředí lze dosáhnout statického stavu za kontrolovaných laboratorních podmínek a izolací systému od vnějších podmínek případně, chcete-li myšlenkovou abstrakcí (vnímání jevů jen v rámci vztažné soustavy, pokud do ní vnější dění nezasahuje). V tomto, stejně tak jako v ostatních případech, je potřeba chápat tato vyjádření jako typové situace. Absolutně statické prostředí v reálném světě nenalézáme. I zkumavka může někomu upadnout na zem, může vypadnout napájení mrazicího zařízení, kde je uložena (a záložní generátor může chybět) a celý systém, který budeme modelovat jako statické prostředí, bude destabilizován podmínkami vně systému. Nicméně i přesto jsou tyto kategorie funkční.
Statické prostředí může být snadno vytvořeno softwarově. Přistoupí se k tomu tedy v případě, že při modelovánní považujeme případné proměny vnějšího prostředí za bezvýznamné pro cíl simulace nebo za mizivě pravděpodobné.
Deterministické versus nedeterministické
Deterministické je takové prostředí, které na vnější působení vždy stejným způsobem, resp. samo za stejných podmínek má vždy stejný efekt. Člověk většinu nástrojů vyrábí tak, aby byly co nejvíce deterministické. V případě agentních simulací tomu tak nemusí nezbytně být. Mnoho aplikací vyžaduje, aby simulace v sobě zahrnovala prvek náhody. Prvek náhody v sobě zahrnuje jednak určitou míru zjednodušení a abstrakce a jednak zohledňuje míru nejistoty. Pokud je takto pojatá náhoda konstitutivním prvkem modelované situace, pak se vhodným mechanismem do modelu zapracuje. Efektivně narušit determinističnost prostředí, které umí vyvinout software, není zcela banální záležitostí, jek je vidět např. na implementaci generátoru pseudo-náhodných čísel. Pro vyšší míru nedeterminističnosti si software vždy musí „sáhnout“ do reálného světa.
Jako poznámku na okraj je potřeba doplnit, že pokud bychom vyšli z předpokladu, že celý svět a veškeré i ty nejmenší interakce v něm, jsou řízeny zákony, které dění v něm řídí do nejmenších podrobností a že celý náš problém s náhodou spočívá v tom, že tyto zákony neznáme doposledku, pak by označil svět za teoreticky deterministický. To, jak tomu ve skutečnosti je, necháváme na úsudku a dalším studiu čtenáře.
Diskrétní versus spojité
Volba mezi diskrétním nebo spojitým prostředím je vlastně volbou o tom, zda budeme mapovat simulovaný problém do řeči celých nebo reálných čísel. Co se týče fyzického prostředí jako takového, je považováno za spojité, tedy esenciálně do nekonečna dělitelné. Volba toho, zda budeme model mapovat do diskrétního prostředí nebo nikoliv, závisí na tom, jakou míru detailu pro řešení daného problému potřebujeme. Zvýšená míra detailu klade u složitějších algoritmů také zvýšené nároky na výpočetní náročnost a tím i na výpočetní zdroje a čas.
Do této problematiky se promítá též pochopení času, jako extenze prostoru. Události jsou zasazeny a odvíjejí se také v určitém časovém rámci a mají určité časové charakteristiky. Čas je vnímán taktéž jako spojitá veličina. Jeho diskretizaci při agentních simulacích zajišťuje synchronizace pomocí taktování.
Konečně, v odborné literatuře je jako diskrétní nazýváno takové prostředí, kdy má agent k dispozici pouze omezený počet možností jednání [4 s. 22], [3 s. 18].
Příklad
Vyzkoušejte si, jak byste klasifikovali charakteristiky prostředí problémů řešených v reálném světě. Adaptacemi prostředí pro agentní simulace v rámci konkrétních aplikací se bude zabývat další část textu. Návrh řešení naleznete na konci tohoto článku.
Volba reprezentace agentního prostředí ve vazbě na aplikaci modelu
Jak je z výše uvedeného přehledu patrné, ne všechny simulace vyžadují stejný typ prostředí, respektive stejný způsob jeho reprezentace. To, že opak je pravdou je dostatečně doloženo aplikační praxí při řešení problémů spadajících do tak rozličných oblastí lidského života jako je městské plánování, lékařská věda, nouzové řízení a řízení bezpečnostních událostí[5], ekonomické mechanismy a jejich provázanost se změnami prostředí, vývoj a inovace[6], sociální psychologie nebo analýza sportu[7]. Povaha problému a jevy, které jsou na základě doménové znalosti a výzkumu zvoleny, jako určující samy diktují míru potřebné komplexity modelu a optimální reprezentaci prostředí.
Pestrost způsobů, jakým může být agentní prostředí pojato závisí na lokalizaci řešeného výzkumného problému v prostorovém a časovém kontinuu fyzického světa a míře, v jaké je tato lokalizace určující pro daný problém a jeho řešení.
Obrázek ukazuje pestrost reprezentací agentních prostředí v závislosti na časových a prostorových charakteristikách řešeného problému [8]
Zjednodušená, abstraktní agentní prostředí
Každý model je ze své definice zjednodušením nějakého problému ve vnějším světě. Z některých modelů jsou charakteristiky prostředí na první pohled zřetelné (jsou prostorově nebo i graficky explicitní), jiné jsou z grafického hlediska velmi hrubým zjednodušením. Agentní prostředí, které graficky výrazně abstrahuje od většiny charakteristik vnějšího prostředí, jsou vývojově i výpočetně jednodušší, než modely graficky explicitní. Tyto modely jsou vhodné k použití v situacích, kdy je pro řešení problému důležitější topologie agentů než samotné prostředí v kterém se odehrávají. „Topologie interakcí mezi agenty určuje, jak se agenti navzájem mezi sebou ovlivňují a komunikují, jaké jsou řídící a komunikační schopnosti každého agenta a celého systému a jak efektivní toto řízení a komunikace je.“[9] Není tedy příliš velkým překvapení fakt, že mají své hojné využití v modelování nejrůznějších sociálních jevů. V pomyslné síni slávy agentního modelování se tak nachází např. Schellingův model segregace [10] nebo Conawayova Game of Life [11], [12], [13] které se zabývají samoorganizací systému a využívají k tomu dvoudimenzionální design v mřížce nazývaný jako „cellular automata“ (celulární automat), nebo Epsteinův model Sugarcape[14].
Bezprostorové agentní prostředí
V předchozích aplikacích hrála určitou roli vzdálenost agentů jednoho od druhého. Existují však agentní simulace, které nevyžadují žádný model prostředí. Agentní prostředí je možné pojmout jako bezprostorové, pokud prostor nemá pro modelovaný problém žádný význam. Bezprostorové prostředí je nejvyšší formou zjednodušení reálného prostředí. Modelují se tak například komunikace ve virtuálním světě, šíření mentálních obsahů (např. určitého přesvědčení, myšlenek, informací), ekonomické jevy[15], ale například i šíření nemoci v uzavřeném systému.
Prostorově explicitní agentní prostředí
Využívá se zejména v situacích, kdy je potřeba, aby agent nebo výzkumník měl představu o jeho konkrétních vizuálních charakteristikách. Je tomu tak většinou proto, že tyto charakteristiky tvoří významnou část definice celého problému. Hojně jsou v tomto ohledu používány simulace na různých mapových podkladech, modely konkrétních prostorů, dopravních uzlů nebo říčních toků, ale také pro například pro šíření nemoci v konkrétním geografickém území[16].
Hybridní agentní prostředí
V simulacích, které jsou tvořeny na geografickém podkladě dochází ke kombinaci poznatků z mnoha oborů lidské činnosti od dat o průmyslu, přes demografické charakteristiky až po složité sociální mechanismy. Všechna tato tak rozdílná mentální i fyzická prostředí vyžadují integraci znalostí z mnoha disciplín do jediných modelů. Vytvářejí se modely, které mají několik vrstev, z nichž některé se mohou odehrávat v abstraktním prostředí, zatímco jiné vrstvy mohou být vysoce realistické. Jako příklad může sloužit multi-agentní modelování tzv. chytrých energetických sítí, které mají monitorovat výrobu elektrické energie u malovýrobců a řídit distribuci jejich nadbytků a naopak vykrývat nedostatky vzniklé tím, že v hodinách dne, kdy spotřeba energie v domácnostech roste, množství energie generované např. solárními panely klesá.[18], [20]
Interakce kostních buněk s mezibuněčnou hmotou jako agentním prostředím
Ačkoliv má kostní tkáň výbornou schopnost regenerace, její schopnost přemostit větší přerušení je omezená. K výplni defektů a náhradě části kostí, běžně užívají kostní štěpy. Ty se po transplantaci do místa poškození stávají vodící strukturou a lokálním stimulačním faktorem pro novotvorbu kosti[19].
Již roku 1505 napsal chirurg Ibrahim Bin Abdullah knihu, která obsahuje historicky první zmínku o chirurgické nápravě lebeční kosti. Popisuje zde techniku, kdy se pro opravu poranění lidské lebky použije kost z lebky psí nebo kozí. Více než 500 let od napsání této knihy se v tomto ohledu příliš nezměnilo. Léčba kostním štěpem zůstává nadále nejčastějším způsobem nápravy. Přitom odebírání kostních štěpů je bolestivé, hrozí následná infekce a další komplikace a je nákladné. Rozhodně tak nepředstavuje ideální řešení pro pacienta ani pro chirurga. Přitom transplantace štěpu z vlastní kosti vykazuje nízkou úspěšnost dle zvolené metody – většinou se používá metoda, která má úspěšnost pouhých 80 %.[21]
Vědci na Institutu Juliuse Wolffa v Berlíně proto využili agentní simulace, aby získali vhled do toho, jak probíhá tvorba nové kosti, co se mechanických vlastností a struktury týče. Prostředí, kde se kostní buňky tvoří se stává z molekul a mezibuňěčné hmoty. Kostní buňky jsou schopné zíkávat informace z vnějšího prostředí o jeho vlastnostech. Vědce zajímalo, do jeké miry je uspořádání nově vznikajících kostních buněk v mezibuněčné hmotě ovlivňováno i biomechanickými vlastnostmi.
Vyšli tedy ze zjištění z provedených experiment a vyvinuli simulaci, která napodobuje experimentálně zjištěné chování buněk, které se zarovnávají ve směru, kde cítí největší tuhost zbylé (přerušené) kosti a tenzi, čímž dochází k reorganizaci buněk a vláken. Sledovali chování a interakce různých druhů buněk mezi sebou v závislosti na tom, jaké síly v místě, kde se buňky nacházejí, působí. Zajímalo je take, jak se buňky pozicionují (otáčejí se téměř všechny určitým směrem) a jaká je ideální hustota výskytu buněk na ploše. Pokud jich je příliš mnoho nebo naopak příliš málo kolem, buňky hynou. Jednalo se tedy o multiagentní simulaci, kde se agenti chovají v závislosti na vlastnostech okolního prostředí a působících mechanických vlastnostech
Modelované prostředí se stávalo z naznačení, zda je mezibuněčná hmota, ve které se buňky rozmnožují, uměle ohraničena, či nikoliv a z kolika stran, z rozptýlení určitého množství jednotlivých chemikálií v okolí a ze signálních faktorů, jako je tkáňové napětí. Sledovala se hodnota tohoto napětí.
Buňky jsou schopny se připojit na mezibuněčnou hmotu a působit na ni tažnými silami Simulace potvrdila, že buňky se skutečně reorganizují podle toho, kde se nachází tvrdá nebo měkká tkáň, a že buňky jsou skutečně ovlivňovány také mechanickými vlastnostmi okolí. Výsledky výzkumu jsou využitelné v tkáňovém inženýrství při vývoji umělých výztuží pro výstavbu kostí a všude tam, kde je potřeba detailní porozumění vzájemným interakcím mezi buňkami a mezibuněčnou hmotou, vzorcům tvorby a regenerace tkání.[22]
Samoorganizace vlákenné struktury kostních buněk v závislosti na prostředí[23]
Návazná studie simulovala novotvorbu kosti a pohyb buněk v případě, že je vložena do postiženého místa kolagenová výztuž, kolem které se mají buňky začít shlukovat na základě znalostí o jejich pohybu a způsobu tvorby kostní struktury, postupně vstřebat kolagenovou výztuž a vytvořit vlastní kostní strukturu.[1]
Řešení příkladu
Reference
[1] EUROPEAN SOCIETY OF BIOMECHANICS. ESB Webinar No. 07 – Basics of agent based computer modeling for clinically related applications [online]. 22. duben 2021 [vid. 2022-05-29]. Dostupné z: https://www.youtube.com/watch?v=mQjpj4J-8mw
[2] CHVÁTAL, Marek, ed. Kniha vědy. Vydání první. Praha: Knižní klub, 2015. Universum. ISBN 978-80-242-4940-7.
[3] LENTON, Timothy M. Gaia and natural selection. Nature [online]. 1998, 394(6692), 439–47 [vid. 2022-05-29]. ISSN 00280836. Dostupné z: doi:https://doi.org/10.1038/28792
[4] WOOLDRIDGE, Michael J. An introduction to multiagent systems. New York: J. Wiley, 2002. ISBN 978-0-471-49691-5.
[5] ŠALAMON, Tomáš. Design of agent-based models: developing computer simulations for a better understanding of social processes. Řepín-Živonín: Tomáš Bruckner, 2011. Academic series. ISBN 978-80-904661-1-1.
[6] MACIEJ M. LATEK, SEYED M. MUSSAVI RIZI, ANDREW CROOKS, AND MARK FRASER. A Spatial Multiagent Model of Border Security for the Arizona–Sonora Borderland. In: The 2012 Computational Social Science Society of America Conference, Santa Fe, NM.: Dropbox [online]. 2012 [vid. 2022-05-29]. Dostupné z: https://www.dropbox.com/s/99gaz5j1eksf0qu/CSSSA2012-1.pdf?dl=0
[7] GARCIA, Rosanna. Uses of Agent‐Based Modeling in Innovation/New Product Development Research*. Journal of Product Innovation Management [online]. 2005, 22, 380–398. Dostupné z: doi:10.1111/j.1540-5885.2005.00136.x
[8] OLDHAM, MATTHEW AND CROOKS, ANDREW T. Drafting Agent-Based Modeling into Basketball Analytics’, 2019 Spring Simulation Conference (SpringSim’19). In: 2019 Spring Simulation Conference (SpringSim’19), Tucson, AZ. (pdf) [online]. nedatováno [vid. 2022-05-29]. Dostupné z: https://www.dropbox.com/s/7evroe6zgcfp362/MAO_ATC_BBSCS19_V4.pdf?dl=0
[9] CROOKS, Andrew. Research. GIS and Agent-based modeling [online]. [vid. 2022-05-29]. Dostupné z: https://www.gisagents.org/p/research.html
[10] ZHU, Qiuming. Topologies of agents interactions in knowledge intensive multi-agent systems for networked information services. Advanced Engineering Informatics [online]. 2006, 20(1), 31–45 [vid. 2022-05-29]. ISSN 14740346. Dostupné z: doi:10.1016/j.aei.2005.08.001
[11] SINGH, Abhinav, Dmitri VAINCHTEIN a Howard WEISS. Schelling’s Segregation Model: Parameters, scaling, and aggregation. Demographic Research [online]. 2009, 21, 341–365 [vid. 2022-05-29]. ISSN 14359871. Dostupné z: doi:https://doi.org/10.4054/DemRes.2009.21.12
[12] NetLogo Models Library: Life [online]. [vid. 2022-05-29]. Dostupné z: https://ccl.northwestern.edu/netlogo/models/Life
[13] Conway’s Game of Life: Scientific American, October 1970 [online]. [vid. 2022-05-29]. Dostupné z: https://www.ibiblio.org/lifepatterns/october1970.html
[14] HERR, Christiane M. Second-order cellular automata to support designing. Kybernetes [online]. 2015, 44(8/9), 1251–1261 [vid. 2022-05-29]. ISSN 0368492X. Dostupné z: doi:https://doi.org/10.1108/K-11-2014-0268
[15] EPSTEIN, Joshua M. a Robert AXTELL. Growing Artificial Societies: Social Science from the Bottom Up. B.m.: Brookings Institution Press, 1996. ISBN 978-0-262-05053-1.
[16] Agent-based models: understanding the economy from the bottom up. 2016, 16.
[17] PEREZ, Liliana a Suzana DRAGICEVIC. An agent-based approach for modeling dynamics of contagious disease spread. International Journal of Health Geographics [online]. 2009, 8, 50 [vid. 2022-05-29]. ISSN 1476-072X. Dostupné z: doi:10.1186/1476-072X-8-50
[18] Agent Based Modelling for Smart Grids | JRC Smart Electricity Systems and Interoperability [online]. [vid. 2022-05-29]. Dostupné z: https://ses.jrc.ec.europa.eu/agent-based-modelling-smart-grids
[19] FICHERA, Alberto, Alessandro PLUCHINO a Rosaria VOLPE. A multi-layer agent-based model for the analysis of energy distribution networks in urban areas. Physica A: Statistical Mechanics and its Applications [online]. 2018, 508, 710–725 [vid. 2022-05-29]. ISSN 03784371. Dostupné z: doi:10.1016/j.physa.2018.05.124
[20] Transplantace a reparace (hojení) kosti. Fakulta tělesné výchovy [online]. [vid. 2022-05-29]. Dostupné z: http://ftvs.cuni.cz/FTVS-1547.html
[21] KIERNAN, Caoimhe, Callie KNUTH a Eric FARRELL. Chapter 6 - Endochondral Ossification: Recapitulating Bone Development for Bone Defect Repair. In: Martin J. STODDART, April M. CRAFT, Girish PATTAPPA a Oliver F. W. GARDNER, ed. Developmental Biology and Musculoskeletal Tissue Engineering [online]. Boston: Academic Press, 2018 [vid. 2022-05-29], s. 125–148. ISBN 978-0-12-811467-4. Dostupné z: doi:10.1016/B978-0-12-811467-4.00006-1
[22] CHECA, Sara, Manuel K. RAUSCH, Ansgar PETERSEN, Ellen KUHL a Georg N. DUDA. The emergence of extracellular matrix mechanics and cell traction forces as important regulators of cellular self-organization. Biomechanics and Modeling in Mechanobiology [online]. 2015, 14(1), 1–13 [vid. 2022-05-29]. ISSN 16177959. Dostupné z: doi:https://doi.org/10.1007/s10237-014-0581-9
[23] DUDA, Prof Dr-Ing Georg. Mechanical Principles of Cellular Self-Organization. BIH - Julius Wolff Institute of Biomechanics and Musculoskeletal Regeneration [online]. [vid. 2022-05-29]. Dostupné z: https://jwi.charite.de/en/research/research_biomechanics_and_biophysics_of_healing/computational_mechanobiology/mechanical_principles_of_cellular_self_organization/