Remove ads
метода автоматизованого моделювання та симуляції З Вікіпедії, вільної енциклопедії
Агентне моделювання (англ. agent-based model, ABM) — один з класів обчислювальних моделей для цифрового моделювання дій або взаємодії автономних агентів. Агентами можуть виступати індивідуальні та колективні сутності, наприклад, групи або організації. Мета агентного моделювання — оцінка їх впливу на систему в цілому. Методологія оцінювання включає в себе елементи теорії ігор, складних систем, емерджентності, обчислювальної соціології, багатоагентної системи та еволюційного програмування. Для розуміння стохастичності цих моделей використовується Метод Монте-Карло.
В екології ABM виокремлюється індивідуальне моделювання individual-based models (IBMs),[1] при цьому індивідууми в IBM можуть бути простішими за повністю автономних агентів в ABM.
Огляд сучасної літератури з індивідуального моделювання, агентного моделювання та мультиагентних системах показує що АВМ використовується у таких необчислювальних наукових галузях як біологія, екологія, соціологія.[2]
Агентне моделювання пов'язане але відрізняється від багатоагентної системи в тому, що мета АВМ — в більшій мірі шукати пояснення, які ведуть до розуміння колективної поведінки агентів, використовуючи прості правила в природних системах, ніж концентруватися на проектуванні агентів або вирішенні конкретних практичних або технічних проблем.[2]
Агентні моделі це різновид мікро- та макромасштабних моделей,[3] що імітують одночасні операції та взаємодії множини агентів в спробі відтворити та передбачити виникнення складних феноменів. Цей процес є прикладом емерджентності від нижчого (мікро) рівня систем до вищого (макро) рівня. Таким чином, ключовим поняттям принципу агентного моделювання є те, що прості правила поведінки генерують складну поведінку. Цей принцип, також відомий як K.I.S.S. («Keep it simple, stupid»), тісно пов'язаний з модельованим середовищем.
Інше центральне поняття ABM це те, що ціле — це більше, ніж сума його складових частин. Індивідуальні агенти зазвичай характеризують як обмежено раціональні, здатні до того щоб діяти у власних інтересах, таких як репродукція, економічна вигода чи соціальний статус,[4] використовуючи евристичні або прості правила прийняття рішень. Агенти ABM можуть бути здатними до адаптації, репродукції тощо.[5]
Більшість агентних моделей складаються з:
Перша АОМ була розроблена наприкінці 1950-х рр. Згодом, розвиток мікрокомп'ютерів посприяв подальшому розвитку цього напрямку та можливості проводити комп'ютерні симуляції.
Основна ідея агент-орієнтованих моделей полягає у побудові «обчислювального інструмента», що є набором агентів з певними властивостями та який дозволяє проводити симуляції реальних явищ. Остаточна мета процесу створення полягала у відстеженні впливу флуктуацій агентів, що діють на мікрорівні, на показники макрорівня.
Прийнято вважати, що агент-орієнтовані моделі беруть свій початок з обчислювальних машин фон Неймана — теоретичних машин, здатних до відтворення. Джон фон Нейман запропонував використовувати машини, що слідують детальним інструкціям для відтворення точних копій самого себе. Як наслідок, цей підхід було вдосконалено другом фон Неймана — Станіславом Улямом, який запропонував зображувати машину на папері — як набір клітин на сітці. Цей підхід став початком розвитку клітинних автоматів.
Найбільш відомою реалізацією скінченного автомату стала гра «Життя», що була запропонована Джоном Хортоном Конвеєм. Вона відрізняється від машини фон Неймана доволі простими правилами поведінки агентів.
Одна з найбільш ранніх агентних моделей була сегрегаційна модель Томаса Шеллінга,[6] яка обговорювалася в статті «Динамічні моделі сегрегації» в 1971 р. Хоча Шеллінг спочатку використовував монети й міліметрівку, а не комп'ютери, його моделі втілювали основну концепцію агент-моделей як автономних агентів, що взаємодіють у спільному середовищі з доступними агентами з емерджентним результатом.
На початку 1980-х Роберт Аксельрод провів турнір зі стратегії дилеми в'язня в N кроків і змусив учаників взаємодіяти в агентний спосіб, щоб визначити переможця. Книга Аксельрода "The Evolution of Cooperation" описує процес змагань.
Використання АОМ для соціальних систем отримало свій початок в роботі програміста Крега Рейнолдса[en], де він зробив спробу змоделювати діяльність живих біологічних агентів (модель «Штучне життя»).
З появою програмного забезпечення для моделювання бізнес-процесів комп'ютерне моделювання стало широко доступним і розповсюдилося на широкий спектр галузей застосування агентних моделей. До прикладів найбільш розповсюджених продуктів належали:
На 1990-ті роки припадає розширення агентного моделювання в рамках соціальних наук. Один з найбільших поштовхів в цьому напрямку здійснив Sugarscape, розроблений Джошуа М. Епштейном і Робертом Акстеллом для моделювання і дослідження ролі соціальних явищ, таких як сезонні міграції, забруднення довкілля, статеве розмноження, боротьба з хворобами та їх перенесення, культурні проблеми тощо.[8]
2008 року Рон Сан розробив методи для агентних моделей людського пізнання, відомі як когнітивне соціальне моделювання.[9][10] Білл Маккелві, Сюзанн Ломан, Даріо Нарди, Дуайт Ред та інші науковці зробили значний внесок в дослідження організаційної поведінки та прийняття рішень. З 2001 року проводиться конференція в Лейк-Ерроугед (Каліфорнія), що стало ще одним важливим місцем збору фахівців-практиків з цієї галузі.
В основі агент орієнтованих моделей полягає три головні ідеї:
Домінуючим методологічним підходом є підхід, при якому обчислюється рівновага системи, що містить багато агентів. При цьому, самі моделі, використовуючи прості правила поведінки можуть видавати досить цікаві результати.
АОМ складаються з динамічно взаємодіючих за певними правилами агентів. Системи, в яких вони взаємодіють, можуть утворювати таку складність, яка існує в реальному світі. Зазвичай агенти розташовані в просторі і часі, і знаходяться в певному зв'язку. Розташування агентів і їх поведінка кодується в алгоритмічній формі в комп'ютерних програмах. Не завжди, але у деяких випадках, агенти можуть вважатися інтелектуальними і цілеспрямованими. В екологічній агентній моделі (часто згадується як «індивідуально-орієнтована модель» в екології), для прикладу, агентом можуть бути дерева в лісі, і тоді вони не будуть вважатися розумними, хоча можуть бути «цілеспрямованими» в сенсі оптимізації доступу до ресурсів (наприклад, води).
Процес моделювання найкраще описується як індуктивний. Той, хто займається моделюванням, робить свої припущення відповідно до ситуації, що розглядається, а потім спостерігає за явищами, що виникають у зв'язку з взаємодією агентів. Іноді ці результати є близькими одне до одного. Проте іноді, може виникнути зовсім неочікуваний розвиток поведінки. У певному сенсі моделі на основі агентів доповнюють традиційні аналітичні методи. Там, де аналітичні методи дозволяють людям характеризувати рівновагу системи, моделі на основі агентів допускають можливість створення цих рівноваг.
Моделі на основі агентів можуть пояснити появу мережевих структур більш високих порядків: мережеві структури терористичних організацій і мережі Інтернет, що є статичними в ситуаціях воєн, краху фондового ринку і соціальньої сегрегації. Моделі на основі агентів також можуть бути використані для ідентифікації важільних точок, які визначаються як моменти часу, в якому втручання мають екстремальні наслідки.
Замість того, щоб зосередитися на стабільних станах, багато моделей розглядають міцність системи — це шляхи, якими складні системи адаптуються до внутрішнього і зовнішнього тиску, щоб підтримувати їх функціональні можливості.
Останні роботи з моделювання складних адаптивних систем продемонстрували необхідність об'єднання агентних та складних мережевих систем,[11][12][13] описують структуру, що складається з чотирьох рівнів розробки моделей складних адаптивних систем, обґрунтовані з використанням декількох багатопрофільних тематичних досліджень:
Інші способи опису моделей на основі агентів включають шаблони коду[14] і текстові методи, такі як ОДД (огляд, концепцію дизайну і дизайн деталей) протокол.
Роль середовища, в якій живуть агенти, і макро- і мікро,[15] також стає важливим фактором в агентному моделюванні та імітації роботи агента. Просте середовище надає прості засоби, але складні середовища створюють різноманітне поводження.[16]
В теорії, АОМ можуть допомогти ідентифікувати критичні моменти часу, після настання котрих, надзвичайні наслідки будуть мати незворотний характер.
Агент-орієнтоване моделювання широко використовується в біології, в тому числі для аналізу поширення епідемій,[17] і загроз біологічної зброї, біологічних проблем, включаючи динаміку населення[18], рослинність, екологію[19], ландшафтне різноманіття[20],зростання і занепад древніх цивілізацій, еволюцію етноцентричної поведінки[21], вимушене переміщення / міграцію[22], динаміку вибору мови[23], когнітивне моделювання та біомедичні додатки, включаючи моделювання 3D тканин молочної залози, дослідження / формоутворення[24], вплив іонізуючого випромінювання на молочні стовбурові клітини, запалення, імунну система людини[25]. Моделі на основі агентів були також використані для розробки систем підтримки прийняття рішень, таких як при раку молочної залози[26]. Моделі на основі агентів все частіше використовуються для моделювання фармакологічних рішень на ранніх стадіях і доклінічних дослідженнях, щоб допомогти в розробці лікарських засобів і отримати уявлення про біологічні системи. Крім того, моделі на основі агентів були недавно використані для вивчення біологічних систем на молекулярному рівні.
Моделі на основі агентів використовувалися з середини 1990-х років для вирішення різних технологічних і бізнес-задач. Приклади застосування включають моделювання організаційної поведінки і пізнання[27], робота в команді[28], оптимізація ланцюжка поставок і логістики, моделювання споживчої поведінки, ефекти соціальних мереж, розподілені обчислення, управління персоналом. Вони також були використані для аналізу дорожнього руху[29].
Останнім часом, агентні моделі були застосовані до різних сфер, таких як вивчення впливу місць публікації дослідників в галузі інформатики (журнали проти конференцій)[30]. В листопаді 2016 р. стаття в Arxiv проаналізувала агентне моделювання постів поширення в соціальній мережі Facebook.
Однією з програм для розробки АОМ є безкоштовна програма NetLogo. Спочатку NetLogo була розроблена як навчальний інструмент, але зараз нею користуються не тільки студенти, а ще й тисячі дослідників. Ця програма часто використовується у вишах для навчання студентів основам АОМ. Схожу функціональність має програма StarLogo.
Інструментом для реалізації більш широкого спектра в області АОМ є програма Swarm, де використовується мова програмування Objective-C і вона може бути рекомендована програмістам, що пишуть на С, причому не тільки професіоналам, а й новачкам. Програмувати в середовищі Swarm можна також і на Java. Відмітимо ще декілька програм: MASON, Repast (використовується Java), EcoLab (використовується C++), Cormas (використовується SmallTalk).
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.