Авторы: М.А. Безуглый (5 курс, каф. АСУ), А.И. Секирин, доц. каф. АСУ
Источник: Международная научно-техническая конференция студентов, аспирантов и молодых ученых Компьютерная и программная инженерия – 2015
// Донецкий национальный технический университет 2015.
Расписание учебных занятий – это документ, регламентирующий работу студентов, преподавателей, всего учебного заведения, распределяющий содержание учебного плана и рабочих программ по календарным дням учебного года и обеспечивающий их реализацию. Расписание влияет на комфортность обучения студентов, творческую отдачу преподавателей и эффективность использования ресурсов аудиторного фонда и лабораторий. С экономической точки зрения при составлении эффективного расписания можно уменьшить затраты на электроэнергию, водоснабжение и отопление [1].
Задачи теории расписаний имеют не только важное теоретическое значение, как относящееся к классу NP-полных задач, но и получили широкое практическое распространение. Построение оптимального плана распределения занятий может занять многие месяцы, при использовании точных методов решения. Возникает необходимость в методах, характеризующихся сочетанием противоречивых свойств: полиноминальной зависимостью времени счета от размерности задачи и точностью близкой к оптимальной. К такому классу методов относятся различные эвристические методы, не имеющие строгого математического обоснования, но хорошо зарекомендовавших себя в практической сфере [2].
Определим некоторые понятия:
Ограничения – требования, которым обязательно должно соответствовать расписание (отсутствие накладок и др.), влияют на допустимость расписания.
Предпочтения – ограничения, выполнение которых желательно, влияют на эффективность расписания.
Методы целочисленного программирования
Задача целочисленного программирования сводится к выделению переменных, значение которых необходимо найти, составлению математической модели задачи в виде ограничений, которые описывают задачу и накладывают определенные ограничения на искомые переменные, и составление целевой функции [3,4].
Применение алгоритма:
Основные недостатки:
Метод теории графов
В этом случае строится неориентированный граф, в котором каждая вершина представляет собой запланированное учебным планом занятие. Если между какими-то двумя вершинами возможны конфликты, то они соединяются ребром. Это эквивалентно запрету одновременного проведения занятий. Тогда задача сводится к раскраске графа в заданное количество цветов [4].
Применение алгоритма:
Основные недостатки:
Преимущества:
Агентный подход
Суть применения агентного подхода для решения какой-либо задачи следующая – разбиение задачи на некоторые более мелкие задачи. Для решения каждой из которых выделяется агент. Цель агента – найти такое решение своей задачи, чтобы оно согласовалось с решениями других агентов. Агенты добиваются согласования друг с другом путем обмена информационными сообщениями [5].
Применение алгоритма:
Основные недостатки:
Преимущества:
Метод муравьиной колонии
Основан на способности муравьев находить кратчайшие пути к пище с помощью выделения феромона [6].
Применение алгоритма:
Основные недостатки:
Преимущества:
Метод имитации отжига
Алгоритм имитации отжига основывается на имитации физического процесса, который происходит при кристаллизации вещества из жидкого состояния в твердое [7].
Применение алгоритма:
Основные недостатки:
Генетический алгоритм
Генетические алгоритмы основаны на использовании механизмов теории естественной эволюции [8, 9].
Применение алгоритма:
Основные недостатки:
Преимущества:
Расписание, по сути, представляет собой график проведения занятий, которые проводят преподаватели для конкретных групп в определенной аудитории в обозначенное время. Из этого можно сделать вывод, что расписание можно представить в функции
S (P,G,A,T,D,V),
где G Множество обучающихся групп;
A – Множество аудиторий;
D – Множество дисциплин;
P – Множество преподавателей;
T – Множество учебных пар (временных интервалов проведения занятий);
V – Рабочие учебные планы трехмерная матрица, определяющая для каждого занятия какие преподаватели его проводят, и какие группы на нем присутствуют.
где G множество обучающихся групп;
A – множество аудиторий;
P – множество преподавателей;
T – множество учебных пар (временных интервалов проведения занятий).
Данное выражение расшифровывается следующим образом: если в определенное время Т преподаватель Р у группы G проводит занятие в аудитории А, то значение выражения равно 1, иначе 0.
Целевая функция Р является суммой штрафов за нарушения предпочтений при составлении расписания.
где NW – количество требований;
W – список штрафных коэффициентов длиной NW, соответствующий требованиям;
N – количество занятий в расписании (количество генов в хромосоме);
Z – список занятий длиной N;
zir– список из булевых длиной NW значений, где каждому значению соответствует требование и штрафной коэффициент из списка W.
В большинстве учебных заведений основными ограничениями к расписанию являются:
Занятие - это сущность, которая определяет проведение одного занятия, определяя, преподавателей и группы, участвующие в нем, а также необходимые требования, которым должна удовлетворять аудитория, или перечень аудиторий.
Составляется список занятий Z в котором хранятся эти сущности, при этом, в данный список помещается столько экземпляров занятия, сколько должно быть проведено пар в течение 2х недель.
Тогда особь будет состоять из двух хромосом [10], представлена на рис 1.
Рис 1 – Структура хромосомы
Позиция каждого гена в хромосоме однозначно соответствует занятию.
В рамках данной работы были проанализированы основные алгоритмы составления расписаний и выявлено, что все они не лишены недостатков. Полученные расписания в результате их работы обладают низкой эффективностью и далеки от оптимальных. Для устранения некоторых из недостатков предложено использовать модифицированный генетический алгоритм, который позволит получать субоптимальные решения с учетом особенностей учебных заведений различного профиля.
1. Будиловский Дмитрий Михайлович Оптимизация решения задач теории расписаний на основе эволюционно-генетической модели распределения заданий // Системный анализ, управление и обработка информации (по отраслям) // Ростов-на-Дону 2007.
2. Секирин А. И. Программный комплекс для моделирования, анализа и оптимизации работы автоматизированных технологических комплексов механообработки // Научные труды Донецкого национального технического университета. Серия: "Вычислительная техника и автоматизация". Выпуск 90 - Донецк: ДонНТУ, 2005.
3. А. М. Дворянкин, В. С. Чалышев Обзор методов составления расписания вузов // Известия волгоградского государственного технического университета // Выпуск № 11 / том 9 / 2011.
4. Низамова Гузель Фанисовна Математическое и программное обеспечение составления расписания учебных занятий на основе агрегативных генетических алгоритмов: дис. канд. техн. наук: 05.13.11 Уфа, 2006 132 с.
5. Деканова, М. В. Конкретизация постановочных принципов проблемы многокритериальной оптимизации расписания занятий в университете // Вестник Полоцкого государственного университета. Серия C, Фундаментальные науки: научно-теоретический журнал. - 2014. - № 4. - C. 56-66.
6. Субботин С.А., Олейник Ан.А., Олейник Ал.А. Фрагмент рабочих материалов монографии Интеллектуальные Субботин С.А., Олейник Ан.А., Олейник Ал.А. интеллектуальные мультиагентные методы часть 3.
7. А. Б. Сидорин, Л. В. Ликучева, А. М. Дворянкин Методы автоматизации составления расписания занятий часть 2. Эвристические методы оптимизации // Известия волгоградского государственного технического университета // Выпуск № 7 / том 12 / 2009.
8. Низамова, Гузель Фанисовна Математическое и программное обеспечение составления расписания учебных занятий на основе агрегативных генетических алгоритмов // Уфа 2006.
9. С.В. Лаздынь, А. И. Секирин Оптимизация расписаний работы автоматизированных технологических комплексов механообработки с использованием генетических алгоритмов // Международный сборник научных трудов “Прогрессивные технологии и системы машиностроения”, выпуск 25. –Донецк: ДонНТУ.-2003. –С. 198-203.
10. Ю. С. Кабальнов, Л.И. Шехтман, Г.Ф. Низамова, Н.А. Земченкова // Композиционный генетический алгоритм составления расписания учебных занятий.