Содержание
Цели и задачи
Цель магистерской работы состоит в разработке части программного комплекса по автоматизации формирования нагрузки ВУЗа, а именно – автоматизация формирования нагрузки преподавателей.
Формирование нагрузки выполняется последовательно и состоит из следующих этапов:
Работа ведется командой из трех разработчиков. Командной задачей является проектирование комплекса и согласование структур данных для обмена информацией между его модулями.
Задача магистра состоит в проектировании и разработке отдельного модуля с предоставлением различных наборов прав и интерфейсов для пользователей разных групп: администраторов, преподавателей, сотрудников учебно-методического отдела, ответственных лиц на кафедре.
Актуальность и мотивация
Формирование нагрузки является трудоемкой задачей, требующей больших временных затрат. Весь процесс, от начала – составление учебных планов, до конца – утверждение нагрузки, занимает несколько месяцев. Все данные для документов, отчетов и сводок формируются вручную, что влечет большое количество ошибок, связанных с человеческим фактором, их поиск и исправление занимает существенную часть общего времени.
Недостатками схемы ручного распределения учебной нагрузки на кафедрах являются:
Научная новизна
В начале разработки предполагалось, что модуль формирования нагрузки преподавателей станет программным интерфейсом, который будет помогать человеку распределять дисциплины между преподавателями кафедры. При поиске информации по теме работы было выявлено, что технологии искусственного интеллекта не применялись ранее для подобной задачи. Было предложено разработать и использовать интеллектуальную систему поддержки принятия решений (СППР). Идея в том, что система должна давать рекомендации при распределении нагрузки между преподавателями кафедры, анализируя их непосредственные заявки до начала распределения и такие факторы как ученая степень, звание, опыт работы, возраст и другие.
Для анализа и принятия решений в СППР используются разные методы:
В случае, если будет иметь место некорректный результат, то человек, ответственный за процесс распределения, сможет корректировать результаты работы системы. Отсюда вытекает, что необходима возможность обучения системы, чтобы исключить повторение ошибок при следующем ее использовании.
Из описанных выше методов, свойством самообучения обладает лишь искусственная нейронная сеть. Возможность обучения – одно из главных преимуществ нейронных сетей перед традиционными алгоритмами [9]. Оно заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными данными и выходными, а также выполнять обобщение. Это значит, что в случае успешного обучения сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искаженных данных [9].
Взяв во внимание все вышеперечисленное, можно сделать вывод, что наиболее подходящей реализацией системы для решения поставленной задачи, будет система, основанная на искусственной нейронной сети.
С помощью ИНС решаются широкий круг задач:
Во всех, описанных выше, классах задач на практике успешно применяются персептроны (рис. 1) – это одна из первых моделей нейронной сети, предложенная Френком Розенблаттом в 1957 году [4]. Персептрон обладает высокой степенью универсальности, успешно обучается и может решать широкий круг сложных задач.
Описанная задача, относится к классу задач принятия решений. При ее решении нет необходимости использовать сложные модели нейронных сетей, таких как сеть Элмана, которая используется для решения задач в реальном времени, к примеру, управление движущимся объектом.
Рисунок 1 – Двухслойный персептрон с n входами, скрытым слоем из a нейронов и r выходами
На рисунке 1 изображена классическая структура персептрона. Набор входных данных – вектор X, результат – вектор Y, S-layer (от англ. sensor) – входы сети, их количество зависит от решаемой задачи, A-layer (от англ. association) – ассоциативный или скрытый слой, выбор необходимого количества нейронов этого слоя является основной задачей проектирования нейронной сети, R-layer (от англ. reaction) – выходной слой, или слой реагирования, количество выходов сети зависит от конкретной задачи. Каждый чувствительный элемент S-слоя связан с каждым элементом A-слоя синапсами (межнейронными связями), wan – отдельно взятый синапс из множества между слоями S и A, аналогичным образом происходит коммуникация нейронов между слоями A и R.
Персептрон может быть и однослойным (если убрать слой A и сенсоры подключить к выходному слою), скрытых же слоев может быть несколько, на практике применяются сети с одним, или двумя скрытыми слоями.
Персептрон был открыт в однослойном виде, такая структура позволяла очень просто его обучать с помощью правил Хебба и дельта-правила формулы (1) и (2), но с его помощью решался узкий круг задач [4].
(1)
(2)
Формула (1) описывает изменение весовых коэффициентов при обучении сети с использованием правил Хебба, в ней используются следующие обозначения:
Формула (2) описывает вычисление ошибки выхода сети (дельта-правило), в ней используются следующие обозначения:
Построение многослойных сетей резко расширяло круг решаемых задач, но вставала проблема их обучения. Обучение однослойного персептрона проходило путем подачи входных воздействий и вычисления погрешности на выходе (дельта-правило), после чего происходила корректировка весовых коэффициентов по правилам Хебба. Этот простой и элегантный метод невозможно применить к скрытым слоям сети, так как невозможно вычислить ошибку, не зная какие значения выходных сигналов скрытого слоя являются правильными [2].
Эффективным способом обучения многослойных персептронов является алгоритм обратного распространения ошибки [1]. На каждой итерации алгоритма обратного распространения весовые коэффициенты нейронной сети модифицируются так, чтобы улучшить решение одного примера. Таким образом, в процессе обучения циклически решаются однокритериальные задачи оптимизации [7]. Идея состоит в том, чтобы ошибка от выходов сети распространялась в обратном направлении ко входам и учитывалась при изменении весовых коэффициентов [8]. Математически это описано в формуле (3), погрешность скрытых слоев выражается через произведение суммы ошибок выходного слоя и весовых коэффициентов соответствующих синапсов [2].
(3)
Используя формулы (1) и (2), подставив (3) в (2), имеем для скрытого слоя [2]:
(4)
(5)
Обозначения в формулах (3), (4), (5) имеют тот же смысл, что и в формулах (1), (2).
То есть, метод обучения многослойных сетей по алгоритму обратного распространения ошибки является модификацией метода обучения однослойного персептрона, учитывающей особенности архитектуры многослойной сети.
Рисунок 2 – Обучение персептрона методом обратного распространения ошибки
(анимация: 7 кадров, 10
циклов повторения, размер 509x540, 138 КБ)
ИНС классифицируются по следующим параметрам:
В рамках решаемой задачи информация о преподавателе и дисциплине может быть представлена в разных видах (как в булевом, так и в числовом). По типу входной информации проектируемая ИНС аналого-цифровая [3]. Обучение сети базируется на основании выборки за последние годы, это способ обучения с учителем. Так как взаимосвязь между наборами входных данных и выходных не известна, то перед обучением весовые коэффициенты необходимо задать случайными малыми значениями. Результатом обучения должна стать сеть со значениями весовых коэффициентов, которые обеспечат корректный выходной вектор при определенном входном. Данную сеть можно классифицировать как сеть с динамическими связями.
Планируемые практические результаты
Результатом работы станет система поддержки принятия решений, основанная на обученной искусственной нейронной сети. После окончания процесса обучения для каждого синапса сети установится некоторый весовой коэффициент. Величину весового коэффициента можно расценивать как уровень влияния того или иного входного параметра на результат работы отдельных нейронов и сети в целом. Благодаря свойству обобщения присущему искусственным нейронным сетям после успешного обучения, возможно проведение эксперимента для выявления значимости отдельных параметров на результат. В рабочем режиме на вход подается обучающий вектор с одним измененным параметром, величина погрешности будет отображать влияние соответствующего параметра на результат [5]. Эти данные позволят нам выделить из множества используемых параметров наиболее важные для распределяемой дисциплины и наиболее важные характеристики преподавателей при формировании нагрузки.
Обзор исследований и разработок по теме
В интернет встречается информация о программных продуктах, которые по своей сути являются аналогами отдельных модулей, функционирующих в составе АСУ ДонНТУ. Это проекты разных разработчиков и исследователей, которые создавались для решения своих определенных задач и научных исследований в области построения учебного процесса, формирования нагрузки в учебных заведениях и т.д. Чаще всего встречаются программы-аналоги контингента студентов, формирования расписания, приемной комиссии, учебных планов. Все они выполнены разными авторами и используют разный подход в хранении, передаче и обработке данных, что не позволяет использовать их вместе. Все эти продукты были созданы в учебных целях.
В 2006 году было проведено исследование по теме формирования нагрузки преподавателей кафедры [6]. В работе рассмотрены модели и алгоритмы поддержки принятия решений при распределении учебной нагрузки. Предложены функциональная и математическая модели. Рассмотрена укрупненная схема решения задачи принятия решений при распределении нагрузки. Дальнейший поиск работ данных авторов не дал результатов по данной теме, их исследования в области формирования учебного процесса были завершены этой работой.
Внимания заслуживает программный комплекс для учебных заведений от лаборатории математического моделирования и информационных систем (ММиИС). Разработчиками комплекса преследовалась цель создать универсальный продукт для широкого спектра учебных заведений, которую они достигли по их заверениям.
Состав и название модулей комплекса, указанные на сайте разработчика, позволяют судить о том, что их полный набор обеспечивает автоматизацию всех процессов функционирования современного учебного заведения. Это прием абитуриентов на конкурсной основе с помощью модуля приемной комиссии, формирование учебных планов, графиков, нагрузки, расписания, учет успеваемости, выдача дипломов.
Главным недостатком является очень большая стоимость данного продукта (суммарная стоимость всех модулей составляет примерно 300 тысяч рублей), закрытый исходный код и, соответственно, невозможность оперативного внесения правок в соответствии с изменившимися требованиями. Изменения выполняются через техническую поддержку, что происходит очень долго.
Заключение
Определены цели и задачи магистерской работы. Для разработки программного комплекса автоматизации формирования нагрузки кафедры было принято решение использовать систему поддержки принятия решений, основанную на искусственной нейронной сети. Проведен обзор подобных разработок, который показал, что технологии искусственного интеллекта ранее не применялись для решения задачи формирования нагрузки.
Список литературы
Важное замечание
При написании данного реферата-обзора по теме, магистерская работа еще не завершена. Защита работы состоится летом 2017 года, полный текст можно будет получить у автора или руководителя после ее защиты.