Научная статья на тему 'Многоиндексная задача построения расписания семинара'

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

CC BY
83
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПОСТРОЕНИЕ РАСПИСАНИЯ / МНОГОИНДЕКСНАЯ ЗАДАЧА / MULTI-INDEX PROBLEMS / ПОТОКОВЫЙ АЛГОРИТМ / FLOW ALGORITHM / ЭВРИСТИКА / HEURISTICS / SCHEDULING

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

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

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

Multinedex problem of seminar scheduling

The goal of the paper is to expand the field of applicability of flow algorithms for analyzing multi-index problems in solving one problem of scheduling theory. The paper considers a multi-index statement of seminar scheduling problem. Two particular cases are considered: the problem with the decomposition matrix of schedule effectiveness and the problem with the efficiency matrix, which reflects the correspondence of audiences to lectures. For the first special case, the possibility of reduction the seminar scheduling problem to network flow problem is shown. For the second one, a heuristic solution algorithm is proposed, and the results of the computational experiment are presented.

Текст научной работы на тему «Многоиндексная задача построения расписания семинара»

УДК 021.8 + 025.1 ББК 78.34

МНОГОИНДЕКСНАЯ ЗАДАЧА ПОСТРОЕНИЯ РАСПИСАНИЯ СЕМИНАРА1

2 3

Афраймович Л. Г. , Ильин С. Ю.

(Нижегородский государственный университет им. Н.И. Лобачевского, Нижний Новгород)

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

Ключевые слова: построение расписания, многоиндексная задача, потоковый алгоритм, эвристика.

1. Введение

Задачи планирования возникают во многих сферах жизнедеятельности [6]. В данной работе мы рассматриваем одну из задач планирования - задачу построения расписания при

1 Работа выполнена при поддержке РНФ, проект № 15-11-30022 «Глобальная оптимизация, суперкомпьютерные вычисления и приложения».

2 Лев Григорьевич Афраймович, доктор физико-математических наук, профессор (levafraimovich@gmail. сот).

3 Сергей Юрьевич Ильин, студент (Шn_nnov_pf(@mail.ru).

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

Задачи планирования в большом числе постановок оказываются КР-трудными, что, согласно современной гипотезе, означает отсутствие эффективных алгоритмов решения [5, 10]. В литературе рассматриваются подходы к решению задач планирования, основанные на алгоритмах дискретной оптимизации, таких как метод ветвей и границ, метод динамического программирования [7], рассматриваются эвристические алгоритмы планирования [11], исследуются частные подклассы задач планирования, для решения которых применимы ¿-приближенные алгоритмы [8].

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

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

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

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

Рассмотрим содержательную постановку задачи построения расписания семинара. Известны доступные аудитории, лекторы и множество лекций, которые необходимо провести в рамках семинара. Для каждой аудитории известно время ее доступности. Для каждого лектора известно максимальное число лекций и множество лекций, которые он может провести, а также доступное время. Для семинара определено максимальное число лекций, которые могут идти параллельно. Нужно составить расписание семинара: определить время проведения лекций, назначить лекторов и аудитории таким образом, чтобы «обобщенная эффективность» расписания принимала экстремальное значение.

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

2.2. ИСХОДНЫЕ ПАРАМЕТРЫ

Введём следующие исходные параметры: I — множество аудиторий, J - множество лекторов, К - множество лекций, Т - множество тактов времени. Далее пусть

2.1. СОДЕРЖАТЕЛЬНАЯ ПОСТАНОВКА

1, если аудитория I свободна в такт I, 0 иначе;

Г 1, если лектор у может провести лекцию к , у [ 0 иначе ;

Г 1, если лектор у свободен в такт г,

= 1л

[ 0 иначе;

Оу - максимальное количество семинаров, которое готов провести лектор у; В - максимальное количество лекций, которые могут проводиться параллельно; Сукг -коэффициент, отражающий эффективность проведения лектором у лекции к в аудитории г в такт г, г е I, у е 3, к е К, г е Т.

2.3 ВАРЬИРУЕМЫЕ ПАРАМЕТРЫ

Введём следующие варьируемые параметры:

Г 1, если лектор у пров. лекцию к в ауд. / в такт г,

х№ = ] Л

[ 0 иначе;

г е I, у е 3, к е К, г е Т.

2.4 СИСТЕМА ОГРАНИЧЕНИЙ

Допустимым расписанием будем называть набор варьируемых параметров Хукг, г е I, у е 3, к е К, г е Т, удовлетворяющих следующей системе ограничений:

(1) V V хш < , г е I, г еТ;

(аудиторию можно занимать только когда она свободна);

(2) ТеиТетХ* < у, У е J, к е К;

(лектора можно назначить только на лекцию, которую он может провести);

(3) V V < Н.„ У е J, г е Т;

(лектора можно назначить только когда он свободен);

(4) Те Ткек ТгетХкг < , У е ^

(количество лекций, проводимых лектором, не может превышать максимально возможного значения);

(5) УеУУ^=1к е К;

(каждая лекция должна быть проведена одним лектором, в одной аудитории, в один такт времени);

(6) У У хш < 1, i е I, t е T;

V ' ¿—IjeJi—lkeK Vk ' ' '

(в каждый такт времени в аудитории проводится не более одной лекции);

(7) У У х..„ < 1, j е J, t е T;

v ' £—Че1 ¿—¡кеК 'jkt ' J ' '

(в каждый такт времени лектор проводит не более одной лекции);

(8) У У У <Б, t еТ;

(в каждый такт времени параллельно проводятся не больше B лекций);

(9) Xjh е { 0, 1}, i е I, j е J, к е К, t еТ; (естественные ограничения на переменные).

2.5 КРИТЕРИЙ ОПТИМИЗАЦИИ

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

(10) У У У У Сшхш ^ min,

характеризующий суммарную эффективность построенного расписания.

2.6 ВЫЧИСЛИТЕЛЬНАЯ СЛОЖНОСТЬ

Несложно увидеть, что задача построения расписания семинара (1)—(10) является NP-трудной, так как к ней за полиномиальное время сводится классическая NP-трудная аксиальная задача о назначениях [5], что обуславливает поиск частных подклассов задачи построения расписания семинара, для исследования которых применимы эффективные методы.

3. Матрица эффективности с декомпозиционной структурой

Известны классы многоиндексных задач, допускающие сведение к задачам поиска потока в сети [1-4]. Покажем, что поставленная задача построения расписания семинара формализуется как многоиндексная задача транспортного типа. При этом, когда многоиндексная матрица Су^, определяющая критерий эффективности расписания, имеет декомпозиционную структуру (см. [3]), задача построения расписания семинара сводима к задаче поиска потока в сети.

Несложно увидеть, что система ограничений (1)-(9) эквивалентна следующей системе:

(11) Т*,ТккХ^ < ^, г е Л г е т;

(12) Те ТетХк <У, уе ,, к е К;

(13) Т Т х..„ < Н , у е ,, г е Т;

(14) Т Тек ТетУ <, Уе ,;

(15) Т Т Т = 1, к е К;

(16) Т Т Т хш < Б, г е Т;

(17) х^ е 2+,г е I, у е ,, к е К, г е Т.

Согласно [1], задача (11)-(17), (10) относится к классу Ж(М), М = {{у, к}, {г, г}, {г, к}, {г, к, г}, {г, у, г}, {г, у, к}}. Здесь множество М является множеством подмножеств индексов, по которым происходит суммирование многоиндексной матрицы неизвестных в системе ограничений (11)—(16). Так, например, в ограничении (11) происходит суммирование по индексам у, к при фиксированных индексах г, г. Таким образом, ограничение (11) определяет элемент {/, к} множества М и т.д.

Далее рассмотрим частный случай задачи (1)-(10), когда матрица Сукг обладает следующей декомпозиционной структурой. Пусть заданы матрицы Ц, У}-к, Ж]Ъ г е I, у е 3, к е К, г е Т. Тогда рассмотрим частный случай, когда

(18) С1]Ь = V, + V, + , I е I, ] е 3, к е К, / е Г. Критерий оптимальности в данном случае будет иметь вид

(19) У (V + + ^ )^ т1п.

у ' ¿—Че1,]е3,кеК¿еТу й А ]к' Ук

Согласно [1], задача (11)-(16), (19) относится к классу ЩМ, Я), где М = {{', *}, {/, г), {/, k}, {/, k, г), {/,', t}, {/,', Н = {{/, t}, {', t}, {k,у}}. Здесь множество М, как уже отмечено выше, определяет систему ограничений (11)—(17), Н -множество подмножеств индексов, задающих

декомпозиционное представление (18) матрицы критерия оптимальности (19).

Введем ряд вспомогательных определений, предложенных в [1]. Пусть Е - множество индексов многоиндексной задачи и

/ с Е, тогда обозначим / = Е \ /. Далее, пусть М - некоторое

множество подмножеств индексов, М с 2е. Тогда обозначим

М = {7, / еМ}.

Пусть /1, /2, ..., /k - некоторое разбиение множества Е. Тогда будем говорить, что множество М обладает /ь /2, ..., /декомпозиционной структурой, если Мс {/ | / = 1, 2, ..., k} и и {/ и /+1 | I = 1, 2, ..., k-1}. В работах [1, 3] было показано, что

если множества М и Н одновременно являются /¡,/2, ••,/-декомпозиционными, то задача Ж(М, Н) сводима к задаче поиска потока в сети.

Согласно введенным выше обозначениям, Е = {/, у, k, t} для задачи (11)-(17), (19). Тогда рассмотрим разбиение / = {k}, /2 = {/'}, /з = {t}, /4 = {} множества Е.

Несложно увидеть, что множества М и Н одновременно являются/1,/2,/3,/4-декомпозиционными и задача (11)—(17), (19) сводима к задаче поиска потока в сети. Тогда согласно [1] существует алгоритм решения задачи (11)—(17), (19), требующий 0(п2 log2n) вычислительных операций, где п = I х J х К х Т|.

4. Матрица эффективности, отражающая соответствие аудиторий лекциям

Рассмотрим частный случай задачи (1)—(10), когда матрица эффективности отражает соответствие аудиторий лекциям. Подобная ситуация возникает, например, когда аудитория обладает некоторой вместительностью, оборудована специальной аппаратурой и т.д., а при этом для лекций задано пожелание о вместимости аудиторий, наличию аппаратуры и т.д. Тогда обозначим через Oik признак соответствия аудитории i лекции k: Oik равен 0, если лекция и аудитория соответствуют друг другу; и равен 1 в противном случае, i е I, k е К.

Критерий оптимальности при этом будет иметь вид (20) Бе/, jeJ,кеК,teT OikXijkt ^

Критерий (20) соответствует задаче построения расписания семинара с минимизацией количества лекций, проводимых в «несоответствующих» аудиториях.

Для решения задачи (1)-(9), (20) предлагается эвристический алгоритм. Ниже приводится описание данного алгоритма и результаты вычислительного эксперимента.

4.1. АЛГОРИТМ ПОИСКА РЕШЕНИЙ ЗАДАЧ СООТВЕТСТВИЯ

Шаг 1. Построим сетевую потоковую модель. Пусть V = К u К' u J u J' u T u T' u I - множество вершин, где К' = {k' | k е К}, J' = {' | j е J}, T' = {t' | t е T}, A = К х К' u u К' х J u J х J' u J' х T u T х T u T х I u I х К - множество дуг сети. Если a - дуга сети, то через la, ua, и ca обозначим верхнюю пропускную способность, нижнюю пропускную способность и стоимость дуги a соответственно, a е A. Тогда определим:

l(kk0 = 1, U(k,kr) = 1, C(k,kr) = о, (k, k) е К х K', l(kj = 0, U(kj) = Ljk, C(k'j) = 0, (k', j) е K' х J,

j = 0, j = Gj, j = 0, fc j") е J х J

l(j',t) = 0, um = Hjt, C(j't) = 0, (/■', t) е J' х T,

кип = 0, uft0 = B, cft0 = 0, (t, f) e T x T, l(t'x) = 0, H(0) = S^, С(Г,г) = 0, (t', i) e T x I, lm = 0, U(hk) = 1, С(г>) = Olk, (i, к) e I x K.

Шаг 2. Найдем циркуляцию минимальной стоимости в данной сети и декомпозируем поток на простые циклы [3].

Шаг 3. Рассмотрим все циклы декомпозиции потока. По построению циклы сети имеют длину, кратную 7. Если длина цикла равна 7, т.е. имеет вид к, к', j, j', t, t', i, к, то определим xijkt = 1.

Если длина цикла равна 7p, т.е. цикл имеет вид

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

кЬ к1 j1, j'b t1, t'l, i1, ^ k'2, j2, j'2, t2, t'2, i2, • • ^ ^ k'p, jp, j'p, tp, ^ кЬ

то декомпозируем данный цикл на подциклы длины 7. Среди возможных четырёх способов декомпозиции выберем наилучший, исходя из стоимостных коэффициентов Огк. Далее определим переменные задачи построения расписания семинара, соответствующие подциклам длины 7, равными 1.

По построению полученное решение будет являться допустимым решением задачи (1)-(9), (20).

4.2. РЕЗУЛЬТАТЫ ВЫЧИСЛИТЕЛЬНОГО ЭКСПЕРИМЕНТА

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

(20). Линейной релаксацией задачи (1)-(9), (20) является задача (1)-(8), (21), (20), в которой условие целочисленности переменных (9) заменено на линейное ограничение (21):

(21) 0 < xy.h < 1, i e I, je J, к e K, t e T.

Оптимум задачи (1)-(8), (21), (20) будет являться нижней оценкой для исходной задачи (1)-(9), (20) в связи с тем, что множество допустимых решений системы (1)-(8), (21) включает в себя множество допустимых решений системы (1)-(9).

Таблица 1. Результаты вычислительного эксперимента

Размерность1 Число проведённых экспериментов Оценка работы эвристического алгоритма2

8 10 10%

9 10 6%

10 10 10%

13 10 10%

1 За размерность п примем I = У = К = Т = п.

2 (Еэ - Е)/|К|, где Еэ - значение, полученное эвристикой; Е - нижняя оценка; |К| - число семинаров.

5. Заключение

Рассмотрена ОТ-трудная многоиндексная задача построения расписания семинара. Рассмотрено два частных случая: задача с декомпозиционной матрицей эффективности расписания и задача с матрицей эффективности, отражающей соответствие аудиторий лекциям. Для первого частного случая показана возможность сведения задачи построения расписания семинара к задаче поиска потока в сети. Тем самым предложен полиномиальный алгоритм решения, требующий 0(п2 log2n) вычислительных операций, где п = |1 х У х К х Т|. Для второго случая предложен полиномиальный эвристический алгоритм решения, основанный на поиске потока в специальной сетевой модели и декомпозиции найденного потока. Приведены результаты вычислительного эксперимента, показывающие отклонение значения критерия на решении, которое было найдено эвристическим алгоритмом, от нижней оценки задачи. Полученные результаты демонстрируют перспективность предложенного подхода - на тестовой выборке значение критерия отклонялось от нижней оценки не более чем на 10%.

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

Литература

1. АФРАЙМОВИЧ Л.Г. Эвристический метод решения целочисленных декомпозиционных многоиндексных задач // Автоматика и телемеханика. - 2014. - №8. - С. 3-18.

2. АФРАЙМОВИЧ Л.Г. Многоиндексные транспортные задачи с 2-вложенной структурой // Автоматика и телемеханика. - 2013. - №1. - С. 116-134.

3. АФРАЙМОВИЧ Л.Г. Многоиндексные транспортные задачи с декомпозиционной структурой // Автоматика и телемеханика. - 2012. - №1. - С. 130-147.

4. АФРАЙМОВИЧ Л.Г. Циклическая сводимость многоиндексных систем линейных неравенств транспортного типа // Известия Российской академии наук. Теория и системы управления. - 2010. - №4. -С. 83-90.

5. ГЭРИ М., ДЖОНСОН Д. Вычислительные машины и труднорешаемые задачи. - М.: Мир, 1982.

6. ЛАЗАРЕВ А.А., МУСАТОВА Е.Г., КВАРАЦХЕЛИЯ А.Г., ГАФАРОВ Е.Р. Теория расписаний. Задачи железнодорожного планирования. - М.: ИПУ РАН, 2012.

7. PINEDO M.L. Scheduling Theory, Algorithms, and Systems. -Springer, 2016.

8. JANSEN K. PRADEL L., SCHWARZ U.M., SVENSSON O.

Faster Approximation Algorithms for Scheduling with Fixed Jobs // Seventeenth Computing: The Australasian Theory Symposium, CATS-2011, Perth, Australia, January, 2011. -Vol. 119. - P. 3-10.

9. AHUJA R.K., MAGNATI T.L., ORLIN J.B. Netwo^ flows: theory, algorithms, and applications. - N.J. Prentice Hall, 1993.

10. BRUCKER P. Scheduling algorithms. - Springer-Verlag Berlin Heidelberg, 2007.

11. SAMPSON S., WEISS E. Increasing service levels in conference and educational scheduling: A heuristic approach // Management Science. - 1995. - No. 41(11). - P. 1816-1825.

MULTINEDEX PROBLEM OF SEMINAR SCHEDULING

Lev Afraymovich, Nizhny Novgorod State University, Nizhny Novgorod, Dr.Sc., professor (levafraimovich@gmail.ru). Sergey Ilyin, Nizhny Novgorod State University, Nizhny Novgorod, Dr.Sc., student (ilin_nnov_pf@mail.ru).

Abstract: The goal of the paper is to expand the field of applicability of flow algorithms for analyzing multi-index problems in solving one problem of scheduling theory. The paper considers a multi-index statement of seminar scheduling problem. Two particular cases are considered: the problem with the decomposition matrix of schedule effectiveness and the problem with the efficiency matrix, which reflects the correspondence of audiences to lectures. For the first special case, the possibility of reduction the seminar scheduling problem to network flow problem is shown. For the second one, a heuristic solution algorithm is proposed, and the results of the computational experiment are presented.

Keywords: scheduling, multi-index problems, flow algorithm, heuristics.

Статья представлена к публикации членом редакционной коллегии М.В. Губко.

Поступила в редакцию 15.10.2017.

Опубликована 31.05.2018.

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