2АПЛ
2APL (A Practice Agent Programming Language) — модульный язык программирования на основе BDI , поддерживающий разработку мультиагентных систем . 2APL предоставляет богатый набор программных конструкций, позволяющих напрямую реализовывать такие концепции, как убеждения, декларативные цели, действия, планы, события и правила рассуждения. Правила рассуждения позволяют выбирать и генерировать планы во время выполнения на основе декларативных целей, полученных событий и сообщений, а также неудачных планов. 2APL можно использовать для реализации мультиагентных систем, состоящих из программных агентов с реактивным и проактивным поведением.
Обзор
[ редактировать ]2APL предоставляет программные конструкции для определения как многоагентных систем, так и отдельных агентов. Мультиагентные системы определяются с точки зрения отдельных агентов и сред, с которыми они взаимодействуют. Отдельные агенты указаны с точки зрения следующих ингредиентов.
- Убеждения : он реализует исходную информацию агента о своей среде и других агентах, с которыми он взаимодействует. Убеждения агента могут измениться во время его выполнения.
- Цели : реализует первоначальные цели агента. Каждая цель обозначает состояние, которого агент желает достичь. Цель будет удалена, как только она будет достигнута. Различные цели могут быть недостижимы одновременно, поскольку они могут обозначать конфликтующие состояния.
- Основные действия : 2APL предоставляет различные типы действий, среди которых:
- Действие обновления убеждений — обновление убеждений агента.
- Действие связи – передать сообщение другому агенту.
- Внешнее действие – это взаимодействие с окружающей средой.
- Абстрактное действие — это инкапсуляция плана одним действием.
- Действие «Проверка убеждений» заключается в проверке убеждений агента.
- Действие проверки цели – это запрос целей агента.
- Принять цель Действие — добавить цель к целям агента.
- Drop Goal Action — удаление цели из целей агента.
- Планы : план состоит из основных действий, состоящих из таких операторов, как последовательность, условный выбор, условная итерация и унарный оператор для идентификации (области) планов, которые должны выполняться атомарно, т. е. действия не должны чередоваться с действиями другие планы агента.
- Правила рассуждения . Для реализации планов предусмотрены три типа (практических) правил рассуждения. Правила имеют условие уверенности, указывающее, когда правило может быть применено.
- Правило цели планирования заключается в разработке плана для достижения цели.
- Процедурное правило заключается в создании плана реагирования либо на событие (полученное из среды), либо на сообщение (полученное от агента). Это правило также можно использовать для связи абстрактного действия с планом, который оно инкапсулирует.
- Правило восстановления плана заключается в создании плана для замены неудачного плана.
- Модули : Программа агента 2APL может быть разработана в виде отдельных модулей. Каждый модуль инкапсулирует когнитивные компоненты, такие как убеждения, цели, планы и правила рассуждения. На практике модуль 2APL можно использовать для программирования определенного функционала, например роли или профиля агента . Программист может выполнять широкий спектр операций над модулями, например, создавать экземпляр модуля, обновлять его, выполнять и проверять его состояние.
- Среды : Среду 2APL можно реализовать как объект Java. Методы такого объекта соответствуют внешним действиям агентов. Тело метода реализует эффект соответствующего действия.
Платформа 2APL
[ редактировать ]Платформа 2APL и соответствующий ей редактор подключаемых модулей Eclipse разработаны для облегчения разработки и выполнения мультиагентных программ. Выполнение отдельной программы агента 2APL реализуется посредством циклического процесса смысл-причина-действие, называемого процессом обдумывания . Выполнение мультиагентной программы 2APL представляет собой параллельное выполнение задействованных отдельных агентских программ.

Ссылки
[ редактировать ]- Мехди Дастани, 2APL: практический язык программирования агентов, Международный журнал автономных агентов и многоагентных систем (JAAMAS), 16 (3): 214-248, специальный выпуск об агентах на основе вычислительной логики, (ред.) Франческа Тони и Джамал Бентахар, 2008 г.
- Мехди Дастани и Бас Стойнебринк. Операционная семантика модулей BDI в многоагентном программировании. Материалы десятого Международного семинара по вычислительной логике в многоагентных системах (CLIMA-X), 2009.
- Мехди Дастани. Модульное программирование на основе правил в 2APL, В. А. Джурка, Д. Гашевич и К. Таветер (ред.), Справочник по исследованиям новых языков и технологий, основанных на правилах: открытые решения и подходы (2 тома), ISBN 978-1-60566-402-6 , 2009 г.
- Мехди Дастани, Яап Брандзема, Амко Дюбель и Джон-Жюль Мейер. Отладка многоагентных программ на основе BDI. В материалах 7-го Международного семинара по программированию мультиагентных систем (ПроМАС 2009), 2009 г.
Внешние ссылки
[ редактировать ]- 2APL на SourceForge