Научная статья на тему 'Формализация задачи составления расписания учебных занятий в вузе'

Формализация задачи составления расписания учебных занятий в вузе Текст научной статьи по специальности «Математика»

CC BY
835
97
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВУЗ / HIGHER EDUCATION INSTITUTION / OCCUPATION TIMETABLE / ОПТИМИЗАЦИЯ / OPTIMIZATION / РАСПИСАНИЕ ЗАНЯТИЙ

Аннотация научной статьи по математике, автор научной работы — Бадеников Артем Викторович, Балакирев Валентин Сергеевич, Истомин Андрей Леонидович

Предложена постановка задачи и методы формализованного составления расписания занятий в вузе.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

FORMALIZATION OF THE OCCUPATION TIMETABLE SCHEDULING IN HIGHER EDUCATION INSTITUTION

The statement of the problem and methods of the formalized formation occupation timetable scheduling in higher education institution are offered.

Текст научной работы на тему «Формализация задачи составления расписания учебных занятий в вузе»

УДК 007, 519 Бадеников Артем Викторович,

ректор Ангарской государственной технической академии, кандидат технических наук, доцент, (3955) 67-89-06, rector@agta.irmail.ru

Балакирев Валентин Сергеевич, профессор кафедры технической кибернетики и автоматики Московского государственного университета инженерной экологии, доктор технических наук, профессор, (495) 267-12-67 Истомин Андрей Леонидович, проректор по учебной работе Ангарской государственной технической академии, кандидат технических наук, доцент, (3955) 67-88-45, istomin@agta.irmail.ru

ФОРМАЛИЗАЦИЯ ЗАДАЧИ СОСТАВЛЕНИЯ РАСПИСАНИЯ УЧЕБНЫХ ЗАНЯТИЙ В ВУЗЕ

A. V. Badenikov, V.S. Balakirev, A.L. Istomin

FORMALIZATION OF THE OCCUPATION TIMETABLE SCHEDULING IN HIGHER EDUCATION INSTITUTION

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

Ключевые слова: вуз, расписание занятий, оптимизация.

Abstract. The statement of the problem and methods of the formalized formation occupation timetable scheduling in higher education institution are offered.

Keywords: higher education institution, occupation timetable, optimization.

Введение

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

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

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

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

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

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

Пусть имеется система занятий, которая определена как 3, Ф, [т{ ], {шг} следующим образом.

1. 3 = [Т1, Т2,...,Тп} есть общий список занятий, подлежащих назначению в учебные помещения.

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

3. [ тг ] есть продолжительность занятия Т

(i = 1, п). В большинстве вузов продолжительность занятия измеряется числом тактов времени двухчасовой длительности или в парах, т. е. двухчасовое занятие равно одной паре. Часть занятий, например, по физической культуре или лабораторные работы, могут иметь большую продолжительность, но кратную учебной паре.

4. {wi} есть вес занятия Т (г = 1, п). Если представить все занятия в виде вершин одного графа, а условия несовместимости занятий по времени отразить с помощью ребер так, чтобы между каждой парой несовместимых по времени занятий в графе присутствовало ребро, то количество ребер , входящих в г -ю вершину графа,

соответствующую занятию Т, и определяет вес занятия. Очевидно, что занятия с высокими весами должны назначаться в расписание раньше, поскольку с ростом ^ количество вариантов назначений для таких занятий резко уменьшается. Если вес занятия интерпретировать как удельный штраф от того, что занятие до сих пор не назначено в расписание, то штраф от назначения занятия Т в момент времени ^ равен .

Обозначим через Ш множество имеющихся в вузе учебных помещений. Будем считать, что

шшт

множество учебных помещений Ш можно разбить на у -е количество подмножеств или групп

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

Учебные помещения разных групп могут быть не вполне взаимозаменяемыми по отношению к некоторым занятиям, т. е. персональная совместимость учебных помещений j -й группы с занятиями из множества 3 стеснена булевой п х т -матрицей Е = Це^ ||, каждый элемент которой ву = 1 означает допустимость назначения занятия Т в учебное помещение у -й группы, а элемент вида ву = 0 соответствует запрету на такое назначение (г = 1, п, у = 1, т). Каждая строка матрицы Е содержит не менее чем один отличный от нуля элемент, т. е. для каждого занятия множества 3 подмножество совместимых с ним учебных помещений непусто.

Обозначим через В- фонд времени (или

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

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

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

Современные технологии. Механика и машиностроение

ш

щений были минимальны.

Математическая формулировка задачи выглядит следующим образом: минимизировать

при условиях

/ = Е СуУу

у=1

Е еуху= 1, *=1п,

}=1

п

(1)

(2)

Е*В • у, у=1 т, (3)

1=1

Ху е {0,1} . (4)

Поясним смысл интерпретации задачи. Величина Ху е {0,1} есть показатель того, будет ли

назначено занятие Т в учебные помещения у -й группы. Так, если х у = 1, то в расписании занятие Т будет проводиться в учебных помещениях у -й группы, если х^ = 0, то занятие Т не будет проводиться в учебных помещениях у -й группы. Условие (2) требует, чтобы все занятия были выполнены, а наложение условия целочисленности на Х] означает, что занятие Т может быть проведено только в одном учебном помещении, так как расписание реализуется без прерываний. Условие (3) означает ограничение на длину расписания или максимальный объем времени использования учебных помещений у -й группы.

Тогда (1) означает, что задача состоит в нахождении таких значений у., у = 1, т, при которых значение / (суммарные затраты на использование учебных помещений) минимально.

Отметим, что в данной формулировке

участвует матрица Е с элементами е у , * = 1, п, у = 1, т .

Следует отметить, что постановка задачи (1)-(4) не учитывает взаимозависимость занятий. Действительно, если представить, например, что имеются два взаимозависимых занятия, каждое из которых имеет продолжительность, равную одной паре, а фонд использования всех учебных помещений не более одной пары, то никакое количество учебных помещений не позволит составить расписание. Поэтому необходимо, чтобы количество пар в расписании занятий было больше, чем максимально возможное количество взаимосвязанных занятий. Это, во-первых, позволит значительно сократить количество требуемых учебных

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

Общая практика составления расписаний занятий в вузах показывает, что общее число пар в расписании занятий в неделю или две недели в зависимости от расписания много больше, чем число взаимозависимых или взаимосвязанных занятий. Так, например, при шестидневной рабочей неделе и четырех парах двухчасовой длительности в любом рабочем дне общее количество пар в расписании составляет число, равное 24. В то же время максимально возможное число взаимозависимых занятий у одних и тех же обучающихся, в соответствии с ФГОС, не может быть больше 13-18, иначе будет нарушен ФГОС в части предельного числа часов аудиторных занятий в неделю на одного обучающегося, которые находятся в диапазоне от 26 до 36 часов в зависимости от направления или специальности.

В дальнейшем будем априори полагать, что общее количество пар или тактов времени двухчасовой длительности в расписании занятий много больше числа максимально взаимосвязанных занятий, что позволяет применить постановку задачи (1)-(4) для нахождения оптимальной структуры учебных помещений.

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

К сожалению, задача (1)-(4) может быть решена методами целочисленного линейного программирования только для очень малых размеров п и т . Кроме того, задача целочисленного линейного программирования является NР-полной задачей, для которой нет эффективного решения, т. е. точного алгоритма, решающего задачу за полиномиальное время. Полный перебор имеет экспоненциальную сложность и может хорошо работать только для небольших размеров задачи. Следовательно, необходимы приближенные алгоритмы для решения задачи нахождения оптимальной структуры учебных помещений. Такие алгоритмы часто не подразумевают априорных оценок точности и не гарантированы от сколь угодно больших погрешностей.

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

т

рых несколько «кусков» различном «длины» должны быть образованы из кусков, имеющих стандартную длину.

Действительно, если каждое занятие Ti представить в виде прямоугольника, имеющего длину Ti, который следует уложить в полосу или контейнер единичной ширины в последовательные интервалы времени так, чтобы они не пересекались с прямоугольниками других занятий, а общая длина прямоугольников не превышала заданную длину контейнера, то задача нахождения минимального количества учебных помещений аналогична одномерной задаче упаковки в контейнеры [1], в которой необходимо упаковать заданную совокупность «весов» в минимальное число «контейнеров».

Получили распространение четыре алгоритма упаковки в контейнеры [1, 2]. В каждом из этих алгоритмов вес T загружается первым, а вес T загружается раньше, чем Tk+1, для всех k > 1.

1. Загрузка в первый подходящий контейнер (или FF: first-fit). Каждый вес Tk помещается в контейнер, имеющий минимальный индекс из числа тех, которые подходят для размещения T .

2. Загрузка в лучший из подходящих контейнеров (или BF: best-fit). Каждый вес T помещается в такой контейнер, который после помещения T будет иметь наименьший неиспользованный объем.

3. Загрузка в первый подходящий контейнер по убыванию весов (или FFD: first-fit-decreasing). Множество весов (T1, T2, ..., Tn ) представляется в виде списка, упорядоченного по невозрастанию весов, и к нему применяется первый алгоритм.

4. Загрузка в лучший из подходящих контейнеров по убыванию весов (или BFD: best-fit-decreasing).

Каждый из алгоритмов может быть реализован за время O(n logm), где m - количество контейнеров, найденное этим алгоритмом.

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

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

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

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

Для этого заново сформируем список из занятий, упорядоченный по возрастанию значений

I et] , i = 1, n . Первы

м назначается занятие, име-

j=i

ющее наименьшее значение I eij- . В случае, если

j=i

несколько занятий имеют равные значения

I <

j=i

первым назначается занятие, имеющее большую

т

продолжительность т . В случае, если равны ^ ву

у=1

и т, занятия назначаются в порядке возрастания их индексов.

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

1. Занятие Тк не назначается в «пустое» учебное помещение до тех пор, пока не будет установлено, что это занятие не может быть назначено ни в одно из частично занятых учебных помещений.

2. Если частично занятые учебные помещения есть и занятие Т совместимо с ними, занятие Тк назначается в то частично занятое учебное помещение, затраты на использование которого наименьшие. Если частично занятых учебных помещений нет либо эти учебные помещения несовместимы с занятием Тк , занятие Тк назначается в пустое учебное помещение, затраты на использование которого наименьшие.

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

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

и произвольными значениями матрицы Е = ||егу||

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

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

ij

Современные технологии. Механика и машиностроение

ш

мерности.

В результате решения задачи найдена структура учебных помещений Ш = {Р1, Р2,..., Рт}, устанавливающая необходимое для расписания количество учебных помещений Р для каждой группы, при которой затраты вуза на использование учебных помещений минимальны.

Кроме того, в результате решения задачи установлено распределение, закрепляющее каждое занятие из системы 3 = {Т, Т, . ., Т} за той или иной группой учебных помещений, т. е. проведена декомпозиция системы занятий 3 = {Тъ Т2,..., Тп} на подмножества 3(1), 3(2), ..., 3(т) (т < п), которые охватывают все множество 3 .

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

{3} = 3(1) и 3(2) и ...и 3(т). (5)

Каждое занятие относится к одному и только одному пакету, т. е.

3(д) П 3(г) = 0, (д ф г, д, г = 1~т). (6)

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

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

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

/ = ЕЕР(ШгХгр ) ^ Ш1П

р=1 1=1

при условиях

Е х*р = 1, *=1,

р=1

*=1

х1ртг < Вр

Р = 1, Ру

(7)

(8)

(9)

Хр е {0,1} . (10)

Поясним смысл задачи. Условие (7) требует, чтобы все занятия из подмножества 3( у) были выполнены, а наложение условия целочисленно-сти на Хр означает, что занятие Т может быть

проведено только в одном учебном помещении. Условие (9) означает ограничение на максимальный объем времени использования p-го по порядку учебного помещения. Величина х^, е {0,1} есть

показатель того, будет ли назначено занятие Т в

д = 1, к -е по порядку учебное помещение. Ис-

р п ■

'у "у

пользование / = ЕЕР(етЛр) в качестве крите-

р=1 *=1

рия оптимальности означает то, что при разбиении подмножества занятий 3( у) на подмножества

3Х (у),., 3 (у) будут рассматриваться только те

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

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

{3} = 31(1) и... и 3р (1) и... и 31(т) и... и 3р (т). (11)

т

На следующем этапе решаются Е Ру неза-

у=1

висимых задач составления расписания для конечного множества занятий 31 (у) = {Т1, Т2,...,Тк1} в каждом I -м учебном помещении у -й группы. Известны продолжительность всех занятий тк > 0 ( к = 1, к1) и количество пар Б1 использования I -го учебного помещения. Общая продолжительность занятий, назначенных в I -е учебное помещение к1

= Е тк < В не превышает фонд использования

к=1

помещения.

Сформулируем задачу о назначении применительно к задаче нахождения оптимального расписания для одного учебного помещения.

р

п

п

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

Персональная совместимость занятий с каждой парой стеснена булевой п х п -матрицей

назначения

A = a,,

каждый элемент которой

а у > 0 означает допустимость назначения занятия Т в у -ю пару, а элемент вида а у = 0 соответствует запрету на такое назначение (I = 1, п, ] = 1, п).

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

Математическую модель задачи о назначении п занятий п парам можно представить в виде задачи линейного программирования.

Определим переменные Ху как

(1, апёе 01 ад1 а^а1 1 а ]-] 1 або, (12)

[0, äiöiöeäiii neö^aä.

Получаем следующую задачу линейного программирования

f=ii ajxj ^ max

i=1 j=1

при условиях

I

j=1

Xj= 1

i = 1, n,

(13)

(14)

I xij =1, j =1, n,

i=1

Xj, = {0,1}, i = 1, n , j = 1, n.

(15)

(16)

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

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

шшт

учебного помещения. Обозначим через параметр ^ возможность преподавателя провести занятие

T в j -ю пару. Так если > 0, то преподаватель

может провести занятие T в j -ю пару, а = 0

соответствует запрету на такое проведение. Чем больше число ^, тем предпочтительнее для преподавателя провести занятие T в j -ю пару. Аналогично, показатель ху^ отражает возможность группы, подгруппы или потока обучающихся прослушать занятие T в j -ю пару. Чем больше у, нуля, тем предпочтительнее для обучающихся прослушать занятие T в j -ю пару, а у, = 0 соответствует запрету на проведение занятия. Очевидно, что значения показателей ^ и у зависят не

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

находятся как a, = у,, i = 1, n , j = 1, n.

Если представим все занятия множеством вершин { T1, T2,...,Tn }, а пары - множеством вершин { t1, t2,..., tn } двудольного графа G, в котором вершина Ti смежна с вершиной t j тогда и только тогда, когда занятие T может быть проведено в tj -ю пару, т. е. a, > 0, то ясно, что задача о

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Теория расписаний и вычислительные машины / под ред. Э. Г. Коффмана. - М. : Наука, 1984. 332 с.

2. Johnson D. S. Fast Algorithms for Bin Packing // Journal of Computer and System Sciences. 1974. V. 8, no. 3. P. 272-314.

тов матриц назначения

A = a.

для каждого

n n

i Надоели баннеры? Вы всегда можете отключить рекламу.