Семантика перехода от концептуальных к физическим моделям среды Jack при создании многоагентных систем
Разработка многоагентной системы. Программные модели на языке Jack. Анализ инструментальных средств построения агентно-ориентированных систем. Многоагентная модель процесса обучения студентов на кафедральном уровне. Проектирование динамических систем.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 19.01.2018 |
Размер файла | 683,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
СЕМАНТИКА ПЕРЕХОДА ОТ КОНЦЕПТУАЛЬНЫХ К ФИЗИЧЕСКИМ МОДЕЛЯМ СРЕДЫ JACK ПРИ СОЗДАНИИ МНОГОАГЕНТНЫХ СИСТЕМ
Т.Е. Жабская
О.И. Федяев
Донецкий национальный технический университет, Донецк
Решена задача преобразования концептуальных агентно-ориентированных моделей, разработанных на стадии анализа по методологии Gaia, в физические модели, необходимые для реализации агентов на основе убеждений, желаний, намеренийв инструментальной средеJACK. На основе составленной семантики визуальных моделей среды JACK разработана методика трансформации абстрактных моделей Gaia в физические концепты среды JACK, которая обеспечивает качественное прохождение всех этапов разработки многоагентной системы (МАС).
В настоящее время интеграция достижений в области программной инженерии и искусственном интеллекте привела к появлению новой агентно-ориентированной (АО) технологии программирования и возможности построения качественно новых программных моделей. Междисциплинарный характер этого научного направления позволяет успешно применять АО подход в таких областях, как распределенное решение сложных задач, реинжиниринг предприятий, моделирование распределенных систем, построение виртуальных организаций.
Процесс разработки МАС является иерархическим и должен связывать модели разных уровней проектирования. Однако из-за использования различных методологий и инструментариев, оперирующих различными концептами, при реализации этого процесса возникает ряд проблем, связанных с переходом от концептуальных к физическим моделям реализации МАС.
Задачей данного исследования является разработка методики преобразования абстрактных моделей методологии Gaia [Zambonelli et al., 2003] в физические концепты инструментария JACK[JACK Intelligent Agents]. Инструментальная среда JACK использовалась авторами для создания виртуальной кафедры университета АО типа. Кафедра, как объект моделирования, является распределённой системой, субъекты которой выполняют определённую интеллектуальную деятельность. Процесс обучения студентов на кафедре университета распределён во времени и пространстве. Для предоставления участникам образовательного процесса возможности автономного и дистанционного выполнения учебно-методических обязанностей поставлена цель создать такую виртуальную кафедру, в которой сохраняются основные для учёбы отношения и устраняются жёсткие пространственно-временные ограничения в виде расписания занятий.
Для разработки МАС обучения на уровне кафедры был проведен АО анализ учебного процесса по методологии Gaia.
1. Семантика визуальных моделей среды JACK
Разработанные АО модели представляют собой абстрактное описание учебно-методической деятельности субъектов учебного процесса, выполнение которой далее необходимо делегировать их программным агентам [Федяев и др., 2006].
Полученные модели агентов могут быть реализованы различными способами. Для моделирования ментальных свойств агентов, необходимых для решения задачи обучения, была выбрана BDI-архитектура, основанная на знаниях [Kinny et al., 1996]. В качестве инструментария, реализующего эту архитектуру агентов, использовалась АО среда разработки JACKTM Intelligent Agents (JACK). Следует отметить, что эта среда является одной из наиболее подходящих и гибких технологий для реализации понятия “интеллектуальный агент” благодаря наличию механизма рассуждений для воспроизведения программными агентами делегированной им интеллектуальной деятельности [Жабская и др., 2009].JACK является надстройкой Java в виде расширения синтаксиса Java конструкциями для программной реализации свойств интеллектуального агента.
Агент, имеющий BDI-архитектуру, описывается тремя компонентами
А = (B, D, I),
где B - это убеждения агента, которые являются информацией агента о собственном состоянии и состоянии его окружения (рассматриваются как его информационная компонента);
D - это желания агента в виде информации о его целях (рассматриваются как его мотивационная компонента);
I - это намерения агента, которые представляют возможные направления его действий (являются его рассудительной компонентой).
Для программной реализации убеждений, желаний и намерений агента в языке JACK предусмотрены следующие новые конструкции, расширяющие синтаксис языка Java на уровне классов:
Agent, определяет интеллектуальных агентов;
Event, определяет цели агента, в виде событий;
Plan, описывает намерения агента в отношении достижения цели в виде планов и условий их применимости;
Beliefset, описывает знания агента;
Capability, структурирует убеждения, события и планы в кластеры, каждый из которых реализует определенную интеллектуальную способность агента достигать цель.
Отношения между данными классами агентной системы устанавливаются с помощью деклараций языка JACK, выделяемых предшествующим символом #. Для описания логических рассуждений агента во время выполнения планов введены операторы методов рассуждений, выделяемые предшествующим символом @.
Чтобы воспользоваться инструментальной средой JACK, необходимо мыслить на уровне её понятий, характерных для BDI-архитектуры. Для правильного перехода от абстрактных моделей агентов к их представлению на уровне визуальных моделей среды JACK авторами были составлены спецификации семантики визуальных моделей данной среды.
Семантика визуальной модели агента, представленного формально в среде JACK в виде Аgent = (N, Bel, PE, HE, SE, PS), раскрывается следующим образом: N - имя агента;Bel - убеждения агента; PE = {E1, E2, …, En} - множество имен событий, создаваемых собственными методами агента; HE = {{E1, E2, …, En}, HE1,…} - множество обрабатываемых событий, создаваемых самостоятельно и воспринимаемых извне; SE = {SE1, SE2, …, SEm} - множество имён событий, передаваемых агентом во внешнюю среду; PS = {P1, P2, …, Pk} - множество имён планов, определяющих поведение агента.
Более эффективно агента можно определить через его способности, тогда Аgent = (N, Bel, PE, Cap),где Cap = {C1, C2, …, Cn} - множество имён способностей, которыми обладает агент для достижения поставленных целей.
Визуальная модель обрабатываемого события, формально представляемая в среде JACK в виде Event = (N, Pw, Pa, EvT), имеет следующую семантику: N - имя воспринимаемого события; Pw - метод автоматического порождения новых убеждений при соответствии собственных убеждений агента некоторым условиям; Pa - метод явного восприятия агентом события внешнего мира и формирования новых убеждений, связанных с данным событием, в результате которого агент получает цель для достижения; EvT - определение стратегии достижения цели.
Визуальная модель плана для описания рассуждений агента формально в среде JACK состоит из следующих элементов Plan = (N, Ev, Sev, МP, МF, Rel, С, B), где: N - имя плана; Ev - имя события, для обработки которого предназначен данный план; Sev - множество имён событий, отправляемых агентом во внешнюю среду при выполнении плана; МP, MF - завершающие действия, выполняемые соответственно при успешном/неуспешном выполнении плана; Rel - метод проверки соответствия убеждений агента о событии условиям применимости данного плана; C - метод проверки собственных убеждений агента с условиями применимости данного плана, при условии истинности логического условия метода Rel; B - основной метод рассуждений агента, выполняемый в случае применимости плана.
Определенные таким образом наиболее важные аспекты семантики визуальных моделей среды JACK гарантируют качественное их построение с помощью набора графических примитивов данного инструментария.
Методика отображения абстрактных моделей Gaia в концепты среды JACK
Процесс создания визуальных моделей агента и его ментальных составляющих является основополагающим, т.к. именно на этом этапе разработки агентной системы происходит переход на следующий, более низкий, уровень абстракции, поэтому на этом этапе остановимся подробнее. Например, как определить, какие события он будет создавать самостоятельно (элементы множества РЕ), какие воспринимать для обработки (элементы множества НЕ), а какие передавать в окружающую среду (элементы множестваSE)?
На стадии АО анализа и проектирования разрабатываются следующие модели: модель ролей для описания должностных обязанностей всех ролей в виде активностей, протоколов, полномочий, обязательств; модель взаимодействий для описания основных видов общения между ролями в виде протоколов; модель агентов для определения типов агентов; модель функционирования для определения действий агентов и модель связей для отображения возможных коммуникаций между агентами. Поэтому возникает задача перехода от перечисленных моделей к визуальным моделям среды JACK для представления агента в виде событий, планов, убеждений.
Для успешного решения данной задачи следует придерживаться следующей методики отображения. При создании модели агента в JACK, все агентные типы для МАС берутся из модели агентов Gaia (рис. 1). Для каждого агентного типа с помощью базового графического примитива визуально создается агент со своим именем.
Рис. 1. Связь абстрактных моделей методологии Gaia с агентными моделями языка JACK
При создании в JACK модели агента также определяются множества воспринимаемых и передаваемых событий HE, PE, SE.Определение событий является ключевым вопросом при создании агента, потому что его деятельность зависит от их возникновения (если события не происходят - агент бездействует). Если возникает событие, то у агента, во-первых, появляется желание (рассматриваемое как цель) обработать это событие и, во-вторых, формируются соответствующие убеждения о данном событии, которые играют определяющую роль при выборе агентом намерений в отношении его ответных действий.
Все желания, которые может иметь агент в агентном языке JACK, определяются множеством воспринимаемых событий для обработки НЕ. В данном множестве выделяется два непересекающихся подмножества событий: множество РЕ и множество событий, воспринимаемых из внешнего мира (элементы множества НЕ, не принадлежащие множеству РЕ). Исходя из того, что все проявления деятельности агента определены активностями и протоколами в модели ролей, то предшествующие им события(множество РЕ) естественно определяются в соответствии с ними(рис.1). Например, для агента Студент это будут следующие события: “Получить допуск к работе”,“Записаться на изучение дисциплины”, “Выбрать вид занятия”, “Запросить лекцию”, “Слушать лекцию”, “Запросить тестовое задание”, “Выполнять тест” и др. Множество событий, воспринимаемых из внешней среды, определяется в соответствии с протоколами модели взаимодействий, в которых данный агент является отвечающим(рис.1).
Множество передаваемых во внешнюю среду событий SE определяется в соответствии с протоколами, в которых данный агент является инициатором взаимодействия. Так определяются воспринимаемые и передаваемые события для агента, т.е. его рецепторы и эффекторы.
При определении метода создания своих внутренних событий (элементов множества РЕ) необходимо выполнить следующее:
определить параметры для описания каждого события (для событий, инициирующих выполнение активностей, эти параметры определяются владельцем агента; для событий, инициирующих выполнение протоколов взаимодействий, это параметры, на основе которых агент начинает взаимодействие, они извлекаются из соответствующего протокола);
определить входные параметрысобытия как убеждения агента (посредством метода Pа);
разработать метод генерации воспринимаемого события агентом на основе его входных данных.
В результате выполнения вышеописанных действий разработаны модели воспринимаемых и отправляемых событий агента (рис. 1).
Намерения агента относительно его образа действий для достижения поставленной цели определяются множеством планов PS, в котором необходимо определить хотя бы по одному плану для каждого типа событий из множества НЕ. На визуальном уровне план создается с помощью графического примитива со своим именем. Далее план связывается с предшествующим ему событием (Ev) и с самим агентом. В результате этих действий у агента появляются намерения, т.е. “идеи” действовать определенным образом, чтобы достичь поставленную цель в каждой сложившейся ситуации.
Каждый план представляет собой заранее намеченную последовательность действий, которую агент может выполнить в соответствующей ситуации. Ситуация определяется путем сопоставления состояния убеждений о воспринятом событии и собственных убеждений агента в методах плана Rel и C соответственно.
При определении множества планов поведения агента для обработки каждого воспринимаемого события следует исходить из того, что весь функциональный аспект агента зафиксирован в модели функционирования уровня Gaia для данного агентного типа. В этой связи, при создании конкретных планов обработки различных ситуаций, предусмотренных для события, следует использовать его функции, описанные в модели функционирования каждого агентного типа (рис.1).
При составлении логических условий для методов Rel и С надо исходить из предусловий выполнения функций данной модели. Показателем успешности достижения агентомцели в результате применения плана, т.е. осуществления намерения, определяется в зависимости от выполнения постусловий соответствующей функции.
Если план связан с обработкой протокола взаимодействия, то в нём присутствует множество событий Sev, которое является подмножеством множества SE агента, определенном в модели событий агента.
Убеждения каждого агента разрабатываются по моделям ролей и функционирования (рис.1).
Программные модели на языке JACK
Убеждения агента реализованы в виде Java объектов и конструкции BeliefSet языка JACK. С целью упрощения проекта и возможности повторного использования кода для реализации функциональных аспектов деятельности агентов использовались способности.
По разработанным в среде JACK визуальным моделям агентов сгенерирован скелет программного Java кода для агентов и их ментальных свойств. Программный код для планов агентов был доработан в части реализации основных методов рассуждений (В). Здесь были заложены функциональные знания, необходимые агенту для обработки событий. Физические компоненты агентов представлены в виде классов с определенными отношениями между ними (рис.2).
По разработанной методике были созданы программные агенты для компьютерной обучающей системы, в которой воспроизводится квазиреальная учебно-методическая деятельность преподавателей и студентов. С помощью агента-визуализатора можно записывать и воспроизводить динамику взаимодействия агентов.
Рис.2. Архитектура программного агента Студентв системе JACK
На рис.3 показана последовательность передаваемых сообщений при изучении студентом лекции и тестировании уровня усвоения им лекционного материала.
Рис. 3. Поток передаваемых сообщений между агентами виртуальной кафедры при изучении студентом лекции и тестировании знаний
программный обучение студент язык
Взаимодействие между виртуальными участниками учебного процесса по ментальности напоминает реально существующий диалог. В дальнейшем основное внимание будет уделено повышению уровня реализации ментальности, необходимой для качественного выполнения учебно-методических обязанностей программными агентами.
Решена задача преобразования абстрактных моделей высокого уровня, полученных на стадии анализа по методологии Gaia, в модели более низкого уровня, упрощающих реализацию МАС в инструментальной среде JACK. На основе составленной семантики визуальных моделей данной среды разработана методика трансформации абстрактных моделей Gaia в физические концепты среды JACK, которая обеспечивает качественное выполнение всех этапов разработки МАС. Рассмотренная методика применялась для создания виртуальной кафедры университета АО типа.
Список литературы
1. Жабская Т.Е., Федяев О.И. Анализ инструментальных средств построения агентно-ориентированных систем // Сб. науч. тр. Донецкого национального технического университета. Серия: «Информатика, кибернетика и вычислительная техника», выпуск 10 (153) - Донецк: ДонНТУ, 2009.
2. Многоагентная модель процесса обучения студентов на кафедральном уровне. // Сб.науч.тр. ДонНТУ. Серия: «Проблемы моделирования и автоматизации проектирования динамических систем» (МАП-2006), выпуск 5(116)-Донецк:ДонНТУ,2006.
3. JACK Intelligent Agents.
4. KinnyDavid, GeorgeffMichael, Rao Anand.A Methodology and Modelling Technique for Systems of BDI Agents. // Proceedings of the Seventh European Workshop on Modelling Autonomous Agents in a Multi-Agent MAAMAW'96, (LNAI Volume 1038). 1996.
5. F. Zambonelli, N. R. Jennings, andM. Wooldridge. DevelopingMultiagentSystems: The Gaia Methodology.In ACM Transactions on Software Engineering Methodology, 12(3), 2003.
Размещено на Allbest.ru
Подобные документы
Понятие, основные задачи и функции общей теории систем как науки. Формулирование требований к системе, разработка концептуальной модели системы на примере системы массового обслуживания (СМО). Проектирование имитационной модели, ее реализация и испытание.
курсовая работа [131,3 K], добавлен 27.12.2010Обзор принципов построения и эффективного применения систем управления базами данных, CASE-средств автоматизации проектирования. Анализ возможностей методологии и инструментальных средств. Разработка модели бизнес-процессов гостиницы в среде All Fusion.
курсовая работа [3,3 M], добавлен 28.12.2012Основные понятия агентов, термины и определения, принципы классификации. Линейные модели многоагентных систем. Постановка задачи линейного программирования, свойства ее решений. Графический и симплексный способы решения ЗЛП. Использование Microsoft Excel.
курсовая работа [662,4 K], добавлен 03.11.2014Процессы индивидуализации, интеллектуализации и веб-ориентации традиционных обучающих систем как важные особенности современных компьютерных технологий обучения. Знакомство с программными средствами для построения компетентностно-ориентированных моделей.
дипломная работа [2,7 M], добавлен 04.10.2014Структурно-информационный анализ методов моделирования динамических систем. Математическое моделирование. Численные методы решения систем дифференциальных уравнений. Разработка структуры програмного комплекса для анализа динамики механических систем.
дипломная работа [1,1 M], добавлен 14.05.2010Автоматизированное проектирование как основной способ повышения производительности труда инженерных работников. Моделирование систем с организацией списков, динамических процессов механических систем. Концептуальная модель автоматизированной системы.
курсовая работа [77,6 K], добавлен 20.01.2010Агентно-ориентированная программная архитектура систем обработки потоковых данных. Обеспечение гибкости и живучести программного обеспечения распределенных информационно-управляющих систем. Спецификации программных комплексов распределенной обработки.
реферат [1,1 M], добавлен 28.11.2015Разработка концептуальной модели системы обработки информации для узла коммутации сообщений. Построение структурной и функциональной блок-схем системы. Программирование модели на языке GPSS/PC. Анализ экономической эффективности результатов моделирования.
курсовая работа [802,8 K], добавлен 04.03.2015Роль инструментальных средств проектирования в создании информационной системы. Преимущества CASE-средств разработки Bpwin и Erwin, системы поиска, исправления ошибок модели данных Model Validator. Разработка модели процессов документооборота предприятия.
контрольная работа [2,2 M], добавлен 24.06.2012Анализ деятельности торговой точки для возможного улучшения работы. Структурные функциональные методы проектирования. Разработка систем информационных моделей с использованием инструментальных средств CA Erwin Process Modeler, AllFusion Process Modeler.
курсовая работа [536,6 K], добавлен 14.12.2011