Мобильные агенты - Кафедра анализа данных и исследования

advertisement
Системы мобильных агентов
Агентом называется система, находящаяся в некоторой среде и
являющаяся ее частью. Агент воздействует на среду при выполнении
собственных задач и сам подвергается воздействию с ее стороны.
Таким образом, изменения, произведенные агентом в среде,
отражаются на нем самом в будущем
Агенты могут обладать следующими свойствами:
1. автономность - способность выполнять поставленную задачу без вмешательства извне;
2. реактивность - способность воспринимать изменение среды и предпринимать ответные действия;
3. целенаправленность - способность выполнять поставленные перед ним задачи;
4. устойчивость - способность восстанавливать свое состояние после аварийного завершения;
5. общительность - возможность взаимодействия с другими элементами среды;
6. адаптивность- способность изменять свое поведение в зависимости от накопленного опыта;
7. мобильность – возможность перемещаться в среде;
8. гибкость – возможность изменять свое поведение.
Совокупность нескольких агентов, работающих совместно, а следовательно, обладающих свойством
общительности, называют многоагентными системами.
Стандарты многоагентных систем
Существуют десятки систем, использующих мобильных агентов. Для их совместимости разрабатываются стандарты.
В настоящее время существует два основных стандарта, разработанные в ассоциациях
OMG (Object Management Group) и FIPA (Foundation for Intelligent Physical Agents).
Ассоциация OMG разработала стандарт MASIF (Mobile Agent System Interoperability Facilities). В нем она уделила
внимание стандартизации следующих проблем технологии МА:
1. управление агентами. Унифицируется синтаксис и правила выполнения операций управления жизненным циклом
МА: создание агентов, приостановка и возобновление их выполнения, перемещение агента и завершение его работы.
2. идентификация агентов. Унифицируется синтаксис имен агентов. Введение подобного синтаксиса позволяет
идентифицировать агента в системе.
3. типизация и адресация агентской платформы. Унифицируется синтаксис описания типа и адреса агентской
платформы. Это необходимо для получения агентом информации о типе платформы, предоставляемой ее сервисами,
а также для идентификации локальной и удаленной платформ друг друга.
Система мобильных агентов JADE
Система JADE (Java Agent Development Framework) разработана фирмой CSELT S.p.A. Система
реализована на Java и совместима со стандартом FIPA. Среду выполнения агентов на узле
обеспечивают контейнеры, которые входят в состав распределенной платформы (рис. 2).
Контейнеры реализованы как RMI-объекты, поэтому для получения информации о действующих в
системе контейнерах используется RMI-реестр. Особенностью системы является
централизованная система управления агентами AMS. Система управления агентами
предназначена для создания, удаления, деактивации, возобновления МА на платформе. Сервис
хранит информацию о текущем местонахождении агентов.
Платформа системы JADE включает в себя службу каталога DF и канал связи агентов ACC. Служба каталога
реализует сервис и хранит информацию об агентах, действующих в системе. Канал общения агентов управляет
маршрутизацией сообщений между агентами, используя информацию от системы управления агентами. Агент
может взаимодействовать с другими агентами посредством асинхронной передачи ACL-сообщений. При
отправке сообщения указывается ID получателя. Платформа ACC сама определяет текущее местонахождение
агентов и подходящий механизм транспортировки. Все получаемые сообщения ставятся в очередь, доступ к
которой реализуется агентской платформой. Сообщения будут доставлены агенту, даже если он в момент
получения запроса находится в состоянии ожидания. Если в процессе взаимодействия один из агентов
перемещается, то связь между ними теряется. Область взаимодействия агентов ограничена одной платформой.
Агенты - аналитики
Знания могут быть применены на практике. В результате такой практической деятельности вносятся изменения
в среду, из которой поступают данные
Основная идея использования агентной технологии в области интеллектуального анализа данных
заключается в том, чтобы инкапсулировать в агенте цикл извлечения знаний из данных. В этом случае агент
должен выступать в роли аналитика. В его обязанности будут входить следующие задачи:
1. накопление знаний;
2. выбор средства анализа и способа его применения на основе имеющихся знаний;
3. применение выбранного средства к данным.
Для решения этих задач агент должен обладать следующими свойствами:
1. целенаправленность — целью агента является извлечение максимального количества знаний из данных;
2. общительность — агент должен иметь возможность обмениваться своими знаниями с другими агентами ;
3. адаптивность — агент должен использовать полученные в результате анализа знания для приенения их к
данным;
4. мобильность — для работы с данными, находящимися на разных узлах, объединенных сетью.
Система анализа распределенных данных
Общий подход к реализации системы
В процессе анализа существующих библиотек для разработки многоагентных систем и
библиотек алгоритмов интеллектуального анализа данных были выбраны библиотеки JADE и
Xelopes. Полученная система включает в себя агентов, выполняющих следующие задачи:
1. сбор информации о базе данных;
2. сбор статистической информации о данных;
3. решение одной задачи интеллектуального анализа данных;
4. решение интегрированной задачи интеллектуального анализа данных.
Стационарные агенты, не обладая свойством мобильности, выполняют вспомогательные
функции. К таким функциям относятся:
1. доступ к базе данных;
2. настройка мобильных агентов;
3. отображение результатов работы мобильных агентов.
Мобильные агенты для выполнения анализа могут использовать две стратегии:;
1.последовательный анализ — агент последовательно перемещается между узлами сети и
выполняет анализ на каждом;
2. параллельный анализ — агент создает клонов, которые, перемещаясь каждый на свой узел,
выполняют анализ и возвращают его результаты исходному агенту. Выбор стратегии анализа
осуществляется пользователем при создании агента в диалоговом окне, представленном на рис.
Выбор стратегии анализа осуществляется пользователем при создании агента в диалоговом окне,
представленном ниже.
Все агенты могут быть сохранены и затем восстановлены для дальнейшей работы.
Агент для сбора информации о базе данных
Для создания и настройки агента для сбора информации необходимо выполнить следующую
последовательность действий:
1. Выбрать в главном меню окна приложения пункт File | New Agent (Файл | Новый агент)
2. В открывшемся диалоговом окне выбрать тип агента (DataBase Agent). Для этого в дереве
типов надо выделить лист дерева Data base, после чего станет доступна кнопка Next (Далее)
для перехода к следующему диалогу.
3. В следующем окне настройки можно ввести имя агента и выбрать контейнеры, которые он
должен обойти.
4. Чтобы добавить новый контейнер, который агент должен посетить, необходимо нажать кнопку
Add (Добавить). В результате откроется диалоговое окно, в котором можно настроить параметры
добавляемого контейнера.
Агент для сбора статистической информации о данных
Для создания и настройки агента для сбора статистической информации о данных необходимо:
1. Выбрать в главном меню окна приложения пункт New Agent
2. Выбрать тип агента Statistic в дереве типов.
3. В диалоговом окне настройки выбрать контейнеры, по которым проходит агент.
4. Если вы хотите использовать информацию DataBase Agent, то нажмите кнопку Get preference from
DBAgent (Получить настройки от DBAgent)
После выбора желаемого агента в левой части диалога надо нажать кнопку Show (Показать).
Выбранные поля в дереве (поле выбирается установкой флажка около него) будут автоматически
добавлены для анализа на задан- ном контейнере при нажатии кнопки Apply (Применить).
5. По приходу на новый контейнер агент будет использовать следующие настройки (рис. 4). Данное
диалоговое окно появляется при нажатии кнопки Add
В данном диалоге можно указать:
• имя базы данных, поля которой агент будет анализировать;
• драйвер для доступа к базе данных;
• имя таблицы;
• исключаемые из обработки поля таблицы
Результаты работы агента могут быть представлены пользователю в виде диаграмм
Агент для решения одной задачи интеллектуального анализа данных
Для создания и настройки такого вида агента необходимо:
1. Выбрать в главном меню окна приложения пункт New Agent.
2. Выбрать тип агента Clustering Mining Agent в дереве типов.
3. В окне настроек выбрать контейнеры, по которым проходит агент.
4. По приходу на новый контейнер агент будет использовать следующие
настройки (рис.6).
В данном диалоге можно указать:
• имя базы данных, поля которой агент будет анализировать;
• драйвер для доступа к базе данных;
• имя таблицы;
• исключаемые из обработки поля таблицы;
• каталог для файла с результатами работы агента
в формате PMML;
• результирующую таблицу.
5. После нажатия кнопки Next появляется окно настройки непосредственно самого алгоритма (рис. 7). На
вкладке Settings (Настройки) устанавливаются следующие параметры модели алгоритма:
• максимальное число кластеров;
• параметры вычисления расстояния между векторами.
6. На вкладке Algorithm (рис. 8) необходимо указать название алгоритма, например CFuzzy. Далее нужно
установить параметры для выбранного алгоритма: • число кластеров; • максимальное число итераций
алгоритма; • минимальное межкластерное различие для завершения алгоритма.
Результаты работы агента могут быть представлены пользователю в формате PMML (рис. 9)
Download