УДК 004.78:69.05
ВВ. ЯКОВЛЕВ, ЮГ. ВАСИЛЬЕВ, Б.М. КАЛМЫКОВ
РЕШЕНИЕ ЗАДАЧИ СОСТАВЛЕНИЯ РАСПИСАНИЯ ЗАНЯТИЙ В ВУЗЕ С ПОМОЩЬЮ НЕЙРОПОДОБНЫХ СЕТЕЙ
Ключевые слова: теория расписаний, нейронные сети.
Рассмотрены вопросы использования нейроподобных сетей для составления расписания учебных занятий в вузе. Описаны модель и результаты синтеза нейроподобных сетей, состоящего из трех основных этапов: нейросетевая интерпретация задачи; конструирование энергетической функции; определение параметров сети.
V.V. YAKOVLEV, Y.G. VASILYEV, B.M. KALMYKOV THE DECISION OF THE PROBLEM OF DRAWING UP OF THE SCHEDULE OF EMPLOYMENT IN HIGH SCHOOL BY MEANS OF NEURAL NETWORKS Keywords: the theory of scheduling, neural networks.
In clause questions of use neural networks for drawing up of the schedule of educational employment in high school are considered. The model and results of synthesis neural networks, consisting of three basic stages is described: interpretation of a problem by means of neural networks; designing ofpower function; definition ofparameters of a neural network
Введение. Задача составления расписания занятий, как и многие другие задачи комбинаторной оптимизации, относится к классу NP-полных, решение которых связано с большими временными затратами. Построенные в настоящее время алгоритмы составления расписаний (планирования), основанные на методе динамического программирования, симплекс-методе, методе ветвей и границ, различных эвристических подходах, позволяют найти приемлемые по качеству и временным затратам решения только для задач небольшой размерности.
В настоящей статье для решения задачи составления расписания занятий предлагается использовать нейроподобные сети (НПС). В основу положена методика синтеза структуры и параметров НПС для решения задачи расписания обслуживания многоприборной разнородной системы [1]. В статье выполнена адаптация методики к задаче составления расписания занятий: нейросетевая интерпретация задачи, рассмотрены специфические для задачи ограничения, составляющие энергетической функции, проведен синтез нейросети.
Постановка задачи. Пусть имеется n занятий, которые необходимо разместить на сетке расписания, и m аудиторий, в которых могут проводиться занятия, временная сетка - p пар в неделю m, n, p е Z+ . В общем случае для каждого занятия определены его принадлежность к группе и преподаватель, который его проводит.
Расписание можно записать в виде множества s(x)=(si(x), ..., sjT), ..., sm(x)), представляющего собой совокупность кусочно-постоянных функций времени т, заданных на интервале 0 < т < х> и принимающих целочисленные значения из множества {0, 1, 2, ..., i, ..., n}. Если sj(T')=i, то в момент времени т' i-е занятие проводится в j-й аудитории. Если s(t')=0, то в момент т' аудитория j-я свободна. Качество расписания характеризуется функционалом:
ф(s) = ХaiZi (s), (1)
i=1
где Zj(s) - качество размещения i-го занятия (компактное размещение занятий с одинаковым количеством в каждый учебный день); аг- > 0 - весовые коэффициенты, i ei, n.
Обозначив Qs множество расписаний s(t), удовлетворяющих ограничениям, запишем задачу поиска оптимального расписания в следующем виде:
s* (т) = arg min {ф(s)}. (2)
s (Т )eQ s
Данная задача относится к классу задач дискретной оптимизации, многие из которых успешно решаются с помощью нейроподобных сетей (НПС) [2, 3]. Существо решения оптимизационных задач в нейросетевом вычислительном базисе заключается в следующем. Строится сеть нейроподобных элементов (в дальнейшем просто - нейронов). Для определенности ограничимся случаем нейронов с непрерывными состояниями, динамика которых описывается дифференциальной моделью вида:
düijk Uijk n m p
= + SSSTjk|lvxV|vx — 1ijk ; V|vx = g(U|lvx ) ;
dt тф ^=iv=ix=i
V|vx (t0 ) = g (U|avx (t0 )) = V|vx ( ),
где t - время; U^v% - внутренний потенциал цу%-го нейрона; VVN1 - выходной сигнал ^vx-го нейрона; Tijkvvx - коэффициент синаптической связи входа ijk-го нейрона с выходом ^vx-го нейрона; i, |ei, n, j, v ei, m , k, xei, p ; g() - непрерывная функция активации, например, вида
g (z) = (l + e ^ )-i, 0.
Такая сеть будет переходить из некоторого начального состояния {Vjk (0)}, i ei, n, j ei, m, k ei, p в устойчивое конечное состояние, соответствующее одному из минимумов энергетической функции сети [3-5]:
1 n m p n m p n m p
E = --IIIIIZTjk|vxVjkV|vx +IIIVjkIjk , (3)
2 i=i j=ik=1|=1v=1X=1 i=i j=ik=i
при этом выходные сигналы нейронов будут принимать значения, близкие к 0 или i.
Теперь параметрам исходной оптимизационной задачи поставим в соответствие параметры состояния сети {Vijk }, i ei, n, j ei, m, k ei, p . Сконструируем
такую скалярную выпуклую функцию параметров исходной задачи, минимизация которой обеспечивала бы выполнение ограничений задачи и соответствовала бы минимуму оптимизируемого функционала. Приравняв ее к энергетической функции в канонической форме (3), можно определить искомые параметры {Tjk|vx } и
{Ijk } «
' сети, решающей исходную задачу дискретнои оптимизации.
Синтез нейроподобных сетей. Методика синтеза НПС включает в себя три основных этапа [1]: нейросетевую интерпретацию задачи, конструирование энергетической функции, определение параметров сети.
Нейросетевая интерпретация задачи составления расписаний Нейросетевая интерпретация задачи составления расписания включает интерпретацию расписания, ограничений и оптимизируемого функционала.
Результаты нейросетевой интерпретации расписаний занятий представлены на рис. 1, где заштрихованными показаны нейроны, находящиеся в возбужденном состоянии.
Синтезируемая НПС представляет собой трехмерный массив нейронов размерности п х т х р нейронов, множество выходных сигналов которых
V = V
ijk
7 е 1,п, у е 1, т,к е 1,р} определяет ее состояние. Расписание занятий з(т) отображается на представленную структуру НС следующим образом:
(Пк = (тк ) = 7), 7 е 1,n,У е 1 m,к е 1,Р ,
т.е. возбужденное состояние 7ук-го нейрона взаимно однозначно соответствует расписанию, согласно которому в к-й момент времени 7-е занятие проводится в у-й аудитории. Здесь время т дискретизировано и представляет собой целочисленный аргумент расписания - номер пары в определенный день недели.
ЛЗ
. , I......
i i i i i i
i i i Í i i i i
.■¡■¡■¡■¡■¡■¡■i1
lJ^I
i ' 'II
i-
у
1 2 ... (с... р Время
Рис. 1. Нейросетевая интерпретация расписания занятий
Ограничимся рассмотрением такого подкласса расписаний, когда каждое занятие проводится в заданный момент времени не более чем в одной аудитории и в каждой аудитории в каждый момент времени проводится не более одного занятия.
Таким образом, ограничения расписания требуют, чтобы:
1) в каждой строке и каждом столбце любого моментального к-го сечения сети, представляющего собой матрицу V (к) ], 7 е 1, п, у е 1, т , к - фиксировано, было бы не более одного возбужденного нейрона;
2) в каждом столбце любого аудиторного у-сечения НС, представляющего собой матрицу нейронов [у7(у)к ],7 е 1,п,к е 1,р, у - фиксировано, также должно быть не более одного возбужденного нейрона;
3) в каждом столбце любого /-сечения для занятия, представляющего собой матрицу нейронов К)-к ] ] е 1, т,к е 1, р, / - фиксировано, должно быть
не более одного возбужденного нейрона.
Необходимость размещения всех занятий на сетке расписания определяет условие, согласно которому матрица любого /-сечения для занятия должна содержать ровно один возбужденный нейрон. Тогда ограничения можно интерпретировать следующим образом [1]:
&]к < 1, V] е1т, Ук е 1р ;
/=1
< 1, V/ е!^, Ук е ¡Тр;
]=1
т р _
££У/]к = 1,V/ е 1,п.
]=1к=1
Нейросетевую интерпретацию отсутствия накладок по группам и преподавателям рассмотрим на примере пары занятий / и ц для одной группы (рис. 2). Это означает, что матрица запросного /-сечения не должна содержать возбужденные нейроны с временной координатой к, равной временной координате любого возбужденного нейрона в матрице запросного ц-сечения.
¡-сечение
ц-сечен не
о. о
' 5
сч >-
__ <
1 2 ... к... р Время
Рис. 2. Нейросетевая интерпретация отсутствия накладок
Формализованно отсутствие накладок для рассматриваемой пары требований можно записать следующим образом:
{кК=Ф^К-к=1}.
Интерпретация оптимизируемого функционала требует, в первую очередь, интерпретировать понятие качество размещения /-го занятия. Компактное размещение занятия предполагает, что оно расположено рядом с другим занятием для этой группы. Если занятия / и / расположены рядом, то
можно записать
Е((,к+1 + -1) = гДе ^цу,р+1 = 0 и ^о = 0 • След°ва"
к=1
тельно, можно записать:
^ (V) = Е,,ц(1 - уф (+1 + ^-0),
= Е ,
к=1
где - элемент матрицы соответствия занятий по группам (^=1, если г и ц занятия принадлежат одной группе, иначе &ц=0).
Тогда нейросетевая интерпретация целевой функции (1) будет иметь вид
п п т р / /
Ф(V) =Еа г ЕЕЕ gгц(l - У,к ((
г=1 \Ц=11=1 к=1
цу ,к+1 + ^цу ,к -
Л •
(4)
Конструирование энергетической функции сети Конструируемую энергетическую функцию сети построим в виде суммы, отдельные слагаемые которой представляют собой выпуклые функции, принимающие минимальные значения на состояниях сети, удовлетворяющих рассмотренным ограничениям задачи и минимизирующих функцию стоимости.
Составляющая конструируемой энергетической функции, обеспечивающая выполнение ограничений, может быть представлена в виде:
( \
К (V) =
Е
к=1
т п п п т т
ЕЕЕ VI +ЕЕЕ ^
] =1 г=1 ц=1, г=1 ] =1У=1,
Ц*г у * ]
п ( т р Л
+Е ЕЕуцк -1
г=1V1 =1к=1
(5)
где С0 > 0 - постоянный множитель [1].
Составляющая конструируемой энергетической функции, обеспечивающая отсутствие накладок по группам, имеет следующий вид:
т р т
С„ п п
е, (V)ЕЕgц
2 г=1 ц=1
ЕЕЕуфУцук
1=1 к=1 у=1
(6)
где С, > 0 - постоянный множитель; - элемент матрицы соответствия занятий по группам (^=1, если г и ц занятия принадлежат одной группе, иначе &>=0).
Аналогично составляющая конструируемой энергетической функции, обеспечивающая отсутствие накладок по преподавателям, имеет следующий вид:
т р т
С п п
К (V)=С Е Е'
2 г=1 ц=1
гц
ЕЕЕуфУцук
1=1к=1у=1
(7)
где Сг > 0 - постоянный множитель; 'гц - элемент матрицы соответствия занятий по преподавателям ('гц=1, если г и ц занятия проводятся одним преподавателем, иначе 'гц=0).
2
2
Составляющая конструируемой энергетической функции, обеспечивающая минимизацию функции стоимости, будет иметь вид, аналогичный выражению (4):
п ( п т р , / ччЛ
Еф(V) = Сф^аг ЕЕЕё,Д1 -У1]к ((+1 + У^-1), (8) г=1 ^=1 ]=1к=1 )
где Сф > 0 - постоянный множитель.
В случае использования сети с непрерывными состояниями необходимое условие бинарности выходных состояний нейронов может обеспечиваться путем введения в конструируемую энергетическую функцию компонента следующего вида
° Св п т р { \ Е° (V) = —^ЕЕ Е^укУук (1 - у-]к), (9)
2 г=1 ] =1к=1
где Ср > 0 - постоянный множитель; Оук - коэффициент, численно равный количеству ранее рассмотренных ограничений, накладываемых на ук-й нейрон [6]. Теперь представим конструируемую энергетическую функцию в виде
суммы полученных выше составляющих:
0 0 0 0 0 0 Е (V) = Ео (V) + Ег (V) + Е° (V) + Еф (V) + Ер (V). (10)
Энергетическая функция сети Е(У, Т, I), заданная в канонической форме, описывается следующим образом:
1 п т р птр п т р
е (V, т, I) = - - ЕЕЕЕЕЕ УЛУ^ +ЕЕЕ УА. (11)
2 г=1 у=1к=1ц=^=1х=1 г=1 ]=1к=1
Подставив компоненты конструируемой энергетической функции (5)-(9) в выражение (10) и сопоставив его с энергией (11), определим искомые параметры сети для решения задачи составления расписания.
Синтез нейросети для составления расписания Приведем сконструированную энергетическую функцию к виду (11):
С п т р п С п т р т
е' (V)=^ЕЕ ее Е ЕУЛк + ^ЕЕ ЕЕ Е ЕУУк +
2 г=1 У=1к=1ц=1 2 г=1 У=1к=1V=1
V* у
С п т р т р С п т р п т
+— ЕЕЕЕЕ УУк +— ЕЕЕЕЕ ё^уУ^ +
2 г=1 ] =1к=1V=1 Х=1 2 г=1 У =1к=1 ц=1 V=1
С п т р п т п т р п
+ — ЕЕЕЕЕ'.'УУ* - СфЕЕЕЕаг ёг УУ,, к+1 -
2 г=1У=1к=1ц=1 V=1 г=1 у=1к=1ц=1
п т р п С_ п т р
- СфЕЕЕЕаг ёщуу,к-1 +—ЕЕЕ^-кУк-
г=1 ]=1к=1ц=1 2 г=1 У=1к=1
п т р С п т р пС п т р п
С0 ЕЕ ЕЕ ЕУук +—ЕЕЕ ЕУУ + + СфЕЕ ЕЕ ЕЕЕа,ё*
г=1 У=1к=1 2 г=1 У=1к=1 2 г=1 У=1к=1^=1
и определим искомые параметры сети, исключив из рассмотрения слагаемые, не зависящие от параметров состояния сети:
Tijkm 5гц^ jv5kx 5i^i1 5 jv ^kx 5^ Cggi|a5kx
C Ф с ф
- СЛц5 kx +-a ¿^i^5 }v 5xk+1 +-a iSi)£ }V 5xk-1-Cpcijk 5 ¿Ц5 }V 5 kx ;
2 2
= £l
1 ijk C0 + C ijk ,
2
где i,це1,n, j,v e 1,m , к,x e 1,p, а - символ (дельта) Кронекера (5^ = 1 при x = j и 5ху = 0, при x Фу).
Заключение. Разработана методика синтеза нейронных сетей для составления расписаний занятий в вузе.
Необходимо отметить, что в статье не затронуты вопросы качества ней-росетевого решения, а также связанные с этим проблемы достижения глобального минимума энергетической функции и вычисления постоянных множителей в конструируемой энергетической функции. Данные вопросы представляют самостоятельный интерес и требуют отдельного рассмотрения.
Синтезированная нейронная сеть будет реализована в автоматизированной системе «Расписание учебных занятий».
Литература
1. Ефимов В.В. Синтез нейроподобных сетей для задач составления расписаний / В.В. Ефимов // Изв. вузов. Сер. Приборостроение. 1996. № 1. С. 36-44.
2. Ачасова С.М. Вычисления на нейронных сетях: Обзор / С.М. Ачасова // Программирование. 1991. № 2. С. 40-50.
3. Меламед И.И. Нейронные сети и комбинаторная оптимизация / И.И. Меламед // Автоматика и телемеханика. 1994. № 4. С. 3-40.
4. HopfieldJ.J. Neural networks and physical systems with emergent collective computation abilities / J.J. Hopfield // Proc. of the Nat. Acad. of Scien. 1982. Vol. 79. P. 2554-2558.
5. Hopfield J.J. Neurons with graded response have collective computation properties like those of two-state neurons / J.J. Hopfield // Proc. of the Nat. Acad. of Scien. 1984. Vol. 81. P. 3088-3092.
6. PageE.W. Algorithm development for neural networks / E.W. Page // SPIE. 1988. Vol. 880. P. 11-19.
ЯКОВЛЕВ ВЛАДИМИР ВАСИЛЬЕВИЧ родился в 1981 г. Окончил Чувашский государственный университет. Ассистент кафедры вычислительной техники Чувашского университета. Область научных интересов - теория расписания. Автор 6 научных работ.
ВАСИЛЬЕВ ЮРИЙ ГЕННАДЬЕВИЧ родился в 1979 г. Окончил Чувашский государственный университет. Старший преподаватель кафедры вычислительной техники Чувашского университета. Область научных интересов - теория расписания. Автор более 10 научных работ.
КАЛМЫКОВ БАГДАТ МИННАЛИМОВИЧ родился в 1956 г. Окончил Чувашский государственный университет. Кандидат технических наук, профессор, заведующий кафедрой вычислительной техники Чувашского университета. Область научных интересов - теория расписания. Автор более 50 научных работ.