УДК 004.4:778.12.145
Н.Н. Клеванский, А.А. Пузанов, О.Г. Рубцов
МОДЕЛИ И МЕТОДЫ МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ РАСПИСАНИЙ ВУЗА
Описываются математические модели расписания занятий и экзаменов вуза в множественно-графовой интерпретации, формализуются обязательные и желательные ограничения, которые должны учитываться при формировании расписаний. На основе построенных моделей формулируются задачи многокритериальной оптимизации расписаний и предлагаются эвристические методы их решения.
N.N. Klevansky, A.A. Puzanov, O.G. Rubtsov
MODELS AND METHODS OF MULTIOBJECTIVE OPTIMIZATION OF UNIVERSITY TIME-TABLE
The article describes mathematical models of university timetabling in setgraph interpretation and formalizes hard and soft constraints to be taken into account. On the basis of the models problems of multiobjective optimization of university timetabling are formulated and heuristic methods of their solution are proposed here.
В большинстве случаев разработка расписания занятий и экзаменов вуза является многоэтапным процессом [4]. На первом этапе на основе документов, связанных с организацией учебного процесса (как правило, учебных поручений преподавателей), формируется непротиворечивое начальное расписание [6]. Второй этап связан с оптимизацией начального расписания всего учебного заведения. На третьем этапе может осуществляться локальная оптимизация расписания в пределах выбранного уровня управления (подразделения) вуза, не затрагивая другие уровни. К нижестоящим уровням управления относятся факультеты, кафедры, специальности и т.д.
Анализ критериев оптимизации расписания не позволяет выделить наиболее важный из них, полагая все остальные несущественными [2, 3]. Таким образом, оптимизация расписания является многокритериальной задачей. Наборы критериев общей и локальной оптимизации расписания различны. Оптимизация расписания всего учебного заведения использует сравнительно небольшой набор критериев в связи с общим характером проблемы. Локальная оптимизация решает частные задачи, что расширяет набор критериев и позволяет использовать различные сочетания критериев для разных уровней управления.
Множественно-графовая интерпретация математической модели расписания представляется следующим образом.
Для проведения занятий и приема экзаменов студенты объединяются в академические группы geG. Обозначим через ng количество занятий группы g за две недели или количество экзаменов в сессию. Множество групп G включает подмножества групп подразделений вуза GU. Лекционные занятия проводятся в потоках reR. Пусть RU - множество потоков, включающих хотя бы одну группу, принадлежащую подразделению U, а RU - множество потоков, включающих только группы подразделения u. Для проведения некоторых занятий
77
группы могут делиться на подгруппы deD. Обозначим DU множество подгрупп групп подразделения и. Введем гиперграф структуры групп, подгрупп и потоков HCTP=(G,D,R,ECTP), где ECTp - инцидентор множества пар M = {(g, z)\ EСТР(g, z), g е G,z е D и R и G} .
Множество преподавателей Р также может разбиваться на подмножества PU преподавателей различных подразделений вуза. Введем гиперграф учебной нагрузки Hyн=(М,Р,Еyн), где ЕУН - инцидентор, порождающий множество пар
LB = {(т, p)\ ЕУН (т, p), m е М, p е P и {0}}. Инцидентность т и р означает, что занятие/экзамен lBеLB с контингентом студентов т (группа/подгруппа/поток) проводит преподаватель р. В={Ь\, Ь2, Ь3} - атрибуты аеАЛП (Ь - идентификатор дисциплины; Ь2 - вид занятия или отчетности; Ь3 - количество подгрупп, на которые подразделяется группа для проведения данного занятия (zеD)).
Исходная информация для составления расписания включает аудиторный фонд. Обозначим АЛП - множество аудиторий для лекционных и практических занятий, АЛАБ - множество аудиторий для лабораторных занятий. Будем считать эти множества непересекающимися, тогда IАЛПI +1АЛАБI - количество аудиторий вуза. Введем гиперграф учебных поручений НУП = (LB, АЛП, АЛАБ, Еш), где ЕУП - инцидентор, порождающий множество пар
V = {(1В, а)\ ЕУН (1В, а), 1В е LB, а е АЛП и АЛАБ и{0}}. Инцидентность между 1В и а означает,
что учебное поручение vеVдля занятия/экзамена 1В содержит требуемую аудиторию а или «пустую» аудиторию (для ее более позднего определения).
Занятия проводятся в полуторачасовые интервалы («пары»), а экзамены принимаются посменно. Обозначим Тд - множество дней недели, ТП - множество регламентированных «пар» или смен, ТЧ - множество признаков недели. Введем множество таймслотов Т=ТдхТпхТч, элементы которого однозначно определяют день недели, «пару»/смену и признак недели. Таким образом, расписание занятий/экзаменов вуза может быть представлено гиперграфом расписания НРАСП = (V, Т, ЕРАСП), где ЕРАСП - инцидентор множества учебных
событий («пар»/экзаменов) 51 = {(V, I) \ ЕРАСП(V, V е V, I е Т}.
При формировании расписания вуза должен учитываться ряд обязательных ограничений. Для их формализации введем булево обозначение учебного события -е^:
г 1, если с группой g в таймслоте t преподавателем р про-5 = -(g, z, р, а, t, 1В) = < водится занятие/экзамен 1В в аудитории а;
0 - в противном случае.
Можно выделить следующие обязательные ограничения:
Для каждой группы g должны выполняться все виды аудиторной работы в течение двух недель или должны быть приняты все экзамены за период сессии:
Vg : z е RиG}+;£jf : z е Dl = и . (1)
Т Т [Ь3 J
В любом таймслоте t для каждой группы g может проводиться не более одного занятия/экзамена:
Vg ; 5 +; - < 1 . (2)
1\1еКиО Ьз
В любом таймслоте t любой преподаватель р может вести/принимать не более одного занятия/экзамена в одном потоке, группе или подгруппе:
Vt, Vр ;5 < 1 . (3)
2
В любом таймслоте t в любой аудитории a не может проходить более одного занятия / экзамена:
s
"t, "a £s + Z Ы < 1- (4)
z:zeRuuG zzeD O3
Общее число всех видов занятий/экзаменов в каждом таймслоте t не должно превышать имеющийся в вузе аудиторный фонд:
"t Z s + zf S V\Алл\ + 1 Алб\- (5)
zzeRuG z:zeD у Ö3 J
Расписание занятий каждой группы в любой день не должно содержать «окон». Обозначим через /max номер последнего занятия группы g в день td недели t4:
"g, "td,"t4 /max = max{tB: s = 1}.
Аналогично определим номер первого занятия /mjn:
"g, "td, "t4 /min = mxn{t„ : s = 1}.
Тогда количество «пар» занятий у группы g в день td недели t4:
"g,"td,"t4 jcol = Z{s : z e RuG}+£jf : z e d} .
Tn Tn I b3 J
Тогда искомое ограничение примет следующий вид:
"g, "tö , "t4 /max - /min " /col = 0 . (6)
Таким образом, задача формирования расписания заключается в формировании гиперграфа G, т.е. определении для каждого занятия / экзамена таймслота и аудитории с учетом выполнения вышеприведенных обязательных ограничений (1)-(6).
В последующем может проводиться оптимизация всего сформированного расписания и ряд локальных оптимизаций расписаний отдельных подразделений вуза по определенным желательным критериям. В качестве критериев локальной оптимизации расписания занятий подразделения Uмогут быть предложены следующие:
Для оптимизации расписания академических групп подразделения GU (критерии применяются для всех групп подразделения ge GU):
Равномерность распределения занятий по количеству «пар» в день для обеих недель:
K(g)i = |s | "g e Gu , "t4, "td Z s ® minJ . (7)
Проведение занятий в определенную «смену» (временной промежуток до или после «пары» t'4) для обеих недель:
K 2 ={s|"g e Gu , "К, "td /max < К v ^ ?ч +1} . (8)
Отсутствие занятий в субботу:
K3 = js | "g e Gu , "t4, td = 6 £ s = oj . (9)
Для оптимизации расписания преподавателей подразделения PU (критерии применяются избирательно, в зависимости от предпочтений определенного преподавателяpePU):
Равномерность распределения занятий по количеству «пар» в день для обеих недель:
K4 = js|p e Pu , "t4, "td £ s ® min J . (10)
Отсутствие занятий в определенные дни Tdp с Тд:
K5 = js | p e Pu ,"t4, td e Tp £ s = oJ . (11)
Минимизация количества окон:
K6 = js | p e Pu £(j'max - jmm)_£s ® mm) . (12)
I T4 xTg T J
Минимизация количества дней, занятых учебной нагрузкой ТУН i T х Тд, (t4,td) e ТН ^$tn, $z, $a s(p, z,a,(t4,td,t„)) = 1:
K7 = {s|p e Pu \TypH\® mm} . (13)
Сформулируем, к примеру, задачу локальной оптимизации расписания занятий вуза. Для любого подразделения вуза U можно выделить подграф НрАСПи , описывающий его расписание, т.е. расписание академических групп GU и преподавателей PU этого подразделения. Этот подграф будет определяться подграфами гиперграфа НУН учебной нагрузки НУН = (MU, P, Е^н),
где Ми = {(g, z)| EGHp (g, z), g e Gv, z e u Rv u Gu}, и H% = (M, Pu , EPU = (M, Pu, E%). В силу локального характера оптимизации, изменения могут производиться лишь на подграфе НРНС^Н ННасп , определяемом подграфом гиперграфа учебной нагрузки НУН
Ннн = (MU, Pu , ЕНн ) ,
где M'u = {(g, z) | EG (g, z), g e Gu , z e Du u R^ u Gu }.
Тогда постановка задачи многокритериальной локальной оптимизации расписания занятий вуза описывается следующим образом: в подграфе ННАСП заданного гиперграфа расписания НРАСП, минимизируя желательные критерии оптимальности (7)-(13) и, не нарушая обязательные ограничения (1)-)6), произвести такие изменения, чтобы полученное решение
НрАСПН в любом случае улучшало качество расписания НрАСПН по аксиоме Парето.
Для задач подобного рода в силу их большой размерности, неполиномиальности времени решения с помощью полного перебора и неудовлетворительного состояния точных методов их решения наиболее приоритетным является использование эвристических алгоритмов, дающих некоторое решение, приближенное к оптимальному, за приемлемое время [7]. В частности, предлагаемый метод является частным случаем метода условного градиента [1]. Эвристика метода условного градиента на каждом шаге выбирает такой вариант перестановки занятия, который улучшает расписание по Парето наилучшим образом. Разработанный метод оптимизации начального расписания занятий вуза представлен на рисунке.
Исходными данными являются занятия расписания Н^НсЛ . После начала работы алгоритма производится оценка расписания групп и/или преподавателей выбранного подразделения (в зависимости от направленности оптимизации). При оценке расписания подразделения наиболее оптимальным представляется использование штрафов, т.е. увеличения оценки занятия в случае, если оно не отвечает какому-либо критерию в той или иной степени. Оценка каждого конкретного занятия, а не только расписания группы или преподавателя в целом, позволяет задавать приоритет перестановки занятий. Частные критерии оптимальности для каждого занятия имеют одинаковую шкалу измерения [0, 1] и приведены к безразмерному типу при помощи линейной функции:
Ks _ Kmin
ks = —-, (14)
K max _K min
где K - текущее значение критерия для оцениваемого занятия; Kmax - максимально возможное значение критерия; Kmin - минимально возможное значение критерия.
Метод оптимизации расписания занятий
Введем аддитивную функцию оценки занятия, рассчитываемую для каждого занятия расписания:
Ч* = £ (ек) + wp £ (ерк*) . (15)
Такой метод свертывания критерия, называемый методом взвешенных сумм, позволяет создавать приоритет более важным частным критериям оптимальности за счет увеличения для них значений весовых коэффициентов ei или ер. Величина задает в количественном измерении предпочтение ^го критерия над другими критериями оптимальности, причем £ е{ = 1. Аналогично, величина ер задает в количественном измерении предпочтение ^го
критерия над другими критериями оптимальности для конкретного преподавателя р, причем "Р £ер = 1. Веса wg и wp задают приоритет академических групп или преподавателей в процессе оптимизации расписания занятий выбранного подразделения (wg + wp = 1).
Функция интегральной оценки расписания подразделения по всем критериям оптимальности, показывающая разницу между текущим и «идеальным» расписанием, вычисляется по следующей формуле:
Я = £ ч* . (16)
После оценки расписания подразделения на подграфе НрАСП производится выбор
наиболее «неудобного» занятия, т.е. занятия, имеющего наиболее высокую оценку (15). Далее, для выбранного занятия определяются возможные варианты перестановки. При этом используются две операции:
1. а, а') - операция изменения у занятия * учебной аудитории аеАЛП на учебную аудиторию а' еАЛП. Отметим, что эта операция изменяет аудитории только у лекционных и практических занятий.
2. 02(5,(,( ') - операция изменения таймслота (еТу занятия * натаймслот (еТ.
В множественно-графовой интерпретации операция 01 заменяет вершину а в ребре {§, г, р, а, (} на вершину а'. Аналогично в операции 02 происходит замена вершины (в ребре {§, г, р, а, (} на вершину (.
Сокращение количества возможных вариантов перестановки за счет отбрасывания заведомо бесперспективных достигается с помощью оптимизирующих стратегий. Так, очевидно, что в качестве оптимизирующих стратегий должны быть выбраны такие, которые обеспечивали бы выполнение обязательных условий, прежде всего - исключали бы появление «окон» в расписании академических групп. Также в качестве оптимизирующих стратегий могут быть выбраны наиболее легко формализуемые желательные критерии оценки, в частности, ограничивающие число занятий в один учебный день у академической группы или преподавателя.
При использовании операции 02(5, t, t') определяется занятость преподавателя р и аудитории а, а также, если занятие проводится у потока г, занятость всех групп geг во временной промежуток t'. В случае занятости преподавателя или одной либо нескольких групп потока производится перестановка мешающего занятия 5 ' 02(5' , t', t"). В случае занятости аудитории для лекционных или практических занятий аеАЛП производится поиск подходящей по вместимости аудитории а'еАЛП, свободной в промежуток t', и замена 01(5, а, а"). Если поиск не дает результатов или аеАЛАБ, производится перестановка мешающего занятия 5 " 02(5", t", t").
Таким образом, для выбранного занятия 5 может быть построено дерево порождаемых перестановок, вершинами которого будут операции 01 и 02. Любой путь, началом которого является корень дерева, а концом - вершина, не имеющая исходящих дуг, представляет собой последовательность перестановок [5].
Затем на множестве конечных вариантов изменения расписания определяется подмножество Парето-оптимальных вариантов, то есть неухудшаемых решений. Неухудшаемым решением принимается такое, в котором улучшение по одному из критериев не приводит к некоему ослаблению по любому другому критерию. Для каждого Парето-оптимального варианта рассчитывается значение интегральной оценки расписания (16). Вариант расписания
НрАсп7 с максимальным значением приращения принимается наилучшим, а остальные варианты исключаются.
После перестановки снова выбирается занятие с максимальной оценкой и для него повторяется весь цикл. Условием останова алгоритма может быть доведение оценки расписания подразделения до нуля (или какой-либо другой заранее определенной величины) либо невозможность перестановки всех оставшихся занятий с оценкой выше заданной.
ЛИТЕРАТУРА
1. Васильев Ф.П. Численные методы решения экстремальных задач: учеб. пособие для вузов; 2-е изд., перераб. и доп. / Ф.П. Васильев. М.: Наука. Гл. ред. физ.-мат. лит., 1988. С. 260-277.
2. Ерунов В.П. Формирование оптимального расписания учебных занятий в вузе / В.П. Ерунов, И.И. Морковин // Вестник Оренбургского государственного университета. 2001. № 3. С. 55-63.
3. Клеванский Н.Н. Анализ требований и ограничений в задаче составления расписания / Н.Н. Клеванский, А.А. Пузанов, С.А. Костин // Образовательные технологии: межвуз. сб. науч. тр. Вып. 12. Воронеж: Центрально-Черноземное книжн. изд-во, 2004. С. 164-168.
4. Клеванский Н.Н. К вопросу о задаче формирования расписания занятий вуза / Н.Н. Клеванский, А.А. Пузанов, С.А. Костин // Моделирование и управление в сложных системах: сб. науч. ст. Саратов: СГТУ, 2004. С. 20-28.
5. Клеванский Н.Н. Локальная оптимизация расписания занятий вуза / Н.Н. Клеванский, А.А. Пузанов // Образовательные технологии. 2005. № 3. С. 127-130.
6. Клеванский Н.Н. Моделирование стратегии формирования расписания занятий вуза средствами реляционной алгебры / Н.Н. Клеванский, Е.А. Макарцова, С.А. Костин // При-
кладные проблемы образовательной деятельности: межвуз. сб. науч. тр. Воронеж: ВГПУ, 2003.С. 71-74.
7. Клеванский Н.Н. Приоритетность использования приближенных методов в составлении расписания занятий вуза / Н.Н. Клеванский, А.А. Пузанов // Моделирование и управление в сложных системах: сб. науч. ст. Саратов: СГТУ, 2005. С. 11-15.
Клеванский Николай Николаевич -
кандидат технических наук, доцент кафедры
«Программное обеспечение вычислительной техники и автоматизированных систем» Саратовского государственного технического университета
Пузанов Артем Александрович -
аспирант кафедры
«Программное обеспечение вычислительной техники и автоматизированных систем» Саратовского государственного технического университета
Рубцов Олег Геннадьевич -
аспирант кафедры
«Программное обеспечение вычислительной техники и автоматизированных систем» Саратовского государственного технического университета
УДК 515.2
Г.П. Пономарева, Г.Д. Забродина
ПОСТРОЕНИЕ ГЕОМЕТРИЧЕСКОГО ФОРМОРЯДА ДЛЯ СОЗДАНИЯ СИМВОЛИКИ ХУДОЖЕСТВЕННОГО ОБРАЗА
Поставлена задача систематизации факторов, влияющих на визуальное восприятие человеком геометрических фигур. Показано формирование ряда геометрических фигур для систематизации факторов, влияющих на визуальное восприятие их человеком, и представлен ряд, основанный на «взаимоперетекании» геометрических фигур.
G.P. Ponomareva, G.D. Zabrodina
GEOMETRICAL FORM-OF-LINES CREATION FOR ARTISTIC IMAGE MODELLING
A task of factors systematization development influencing visual perception by a person of geometrical figures is put here. Certain geometrical figures formation for the factors systematization influencing on visual perception by a person is shown in the article and number of cases based on an overflowing of geometrical figures.