
- •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
4.5Інструментальний пакет jason
Вдосконалення інструментальних засобів АОП виявляється в тому, що вони стають здатні практично реалізувати строгі теоретичні моделі МАС, особливо архітектуру BDI. У цьому сенсі, яскравим прикладом є інструментальний пакет JASON, що є реалізацією відомої мови опису МАС AgentSpeak (L).
JASON є першим повним інтерпретатором мови AgentSpeak (L), що включає можливості міжагентної комунікації на основі теорії мовних актів.
Даний інтерпретатор забезпечує такі можливості:
сильне заперечення, що допускає розгляд як замкнених, так і відкритих моделей світу;
обробка помилок у планах, що виконуються агентами;
посилання на мітки плану, які можуть використовувати складні вирішальні функції;
Підтримка середовищ розробки, які не реалізують спочатку AgentSpeak (L) через програмування на мові Java;
запуск МАС розподілених в локальній мережі;
використання настроюваних функцій вибору, функцій довіри, ревізії переконань, міжагентної комунікації і дій;
використання бібліотек внутрішніх дій, визначених користувачем на мові Java.
У системі JASON реалізована операційна семантика, формально визначена для мови AgentSpeak (L).
Дана мова визначає агента через специфікацію безлічі базових переконань і безлічі планів. Атомарні переконання є звичайним предикатом першого порядку. Атомарні переконання або їх заперечення позначаються відповідними літералами. Початкова множина переконань є набором базових атомарних переконань.
У мові AgentSpeak (L) визначаються два типи цілей: досяжні цілі і тестові цілі. Досяжна мета встановлюється тоді, коли агент прагне досягти певного стану світу, в якому пов'язаний предикат є вірним. Практично для цього ініціюється виконання вкладених планів.
Тестова мета повертає уніфікацію для пов'язаного предиката з одним з переконань агента, у разі невдачі така мета відкидається.
Перемикаюча подія може ініціювати виконання певного плану.
Подія може бути внутрішньою, коли досягнута певна підціль, або зовнішньою, породжуваною в результаті модифікації переконань після сприйняття стану зовнішнього середовища. Плани використовують базові дії, які агент здатний виконати в середовищі. Дії також визначаються як предикати першого порядку, але позначаються спеціальними символами.
План утворюється перемикаючою подією, за якою слідує кон'юнкція літералів, що утворюють контекст. Контекст повинен бути послідовністю таких поточних переконань агента, для яких даний план можна застосувати. Залишкова частина плану є послідовність базових дій та цілей, що агент досягає (або перевіряє), коли план обрано для виконання.
Програми агентів інтерпретуються циклічно. У кожному циклі оновлюється список подій, що породжуються або перцепцією із зовнішнього середовища, або виконанням підцілей, визначених в тілі плану. Далі інтерпретатор уніфікує вбрану подію з перемикаючими подіями в заголовках планів, визначаючи, таким чином, безліч релевантних планів. Перевіряючи вміст контексту цих планів, інтерпретатор визначає безліч застосовних планів і вибирає один відповідний план з цієї безлічі. Коли всі формули в тілі плану виявляються виконаними, то мета вважається досягнутою і план також видаляється з черги планів. Цикл роботи інтерпретатора повторюється.
До теперішнього часу з використанням AgentSpeak (L) реалізовано невелике число діючих програм: програми моделювання зростання великих міст та управління складським роботом в середовищі віртуальної реальності.