Modelowanie agentowe

Model agentowy, model oparty na agentach (ang. Agent-Based Model, ABM) – model obliczeniowy służący do symulacji zachowań i interakcji pomiędzy autonomicznymi jednostkami, zwanymi agentami. Modele agentowe mają szereg zastosowań w nauce, ekonomii i biznesie. W niektórych dziedzinach, szczególnie w ekologii, ABM są również nazywane modelami opartymi na jednostkach[1] (ang. Individual-Based Models, IBM). ABM są wykorzystywane do przewidywania zachowań systemów złożonych z wielu oddziałujących na siebie obiektów, szybkiego testowania hipotez, wizualizacji ruchu np. grup zwierząt lub cząsteczek dymu[2], lub studiowania nowych, emergentnych wartości systemów naturalnych. Modele agentowe wykorzystywane są wszędzie tam, gdzie problemy są trudne lub niemożliwe do rozwiązania za pomocą metod analitycznych czy teorii gier ze względu na ich złożoność i konieczność uwzględnienia osobniczych różnic w zachowaniu pomiędzy jednostkami.

Teoria edytuj

 
Stado ptaków porusza się w sposób pozornie wyglądający na zorganizowany i zaplanowany, jednak jest to cecha emergentna, która powstaje dzięki oddziaływaniom krótkozasięgowym pomiędzy poszczególnymi osobnikami. Ptaki nie mają wiedzy o tym, jak wygląda cała struktura poruszającego się stada, ale na bieżąco reagują na zmiany położenia swoich sąsiadów tak, aby się nie zderzyć i aby podążać za grupą.

Agent jest zdefiniowany jako jednostka, osobnik lub obiekt, opisany prostymi regułami zachowań, które pozwalają mu na interakcję ze środowiskiem i innymi osobnikami w modelu. Modele agentowe są wzorowane na mechanice obserwowanej pomiędzy osobnikami w naturalnie występujących systemach (np. oddziaływaniach pomiędzy poruszającymi się zwierzętami), a do ich zdefiniowania potrzebnych jest jedynie kilka założeń:

  • Autonomia osobników - każdy z osobników lub obiektów uwzględnionych w modelu wykazuje autonomię pod względem zachowań i może reagować na bodźce płynące od innych osobników i ze środowiska. Algorytm w każdej iteracji uwzględnia reakcje każdego z agentów osobno.
  • Lokalne interakcje - każdy agent jest w stanie reagować wyłącznie na bodźce znajdujące się w jego bezpośrednim otoczeniu. Interakcje osobników umieszczonych w oddalonym miejscu w przestrzeni nie mają bezpośredniego wpływu na zachowanie tego agenta. Poszczególne osobniki w modelu działają aby maksymalizować własne zyski, takie jak reprodukcja lub korzyści ekonomiczne.
  • Decentralizacja - każdy z osobników ma tę samą rangę, a zachowania żadnego z nich nie wpływają na zachowania innych z większą mocą niż działania pozostałych.

Modele agentowe są zazwyczaj implementowane za pomocą programowania obiektowego. Modelowane osobniki mogą mieć zakodowane reguły uczenia się, a kolejne generacje mogą powstawać dzięki zastosowaniu algorytmu genetycznego.

Szczególną cechą ABM jest to, że działania agentów w mikroskali powodują powstanie dodatkowych, emergentnych cech[2][3], takich jak np. samoorganizacja. Proste zachowania jednostek generują złożone zachowania wielkoskalowe, co można wyrazić zdaniem "całość jest większa niż suma jej części". Innymi słowy, właściwości systemu wyższego poziomu (np. populacji) wyłaniają się z interakcji niższego poziomu (pomiędzy osobnikami).

Przykłady zastosowań edytuj

 
Las jest supiskiem roślin o różnych cechach. Niektóre drzewa charakteryzuje znaczny przyrost na wysokość, inne gatunki przeznaczają więcej energii na produkcję gęstych koron z dużą powierzchnią fotosyntetyzującą, jeszcze inne tolerują słabsze warunki oświetleniowe i będą zajmować najniższe piętra lasu. Uwzględnienie tych czynników w modelu agentowym pozwala na przewidzenie struktury populacji drzew po upływie wielu lat. Znajduje to zastosowanie w badaniach nad bioróżnorodnością oraz tworzeniem nowych nisz, np. na terenach zniszczonych przez człowieka.

W ekologii, obiekty w ABM zazwyczaj należą do jednej kategorii, np. tego samego taksonu modelowanych zwierząt czy roślin, oraz posiadają te same rodzaje cech i zachowań, jednak z uwzględnieniem indywidualnej wariancji pomiędzy nimi. Przykładowo, za pomocą ABM można wymodelować wzrost lasu[4], w którym każdy agent (w tym przypadku drzewo) opisany jest tymi samymi parametrami (wysokość, całkowita powierzchnia liści, objętość korony), ale poprzez zaimplementowanie różnego tempa zmian dla każdego z parametrów oraz przyjęcia innych wartości początkowych dla każdego osobnika, uzyskujemy znaczne różnice we wzroście końcowym. W tym modelu każdy agent konkuruje z sąsiednimi jednostkami o dostęp do światła. Charakter wzrostu i oddziaływań pomiędzy wieloma osobnikami jest bardzo trudny do przewidzenia innymi metodami matematycznymi. Dzięki ABM można uzyskać wyniki, które pozwolą zrozumieć m.in. jak może wyglądać sukcesja lasu w zależności od warunków początkowych. Taki model można dowolnie rozwijać, wprowadzając np. nachylenie podłoża lub zmienną długość doby. W wyniku symulacji można uzyskać wiarygodny obraz tego, jak będzie wyglądała dana populacja drzew w stosunkowo krótkim czasie (znacząco krótszym, niż skala czasowa wzrostu lasu).

Można spotkać się również z modelami, w których symulowane jednostki należą do jednej kategorii i nie różnią się między sobą cechami, a jedyna różnica w warunkach początkowych dotyczy ich rozmieszczenia w przestrzeni. Do ciekawszych modeli, które badają ruch w przestrzeni należą m.in. model "boidów" (boid, ang. bird-like object) ilustrujący kolektywny ruch stada ptaków lub ryb w ławicy[5], czy model próbujący wyjaśnić mechanizm ucieczki grupy ludzi z pomieszczenia w razie pożaru[6].

Zobacz też edytuj

Przypisy edytuj

  1. Volker Grimm, Steven F. Railsback, Individual-based Modeling and Ecology, Princeton University Press, 28 listopada 2013, DOI10.1515/9781400850624, ISBN 978-1-4008-5062-4 [dostęp 2023-06-21] (ang.).
  2. a b P. Hogeweg, B. Hesper, Individual-oriented modelling in ecology, „Mathematical and Computer Modelling”, 13 (6), 1990, s. 83–90, DOI10.1016/0895-7177(90)90012-C, ISSN 0895-7177 [dostęp 2023-06-21] (ang.).
  3. Broder Breckling i inni, Emergent properties in individual-based ecological models—introducing case studies in an ecosystem research context, „Ecological Modelling”, 186 (4), Emergent Properties in Individual-based Models Case Studies from the Bornhöved Project (Northern Germany), 2005, s. 376–388, DOI10.1016/j.ecolmodel.2005.02.008, ISSN 0304-3800 [dostęp 2023-06-21] (ang.).
  4. Simon A. Levin i inni, Mathematical and Computational Challenges in Population Biology and Ecosystems Science, „Science”, 275 (5298), 1997, s. 334–343, DOI10.1126/science.275.5298.334, ISSN 0036-8075 [dostęp 2023-06-21] (ang.).
  5. Craig W. Reynolds, Flocks, herds and schools: A distributed behavioral model, „Proceedings of the 14th annual conference on Computer graphics and interactive techniques”, SIGGRAPH '87, New York, NY, USA: Association for Computing Machinery, 1987, s. 25–34, DOI10.1145/37401.37406, ISBN 978-0-89791-227-3 [dostęp 2023-06-21].
  6. Dirk Helbing, Illés Farkas, Tamás Vicsek, Simulating dynamical features of escape panic, „Nature”, 407 (6803), 2000, s. 487–490, DOI10.1038/35035023, ISSN 1476-4687 [dostęp 2023-06-21] (ang.).