Среда разработки агента Java - Java Agent Development Framework

ДЖЕЙД
Стабильный выпуск
4.5.0 / 8 июня 2017 г . ; 3 года назад  ( 2017-06-08 )
Написано в Ява
Платформа Java SE
Тип Многоагентная система , программный фреймворк
Лицензия Стандартная общественная лицензия ограниченного применения GNU
Веб-сайт нефрит .tilab .com  Отредактируйте это в Викиданных

Java Agent Development Framework или JADE - это программная среда для разработки интеллектуальных агентов , реализованная на Java . Система JADE поддерживает координацию между несколькими агентами FIPA и предоставляет стандартную реализацию языка общения FIPA-ACL , который облегчает обмен данными между агентами и позволяет обнаруживать службы системы. JADE изначально был разработан Telecom Italia и распространяется как бесплатное программное обеспечение .

Резюме

JADE - это промежуточное программное обеспечение, которое облегчает разработку многоагентных систем в соответствии со стандартом FIPA, для чего создается несколько контейнеров для агентов, каждый из которых может работать в одной или нескольких системах. Понятно, что набор контейнеров составляет платформу.

JADE обеспечивает:

  • Среда, в которой выполняются агенты JADE
  • Библиотеки классов для создания агентов с использованием наследия и переопределения поведения
  • Графический набор инструментов для мониторинга и управления платформой интеллектуальных агентов.

История

JADE изначально был разработан Telecom Italia Lab. Этот сектор является отделением исследований и разработок Telecom Italia Group, которое отвечает за продвижение технологических инноваций. Компания Telecom Italia разработала и продвигала JADE, основав его в 2000 году. Последние доступные даты - июнь 2017 года (версия 4.5). Первая версия JADE, распространяемая как бесплатное программное обеспечение , доступна с февраля 2000 г. (версия 1.3).

В марте 2003 года Motorola и Telecom Italia создали Управляющий совет JADE с целью содействия развитию и внедрению JADE в индустрии мобильных телекоммуникаций в качестве промежуточного программного обеспечения . Правление JADE обязывает любую компанию и / или организацию, заинтересованную в коммерческом использовании и эксплуатации JADE, взять на себя обязательства по ее развитию и продвижению.

Платформа

JADE - это платформа распределенных агентов, в которой есть контейнер для каждого хоста, на котором вы запускаете агентов. Кроме того, платформа имеет различные инструменты отладки, мобильность кода и агентов контента, возможность параллельного выполнения поведения агентов, а также поддержку определения языков и онтологий . Каждая платформа должна иметь родительский контейнер с двумя специальными агентами, называемыми AMS и DF.

  • DF (Directory Facilitator) предоставляет каталог, в котором объявляется, какие агенты доступны на платформе.
  • Платформа управляется системой управления агентами (AMS). Он единственный, кто может создавать и уничтожать других агентов, уничтожать контейнеры и останавливать платформу.

Агент ДФ

Для доступа к агенту DF используется класс jade.domain.DFService и его статические методы: регистрация, отмена регистрации, изменение и поиск .

Агент AMS

Для доступа к службе AMS создается агент, который автоматически запускает метод регистрации AMS по умолчанию перед выполнением настройки метода из нового агента. Когда агент уничтожается, он по умолчанию выполняет свой метод takeDown () и автоматически вызывает метод отмены регистрации AMS.

Класс агента

Класс Agent - это суперкласс, который позволяет пользователям создавать агентов JADE. Чтобы создать агента, необходимо наследовать напрямую от агента . Обычно каждый агент записывает несколько сервисов, которые они должны реализовать с помощью одного или нескольких поведений.

Этот класс предоставляет методы для выполнения основных задач агентов:

  • Передавать сообщения объектами ACLMessage с сопоставлением с образцом
  • Поддержите жизненный цикл агента
  • Планируйте и выполняйте несколько действий одновременно

ДЖЕЙД агент

Цикл жизни агента JADE следует циклу, предложенному FIPA. Эти агенты проходят разные состояния, определяемые как:

  1. Инициировано: агент создан, но еще не зарегистрировал AMS.
  2. Активный: агент зарегистрирован и имеет имя. В этом состоянии он может связываться с другими агентами.
  3. Приостановлено: агент остановлен, потому что его поток приостановлен.
  4. Ожидание: агент заблокирован в ожидании события.
  5. Удалено: агент завершил работу, его поток завершил свое выполнение, а в AMS больше нет.
  6. Транзит: агент переезжает в новое место.

Поведение агентов

Поведение определяет действия при заданном событии. Такое поведение агента определяется в настройке метода с помощью метода addBehaviour . Различные варианты поведения агента определяются абстрактным классом Behavior. Класс Behavior содержит абстрактные методы:

  • action (): выполняется, когда происходит действие.
  • done (): выполняется в конце выступления.

Пользователь может переопределить методы onStart () и OnEnd (), свойство. Кроме того, существуют другие методы, такие как block () и restart (), используемые для изменения поведения агента. Когда агент заблокирован, его можно разблокировать разными способами. В противном случае пользователь может переопределить методы onStart () и onEnd (), которыми обладает агент.

Разблокировать агента

  1. Получение сообщения.
  2. Когда происходит тайм-аут, связанный с block ().
  3. Вызов перезапуска.

Сообщения ACL

ACL для передачи сообщений (Agent Communication Language) - это основа связи между агентами. Отправка сообщений осуществляется методом send класса Agent. В этом методе вы должны передать объект типа ACLMessage, который содержит информацию о получателе, язык, кодировку и содержимое сообщения. Эти сообщения отправляются асинхронно, а при получении сообщений они будут храниться в очереди сообщений. Есть два типа получения сообщений ACL: блокирующий и неблокирующий. Для этого предоставьте методы blockingReceive () и receive () соответственно. В обоих методах вы можете настроить фильтрацию сообщений для извлечения из очереди, задав разные шаблоны.

Расширения

JADE имеет расширение, именуемое WADE (среда разработки рабочих процессов и агентов), которое представляет собой систему рабочих процессов, которая позволяет создавать процесс с помощью графического редактора WOLF.

Смотрите также

Рекомендации

  • Архив новостей Jade
  • Руководство пользователя Wade
  • Разработка мультиагентных систем с JADE , Том 7, серия Wiley в агентских технологиях, Фабио Луиджи Беллифемин, Джованни Кайр, Доминик Гринвуд ISBN   9780470058404
  • Безопасность и доверие в агентно-ориентированном промежуточном программном обеспечении , Sixth International, OTM 2003 Workshops. OTM 2003. Конспект лекций по информатике, том 2889. Springer, Berlin, A Poggi, M Tomaiuolo, G Vitaglione. ISBN   978-3-540-20494-7

Внешние ссылки