Multiagentní modelování

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Multiagentní modelování je jednou z výpočetních forem vědeckého modelování, kterou umožnil až rozvoj moderní výpočetní techniky především v posledních dvou desetiletích 20. století. Multiagentní modely, tedy výstupy této činnosti, spadající do obecnější kategorie multiagentních systémů, slouží především k simulaci komplexních systémů v různých zájmových oblastech (ekonomie, biologie, sociální vědy), které jsou jinými způsoby výzkumu těžko uchopitelné. Princip multiagentní simulace spočívá ve využití tzv. agentů, což jsou (v tomto případě softwarové a typicky také heterogenní) autonomní entity s relativně jednoduchým chováním, reprezentující reálné jednotky sledovaného systému, situované do definovaného kontextu prostředí, ve kterém jednají a reagují (zpravidla agenti reagují mezi sebou skrze prostředí, kterému se mohou v čase adaptovat). Tímto prostředím mohou být různé formy sítí a mřížek, vybrané podle sledovaného cíle a zvolených předpokladů, které by měly odpovídat simulované realitě. Simulace je pak spuštěna a sledována v diskrétním čase a v každém časovém kroku se vyhodnocuje chování všech agentů a stav prostředí v závislosti na jejich výchozích parametrech, případně jsou parametry ovlivňovány přímo v průběhu simulace.

...

Charakteristika

Popsaný způsob modelování lze označit jako bottom-up, tedy přístup tvorby „odspoda nahoru“ z mikro úrovně na makro úroveň. Znamená to, že místo předem plánovaného chování modelu systému jako celku může z poměrně jednoduchého chování množství agentů dojít k emergenci neplánovaného globálního chování, které se jeví jako cílově orientované (někdy označováno také jako reaktivní plánování). +more Dobrým příkladem takového modelu je simulace chování mravenců, orientujících se v prostředí při hledání potravy podle feromonových značek (viz obrázek). Jejich chování sestává z několika málo jednoduchých instrukcí, které tvoří inteligenci mravenčí populace jako celku, v tomto případě mravenci začnou tvořit stabilní cesty ke zdrojům potravy až do jejího vyčerpání. Simulace mraveniště v programu NetLogo.

Jednou z hlavních výhod uvedeného přístupu k modelování je fakt, že na rozdíl od klasických analytických modelů umožňuje simulace multiagentním modelováním sledování vývoje systému. Analytické modely sestávají především z diferenčních a diferenciálních rovnic, které popisují systém jako celek. +more Pomocí těchto rovnic jsou pak hledány rovnovážné body, avšak v případě multiagentních modelů je možné sledovat také trajektorii systému, která nám může vypovědět mnohem více informací o jeho chování.

Multiagentní modely mohou mít vůči analytickým tři různé typy vztahů. První možností je, že systém lze popsat a řešit analyticky a multiagentní model se stává pouze doplňkovým nástrojem, sloužícím k ověření a prezentaci výsledků, získaných klasickým způsobem. +more Pokud jsou rovnice řešitelné numericky, stává se multiagentní model obdobou statistické metody Monte Carlo. Druhým případem využití je situace, kdy sice můžeme získat klasickými metodami rovnovážné stavy, ale z hlediska zkoumání nás více zajímá samotná dynamika systému. Můžeme tak lépe objasnit strukturu stavového prostoru, ověřovat závislost na počátečních parametrech nebo sledovat jakého rovnovážného stavu dosahuje systém nejčastěji, pokud je rovnovážných stavů více. Třetí možností je využití multiagentních modelů u systémů, které nemají rovnovážné stavy, tedy ani analytické řešení, případně tam, kde by musel být systém popsán řádově příliš mnoha rovnicemi na to, aby je bylo možné vyřešit.

Oblasti využití

Obecné využití

Obecně můžeme identifikovat následující situace, kdy je vhodné použít multiagentní model: * Komplexní, nelineární nebo nespojité chování a interakce agentů * Populace agentů je různorodá * Při interakci mezi agenty hraje roli nějaká prostorová či sociální struktura * Nelze předvídat budoucí vývoj na základě minulých stavů * Agenti se musí učit, adaptovat se a měnit své chování

Konkrétní využití

Konkrétně se multiagentní simulace využívá v následujících oblastech : * Byznys a řízení společnosti ** Výrobní operace ** Logistika (dodavatelské řetězce) ** Spotřební trhy ** Pojišťovnictví ** Řízení toku zákazníků * Ekonomické vědy ** Umělé finanční trhy ** Struktura a dynamika ekonomických vztahů ** Teorie her (strategie etnocentrismu) * Infrastruktura ** Trhy s elektřinou ** Dopravní provoz a světelná signalizace ve městech * Fyzikální a chemické jevy ** Proces krystalizace ** Chemické reakce (radikální polymerizace) * Teorie davu ** Pohyb chodců ** Evakuační modelování * Společnost a kultura ** Modely sociálního šíření (viru, informace) ** Organizační sítě ** Vývoj zaniklých civilizací ** Emergentní sociální jevy * Biologie ** Populační dynamika ** Umělá společenství hmyzu (včely, termiti) ** Chování buněk a jejich vnitřní procesy ** Chování zvířecích komunit (hejna, predátor-kořist) ** Ekologické vztahy * Armádní využití ** Systém příkazů a kontroly ** Válečné simulační hry (force-on-force)

Volba modelu

Již ve fázi formulace řešeného problému je třeba zvážit logický cíl tvorby modelu. Z hlediska vědeckého přístupu lze multiagentní modelovaní totiž využít ke všem třem využívaným logickým metodám, tedy dedukci, indukci a abdukci.

Dedukce

Dedukcí v kontextu multiagentního modelování rozumíme, že zvolený model bude sloužit k vyvozování důsledků z množiny předpokladů, tedy v tomto případě k jakému výsledku povede podoba navrženého modelu. V podstatě je každý běh modelu v tomto pohledu deduktivním procesem a sada výsledků z více běhů může sloužit k určení očekávané pravděpodobnostní distribuci a může tedy sloužit k predikci budoucích stavů systému.

Indukce

Indukce postupuje směrem opačným směrem, od výsledků chování směrem k modelu. V tomto případě při výzkumu vycházíme ze známých empirických dat (konkrétní způsob chování nebo pravděpodobnostní rozdělení výsledků) a snažíme se vytvořit takový model, který by generoval výsledky ve stejné podobě. +more Lze tak nalézt skryté a komplexní příčiny různých druhů chování. Důraz je při indukci kladen na robustnost modelu. Model je robustní, pokud rozsáhlejší změny výchozích parametrů modelu příliš zásadně nemění distribuci jeho výsledků.

Abdukce

S parametry souvisí i poslední možný logický cíl modelu, a to abdukce. Při abdukci sice známe opět výsledky a částečně také model, ale tentokrát hledáme počáteční parametry, které povedou k očekávanému chování nebo jinak ovlivní trajektorii systému (změní dynamiku systému).

Fáze modelování

Jednotlivé fáze v postupu multiagentního modelování lze vymezit následujícím způsobem: * Formulace řešeného problému * Výběr implementačního prostředí * Identifikace agentů * Charakterizace agentů (volba atributů a pravidel chování) * Implementace modelu * Experimentování s modelem (hledání stability) * Verifikace modelu * Analýza výsledků

Specifikace modelu

Z hlediska interpretace modelu je již na konci fáze formulace řešeného problému důležité zvážit, jak vstupní předpoklady a zvolený způsob implementace ovlivní výsledky chování modelu. Jedním ze zásadních faktorů bývá zvolený způsob vzájemného působení mezi agenty. +more Je vhodné uvážit, zda agenti komunikují přímo mezi sebou nebo pomocí prostředí, v případě lokálních interakcí je vhodné zhodnotit dopad zvolené struktury sítě vztahů s okolím. Komplexní interakce agentů (náhodná síť, síť malého světa, bezškálová síť).

Další interpretační otázkou, vhodnou k promyšlení, je způsob adaptace agentů a jeho dopady. Je třeba zvážit, zdali a případně proč byly zvoleny dané způsoby učení, imitace ostatních agentů a evoluce, případně jejich konkrétní kombinace. +more V neposlední řadě je také důležité dát do souvislosti uvedené aspekty složitosti modelu a účel, za kterým byl systém modelován. V případě modelů sloužících k predikci je vhodné zvolit pokud možno úplné a věrné chování modelu, tedy také to, co by co možná nejlépe postihlo komplexní povahu reálného systému (např. model městské dopravy). Takový model bývá většinou značně složitý a obsahuje velké množství parametrů. Naopak reduktivní postup (jednoduché chování a pouze základní parametry) je vhodnější volit u modelů, které mají výzkumný charakter a sledují pouze pochopení fundamentální podstaty (dynamiku) sledovaného systému, aby bylo možné prokázat a popsat příčiny výsledného chování modelu.

Nástroje modelování

Netlogo - jednoduchý, praktický a názorný, avšak z hlediska výkonu méně efektivní nástroj s dobrou dokumentací, vhodný pro vzdělávací účely * [url=http://www. cs. +moregmu. edu/~eclab/projects/mason/]MASON[/url] - rychlý a populární framework pro tvorbu MAS, napsaný v Javě * [url=https://web. archive. org/web/20100621141053/http://jade. tilab. com/]JADE[/url] - velmi populární, robustní a volně dostupný Java framework s otevřeným kódem pro vývoj multiagentních systémů * [url=http://repast. sourceforge. net/]Repast[/url] - volně šiřitelný nástroj se silným vývojovým prostředím * [url=http://www. xjtek. com/]AnyLogic[/url] - komerční produkt vhodný pro širokou škálu simulací (diskrétní simulace, dynamické systémy) * [url=https://archive. today/20121209111144/http://cougaar. org/]Cougaar[/url] - Java framework vhodný pro rozsáhlé simulace * [url=http://www. swarm. org]Swarm[/url] - univerzální a rozšířený framework pro různé platformy * [url=https://archive. today/20130102073412/http://search. techrepublic. com. com/search/starlogo. html]StarLogo[/url] - starší nástroj založený podobně jako NetLogo na jazyku Logo * [url=http://cormas. cirad. fr/indexeng. htm]Cormas[/url] - specializovaný pro řízení přírodních zdrojů a další ekologické vztahy * [url=https://web. archive. org/web/20080705172630/http://www. labs. bt. com/projects/agents/zeus/]Zeus[/url] - robustní nástroj s dobrými vizualizačními možnostmi * [url=http://ascape. sourceforge. net/]ASCAPE[/url] - jeden ze silných frameworků s vlastním prostředím * [url=http://www. visualbots. com/index. htm]VisualBots[/url] - nástroj pro multiagentní simulace v MS Excell se syntaxí Visual Basic * [url=http://www. altreva. com/]Adaptive Modeler[/url] - ABM nástroj pro predikci cen na finančních trzích * [url=http://www. me. mtu. edu/~rmdsouza/ABM_GPU. html]GPU Agents[/url] - velmi škálovatelný a rychlý nástroj využívající GPU * [url=http://www. icr. ethz. ch/research/growlab/]GROWlab[/url] - volně šiřitelný nástroj zaměřený především na sociální jevy.

Reference

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top