Modelarea bazată pe agenți ( ABM) este o metodă de simulare care explorează comportamentul agenților descentralizați și modul în care un astfel de comportament determină comportamentul întregului sistem în ansamblu. Spre deosebire de dinamica sistemului , analistul determină comportamentul agenților la nivel individual, iar comportamentul global apare ca urmare a activității multor agenți (modelare de jos în sus).
Modelarea bazată pe agenți include automate celulare , elemente de teoria jocurilor, sisteme complexe, sisteme multi-agenți și programare evolutivă, metode Monte Carlo, utilizează numere aleatorii.
Primul model bazat pe agenți a fost dezvoltat la sfârșitul anilor 1940 . Ulterior, dezvoltarea microcalculatoarelor a contribuit la dezvoltarea în continuare a acestei direcții și a capacității de a efectua simulări pe computer.
Ideea principală din spatele modelelor bazate pe agenți este de a construi un „instrument de calcul” (care este un set de agenți cu un anumit set de proprietăți) care vă permite să simulați fenomene reale. Scopul final al procesului de creare a unui ABM este de a urmări influența fluctuațiilor agenților care acționează la nivel micro asupra indicatorilor de la nivel macro.
Este în general acceptat că modelele bazate pe agenți provin din calculatoarele lui John von Neumann, care sunt mașini teoretice capabile de auto-reproducere . John von Neumann a propus utilizarea unor mașini care urmează instrucțiuni detaliate pentru a crea replici exacte ale lor. Ulterior, această abordare a fost îmbunătățită de prietenul lui von Neumann - Stanislav Ulam , care a propus să înfățișeze mașina pe hârtie - ca un set de celule pe o zăbrele. Această abordare a fost începutul dezvoltării automatelor celulare .
Cea mai faimoasă implementare a unui automat celular a fost jocul „ Viața ”, propus de John Horton Conway , care diferă de mașina von Neumann prin reguli destul de simple pentru comportamentul agenților.
Utilizarea AOM pentru sistemele sociale a apărut din munca programatorului Craig Reynolds , în care a încercat să simuleze activitatea agenților biologici vii (modelul „Viața artificială”).
Modelele bazate pe agenți se bazează pe trei idei principale:
Abordarea metodologică dominantă este abordarea în care se calculează echilibrul sau pseudoechilibru al unui sistem care conține mulți agenți. În același timp, modelele în sine, folosind reguli simple de comportament, pot produce rezultate foarte interesante.
ABM-urile constau în agenți care interacționează dinamic în conformitate cu anumite reguli . Mediul în care interacționează poate fi destul de complex.
Inteligența. În același timp, această proprietate ar trebui să fie moderată, astfel încât agenții să nu poată învăța ceva mai mult care să depășească regulile jocului.
Având un scop în viață. Localizare în timp și spațiu. Aceasta se referă la un „habitat”, care poate fi reprezentat atât sub forma unei grile (ca în jocul „ Viața ”), cât și sub forma unei structuri mult mai complexe. Uneori, rezultatul interacțiunii agenților din „habitat” este un echilibru, uneori - un proces continuu de evoluție și uneori - un ciclu nesfârșit fără o soluție definită.
AOM sunt considerate a fi complementare metodelor analitice tradiționale . Acestea din urmă ne permit să caracterizăm echilibrul sistemului , iar AOM ne permit să explorăm posibilitatea obținerii unei astfel de stări. AOM poate explica cauza unor astfel de fenomene precum: organizații teroriste , războaie , prăbușiri bursiere etc.
În mod ideal, ABM-urile pot ajuta la identificarea momentelor critice după care consecințele de urgență vor fi ireversibile.
De la mijlocul anilor 1990 , AOM a fost folosit pentru a rezolva o varietate de probleme comerciale și tehnologice . Exemple de sarcini sunt:
În aceste aplicații și în alte aplicații, strategiile comportamentale sunt definite luând în considerare comportamentul unui set de agenți atomici individuali și interacțiunile acestora. Astfel, AOM poate ajuta la studierea influenței comportamentului individual al agenților asupra evoluției întregului sistem.
Unul dintre programele pentru dezvoltarea AOM este aplicația gratuită NetLogo . NetLogo a fost dezvoltat inițial ca instrument educațional, dar acum este folosit nu numai de studenți, ci și de mii de cercetători. Acest program este adesea folosit în universități pentru a preda studenților elementele de bază ale AOM. Programul StarLogo are o funcționalitate similară .
Un instrument pentru implementarea unei game mai largi de sarcini în domeniul ABM este programul Swarm . Folosește limbajul de programare Objective-C și poate fi recomandat programatorilor C , nu numai profesioniștilor, ci și începătorilor. De asemenea, puteți programa în mediul Swarm în limbajul Java . Mai notăm și câteva programe: MASON , Repast ( se folosește Java ), EcoLab ( se folosește C++ ), Cormas ( se folosește SmallTalk ).
Programe