Multiagentní systémy

From Simulace.info
Revision as of 14:19, 28 May 2017 by Daniel sram (talk | contribs)
Jump to: navigation, search


Průzkumný agent NASA zvaný Super Ball Bot.

Multiagentní systémy jsou tvořeny mnoha navzájem interagujícímí samostatnými výpočetními jednotkami, jenž nazýváme agenty. Tito agenti jsou autonomní jednotky s rozdílnými informacemi, které jsou schopné kooperace, soutěživosti, komunikace mezi sebou a s prostředím, učení se a flexibilního chování. Agenti mohou mít rozdílné zájmy a cíle, popřípadě společně řeší problémy, které by žádný z nich sám nevyřešil. Díky tomu multiagentní systémy umožňují široké využití distribuované výpočetní technologie a paralelního zpracování dat. [1]

Příklady reálné aplikace multiagentních systémů můžeme nalézt od architektury internetu, výrobního průmyslu, lékařství, až po vesmírný program. NASA například multiagentní systémy využívá pro konstelaci satelitů či pro zkoumání povrchu cizích planet. [2]


Charakteristika multiagentního systému

Agenti

Toto je pouze stručný úvod do teorie agentů, podrobnější výklad lze nalézt v dedikovaném textu o agentech.


Klasifikace agentů

Rozhodování agenta

Interakce agentů

Prostředí

Multiagentní simulace

Reálné aplikace

www.digitaltrends.com/cool-tech/nasa-squishable-robot/

Ukázky simulací v prostředí NetLogo [3]

NetLogo je programovatelné modelovací prostředí pro vytváření multiagentních simulací. Autorem aplikace je Uri Wilensky. Netlogo je obvzlášť vhodné pro modelování komplexních systémů vyvíjejících se v čase. Uživatel může orchestrovat stovky či tisíce nezávislé operujících agentů. Tento fakt umožňuje provádět rozsáhlé simulace a ověřovat či vyvracet hypotézy, jejichž pravdivost bychom jinak posuzovali velmi složitě.

Netlogo má navíc vydatnou dokumentaci. Se znalostmi v ní obsažených je uživatel schopen zkoumat chování komplexního multiagentního systému za měnících se podmínek a z různých úhlů pohledu.[3]

Řešený příklad

Vyzbrojeni nově nabytými vědomostmi se nyní můžeme pustit do řešení reálné simulace. Příklad se bude zabývat šířením viru na počítačové síti.

www.netlogoweb.org/launch#http://www.netlogoweb.org/assets/modelslib/Sample%20Models/Networks/Virus%20on%20a%20Network.nlogo

Kompletní NetLogo projekt obsahující řešený příklad je možné stáhnout zde. [4]

Samostatné cvičení

K upevnění znalostí ze společně řešeného příkladu si nyní můžete samostatně vyzkoušet rozšířit model o některou z následující skutečností:

Šíření viru emailem

Existence více virů

Mutace viru

Seznam referencí

  1. Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations Yoav Shoham, Kevin Leyton-Brown, Cambridge University Press 2009, 473 s. ISBN 0521899435 [cit. 2017-05-27]
  2. Multiagent Systems Gerhard Weiss, MIT Press 2016, 143 s. ISBN 978-0-262-01889-0 [cit. 2017-05-27]
  3. 3.0 3.1 Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. [cit. 2017-05-28]
  4. Stonedahl, F. and Wilensky, U. (2008). NetLogo Virus on a Network model. http://ccl.northwestern.edu/netlogo/models/VirusonaNetwork. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. [cit. 2017-05-28]