Теоретические аспекты инженерии знаний

Вид материалаЛекция

Содержание


Общие вопросы проектирования агентов и МАС
Подобный материал:
1   2   3   4   5   6   7   8   9   10   11
^

Общие вопросы проектирования агентов и МАС


Развитие и внедрение программных агентов основано на предыдущем опыте разработки и практического освоения концепции открытых систем, которые характеризуются свойствами:
  • расширяемости/масштабируемости,
  • мобильности/переносимости,
  • интероперабельности,
  • дружелюбием к пользователю/легкой управляемости.

Одним из результатов внедрения концепции открытых систем стало распространение архитектуры «клиент-сервер». В настоящее время выделяются следующие модели клиент-серверного взаимодействия:
  • «Толстый клиент – тонкий сервер». Наиболее часто встречающийся вариант. Серверная часть реализует только доступ к ресурсам, а основная часть приложения находится на клиенте.
  • «Тонкий клиент – толстый сервер». Модель активно используемая в связи с распространением Интернет-технологий и Web-броузеров. Клиентское приложение обеспечивает реализацию интерфейса, а сервер объединяет остальные части приложений.

Независимо от используемой модели, МАС опираются на статический подход (передача только данных приложений) или динамический подход (передача исполняемого кода). При динамическом подходе МАС используют парадигму мобильных агентов.

 Мобильные агенты – это программы, которые могут перемещаться по сети, они покидают клиентский компьютер и перемещаются на удаленный сервер для выполнения своих действий, после чего возвращаются обратно. Использование мобильных агентов целесообразно, если они:
  • уменьшают время и стоимость передачи данных,
  • позволяют преодолеть ограничение локальных ресурсов,
  • облегчают координацию,
  • позволяют выполнять асинхронные вычисления.

Проблемы: нет единых стандартов разработки МАС, легализация перемещения агентов по сети, защита от передаваемых вирусов, соблюдение агентами прав частной собственности, перенаселение сети агентами, а также совместимость кода агента и программно-аппаратных средств сетевой машины.

Наиболее важные приложения DCOM (Microsoft Distributed Component Object Model), Java RMI (Java Remote Method Invocation), CORBA (Common Object Request Broker Architecture).

Модель Microsoft DCOM является объектной моделью, которая поддерживается Windows 95/NT, Sun Solaris, Digital UNIX, IBM, MVS. Основная ценность – предоставление возможностей интеграции приложений, реализованных в разных системах программирования.

Java RMI-приложения обычно состоят из клиента и сервера. При этом на сервере создаются объекты, а на клиенте реализуются приложения, пользующиеся удаленными объектами. Возможна передача по сети не только методов, но и объектов, реализация мобильных агентов.

CORBA является объектно-ориентированным приложением. Интерфейсы между CORBA-объектами определяются через специальный язык IDL. Сами интерфейсы могут быть реализованы на любом другом языке и присоединены.

Технологии Java RMI и CORBA являются на сегодняшний день самыми гибкими и эффективными средствами реализации распределенных приложений. Они очень близки по своим характеристикам.

Все программные средства для разработки и реализации МАС можно разделить на два больших класса: МАС-библиотеки и МАС-среды. Список сайтов, где представлена информация о программном обеспечении находится по адресу: ссылка скрыта.


Инструментарий AgentBuilder

Инструментарий для построения МАС компании Reticular Systems, Inc. Состоит из двух компонентов: средств разработки (tools) и окружения периода исполнения (run-time execution environment) Первый компонент ориентирован на поддержку процессов анализа предметной области и проектирования агентов с заданным поведением. Второй обеспечивает среду для выполнения агентно-ориентированных программ. Оба реализованы на языке Java. Агенты, созданные с помощью AgentBuilder, тоже являются Java-программами и могут исполняться на любом компьютере, где установлена виртуальная Java-машина JVM.


Технологическая схема процесса разработки агентно-ориентированных приложений на базе AgentBuilder








Модель «жизненного цикла» агентов включает следующие основные шаги:
  • обработка новых сообщений,
  • определение поведения в текущей ситуации,
  • выполнение действий,
  • обновление ментальной модели,
  • планирование.

Данная модель получила название Reticular Agent Mental Model (RAMM). Для спецификации поведения агентов в системе AgentBuilder используется объектно-ориентированный язык RADL. Правила поведения могут рассматриваться как конструкции вида WHEN-IF-THEN.

WHEN – часть правила адресована новым событиям, сообщениям.

IF – часть сравнивает ментальную модель с условиями применения правила.

THEN – часть определяет действия в ответ на текущие события.

В целом AgentBuilder – серьезная система представления и манипулирования знаниями, ориентированная на описание моделей типа RAMM. Её инструментарий является современным средством проектирования и реализации МАС.


Система Bee-gent

В данной системе, в отличие от AgentBuilder, для проектирования МАС используется специальная библиотека, реализованная на Java, а собственно технология представлена методологией спецификации поведения агентов распределенной системы. В системе Bee-gent используется множество базовых агентов, среди которых можно выделить упаковщики и медиаторы.

Поведение системы базируется на спецификации message exchanges через протоколы взаимодействия interaction protocols. Такие протоколы представляются специальными графами, основными понятиями которых являются состояния (states) и переходы (transitions). В Bee-gent используется специальный язык XML/ACL, т.к. логическая структура ACL-выражений представляется в формализме XML.

Агентная библиотека фирмы Toshiba является развитой и отвечает основным требованиям к компонентам программного обеспечения. Для спецификации протоколов взаимодействия предлагается использовать язык программирования, а не представления знаний. На уровне технологии имеется четкая структура представления поведения агентов. Язык реализации – Java, система Bee-gent ориентирована на компиляцию программ, а не на интерпретацию спецификаций, как в AgentBuilder.

Выводы:

В настоящее время явно существует тенденция использования методов и средств ИИ, ориентированных на поддержку процессов проектирования программных агентов и МАС.

Процесс разработки МАС на основе методов проектирования баз знаний в такой технологии предполагает:
  • эксплицитное представление в БЗ архитектуры МАС,
  • явную спецификацию архитектуры отдельных типов агентов,
  • описание в виде специальных БЗ модели (схемы) всех знаний, необходимых каждому агенту,
  • анализ используемых при реализации МАС систем классов и программных библиотек,
  • формальную спецификацию специальной машины вывода, целью которой является переход от спецификации МАС к её реализации.


ЛЕКЦИЯ 9
Информационный поиск в среде Интернет


Пространство WWW содержит огромное количество HTML-документов, гипертекстовые связи между документами отражают отношения между отдельными информационными фрагментами. Броузеры обеспечивают представление материалов пользователям и навигацию по ссылкам для доступа к документам в сети.

Машины поиска являются самым распространенным и доступным ресурсом извлечения информации. При этом используются два типа сетевых роботов: спайдеры (spiders) и индексы (indexes). Спайдеры, иногда наз. ботами, перемещаются от сайта к сайту, иногда от сервера к серверу беспорядочно или, используя приоритеты. Оказавшись на сайте, спайдер посылает отчет поисковой машине и продолжает индексирование. Индексы используются для ускорения поиска и сбора информации.

Основными характеристиками машин поиска являются язык запросов, представление исходных и выходных документов, время индексации и поиска, объем индекса. Наиболее популярные: AltaVista, Exite, Infoseek, Lycos, Yahoo. С учетом морфологии русского языка – Яndex.

Типичную организацию машин поиска можно рассмотреть на примере системы WebCrawler, разработанной в университете Вашингтон (Сиэтл, США):

















WebCrawler начинает процесс поиска новых сайтов с известных документов и переходит по ссылкам на другие страницы. Он рассматривает сеть как ориентированный граф и работает в следующем цикле
  • найти новый документ,
  • отметить его как извлеченный,
  • расшифровать ссылки,
  • проиндексировать содержание документа.

Механизм работает в двух режимах: поиск в реальном времени и индексирование документов. Агенты в системе WebCrawler отвечают за извлечение документов. Получив задание на поиск, агент либо возвращает содержание документа, либо объяснение, почему данный документ нельзя доставить. Агенты запускаются как отдельные процессы, одновременно используется до 15 агентов. В базе данных хранятся метаданные документов, связи, индексы, служебная информация. Каждый объект запоминается в отдельном дереве: документы – в одном, серверы – в другом, ссылки – в третьем. Такое разделение позволяет быстро определить неиспользуемые или часто используемые серверы.

Аналогичным образом устроены и другие машины поиска. Глобальные поисковые механизмы не могут настраиваться на предпочтения пользователя, не имеют средств анализа информации. Существующие машины поиска обеспечивают низкоуровневый сервис для клиентских поисковых программ более высокого уровня.
Неспециализированные и специализированные поисковые агенты

Неспециализированные поисковые агенты являются первым уровнем надстройки над поисковыми машинами. Такие агенты обеспечивают поиск по ключевым словам и устойчивым словосочетаниям. Кроме того, они передают запрос сразу не множество машин поиска, настраиваются на предпочтения пользователя, формируют тематическую базу данных. Но они не в состоянии самостоятельно отобрать и доставить пользователю полезную информацию.

Специализированные агенты поиска приспособлены к поиску определенной информации. Они предоставляют пользователю пакет средств для организации и управления найденной информацией. В развитых системах имеются возможности:
  • сохранения параметров поиска или полной истории запросов,
  • параллельного поиска на множестве ресурсов Интернета,
  • оформления и сохранения отчетов в БД,
  • слежения за обновлением информационных ресурсов.
Системы интеллектуальных поисковых агентов

Сегодня в развитии систем поиска наметился явный сдвиг в сторону использования средств ИИ.

Autonomy [1998] и Webcompass [1999] – системы интеллектуального поиска и обработки информации. Цель их разработки – обеспечить пользователя интегрированными средствами поиска релевантной его интересам информации в сети, автоматизировать процесс поиска, организовать найденные документы в рамках определенных тем.

В системе Autonomy использована технология нейросетей, в системе Webcompass описание предметной области основано на использовании таксономии понятий. В системе Autonomy запрос на поиск представляется на естественном языке. Запрос к Webcompass основан на описании предметной области (достаточно промаркировать интересующие темы). В системе Autonomy поиск информации ведется с использованием методов нечеткой логики. В основе поискового алгоритма лежит «Механизм динамических рассуждений». Базовые функции МДР – сравнение концептов, создание агента, стандартный поиск слов в тексте. Поиск в системе Webcompass ведется на основе ключевых слов, сразу на 35 машинах поиска. Из интересных особенностей системы Autonomy можно отметить режим обучения поисковых агентов.


ЛЕКЦИЯ 10