МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ
К лабораторным работам
по дисциплинам
Б1.В.03 «Агентная парадигма программирования»
Направление подготовки
Прикладная математика и информатика
Магистерская программа "Математическое и программное обеспечение вычислительных систем"
Б1.В.03 «Мультиагентные системы»
Направление подготовки
Фундаментальные информатика и информационные технологии
Магистерская программа " Компьютерные науки"
Квалификация (степень) выпускника – магистр
Форма обучения: очная
Краснодар – 201 8 г.
Методические рекомендации
Для выполнения лабораторных работ
и разработки индивидуального проекта по курсам
«Мультиагентные системы»,
«Агентная парадигма программирования»
Автор: к.т.н. доцент Приходько Т.А
Средой разработки и существования МАС являются агентные платформы. Было разработано множество программных реализаций агентных платформ, каждая из которых имеет свои особенности, достоинства и недостатки. Вот лишь небольшой список из более чем ста доступных платформ, публикуемых на сайте организации AgentLink (European Coordination Action for Agent-based Computing [5]): JADE, FIPA-OS, AOS, ZEUS, KADOMA, NOMADS, ARA, AGLETS, GRASSHOPPER, TRACY, AJANTA, LEAP, JACK, SEMOA.
Многие из них успешно существуют в виде коммерческих проектов (таких как JACK) или проектов, позиционируемых как проекты с открытым исходным кодом (JADE, ZEUS и др.).
В 90-х годах возникла необходимость создания единых стандартов на разработку агентных систем. В этот период были основаны две организации MASIF (Mobile Agent System Interoperability Facility) и FIPA (Foundation of Physical Intelligent Agents). В результате их работы появились стандарт MASIF и стандарт FIPA [6], дающие рекомендации по созданию систем мобильных агентов и систем интеллектуальных агентов. Одной из наиболее популярных агентных платформ в настоящее время является платформа JADE (Java Agent DEvelopment Framework). Проект JADE разрабатывается компанией Telecom Italia Lab с 2000 г.
Основные цели практикума:
· Изучение архитектуры и назначения агентной платформы JADE.
· Практическое освоение среды JADE для создания агентных приложений и управления ими.
· Изучение примеров разработки простых агентных приложений.
· Практическое освоение базовых классов, поддерживающих платформу JADE: классов агента, поведения агента, взаимодействия между агентами, сервиса «желтых страниц».
· Приобретение навыков программирования агентов на основе базовых классов JADE.
· Приобретение навыков построения агентных приложений, агенты которых выполняют сложные переговоры, публикацию и поиск сервисов.
В процессе выполнения лабораторного практикума предлагается разрабатывать агентные приложения в порядке возрастания сложности:
1. Простой агент HelloWorldAgent. Реализация проекта Ping-pong.
2. Знакомство с агентной платформой и утилитами (стандартными агентами) JADE.
3. «Торговля книгами» – приложение, в котором агенты выполняют переговоры, публикацию и поиск сервисов. ЛР№3 разбита на 2 части: а) Типы поведения агентов и б)Средства коммуникации агентов на примере проекта «Торговля книгами».
4. Индивидуальный проект. Матчинг «Заказ – Ресурс» как пример отношения, наиболее часто встречающегося в сфере производства и логистики, для реализации которого требуется взаимодействие между агентами. «Проекты-программисты» (или другие подобные варианты) – приложение, в котором агенты ведут переговоры между собой с использованием сообщений различного типа. При этом агенты имеют собственные модели поведения и преследуют различные цели. (Отчет обязателен).
5. Организация межплатформенной мобильности агентов. Здесь требуется организовать удаленное взаимодействие агентов, возможно использование платформы Jade-Leap под Android. (Отчет обязателен).
6. Доклад с презентацией "Пример реализации реальной МАС ". Детали задания см. в лекциях.
Содержание
Установка и настройка JADE.. 4
Лабораторная работа №1. Разработка простых Агентов. 5
Цели работы: 5
1.1. Как создать агентное приложение. 5
1.2. Теоретические сведения об агентах. 9
ЗАДАНИЕ К ЛР№1. 10
Лабораторная работа №2. Изучение структуры агентной платформы JADE.. 11
2.1. Архитектура агентной платформы JADE.. 11
2.2. Архитектура и реализация платформы JADE.. 13
ЗАДАНИЕ К ЛР№2. 17
Лабораторная работа №3а. Типы поведения агентов JADE. Этапы разработки мультиагентной системы.. 18
Цель: изучить виды поведения агентов на примере мультиагентной системы, построенной по принципу pub/sub. 18
3.1. Разработка класса-агента, JADE-класс. 18
3.2. Идентификаторы агента. 19
3.3. Реализация поведения агента. 20
3.4. Типы поведений агента. 21
3.5. Планирование операций в заданных временных точках. 22
3.6. Режимы работы агентов в приложении «Торговля книгами». 23
3.6.1. Поведение агента Book-buyer. 23
3.6.2. Поведение агента Book-seller. 23
ЗАДАНИЕ К ЛР№3а. 25
Лабораторная работа №3б. Средства коммуникации агентов. 26
Цель: изучить способы взаимодействия агентов на примере мультиагентной системы BookTrading - продавец-покупатель книг. 26
4.1. Система отправки сообщений. 26
4.2. Взаимодействие агентов. 27
4.3. Сервис «желтых страниц». 33
ЗАДАНИЕ К ЛР№3б. 35
Приложение А. Варианты заданий и план действий по реализации индивидуального проекта. 36
Приложение В. Оформление индивидуального проекта. 40
СПИСОК ЛИТЕРАТУРНЫХ ИСТОЧНИКОВ.. 45