
- •1.2.7Визначення агентно-орієнтованих систем
- •2Агентні моделі та архітектури
- •2.1Деліберативні агенти та архітектури
- •2.2Реактивні агенти та архітектури
- •2.3Гібридні агенти та архітектури
- •2.3.1Архітектура циклічної машини
- •2.3.2Архітектура систем «планувальник – реактор»
- •2.3.3Архітектура Glair
- •2.3.4Архітектура dyna
- •2.3.5Побудова гібридних архітектур. Система InteRRaP
- •3Методи побудови агентно-орієнтованих систем
- •3.1Підходи, що базуються на об'єктно-орієнтованих методах
- •3.2Використання традиційних методів інженерії знань
- •3.3Підходи, засновані на організаційно-орієнтованих уявленнях
- •3.3.1Методологія Gaia
- •3.3.2Методологія, заснована на концепції м-архітектури
- •3.3.3Методологія Тropos
- •3.4Комбіновані методології проектування агентно-орієнтованих систем
- •3.4.1Методологія passi
- •3.4.2Методологія Prometheus
- •4 Інструментальні засоби розробки агентно-орієнтованих систем
- •4.1Вимоги до інструментальним засобам створення мас
- •4.2Інструментальна середа mas-dk
- •4.3Платформа мультиагентного програмування jade
- •4.4Інструментарій ingenias Development Kit (idk)
- •4.5Інструментальний пакет jason
2.3Гібридні агенти та архітектури
Реактивний підхід дозволяє ефективно використовувати безліч простих сценаріїв поведінки агентів в рамках встановлених реакцій на певні події навколишнього середовища, але його обмеженість проявляється в практичній неможливості повного ситуативного аналізу всіх можливих активностей агентів. Тому в більшості проектів і діючих систем використовуються гібридні архітектури.
Запропоновано дві категорії гібридних агентних архітектур:
1) однорідна архітектура використовує одне загальне уявлення і схему (мал. 2.3) управління для реакцій і міркувань;
2) багатошарові архітектури використовують різні уявлення і алгоритми (реалізовані в окремих шарах) для виконання цих функцій.
Рисунок. 2.3 – Базова архітектура багатошарового гібридного агента
Реактивний компонент відображає стимули на примітивні дії. Деліберативний компонент виконує символічний висновок для керування поведінкою реактивного компонента, наприклад, змінює безліч правил „ситуація – дія”. У деяких архітектурах деліберативний компонент прямо пов'язаний із сенсорами і ефекторами агента, в інших ні.
Коли проектується архітектура багаторівневого гібридного агента необхідно отримати відповіді на такі критичні питання:
Достатньо лише одного реактивного і одного деліберативного рівня, або повинні бути введені додаткові рівні? Як когнітивне робоче навантаження повинно бути розділено між рівнями?
Як повинні взаємодіяти компоненти різних рівнів?
Коли агент повинен діяти і коли має міркувати, тобто як визначити алгоритм розкладу?
Проведемо порівняння деяких відомих гібридних архітектур в термінах зазначених вище пунктів (1) – (3).
2.3.1Архітектура циклічної машини
Фергюссоном була запропонована архітектура циклічної машини, заснованої на моделі машини А.М. Т’юринга, що включає три рівні:
реактивний рівень, який являє собою безліч правил «ситуація-дія»;
рівень що планує, чиїм головним компонентом є ієрархічний, неповний планувальник;
моделюючий рівень.
Завдання реактивного рівня – забезпечити швидку реакцію на події в реальному масштабі часу.
Головне завдання плануючого рівня – згенерувати і виконати плани для досягнення довгострокових цілей агента.
Завдання моделюючого рівня – виявити і передбачити ситуації потенційного конфлікту цілей між агентами і потім запропонувати дії для виходу з цих конфліктів (рис. 2.4.).
Кожен рівень незалежно пов'язаний з сенсорами і ефекторами і діє так, ніби він керував агентом самостійно. В результаті цієї дії агенти будуть часто конфліктувати один з одним. Конфлікти вирішуються пригнічуючими правилами. На боці рецепторів є правила цензури, які фільтрують сенсорні дані, так що кожен рівень отримує відповідну частину сенсорних даних.
Рисунок. 2.4 – Базова архітектура агента циклічної машини
Повідомлення поділяються на два види: пасивні пересилання інформації (реактивний рівень повідомляє моделюючий рівень на які сутності світу слід звернути увагу) і активні, що змінюють керуючі рішення інших рівнів (моделюючий рівень змушує плануючий рівень згенерувати план для нового завдання). Рівні діють паралельно, але синхронно (керуються внутрішнім годинником агента).