Проектирование в среде MadKit агентно-ориентированной системы прогнозирования результатов обучения студентов
Автор: Янкивский А.А., Павлова Е.М., Федяев О.И.
Источник: Программная инженерия: методы и технологии разработки информационно-вычислительных систем (ПИИВС-2018): сборник материалов II Международной научно-практической конференции (студенческая секция). 14-15 ноября 2018 г. — Донецк, ГОУ ВПО «Донецкий национальный технический университет», 2018. — с. 127-133.
Описание: в статье рассматривается построение имитационной модели прогнозирования остаточных знаний в зависимости от ментальности студентов. Имитационная модель представлена в виде сообщества искусственных агентов, которые реализуют роли преподавателей и студентов. Логический уровень многоагентной системы представлен совокупностью абстрактных моделей, построенных с помощью методологии Gaia. Физический уровень агентов описан на языке Java, в соответствии со средой MadKit. Объём передаваемых студенту знаний и степень их усвоения определяется агентом Преподаватель с нейросетевой архитектурой.
Ключевые слова: агентно-ориентированная система, среда MadKit, прогнозирование, знания и умения, модели Gaia, искусственный агент, нейронная сеть.
Введение
В современных условиях возрастает потребность в анализе и управлении сложными социально-экономическими и производственными системами, состояние которых в большинстве случаев непредсказуемо и не может быть прогнозируемо изначально аналитически, т.к. оно является результатом динамического взаимодействия множества разнородных активных элементов системы и окружающей среды.
В работе объектом исследования выступает система профессиональной подготовки студентов на выпускающей кафедре университета. По причине неоднородности и интеллектуальности поведения субъектов (студентов и преподавателей) применять классические математические методы не представляется возможным. В этой связи целесообразно применять методы имитационного моделирования для анализа эффективности процесса обучения. Оценка качества обучения является актуальной задачей управления учебным заведением. Сложность её решения обусловлена тем, что образовательные процессы протекают очень медленно, т.е. система подготовки кадров как объект управления является инерционной, поэтому эффективность инновационных изменений можно оценить только через 4-6 лет (цикл обучения студента). Методом моделирования можно за короткое время получить прогноз целесообразности нововведений [1].
Прогнозирование результатов обучения позволит анализировать качество обучения, видеть степень усвоения студентами учебного материала, обнаруживать расхождение по компетенциям между дисциплиной и требованиями фирм, оценивать возможность трудоустройства выпускников.
Анализ литературы показывает, что решение перечисленных задач осуществляется, как правило, не формальными методами, это снижает их практическую ценность. Современный уровень информационных технологий позволяет разрабатывать качественно новые модели, объединяющие достоинства математических методов, статистики, теории нейронных сетей, программирования. С появлением теории многоагентных систем появилась возможность создавать модели сложных распределённых и неоднородных систем, к классу которых относится исследуемый объект.
Данная работа посвящена разработке с помощью многоагентного подхода имитационной модели, которая ориентирована на прогнозирование качества обучения студентов по отдельным дисциплинам. Для этого искусственным агентам имитационной модели необходимо делегировать полномочия субъектов образовательного процесса, т.е. функциональные обязанности студентов и преподавателей. С этой целью в работе было рассмотрено решение следующих задач:
- формализация прогнозирования уровня компетенций студентов после завершения курса обучения;
- составление логических моделей, описывающих полномочия субъектов образовательной деятельности и их взаимодействие;
- реализация способности преподавателя передавать знания студентам с учётом их ментальности;
- программная реализация сообщества искусственных агентов с нейросетевой архитектурой на языке Java в инструментальной среде MadKit.
Постановка задачи прогнозирования уровня остаточных знаний студентов по профессиональным дисциплинам
Рассматривается задача прогнозирования качества профессионального обучения студентов в зависимости от их личностных характеристик и других факторов. Она решается на основе применения интеллектуальных агентов, использующих искусственные нейронные сети. Для этого в архитектуру агентов преподавателей вводятся соответствующие искусственные нейросетевые модели, способные функционально описать зависимость получаемых студентом профессиональных знаний и умений по одной дисциплине от факторов, влияющих на полноту этих знаний. В свою очередь задача прогноза разбивается на две подзадачи. [1]
Подзадача 1. Настройка модели по данным наблюдений. Это обратная задача, связанная с нахождением параметров модели, т.е. с построением функции f по наблюдаемым данным ментальности студента, ментальности преподавателя, среды обучения, а также знаниям и умениям студента по одной изучаемой дисциплине.
Pc = f (Mc, Mп, С),
где Мс – ментальность студента; Мп – ментальность преподавателя; С – среда обучения; Рс – профессионализм студента по одной изучаемой дисциплине.
Подзадача 2. Формирование знаний и умений по ментальности участников образовательного процесса. Данная задача состоит в явном нахождении профессионализма студента (Рс), т. е. его остаточных знаний и умений, после изучения конкретной дисциплины, по замеренным данным о ментальности студента (Мс) и преподавателя (Мп) с помощью построенной модели f :
Pc = f (Mc, Mп, С).
Агентно-ориентированная модель обучения студентов ВУЗа
Объектом анализа выступает система обучения студентов на кафедре, которая является неоднородной и распределённой. Для моделирования таких систем целесообразно применять агентно-ориентированный подход. Агентно-ориентированный анализ объекта, как правило, выполняется по методологии Gaia.[2]
Она поддерживает два уровня разработки мультиагентных систем: микроуровень (разработка отдельного агента) и макроуровень (разработка агентства). Также она имеет существенное ограничение: структура каждого агента во время его работы должна оставаться неизменной.
Методология Gaia состоит из двух больших этапов: анализа и проектирования. На этапе анализа реализуются модели ролей и модели взаимодействия, на этапе проектирования – модель агентов (за основу служат модели ролей), модели услуг и модель связей (они формируются с учётом моделей этапа анализа)
Для детализации моделей выделены абстрактные и конкретные понятия поставленной задачи. К абстрактным понятиям отнесены роли, полномочия, обязательства, протоколы, активность, обязательства жизнеспособности, условия безопасности. Эти понятия используются во время анализа для концептуализации системы. Конкретные понятия (например, агентные типы, услуги, связи между агентами) используются на этапе проектирования и имеют непосредственный программный аналог в системе.
В моделе ролей Роль рассматривается как абстрактное описание ожидаемых функций должностного лица. Роли характеризуются полномочиями и обязательствами. Полномочия устанавливают ресурсы, которые могут обоснованно использоваться для выполнения роли, возможность роли генерировать информацию, только чтение информации или возможность ее изменять. Полномочия роли специфицируются ключевыми словами read (доступ к информации без возможности ее изменять), changes (возможность изменять информацию) и generates (возможность генерировать информацию).
Функции роли описываются в виде обязательств, которые делятся на две категории: жизнеспособность и условия безопасности. Обязательства жизнеспособности показывают, что будет сделано агентом и определяются выражениями жизнеспособности, которые определяют "жизненный цикл роли". Выражения жизнеспособности являются регулярными выражениями. Выражения жизнеспособности устанавливают возможность выполнения траектории "жизненного цикла" посредством деятельности и взаимодействий, связанных с ролью. Деятельность – это то, что агент может выполнить, не прибегая к взаимодействию с другими агентами, а взаимодействия с другими ролями определяются протоколами.
Условия безопасности в методологии Gaia специфицируются посредством предикатов. В предикатах используются переменные, обозначающие атрибуты полномочий роли. Схема роли Студент представлена на рисунке 1.
Рисунок 1 – Схема роли Студент
В модели взаимодействия динамика МАС определяется взаимодействием между ролями, поэтому на следующем этапе анализа рассматривались основные виды и назначения взаимодействий. Совокупность взаимодействий между ролями образуют модель взаимодействий, которая состоит из набора установленных протоколов. Для каждого вида взаимодействия составляется отдельный протокол. На рисунке 2 представлены примеры протоколов взаимодействий ролей Студент и Лектор.
Рисунок 2 - Примеры протоколов ролей: а) запись на
учебную дисциплину;
б) запрос ментального портрета студента
К моделям нижнего уровня относятся агентная модель, модель услуг и модель связей агентов.
Модель агентов описывает используемые в системе агентные типы. Модель агентов системы представляется деревом агентных типов, в котором концевые вершины соответствуют ролям, определенным в модели ролей, а другие вершины соответствуют агентным типам. Модель агентов представлена на рисунке 3.
Рисунок 3 – Модель агентов
Модель услуг определяет функции, которые агент должен выполнять в соответствии с обязательствами жизнеспособности роли. Услуги можно сравнить с методами в объектно-ориентированном программировании, однако услуги не доступны для вызова другими агентами в отличии от методов объекта.
Для каждой услуги, выполняемой агентом, в модели услуг определяются входные и выходные данные, пред и пост условия, в зависимости от соблюдения которых агент инициирует выполнение услуги или услуга считается выполненной соответственно. Входные и выходные данные получают из активностей и протоколов взаимодействия роли. Модель услуг для исследуемой предметной области представлена на рисунке 4.
Рисунок 4 – Модель услуг
Модель связей отражает возможные коммуникативные связи между агентами и представляется в виде ориентированного или неориентированного графа. Узлы соответствуют типам агентов, а дуги –коммуникационным путям. Каналы коммуникации между агентами предполагают передачу сообщений между агентами в обоих направлениях. На рисунке 5 отражена связь агентов.
Рисунок 5 – Модель связей агентов
Нейросетевые средства реализации интеллектуальности агента Лектор
Процесс обучения студентов заключается в передаче знаний и навыков от преподавателей к студентам. Качество обучения фиксируется в экзаменационной ведомости. Разрабатываемая модель процесса обучения должна формировать на выходе остаточные знания студентов по отдельной дисциплине.
Прогноз остаточных знаний по одной конкретно взятой дисциплине для одного студента осуществляется в два этапа. На первом этапе прогнозируется экзаменационная оценка, а на втором этапе, исходя из прогнозируемой оценки, формируется усреднённый набор остаточных знаний и умений, соответствующий данной оценке. Первая нейронная сеть обучается на основании ментальных портретов студентов и экзаменационной ведомости. Вторая нейронная сеть – на основании критериев оценки и учебной программы дисциплины, в которой содержится перечень знаний и умений. Схема такой двухкаскадной модели представлена на рисунке 6.
Рисунок 6 — Схема нейромодели, описывающая результаты обучения студента на примере одной дисциплины
Выходные сигналы второй нейросети образуют вектор, компоненты которого определяют уровень соответствующего остаточного знания или умения. Размер вектора определяется суммарным количеством знаний и умений, предусмотренных учебной программой дисциплины. Они обозначены вектором Y=(y1, y2, ..., yn), где n – количество знаний и умений; yi принадлежит интервалу [0,1].
Обучающее множество для второй нейросети составляет преподаватель-профессионал (эксперт) по своей дисциплине, используя утверждённые критерии оценки и учебную программу дисциплины, которая содержит перечень знаний и умений [2].
Спрогнозированная оценка с выхода первой нейросети подавалась на вход второй нейросети, которая формировала результирующий вектор Y остаточных знаний и умений этого студента.
Значения компонент вектора Y можно трактовать как степени уверенности в том, что у данного студента сохраняются в его памяти соответствующие знания и умения (конечно, относительно используемых обучающих множеств). [3]
Описание структуры программных агентов в среде MadKit
Инструментальная система MadKit, которая использовалась при разработке — модульная и масштабируемая мультиагентная платформа, написанная на Java. Она позволяет создавать программных агентов на разных языках: Java, Python, Jess, Scheme, BeanSchell.[4] Наличие визуальных моделей агентов повышает удобство их проектирования.
Архитектура MadKit включает в себя графический хост приложения, прикладных и системных агентов, а также микроядро системы. Компонентами микроядра системы является менеджер групп/ролей, синхронизирующий механизм и механизм обмена сообщениями.
Структура агентов в многоагентной системе прогнозирования состоит из 4 обязательных разделов:
- раздел активации (activate section), содержащий некоторый программный код, который будет выполняться непосредственно после создания агента (см. рис.7а);
- графический раздел (initGUI section), содержащий описание компонента Java, который должен использоваться в качестве графического интерфейса агента, и предназначен для замены графического интерфейса по умолчанию;
- раздел «жизнь» (live section), который содержит основной программный код, описывающий поведение агента (обычно, этот раздел содержит бесконечный цикл) (см. рис.7б);
- раздел «завершения» (end section), содержащий некоторый код, который выполняется, когда агент уничтожается.
а) б)
Рисунок 7 – Программный код агента Студент: а) для раздела активации;
б) для раздела жизни
MadKit не налагает на архитектуру агентов никаких ограничений для достижения максимальной универсальности приложений.
Взаимодействие агентов реализовано с помощью асинхронной передачи сообщений. В имитационной модели агент может отправить сообщение другому агенту, определяемому его адресом или с помощью широковещательного сообщения, которое передают агентам, играющим данную роль в определённой группе.
MadKit обеспечивает несколько видов предопределенных сообщений, таких как StringMessage, XMLMesssage и ActMessage. С помощью последнего вида сообщения можно определить следующие подвиды сообщений: ACLMessages и KQMLMessages. Также есть возможность определить свой собственный класс сообщения, который будет наследоваться от класса сообщения по умолчанию. Эти возможности будут использованы в следующей версии имитационной модели.
У каждого агента есть свой «почтовый ящик», в который доставляются сообщения и который проверяется агентом для анализа сообщений [5].
Заключение
В статье рассмотрены вопросы проектирования имитационной модели прогнозирования остаточных знаний и умений в зависимости от ментальности студента. Имитационная модель представлена в виде сообщества искусственных агентов, которые в соответствии с принципом ограниченной рациональности реализуют роли преподавателей и студентов. Приведен логический и физический уровень сообщества агентов. Логический уровень системы описан совокупностью моделей по методологии Gaia. Структура программных агентов на физическом уровне описана на языке Java и соответствует требованиям инструментальной системе MadKit. Предложена структура двухкаскадной нейронной сети для прогнозирования остаточных знаний и умений студентов по изучаемой дисциплине.
Литература
1. Лукина Ю.Ю., Федяев О.И. Технология создания мультиагентных систем в инструментальной среде MadKit.
2. Методология проектирования GAIA [Электронный ресурс] – Режим доступа: https://studopedia.ru/9_168381_metodologiya-proektirovaniya-Gaia.html. – Загл. с экрана.
3. Федяев О.И., Грабчук О.П. Формирование зависимости остаточных знаний студентов от их ментальности с помощью нейронных сетей // О.И. Федяев, О.П. Грабчук. – Интеллектуальный анализ информации ИАИ-2015- Донецк, ГОУ ВПО «Донецкий национальный технический университет», 2012.
4. MadKit Development Giude [Электронный ресурс] - Режим доступа: http://www.madkit.net/documentation/devguide/devguide.html. – Загл. с экрана.
5. Платформы для разработки МАС [Электронный ресурс] - Режим доступа: https://www.intuit.ru/studies/courses/13858/1255/lecture/23977. – Загл. с экрана.
Янкивский А.А., Павлова Е.М., Федяев О.И. Проектирование в среде MadKit агентно-ориентированной системы прогнозирования результатов обучения студентов. В статье рассматривается построение имитационной модели прогнозирования остаточных знаний в зависимости от ментальности студентов. Имитационная модель представлена в виде сообщества искусственных агентов, которые реализуют роли преподавателей и студентов. Логический уровень многоагентной системы представлен совокупностью абстрактных моделей, построенных с помощью методологии Gaia. Физический уровень агентов описан на языке Java, в соответствии со средой MadKit. Объём передаваемых студенту знаний и степень их усвоения определяется агентом Преподаватель с нейросетевой архитектурой.
Ключевые слова: агентно-ориентированная система, среда MadKit, прогнозирование, знания и умения, модели Gaia, искусственный агент, нейронная сеть.
Yankivsky Alexander, Pavlova Catherine, Fedyaev Oleg. Designing MadKit in an agent-based system for predicting student learning outcomes. The article discusses the construction of a simulation model for predicting residual knowledge depending on the mentality of students. The simulation model is presented in the form of a community of artificial agents that implement the roles of teachers and students. The logical level of a multi-agent system is represented by a set of abstract models built using the Gaia methodology. The physical level of agents is described in Java, in accordance with the MadKit environment. The volume of knowledge transferred to the student and the degree of their learning is determined by the agent Teacher with neural network architecture.
Key words: agent-oriented system, MadKit environment, forecasting, knowledge and skills, Gaia models, artificial agent, neural network.