Багатоагентна система

Багатоагентна система (рос. МАС, англ. Multi-agent system) — це система, утворена декількома взаємодіючими інтелектуальними агентами. Багатоагентні системи можуть бути використані для розв'язання таких проблем, які складно або неможливо вирішити за допомогою одного агента або монолітної системи. Прикладами таких завдань є онлайн-торгівля[1], ліквідація надзвичайних ситуацій[2], і моделювання соціальних структур[3].

Звичайний агент
Агент, що навчається

Огляд ред.

У багатоагентній системі агенти мають кілька важливих характеристик[4]:

  • Автономність: агенти, хоча б частково, незалежні
  • Обмеженість уявлення: у жодного з агентів немає уявлення про всю систему, або система занадто складна, щоб знання про неї мало практичне застосування для агента.
  • Децентралізація: немає агентів, що керують усією системою[5]

Зазвичай у багатоагентних системах досліджуються програмні агенти. Проте, складовими мультиагентної системи можуть також бути роботи, люди або команди людей. Також, багатоагентні системи можуть містити й змішані команди.

У багатоагентних системах може проявлятися Самоорганізація і складна поведінка навіть якщо стратегія поведінки кожного агента досить проста. Це лежить в основі так званого ройового інтелекту.

Агенти можуть обмінюватися отриманими знаннями, використовуючи деяку спеціальну мову й підкоряючись установленим правилам «спілкування» (протоколам) у системі. Прикладами таких мов є Knowledge Query Manipulation Language[en] (KQML) і FIPA's Agent Communication Language[en] (ACL).

Вивчення багатоагентних систем ред.

Вивчення багатоагентних систем пов'язане з вирішенням досить складних проблем штучного інтелекту.

Теми для дослідження в рамках МАС:

  1. знання, бажання й наміри (BDI),
  2. кооперація й координація,
  3. організація,
  4. комунікація,
  5. узгодження,
  6. розподілене рішення,
  7. Кооперативне розподілене розв'язання задач,
  8. мультиагентне навчання
  9. надійність і стійкість до збоїв

Парадигми багатоагентних систем ред.

Багато МАС мають комп'ютерні реалізації, засновані на покроковому імітаційному моделюванні. Компоненти МАС зазвичай взаємодіють через вагову матрицю запитів,

 Speed-VERY_IMPORTANT: min=45mph, 
 Path length-MEDIUM_IMPORTANCE: max=60 expectedMax=40, 
 Max-Weight-UNIMPORTANT 
 Contract Priority-REGULAR 

і матрицю відповідей,

 Speed-min:50 but only if weather sunny,  
 Path length:25 for sunny / 46 for rainy
 Contract Priority-REGULAR
 note - ambulance will override this priority and you'll have to wait

Модель «Запит — Відповідь — Угода» — звичайне явище для МАС. Схема реалізується за кілька кроків:

  1. спочатку всім задається питання на зразок: «Хто може мені допомогти?»
  2. на це тільки «спроможні» відповідають «Я зможу, за таку-то ціну»
  3. в остаточному підсумку, укладається «угода»

Для останнього кроку зазвичай потрібно ще трохи (дрібніших) актів обміну інформацією. При цьому беруться до уваги інші компоненти, у тому числі вже досягнуті «угоди» і обмеження середовища.

Іншою часто використовуваною парадигмою в МАС є «феромон», де компоненти «залишають» інформацію для наступних у черзі або найближчих компонентів. Такі «феромони» можуть випаровуватися згодом, тобто їхні значення можуть змінюватися із часом.

Властивості ред.

МАС також належать до систем, що самоорганізуються, тому що в них шукається оптимальне розв'язання задачі без зовнішнього втручання. Під оптимальним розв'язанням розуміється розв'язання, на яке витрачене найменша кількість енергії в умовах обмежених ресурсів.

Головна перевага МАС — це гнучкість. Багатоагентна система може бути доповнена й модифікована без переписування значної частини програми. Також ці системи мають здатність до самовідновлення й мають стійкість до збоїв, завдяки достатньому запасу компонентів і самоорганізації.

Застосування МАС ред.

Багатоагентні системи застосовуються в нашому житті в графічних застосунках, наприклад, в комп'ютерних іграх. Агентні системи також були використані у фільмах [6]. Теорія МАС використовується в складених системах оборони. Також МАС застосовуються в транспорті, логістиці, графіці, геоінформаційних системах і багатьох інших. Багатоагентні системи добре зарекомендували себе в сфері мережних і мобільних технологій, для забезпечення автоматичного й динамічного балансу завантаженості, розширюваності й здатності до самовідновлення.

Засоби розробки Мультиагентних Систем ред.

Див. також ред.

Посилання ред.

  1. Alex Rogers and E. David and J.Schiff and N.R. Jennings. The Effects of Proxy Bidding and Minimum Bid Increments within eBay Auctions [Архівовано 2 квітня 2010 у Wayback Machine.], ACM Transactions on the Web, 2007
  2. Nathan Schurr and Janusz Marecki and Milind Tambe and Paul Scerri et.al. The Future of Disaster Response: Humans Working with Multiagent Teams using DEFACTO [Архівовано 19 березня 2009 у Wayback Machine.], 2005.
  3. Ron Sun and Isaac Naveh. Simulating Organizational Decision-Making Using a Cognitively Realistic Agent Model [Архівовано 20 серпня 2010 у Wayback Machine.], Journal of Artificial Societies and Social Simulation.
  4. Michael Wooldridge, An Introduction to MultiAgent Systems, John Wiley & Sons Ltd, 2002, paperback, 366 pages, ISBN 0-471-49691-X.
  5. Liviu Panait, Sean Luke: Cooperative Multi-Agent Learning: The State of the Art. Autonomous Agents and Multi-Agent Systems 11(3): 387-434 (2005)
  6. Massive[en], Film showcase [Архівовано 15 квітня 2008 у Wayback Machine.]

Комплекс інструментально-програмних засобів для підтримки технології проектування й програмної реалізації прикладних багатоагентних систем [Архівовано 11 грудня 2010 у Wayback Machine.]

Література ред.

Англійською ред.