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

Технология программных агентов. Форматы метаданных, использующиеся для описания электронных ресурсов. Разработка интеллектуальных агентов. Среда разработки Jadex для построения интеллектуальных агентов. BDI модель интеллектуального агента ресурсов.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 20.02.2011
Размер файла 279,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • 1 Анализ предметной области
    • 1.1 Технология программных агентов
    • 1.2 Форматы метаданных, использующиеся для описания электронных ресурсов
    • 1.3 Постановка задачи
  • 2 Особенности разработки интеллектуальных агентов
    • 2.1 Среда разработки Jadex для построения интеллектуальных агентов
    • 2.2 BDI модель интеллектуального агента ресурсов
  • 3 Описание программного модуля
    • 3.1 Построение модели интеллектуального агента
    • 3.2 XML описание интеллектуального агента ресурсов
  • Выводы
  • Перечень ссылок
  • Приложение А Метаданные курса

Введение

В последние годы развитие телекоммуникационных технологий, в том числе и Internet, происходит с огромной скоростью. Особый интерес представляют перспективы практического применения телекоммуникации.

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

Дистанционное обучение - это процесс обучения на расстоянии, когда преподаватель и студент разделены пространственно и когда все или большая часть действий связанных с обучением осуществляется с использованием современных информационных и телекоммуникационных технологий.

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

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

Отличительной особенностью дистанционного обучения является предоставление обучаемым возможности самим получать требуемые знания, пользуясь развитыми информационными ресурсами, предоставляемыми современными информационными технологиями. Информационные ресурсы: базы данных и знаний, компьютерные, в том числе мультимедиа, обучающие и контролирующие системы, видео- и аудиозаписи, электронные библиотеки - вместе с традиционными учебниками и методическими пособиями создают уникальную распределенную среду обучения, доступную широкой аудитории [1].

Интенсивные телекоммуникационные взаимодействия обучаемых студентов между собой и с преподавателями консультантами позволяют проводить электронные семинары и деловые игры.

При организации процесса персонального обучения, на вход поступает информация об обучаемом студенте, а на выходе получаем множество учебных материалов, объединенных в логическую последовательность в индивидуальном подходе обучения. При выборе необходимых учебных материалов применяется стандарт метаданных учебных материалов, который организует единый доступ на получение их с обучающих ресурсов, находящихся в глобальной сети Интернет.

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

Для решения этой проблемы интеллектуальные системы дистанционного обучения являются наиболее перспективным направлением развития методов обучения. В подобных случаях весьма эффективен мультиагентный подход, в рамках которого система строится как совокупность агентов (агенты пользователя, агенты преподавателя, агенты лекций и даже агенты отдельных объектов знания: определений понятий и правил, задач, методов, результатов, лабораторных работ, комментариев и т.д.). Каждый из агентов имеет описание своего поля деятельности, преследует собственные цели, переговаривается с другими агентами для достижения компромиссов и т.д. [2].

Решая эту задачу, разработаны и используются так называемые агентные технологии для автоматизации сервисов и служб. Они включают в себя следующие уровни функционирования: XML, RDF+RFFS, словарь онтологий, логика, тест, разрешение, коммутацию, а также существующие уровни кодирования информации и уникальной идентификации ресурсов.

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

Агентные технологии предоставляют возможность разработать программно-инструментальные средства для выполнения каждой функциональной задачи. Управление выполнением функциональных задач с использованием программных агентов обеспечивается онтологическими моделями [3].

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

Целью курсового проекта является разработка интеллектуального агента ресурсов, который занимается поиском материалов для других агентов в предоставлении материалов студентам.

1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

1.1 Технология программных агентов

Технология программных агентов является наиболее подходящей для реализации систем осуществляющих дистанционное обучение студентов.

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

Разработка агентно-ориентированной системы базируется на создании набора агентов, которые вместе обеспечивают всю требуемую функциональность. Поскольку любая агентно-ориентированная система основываются на сотрудничестве различных независимых объектов, то она структурно не монолитна. Поэтому при создании агентно-ориентированных систем совершенно нормальной практикой становится повторное использование существующих агентов. Построение логики моделей основано на построении модели Знания-Планы-Цели (Belief-Desire-Intention model (BDI)), как основы для принятия решений.

BDI агент - это частный случай ограниченного разумного программного агента, обрамленного определенными ментальными свойствами, а точнее: Beliefs (Знания), Desires (Планы), Intentions (Цели). Разумный агент в данном контексте означает, такой который на основе знаний о среде выбирает такие действия, что бы увеличить шанс успешного выполнения. Перечислим 4 характеристики интеллектуальных агентов, которые естественно описывают цель и модель BDI:

- расположенность - они помещенные в свою среду;

- целенаправленность - они обладают целями, которых пытаются достигнуть;

- реакционность - они реагируют на изменения в среде;

- социальность - они могут взаимодействовать с другими агентами.

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

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

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

Другой очень важный аспект в агентно-ориентированном подходе - это установление междуагентной связи в мультиагентной среде. Международная организация Foundation for Intelligent Physical Agents (FIPA) выдвинула ряд стандартов, которые в частности определяют взаимосвязь между агентами как центральную категорию в их модели мультиагентной среды.

1.1.1 Среда разработки Jadex

Среда разработки Jadex - это средство для создания интеллектуальных агентов. Используется различными видами агентов, предоставляя основные сервисы, такие как инфраструктура коммуникаций или средства для управления.

Сейчас доступно два полноценных средства разработки, которые адаптируют эту технологию. Первая адаптация доступна для широко известной открытой платформы Jade. Вторая адаптация - автономная адаптация Jadex, хоть эта адаптация и маленькая, но с быстрой средой и минимальной загрузкой памяти.

1.1.2 Принципы организации межагентного диалога

В 90-х годах были основаны две организации MASIF (Mobile Agent System Interoperability Facility) и FIPA (Foundation of Physical Intelligent Agents), занявшиеся разработкой стандартов. Результатом их работы являются стандарты MASIF и стандарты FIPA, дающие рекомендации к созданию систем мобильных агентов и систем интеллектуальных агентов соответственно. Одной из основных решаемых ими задач является создание языка взаимодействия агентов.

Большинство идей в технологию межагентного взаимодействия пришли из теории общения. Теория общения это практическая теория языка или точнее теория использования языка, в которой изучается, как люди используют языковые средства для превращения в жизнь своих целей и намерений. Основная её идея заключается в том, что все, что произносит человек, произносится для претворения в жизнь неких целей или намерений.

Принято различать несколько типов общения:

- представительный - информирование;

- указательный - попытка побудить реципиента к какому-либо действию;

- обязательственный - инициатор диалога берет на себя обязательства перед реципиентом;

- эмоциональный - когда инициатор диалога выражает свое эмоциональное состояние;

- декларативный - например объявление войны.

Однако ведутся дискуссии о том, является ли данная типология соответствующей действительности.

Принято выделять два компонента разговора:

- исполнительные глаголы, как-то запрашивать, информировать, спрашивать;

- пропозициональное содержимое, как например «дверь закрыта».

На основе вышеперечисленных идей были построены несколько языков взаимодействия агентов (Agent Communication Languages). Наиболее известный из них KQML, состоящий из языка запросов и манипулирования данными (KQML), а также из формата обмена знаниями (KIF). KQML - «поверхностный» язык, который определяет различные допустимые глаголы взаимодействия или перформативы, как например «ask-if (`это правда что…')», «perform(`пожалуйста, сделайте следующее действие ')», «tell(` это правда что…')», «reply(`ответом является…')». KIF это язык для выражения содержимого сообщения. Для того чтобы агенты имели возможность взаимодействия, они должны утвердить общий набор терминов. Формальное описание терминов представляется в виде онтологий.

В стандартах FIPA центральное место занимает язык межагентного взаимодействия, основная структура сообщений которого сходна с KQML:

- перформатив;

- собственная информация;

- содержимое.

Перформативы «Inform» и «Request» являются базовыми, остальные, по спецификации FIPA являются их производными. Значения «Inform» и «Request» перформативов определены в двух частях:

- pre-condition - что должно быть действительно для того чтобы акт общения был успешным;

- «rational effect» - что отправитель сообщения хочет осуществить.

Для перформатива «inform» содержимым является некое утверждение, предпосылкой (pre-condition) - то, что отправитель считает содержимое истинным, рассчитывает на то, что реципиент «верит» содержимому, не рассчитывает, что реципиенту уже известно является ли сообщение истинным или ложным.

Для перформатива «request» содержимым является действие, предпосылкой - то, что отправитель рассчитывает, что действие будет исполнено, рассчитывает, что реципиент способен выполнить действие [4].

1.1.3 Существующие подходы к реализации межагентного взаимодействия

В настоящее время существует несколько способов программной реализации моделей коммуникации между агентами:

- CORBA IIOP. Совместимый с CORBA 2.0 Протокол Обмена между Брокерами Объектных Запросов в Internet может быть использован во всех средах, которые поддерживают CORBA, независимо от конкретной реализации Брокера Объектных Запросов. Он использует совместимый со стандартами механизм соединения с объектом, используя Службу Наименований CORBA;

- MAF IIOP. Этот протокол является специальной версией CORBA IIOP, разработанной для коммуникации агентных систем. Он разработан в стандарте MASIF и обеспечивает совместимость между агентными системами различных разработчиков;

- RMI. удалённый запуск методов Java (RMI) позволяет Java объектам запускать методы других Java объектов, запущенных на другой Виртуальной Машине (VM);

- RMI with SSL. Используя этот протокол, RMI запускаться через сокеты защищённые протоколом Secure Socket Layer (SSL), который обеспечивает безопасную транспортировку данных;

- Plain Sockets. Наиболее быстрый метод удалённой связи - это использование коммуникации через сокеты к определённому порту требуемого сервера;

- Plain Sockets with SSL. При использовании этого протокола соединения через сокеты защищаются протоколом SSL [4].

1.1.4 Ориентированный подход агентов

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

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

1.1.5 Агенты теоретических компонентов

Агент дистанционного обучения для теоретических компонентов может рассматриваться, как простой основанный на модели отраженный агент. Это означает, что он имеет очень простые цели и быструю модель функционирования, основанную на правилах продукции. Пользователь может исполнять некоторые действия, которые генерируют условия для активации правил агента. Наиболее сложный случай такого функционирования агента - то, когда цикл поставки, показа, объяснения, повторения оценки достигает удовлетворительного уровня знаний пользователей. Агент может оценивать знание студента через тестирование.

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

1.1.6 Агенты назначения

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

В течение лабораторных занятий студенты получают некоторые практические навыки и усиливают теоретические знания. Агент лабораторий в системе дистанционного обучения может помогать студенту, в то время как он следует командам лабораторий, и оценивает действие каждого отдельного студента. Если справка будет необходима студенту, агент может предлагать одну из сохраненных стандартных команд, как преодолеть проблему или посылать уведомление с запросом преподавателю. Этот тип агентов осуществляется таким же образом, как и агент назначения.

1.2 Форматы метаданных, использующиеся для описания электронных ресурсов

Основой системы является единый формат передачи данных. Разрабатываемый агент ориентирован на работу с метаданными.

Большинство исследователей выделяют следующие типы метаданных:

- Описательные, например, библиографическая информация или другие сведения о содержании (семантике) материалов в цифровом формате;

- Структурные, включая сведения о форматах, структуре, объеме и других формальных свойствах;

- Административные это права, разрешения на доступ, на коррекцию данных, данные о пользователе, данные для систем оплаты, технологические данные.

Вопрос о соотношении типов метаданных в рамках конкретной системы метаданных является принципиальным для принятия решения о её выборе. Ниже рассматриваются наиболее известные системы метаданных, среди которых наиболее распространенной является система метаданных так называемого Дублинского ядра (Dublin Core Metadata Set):

- DC Дублинское ядро метаданных - консорциум W3. DC считается базовым средством формирования метаданных для описания широкого класса электронных материалов. Основное преимущество Дублинского ядра заключается в том, что если традиционные методы каталогизирования требуют профессиональной подготовки для эффективного использования, то Дублинское ядро использовать весьма просто, что не обеспечивает точность описания электронных материалов;

- CSDGM стандарт для цифровых геопространственных данных. Документ направлен на выработку общей терминологии геопространственных метаданных. Одобрен в 1994г. на заседании Федерального комитета по географическим данным США и затем утвержден Правительственным распоряжением 12096, которое обязывает американские федеральные организации использовать этот стандарт, начиная с 1995 г. Федеральный комитет разработал этот стандарт, чтобы идентифицировать источники пространственных данных и обеспечить доступ к данным через Национальную информационную инфраструктуру. Стандарт метаданных GSDGM содержит 334 элемента данных, более 100 из которых служат для описания связей между элементами;

- DIF формат обмена для справочников геопространственных данных. Структура данных для каталога метаданных, создаваемая NASA и поддерживаемая в США межведомственной рабочей группой по управлению данными для глобального обмена. Формат был разработан в конце 1980-х гг. для обмена спутниковой и другой телеметрической информацией. Позже стал использоваться для любых геопространственных данных и стал стандартом де-факто в международных глобальных информационных системах. Стандарт вводит элементы метаданных, определяет их содержание и структуру для передачи метаданных в информационных системах. Стандарт позволяет пользователю определить, содержит ли набор данных релевантную информацию;

- GILS глобальная (правительственная) служба поиска информации. Являясь частью Национальной информационной инфраструктуры, GILS обеспечивает доступ частным лицам и организациям к федеральным информационным ресурсам, через общедоступный каталог этих ресурсов. GILS базируется на международных стандартах информационного поиска с использованием протокола доступа Z39.50 и использует систему метаданных в рамках этого протокола. Развитие системы GILS предполагает создание системы взаимосвязанных каталогов для поиска метаданных, возможно, различных типов;

- MARC машиночитаемый каталог. Один из старейших и самых известных и распространенных в России и в мире стандартов метаданных. Отличается детальным составом элементов данных, универсальностью, развитой структурой. Стандарт ориентирован на библиотечную практику, имеет конкурирующие версии и высокую стоимость эксплуатации;

- ЕАД кодировка архивных описаний. Набор изначально текстовых метаданных на базе языка разметки SGML , разработанных для нужд архивов и используемых для стандартизации и классификации уникальных архивных материалов, прежде всего рукописей. Версия 1.0. 1998 г. совместима с форматом XML. Поддерживается Американским архивным обществом и Библиотекой Конгресса США;

- TEI инициатива по кодированию текстов: разработана в Центре электронных текстов Вирджинии в 1989 г. как инструмент при процессе оцифровке, который идентифицирует электронный ресурс и его печатный источник посредством метаданных, размещаемых внутри самого электронного ресурса [5];

- IAFA/WHOIS++ шаблонно ориентированные метаданные для описания сетевых ресурсов, первоначально использовавшиеся для описания списков электронной почтовой рассылки, других ftp-архивов, а позднее распространенные на другие ресурсы. Наиболее широкое применение наблюдалось в рамках ранних проектов британской программы по электронным библиотекам eLib (ROADS и т. д.), но даже сейчас эта схема метаданных считается одной из самых употребительных [6];

- Интероперабельность данных в системах электронной коммерции - INDECS. Набор метаданных, который развился из потребностей электронной коммерции в сфере шоу-бизнеса (музыка, зрелища и др.). Представляет собой наиболее сложный набор метаданных, ориентированных на управление правами на цифровой объект. Создается в связке с одной из наиболее известных систем идентификации электронных материалов DOI (Digital Object Identification) [7];

- EDIFACT одна из старейших международных систем метаданных, содержащих правила и структуру описания торгово-транспортных и других коммерческих документов. С 1998г. поддерживается языком XML;

- MATER система метаданных, описывающая словари, классификаторы и другие лексикографические данные. Поддерживается стандартами ИСО. Имеется российская версия под названием ФОЛИЯ (Формат обмена лексикой информационных языков);

- Формат Государственного регистра баз и банков данных. Российский стандарт, действующий с конца 1980-х гг. и содержащий систему метаданных для баз данных и других электронных наборов данных. Применяется в ряде отраслей и регионов, а также в странах СНГ для ведения баз метаданных.

Кроме перечисленных, существует еще несколько менее распространенных схем метаданных, из которых особенно следует выделить:

- RDF (Resource Description Framework) смысл заключается в том, чтобы предложить простую и универсальную модель для выражения синтаксиса метаданных. Он не обуславливает использованную семантику схемами метаданных. Для описания схемы метаданных и для обмена информацией между компьютерными системами используется XML;

- LOM (Learning Object Metadata) разработанный IEEE и предназначенный для описания учебных материалов. Стандарт включает в себя все вышеперечисленные типы метаданных, и представляет собой универсальную схему, отвечающую всем современным требованиям к технологиям разработки метаданных. Большой набор полей схемы обеспечивает достаточно большую универсальность, которая, однако, ведет к высокой стоимости описания одного издания. Однако эта проблема может быть решена за счет использования стандарта в системах автоматически генерирующих метаданные [8].

Одним из ключевых вопросов в выборе метаданных является ответ на вопрос: что лучше универсальная или специализированная схема? Ответ зависит от конкретной системы. Для систем решающих локальную задачу подходит одно, а для систем интеграции однозначно необходима комплексная схема, обеспечивающая возможность генерации одних метаданных из других. По причине глубокого родства схем метаданных (рис. 1.1) это не представляет особых трудностей. Важной характеристикой схемы метаданных является возможность её представления в формате, отвечающем требованиям той или иной системы.

Рисунок 1.1 - Схема взаимосвязи различных систем метаданных и разрабатываемых на их основе стандартов

Одной из немаловажных особенностей представления формата метаданных является, простота его преобразования в удобный для пользователя вид. Для этого может использоваться либо специализированный клиент, либо Web браузер. Использование языка разметки XML гарантирует простой механизм преобразования метаданных в удобный для пользователя вид [9].

1.3 Постановка задачи

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

В виду этого нам необходимы новые технологии предоставления учебных материалов для использования их в современных адаптивных системах дистанционного обучения.

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

Основной задачей агента ресурса является поиск учебных материалов в метаданных. Данный агент является некой поисковой машиной способной осуществлять поиск в ресурсах. Задача интеллектуального агента заключается в поиске учебных материалов на определенном обучающем ресурсе в сети.

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

Главной целью агента ресурса является найти материал в метаданных.

Необходимо разработать интеллектуального агента ресурса в системе дистанционного образования для осуществления процесса поиска информации в среде разработки Jadex.

2 ОСОБЕННОСТИ РАЗРАБОТКИ ИНТЕЛЛЕКТУАЛЬНЫХ АГЕНТОВ

2.1 Среда разработки Jadex для построения интеллектуальных агентов

Jadex - это среда ориентированная на собственный механизм принятия решений. Это среда, которая взаимодействует с XML и Java файлами для принятия этих решений.

Jadex изображает консервативный подход по направлению к ориентации агента по нескольким причинам:

а) не вводится никакой новый язык программирования, агенты Jadex пишутся на Java;

б) независимость платформы Jadex.

2.1.1 Особенности платформы разработки агента, Jadex

Преимуществом разработки интеллектуальных агентов на платформе Jadex является то, что не требуется изучения новых языков программирования. Вместо этого агенты кодируются на базе объектно-ориентированного программирования в интегрированной среде разработки (IDEs), типа Eclipse и Intellij IDEA.

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

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

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

2.1.2 Назначение и функционирование платформы Jadex

Платформа Jadex предназначена для создания агентов, которые взаимодействуют с системой, к которой подключен агент и изменяют события системы в зависимости от содержащих агентом планов, целей и представлении объектов которыми был запрограммирован агент.

Чтобы создать агента необходимо определить в системе свойства агента.

Действия агента описываются с помощью представлений целей, знаний и планов. Помещая их, в так называемую библиотеку XML файла, этот файл называется ADF (agent definition file) файл определения агента. В ADF файле определяются агент как объект, описанный в классах java-файлов.

Запуск агента определяется в планах, которые вызываются по требованию системы, называемые пассивными планами.

Функционирование в агента в системе происходит за счет получения от системы и отправка измененных сообщений в систему. Система подает на вход агенту какое-то сообщение, после чего агент заносит его так в так называемый модуль событий. Передавая его в блок обработки сообщений, и далее передавая его по цепочке в блок планов, анализирует его. Где событие анализируется к принадлежности агента. Если сообщение не принадлежит агенту, то оно передаётся обратно в систему не изменённым. Блок планов, обрабатывая событие, сравнивает их с собственной базой планов и при положительном сравнении с планами начинает обработка сообщения в базе знаний, откуда поступает для сравнения с целями агента для передачи в модуль событий. Пройдя весь цикл сравнения и преобразования данных, в установленные задачи, поступает в систему для дальнейшего функционирования.

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

программный агент электронный ресурс

2.1.3 Базовый алгоритм построения агента на платформе Jadex

Разрабатывая приложение с использованием Jadex, программист обязан создавать два типа файлов: XML-файлы обозначая агента и Java-файлы для выполнения планов. Файл определения агента используется как спецификация для классов выполнения плана, базирующийся на объявлениях действий этого плана и основных фактах взаимосвязи между ними. Файлы с форматом XML и Java, определяют функциональные возможности агента.

В главном файле агента XML определяются все функциональные возможности, которыми будет наделен агент такие как: imports, capabilities, beliefs, goals, plans, events, expressions, properties, initial states. Когда ADF и java загружены, объекты, созданные для xml в adf, позволяют системе взаимодействовать, используя Jadex платформу для принятия решений по определенным действиям и взаимодействия внутри программного модуля [10].

2.2 BDI модель интеллектуального агента ресурсов

Каждый агент в мультиагентной системе имеет свое описание в виде BDI модели, которая содержит его знания, планы и цели, которые агент выполняет по достижению своих задач. В ниже изложенных подпунктах этого раздела можно увидеть описание BDI модели, т.е. описание целей агента, знаний и его планов.

2.2.1 Модель BDI Jadex

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

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

Относительно теоретической основы и числа осуществляемого и успешно примененных систем, самая интересная и широко распространенная архитектура агента - это введенная архитектура Цели-Факты-Планы (BDI). Это состоит из понятий знаний, фактов и целей как мысленные отношения, которые генерируют человеческое действие. Приняли эту модель, и преобразовали в формальную теорию и модель выполнения для агентов программного обеспечения, основанных на мнении фактов, целей, и планов.

Jadex объединяет эту модель в агентов Jade, вводя цели, факты и планы для манипуляции внутри агента. В Jadex, агенты имеют знания, которые могут быть каким-нибудь видом объектов Java, и запомнены в базу знаний. Цели изображают конкретные побуждения (состояния, которые достигнуты).

2.2.2 Планы агента

Планы представляют собой определенные действия агента в среде функционирования и предопределяются разработчиком системы, составляя библиотеку действия планов выполнения агентом. В зависимости от текущей ситуации выполнения системы, в которой функционирует агент, выбирается соответствующий план действия на выполнения агентом. Выбор планов осуществляется автоматически платформой Jadex.

Структура планов в Jadex состоит из двух частей: дескриптор плана (head plan), объявляемый в файле ADF, определяющий обстоятельства, при которых выполняется Java-класс плана (body plan), в котором определяются функции и дальнейшее функционирование системы. Для вызова плана в системе предусмотрено установка, так называемых меток реакции, триггеров плана. Они определяют внутренне сообщения и целевые события системы соответствующие планам. После чего начинается, выполняется класс плана из файла java. Существуют варианты выполнения плана при первом запуске агента, для этого агент инициализируется при запуске агента с первоначальными значениями выполнения плана.

Планы взаимодействуют и выполняются с целями и знаниями агента, которые влияют и модернизируют план для выхода в систему, обрабатывая полученное событие в рамках исполняемого агента.

2.2.3 Цели агента

Цели в Jadex представляют собой объекты с некоторыми атрибутами. Целевое состояние, достигаемой цели, может быть явно представлено выражением, которое проверяет, достигнута ли цель.

В отличие от традиционных BDI систем, которые понимают цели как специфический вид событий, в Jadex цели являются центральной концепцией. Цели - это конкретные, мгновенные желания агента. Любая цель, которую преследует агент, будет более или менее непосредственно осуществлена соответственным действием, пока не будет предположения, что цель достигнута, непостигаема или больше не желаема. В отличие от большинства других систем, Jadex не предполагает обязательной зависимости (непротиворечивости) достигаемых целей одна от другой.

Jadex поддерживает 4 вида целей: выполнения, достижения, запроса и поддержки.

а) цель выполнения - утверждает, что должно быть выполнено, но не обязательно приведет к определенному результату;

б) цель достижения - описывает абстрактное целевое состояние, которое необходимо достигнуть, без определения как это сделать. Таким образом, агент может опробовать разные альтернативы, для достижения цели;

в) цель запроса - представляет необходимость в информации. Если информация на текущий момент не доступна, выбираются и выполняются планы, которые помогают ее собрать;

г) цель поддержания - специфицирует состояние, которое должно сохраняться, и может вызываться, после того как будет выполнена.

Цели составляют мотивационную установку агента, которая является движущей силой его действий. Поэтому, представление и обработка целей - это одна из главных функций Jadex, четыре вида целей (выполнения, достижения, запроса, поддержания) и мета-цель, мета-цель может быть использована в процессе выбора плана для вынесения заключения о событиях и соответственных планах.

При запуске агент может иметь любое количество целей верхнего уровня, также как подцелей. Цели верхнего уровня могут быть созданы при рождении агента или будут позже приняты во время выполнения, а подцели могут быть установленные другими планами во время выполнения. В соответствии с тем как цель была создана, агент будет автоматически пытаться выбрать соответствующие планы, что бы он мог достичь всех своих заданных целей. Свойства цели, специфицированный в ADF, влияют на то, когда и как агент обрабатывает эту цель.

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

Полагается, что цель выполнения используется, когда некоторое действие должно быть выполнено.

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

Цель поддержания позволяет отслеживать определенное состояние и в случае его нарушения, цель имеет задачу восстановить оригинальное состояние. Иногда необходимо, что бы была возможность переопределить поддерживаемое состояние. Более того, как настройки BDI предоставляются флаги повторяться. Необходимо заметить, что цели поддержания отличается от других видов целей в том, что они не обязательно приводят к действиям сразу же, но начинают обработку автоматически по запросу. В дополнение, цели поддержания никогда не завершаются вследствие действий или состояния, поэтому единственная возможность избавиться от такой цели - это сбросить ее из плана или через специальные определения.

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

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

2.2.4 Знания агента

Знания представляют осведомленность агента об окружающей среде и о себе непосредственно. В Jadex знания могут быть любые объекты java. Они сохранены в базе знаний и могут быть упомянуты в выражениях, доступны и изменяются в зависимости от планов, использующих базы знаний приложения. Знания описываются в ADF-файле и обращаются к измененному плану, определяя единственную оценку плана и соответствии его требуемым результатом. Знания состоят из фактов, которые ссылаются на суперклассы, определяя объекты классов.

В модуле знаний содержится, база знаний подобна простому хранилищу данных, которая позволяет чистую связь между различными планами посредством общедоступных знаний. Вопреки большинству PRS-стилей BDI системы, Jadex позволяет хранить произвольные объекты Java как знания в его базе знаний.

В Jadex есть два различных вида знаний. С одной стороны имеются знания, которые позволяют пользователю хранить только один факт, с другой стороны наборы знаний, что поддерживают хранение набора фактов. Использование знаний и наборов знаний как основного хранилища памяти для планов сильно поддерживается, потому что, использовать их для пользователя. Кроме того, возможно контролировать отдельные знаний относительно их условий и вызывать условия, когда соответствующее условие выполнено. Это позволяет вызывать некие действия, например, когда факт добавлен в набор знаний, или знание каким-то образом изменилось. Также можно ожидать выполнения некоторого сложного выражение, которое касается нескольких знаний [11, 12].

3 ОПИСАНИЕ ПРОГРАММНОГО МОДУЛЯ

3.1 Построение модели интеллектуального агента

В соответствии с поставленной задачей была разработана схема работы интеллектуального агента ресурса в мультиагентной системе для дистанционного обучения. Деятельность интеллектуального агента в системе и его связь с другими модулями системы отображена на рис. 3.1.

Размещено на http://www.allbest.ru/

Рисунок 3.1 - Схематическая модель работы интеллектуального агента ресурса

Определим схему работы агента. Работа агента начинается с того, что агент координатор (1 блок модели) посылает агенту ресурса запрос на поиск информации. Далее происходит запуск агента ресурса (2 блок модели), после того как подается запрос на поиск какой либо информации (лекции, лабораторные, практические и т.д.), которую ищет студент с помощью других агентов, которым и передается информация для студента. Управление передается в 3 блок модели, где по метаданным происходит поиск необходимой информации. Эту операцию агенту ресурса поручает агент координатор, который управляет взаимодействием между всеми агентами. Если искомая информация не найдена, агент отправляет сообщение агенту координатору о том, что данный ресурс отсутствует (блок 4). Если же информация найдена (блок 5), тогда агенту координатору перенаправляется материал, который был найден. Когда функция агента считается выполненной (выполнился блок 4 или 5), агент переходит в спящий режим (блок 6), до того времени пока не появится новая необходимость в работе агента.

Данная схематическая модель (рис 3.1) наглядно показывает схему работы интеллектуального агента ресурса. Также на ней описаны цели, факты и планы, которые агент будет достигать в процессе своей работы.

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

3.2 XML описание интеллектуального агента ресурсов

Разрабатываемый модуль агента ресурсов состоит из xml файлов, которые содержат ResourceAgent.xml описание агента и модуль metadata.xml по формированию метаданных описание курса дистанционного обучения.

Все метаданные содержатся в документе metadata.xml, который в свою очередь содержит описание всего курса и месторасположения отдельных компонентов курса, а также краткое описание лекций, лабораторных работ и тестов.

<?xml version="1.0" encoding="UTF-8"?> - определяет версию языка xml и кодировку документа;

<metadata title="…">…</metadata> -в этом теге содержится название курса и описание его метаданных;

<course-name>...</course-name> - название курса;

<author>…</author> - общий тег, который определяет автора создавшего курс, и содержит в себе следующие подтеги

<title>…</title> - определяется ФИО автора

<position>…</position> - должность

<rank>…</rank> - ученое звание

<department>…</department> - кафедра

<speciality>…</speciality> - специальность

<ministry>…</ministry> - Министерство

<institution>…</institution> - учреждение

<sity>…</sity> - город

<e-mail></e-mail> - адрес электронной почты

<course_annotation>…</course_annotation> - краткая аннотация к курсу

<year>…</year> - год создания курса

<lectures>…</lectures> - определяет описание метаданных лекций

<lecture value="">…</lecture> - значение, т.е. номер лекции в этом документе

Ниже описанные теги также используются и в описании метаданных лабораторных работ и тестов.

<name>…</name> - название (лекции, лабораторной, теста)

<path>... </path> - путь к файлу

<FileName>…</FileName> - имя файла

<size>…</size> - размер файла

<data>…</data> - определяет даты

<create>…</create> - дата создания файла

<change>…</change> - дата последнего изменения

Описание разделов материала находится только в описании метаданных лекций.

<key_content>…</key_content> - ключевые разделы документа

<content value="…">…</content> - имя раздела документа

<laboratories>…</laboratories> - определяет описание метаданных лабораторных работ

<laboratory value="…">…</laboratory> - номер лабораторной работы в документе

<tests>…</tests> - определяет описание метаданных тестов

<test value="…">…</test> - номер теста в документе

(см. прил. А).

Каждый агент должен иметь в своем описании BDI модель, т.е. описание целей, планов и знаний агента. В данном xml файле имеется кроме описания BDI модели и определение начального состояния агента, сообщения, которые агент будет использовать в ходе своей работы, а также общие параметры агента.

Итак, переходим к описанию тегов документа ResourceAgent.xml, которые использовались в характеристиках агента. На рис. 3.2 можно увидеть общие ссылки агентной технологии и наименование агента. Далее идет описание импортируемых библиотек (рис. 3.3). Описывая агента, были выделены следующие цели (goals) - передача информации TransmitInform, типа главная цель (main goal) и поиск информации QueryInform, типа цель запроса (query goal), которые изображены на рис.3.4. За выполнение действий агентом отвечают знаний, которые описывают эти действия. Первое знание является запуском агента Restart agent. Далее выполняется поиск информации в метаданных по заданному запросу от агента координатора. За поиск информации отвечает знание QuerySearch. Следующим, является отправка сообщения об ошибке агенту координатору, если информация не найдена InformNotFound. Передача информации TransmitInform агенту координатору происходит в том случае, когда материал найден в метаданных. Знание, которое отвечает за переход агента в спящий режим Sleep mode agent, может произойти в двух случаях - если отправлено сообщение об ошибке или когда информация передана агенту координатору (рис. 3.5).

На рис. 3.6 изображены планы действий агента в соответствии с определенными знаниями агента. Всего агент содержит 5 планов:

- restart - план запуска агента ресурсов;

- search - план поиска запрашиваемой информации;

- message - план взаимодействия с агентом координатором, т.е. отправка сообщения об ошибке (информация не найдена);

- transmit - план передачи информации;

- sleep - план перехода агента в спящий режим.

Рис. 3.7 изображает событие, которое говорит о том, что необходимо отправить сообщение request_inform об ошибке агенту координатору, т.е. информация не найдена в метаданных. Начальное состояние агента, обозначено, как поиск информации SeachInformation (рис. 3.8) [13].

Рисунок 3.2 - Общее описание агента ресурса

Рисунок 3.3 - Импортируемые библиотеки JADEX

Рисунок 3.4 - Цели работы агента

Рисунок 3.5 - Используемые знания агентом, которые описывают исполняемые факты

Рисунок 3.6 - Исполняемые планы агента

Рисунок 3.7 - Событие сообщения об ошибке для передачи агенту координатору

Рисунок 3.8 - Описывает начальное состояние агента и завершение его описания

3.2.1 Цели агента

В разрабатываемом агенте ресурсов содержится цель запроса Search request information (query_inform) и главная цель (transmit_infrom) определяющая состояние, которое он должен достичь. Эти цели агент должен реализовать для выполнения своего назначения. Цель запроса изображает необходимость в информации, выполняет поиск условий. В нашем случае условием поиска есть выполнить запрос, т.е. найти необходимую информацию. Главная цель - это найти некоторую информацию по метаданным и передать ее агенту координатору, который в свою очередь уже будет распределять найденную информацию по заданным запросам от других агентов.

3.2.3 Знания агента

В агенте ресурсов описываются следующие знания и факты, которые происходят в ходе выполнения агентом своих задач. При запуске агента вызывается факт Restart, который определяет запуск агента. Следующий факт - это запрос на поиск информации QuerySearch, показывает присутствие запроса на поиск необходимой информации. InformNotFound - cсообщает об отправлении сообщения агенту координатору о том, что информация не найдена. TransmitInform показывает, что информация найдена и будет передана агенту координатору. Факт SleepMode определяет переход агента в спящий режим, и наступает когда либо информация передана агенту координатору, либо отправлено сообщение об ошибке, т.е. информация не найдена.


Подобные документы

  • Анализ и виды интеллектуальных агентов в системе дистанционного обучения и их характеристики. Построение интеллектуального агента глоссария на платформе Jadex с помощью XML формата. Среда разработки и описание интеллектуального агента с помощью BDI.

    курсовая работа [113,6 K], добавлен 10.02.2011

  • Компоненты и архитектура интеллектуального агента, его дополнение средствами обучения. Различные подходы к созданию искусственного интеллекта, перспективы его развития. Этические и моральные последствия разработки интеллектуальных машин и программ.

    реферат [708,9 K], добавлен 02.03.2014

  • Характеристика алгоритмов и программных реализаций поведения агентов в двумерной среде. Исследование разработки структур данных и знаний. Особенность создания интерфейса и карты лабиринта. Экспериментальное тестирование и отладка модулей программы.

    дипломная работа [2,4 M], добавлен 12.08.2017

  • Принципы работы архитектур агентов. Классификация агентных архитектур. Реагирующая агентная архитектура, ее практическое применение. Консультационная агентная архитектура. Гибридная агентная архитектура. Многоуровневая архитектура для автономного агента.

    курсовая работа [616,9 K], добавлен 24.02.2014

  • Разработка программного решения по созданию мобильного приложения. Изучение технологий для разработки приложений. Анализ работы торговых агентов. Обоснование выбора языка программирования. Проектирование интерфейса структуры и верстка, листинг программы.

    дипломная работа [2,2 M], добавлен 08.06.2017

  • Характеристика общих вопросов организации электронных ресурсов. Принципы взаимодействия Интернет-ресурсов и процесса формирования каталогов электронных изданий. Анализ концепции построения электронных библиотек и организации информационных ресурсов в них.

    дипломная работа [111,4 K], добавлен 24.11.2012

  • Использование агентными технологиями спектра типологий агентов и их модулей, архитектур МАС, агентных библиотек и средств поддержки разработки типов МАС. Набор базовых характеристик агента. Уровни в архитектуре. Многоагентская система, агент-координатор.

    презентация [255,0 K], добавлен 25.06.2013

  • Возможность ведения информации об агенте и заявках, привязка заявки к агенту. Формирование отчета в pdf по итогам месяца. Хранение и загрузка списков в XML-формате. Создание форм для авторизации, агентов, бухгалтера, добавления заказа и для почты.

    курсовая работа [1,3 M], добавлен 05.01.2013

  • Аналитический обзор средств и языков описания интеллектуальных порталов. Устройство и особенности языка технологии OSTIS, результаты ее анализа. Разработка предметно-ориентированного языка проектирования интеллектуальных порталов. Описание пример модели.

    дипломная работа [2,5 M], добавлен 08.11.2015

  • Синтез и реализация процедур управления объектами как главная идея интеллектуального управления. Основные определения, степени интеллектуальности. Свойства интеллектуальных систем управления (ИСУ) с "интеллектуальностью в целом", принципы их организации.

    презентация [51,8 K], добавлен 25.06.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.