УПРАВЛЕНИЕ В СОЦИАЛЬНЫХ И ЭКОНОМИЧЕСКИХ СИСТЕМАХ
УДК 658.512.6
Н. И. ЮСУПОВА, О. Н. СМЕТАНИНА, А.А.АХТАРИЕВ
ОБ ОДНОЙ КЛАССИФИКАЦИИ ЗАДАЧ СОСТАВЛЕНИЯ РАСПИСАНИЙ
Рассмотрены области применения задач составления расписаний, такие как календарное планирование, собственно, теория расписаний, составление временных таблиц, маршрутизация пакетов. Предложена классификация задач теории расписаний в зависимости от характеристик машин, работ и целевых функций. Задачи составлениярасписаний; теориярасписаний; работа; машина; операция; классификация задач; целевая функция; календарное планирование; составление временных таблиц; маршрутизация пакетов
Целью исследования операций, науки, занимающейся разработкой и практическим применением методов оптимального управления организационными системами, является количественное обоснование принимаемых решений по управлению организациями. Задачи исследования операций можно разбить на классы: задачи управления запасами; задачи распределения ресурсов; задачи ремонта и замены оборудования; задачи массового обслуживания; задачи теории расписаний (ТР); задачи транспортного типа (выбора маршрутов перевозок); задачи сетевого планирования и управления; задачи планировки и размещения объектов; комбинированные задачи.
Задачи упорядочивания работ, выполняемых машинами, при использовании каких-либо ресурсов, являются задачами теории расписаний. Результаты решения подобных задач принимают стоимостной характер или определяются другой величиной. Практические задачи возникают на производстве, транспорте, образовании, управлении, информатике и др. Исследование задач ТР, а
также методов и алгоритмов их решения по-
2
зволяет получить оптимальные результаты.
В данной статье приводится обзор задач теории расписаний, рассмотрены области применения задач составления расписаний и предложена классификация задач в зависимости от характеристик машин, работ и целевых функций.
1. ЗАДАЧИ СОСТАВЛЕНИЯ РАСПИСАНИЙ
Основными терминами теории расписаний являются следующие понятия — операция, работа, машина — физическая природа которых безразлична для данной теории [4]. Существенны только их общие свойства, независимые от прикладного содержания.
Задача теории расписаний считается заданной, если определены подлежащие выполнению работы и операции; количество и типы машин, выполняющих операцию; порядок прохождения машин; критерии оценки расписаний.
Под моделью в рамках теории расписаний понимается какая-либо математическая модель управляемого дискретного технологического процесса, в которой определено множество допустимых расписаний этого процесса [4]. Если при этом определен критерий, согласно которому одни расписания более предпочтительны, чем другие, и ставится задача найти наиболее оптимальное по данному критерию расписание, то можно говорить о задаче ТР. В рамках одной и той же технологической модели можно ставить различные задачи, выбирая различные критерии оптимальности. Причем эти задачи могут быть различными по сложности их решения — как точного, так и приближенного.
Точно очертить круг задач, которыми должна заниматься ТР, невозможно. Суще-
В статье изложены результаты исследований, частично поддержанных проектом РФФИ 06-07-89228-а.
2Теории расписаний посвящены работы зарубежных и отечественных ученых Дж.Адамса, Э.Х.Л Артса., Э. Баласа, П. Брукера, Б. Гиффлера, В. С. Гордона, Р. Л. Грэхама, Ж. Карлье, Р. В. Конвейя, Э. Г. Коффмана, А. А. Лазарева, Дж.К.Ленстра, В.Л.Максвелла, Л.В.Миллера, С.В.Севастьянова, В.С.Танаева,
Дж. Л. Томпсона, Х. Фишера, Я. М. Шафранского, В. В. Шкурбы, Т. Ямады и др. [1-4].
ствует несколько разделов математики, которые решают весьма близкие задачи, но при этом пользуются разными методами. Так, например, «водораздел» между моделями, изучаемыми ТР и теорией массового обслуживания (ТМО), проходит по способу задания входной информации: если все входные данные известны точно (детерминированная модель), то это — сфера действия ТР; если же какие-то события выполняются с определенной вероятностью (про которую что-то известно), то такие (стохастические) модели изучает ТМО. В самой ТР различаются модели статические (в которых решение о выборе расписания принимается при наличии полной информации, известной до начала решения задачи) и динамические (в которых процесс решения затягивается на неопределенный срок — расписание строится по частям, по мере поступления — или не поступления — новой информации; в любой момент нужно быть готовым, что процесс поступления информации завершится, и потребуется «отчет» о качестве построенного расписания).
2. ПРИМЕР ЗАДАЧИ СОСТАВЛЕНИЯ РАСПИСАНИЙ
Имеется множество различных машин (например, это могут быть станки, в производственном цехе на заводе, компьютерные рабочие станции), которые осуществляют какие-либо операции (выполняют определенные технические операции с деталями, производят цикл расчетов на определенной рабочей станции) в работах (соответственно совокупность технических операций или циклов расчетов). Каждая работа состоит из операций, которые имеют определенный установленный порядок. Для каждой машины заданы те операции, которые необходимо осуществить, но порядок не установлен. Существуют некоторые ограничения: количество машин для каждой работы предопределено; одна машина может производить только одну работу одновременно. Время выполнения каждой конкретной операции зафиксировано. Необходимо минимизировать время выполнения всех операций.
Предыдущие работы [5-8] авторов посвящены использованию генетического подхода и алгоритма Shifting Bottleneck, алгоритма локального поиска и метаэвристического алгоритма для составления расписаний с целью минимизации времени выполнения операций в задачах, относящихся к области теории расписаний в узком смысле.
3. ОБЛАСТИ ПРИМЕНЕНИЯ ЗАДАЧ СОСТАВЛЕНИЯ РАСПИСАНИЙ
В ТР исторически сложились две родственные области: в литературе [1-4] они называются сетевое, или календарное планирование (в англоязычной — Project scheduling (PS)) и собственно теория расписаний (Machine scheduling (MS)) (рис. 1). Первоначально они довольно сильно различались формулировками задач: в задачах сетевого планирования, как правило, присутствуют ресурсные ограничения и не упоминается ни о каких машинах; в теории расписаний, наоборот, обязательно есть машины (являющиеся специфическим видом ресурсов), есть работы, состоящие, вообще говоря, из нескольких операций (в отличие от работ, рассматриваемых в сетевом планировании), и, как правило, нет других ресурсных ограничений, хотя могут присутствовать довольно сложные ограничения другого вида. Однако по мере развития эти области все больше сближаются друг с другом. В задачах теории расписаний (MS) начинают рассматриваться более общие машинные требования (и, следовательно, стираются различия в ресурсных ограничениях). В то же время, в моделях сетевого планирования (PS) начинают рассматриваться другие ограничения, которые ранее были характерны лишь для моделей теории расписаний (MS).
В результате обе области ТР решают практически один и тот же круг задач, но при этом пользуются разными моделями (т. е. говорят как бы на разных, хотя и родственных языках) и несколько различными методами решения.
Задачи составления расписаний
Ґ ч
Маршрутизация
пакетов
(PR)
Рис. 1. Основные классы задач по составлению расписаний
Таким образом, ТР можно понимать как в узком (теория расписаний (MS)), так и в более широком смысле (теория расписаний (MS) + сетевое планирование (PS)). Хотя, как правило, рассматриваемые модели будут допускать формулировки как на языке сетевого планирования (PS), так и на языке теории расписаний (MS), авторы в основном используют модели теории расписаний (MS). В общем случае выбор используемого типа модели диктуется соображениями удобства формулировки и компактностью записи входной информации.
Помимо сетевого планирования (PS) и теории расписаний (MS), задачи на составление расписаний рассматриваются в таких отраслях исследования операций как составление временных таблиц (Time tabling (TT)) и маршрутизация пакетов (Packet routing (PR)) [1-4]. К маршрутизации пакетов (PR) относятся задачи составления расписания занятий в университете, недельных (циклических) расписаний полетов самолетов в рамках одного или нескольких аэропортов, недельных или суточных расписаний движения железнодорожного транспорта и т. п. Для всех этих задач характерно то, что интервал времени, внутри которого следует «расписать» заданный набор работ, известен заранее. Таким образом, здесь не рассматриваются задачи на быстродействие (т. е., на минимум длины расписания), — обычно используются другие критерии оценки качества строящегося расписания. Например, для первой из упомянутых задач: минимизация максимальной длины рабочего дня Университета, минимизация числа «дыр» в расписаниях групп и преподавателей, максимальное удовлетворение «нестрогих» пожеланий преподавателей ко времени проведения занятия, и т. д., и т. п.
Маршрутизация пакетов (PR) — сравнительно молодая отрасль науки, возникшая в связи с необходимостью в оптимизации потоков информации, курсирующей в различных сетях связи (в локальных сетях либо в глобальной сети Интернет). Для задач из этой области также характерны специфические критерии оптимальности, не рассматривающиеся в рамках классической теории расписаний. Хотя некоторые, наиболее простые модели вполне могут быть сформулированы в терминах классической ТР, более сложные задачи (где, например, помимо выбора расписания еще требуется выбирать маршрут прохождения каждого пакета в сети) уже не укладываются в рамки ТР. Решение таких задач
требует специфических методов, не характерных для ТР.
Далее под теорией расписаний (ТР) понимаются только задачи класса МБ (Теория расписаний в узком смысле).
4. КЛАССИФИКАЦИЯ ЗАДАЧ В ЗАВИСИМОСТИ ОТ ХАРАКТЕРИСТИК МАШИН, РАБОТ, ЦЕЛЕВОЙ ФУНКЦИИ
На базе известных классификаций [1, 4] авторами предложена обобщенная классификация задач составления расписаний, в которой любая задача может быть записана следующим образом: а|/3|7, где а — характеристики машин (табл. 1); /3 — характеристики работ (табл. 2); 7 — целевая функция задачи (табл. 3). Работы состоят из операций: ^ = = {Ок ,0І2,... , Оіщ }. Операция 0^. требует времени и может выполняться на одной из машин множества ^ С {Мі,... , Мт}. Если , то получаем модель с предписаниями. Если , то получаем мо-
дель с параллельными машинами.
Поле а состоит из 2 частей а = «і«2, где
— характеристики машин.
Целевые функции: обозначим через щ -время окончания работы . Рассматриваются два типа минимизируемых целевых функций:
П
/(с) = max/i(ci), и /(с) = £ /«(с,).
* 4 = 1
Предлагаемая классификация далеко не исчерпывающая, так как постоянно возникают новые задачи, которые не укладываются в данные рамки.
Рис. 2. Особенности задач ТР в зависимости от характеристик машин, работ, целевой функции
Особенности задач ТР в зависимости от характеристик машин, работ, целевой функции приведены на рис. 2. В левой части рисунка представлены возможные целевые функции ( — время окончания всех работ,
T аблица1
Значение oi Характеристики машин
Ol = 0 Для каждой работы задана машина для ее выполнения
Ol = Р Машины параллельны и одинаковы = р,-
о i = R Машины параллельны, длительности выполнения работ произвольны, но рц =
= Р;/*;.;
Если о і Є {</:, P,Q, Щ, То щ = 1 Уji, т. е. каждая работа состоит ровно из одной операции
Ol = J У каждой операции своя машина \ц^\ = 1 и линейный порядок выполнения опе-
(job shop, рабочий цех) рации 0/1 —¥ 0;2 —¥ ... —¥ 0;„.
oi = F Машины упорядочены Мх, Мг,..., Мт и каждая работа проходит все машины в
(flow shop, потоковая линия) этом порядке, щ = т и р,;; = М;, V*
Oi = 0 Каждая работа состоит из т операций (щ = т), но = {Мх,..., Мт} и на
(open shop, открытая линия) множестве операций нет условий предшествования
oi = A" Смес^ и О
(mixed shop, смешанный цикл)
Ol = G Произвольный порядок предшествования на операциях (как в календарном пла-
(general case, общий случай) нировании (Р8))
Если oi Є {J,F,0,X,G}, То щ ^ 1, т. е. у каждой работы может быть несколько операций
T аблица 2
Значение в Характеристики работ
в і = pmtn Разрешаются прерывания
(preemption)
в2 = ргес Условия предшествования на множестве работ (цепи, деревья, сети)
(precedence relations)
!h = г/ Время поступления на обслуживание
Ді Є {pij = hpij Є {0,1}; р/,- = Уточнения для времени выполнения операций
= Ри(*),-}
$5 = d; Директивные сроки окончания работ
во = р — batching(s — batching) Работы разбиваются на группы, и в каждой группе берется максимум (сумма) времён выполнения работ
Tаблица3
Целевая функция Формулировка целевой функции
Стих = тах а 1=1 Время окончания всех работ
Ьптх = тах (с; - (1:) 1 = 1.,П Запаздывание относительно директивных сроков
Дпах= тах \а - (1:\ г=1.,п Отклонение от директивных сроков
ртах = Опережение директивных сроков
= тах (тах{0,Л/ — с,-}) {=!,...,п
п X) И';с; Взвешенная сумма окончания работ
г=1
— запаздывание относительно дирек-
п
тивных сроков, £ ицщ — взвешенная суміші
ма окончания работ), посередине — характеристики машин (БМ — одна машина, РМ — параллельные машины, ^Р — рабочий цех, РБР — потоковая линия, ОБР — открытая линия), а справа — характеристики работ (з-Ьа^Ь, p-batch — разбиение работ на группы, ршШ — разрешены прерывания, ргес — условие предшествования).
Задача типа ^Р согласно предлагаемой классификации рассматривается как задача с разрешенным прерыванием и целевой
функцией — временем окончания всех работ. Общая задача ^Р размерностью п х х т, решением которой является минимизация длины расписания, задается символами Л/ртЫ/Стах, и может быть описана множеством работ , которые производятся на множестве машин .
Рассматриваемая задача может быть задана с учетом следующих условий и ограничений: каждая работа должна осуществляться на определенной машине согласно технологической последовательности; каждая машина может одновременно осуществлять толь-
ко одну работу; осуществление работы на машине Мг называется операцией 0^г; операция продолжительностью требует непрерывного использования машины в течение всего выполнения операции; стартовое время и время выполнения операции задаются как и , соответственно; расписание — это множество времен выполнения для каждой операции ко-
торые выполняют данные требования; время, необходимое для выполнения всех работ называется длиной расписания, оно определяется как Cmax, т. е. = тах^хпд<г<то Cjr.
Технологическая последовательность машин может быть различной для каждой работы согласно первому условию и последовательность работ, осуществляемых на машинах, может быть также различной для каждой машины. Заданная технологическая последовательность для каждой работы может быть задана с помощью матрицы {Т^}, в которой относится к -й операции работы ^ на машине Мг. Необходимо оптимизировать задачу расписания по нахождению минимального значения .
Авторами рассматриваются и другие классы задач [5-6], например, задача типа БМ — одна машина, и методы их решения.
ЗАКЛЮЧЕНИЕ
Рассмотренные в статье области применения задач составления расписаний, такие как календарное планирование, теория расписаний, составление временных таблиц, маршрутизация пакетов могут быть сведены к моделям оптимизации процессов, ресурсов, потоков и маршрутов.
Статья содержит описание предложенной авторами обобщенной классификации задач составления расписаний (теории расписаний в узком смысле), построенной на основе анализа особенностей характеристик работ и машин, а также целевых функций. Предлагаемая классификация охватывает огромный круг задач, имеющих практическое применение. Например, цеховая задача с минимизацией времени окончания всех работ и с возможными прерываниями.
СПИСОК ЛИТЕРАТУРЫ
1. Graham, R. L. Optimization and approximation in deterministic sequencing and scheduling: a survey / R. L. Graham, E. L. Lawler, J. K. Lenstra
// Annals of Discrete Math. 1979. Vol. 5. P. 287326.
2. Fischer,H. Probabilistic learning combinations of local job scheduling rules / H. Fischer,
G. L. Thompson // Industrial Scheduling. Englewood Cliffs, NewJersey : Prentice Hall, 1963. P. 225-251.
3. Giffler, B Algorithms for solving production scheduling problems / B. Giffler, G. L. Thompson // Operation Research. 1960. No 8. P. 487-503.
4. Sevastjanov, S. V. On some geometric methods in scheduling theory: a survey / S. V. Sevastjanov // Discrete Applied Mathematics. 1994. No 55. P. 59-82.
5. Yussupova, N. I. The comparative analysis of the job shop scheduling methods / N. I. Yussupova, H. Schmeck, O. N. Smetanina, J. Branke, A. A. Akhtariev // Proc. of the 7th Int. Workshop on Comp. Science and Inform. Technol. CSIT’2005. Ufa, 2005. Vol. 1, P. 160-165.
6. Юсупова, Н. И. Метаэвристический алгоритм для составления расписаний /
H. И. Юсупова, О. Н. Сметанина, А. А. Ах-тариев // Социально-экономические и технические системы : сб. науч. тр. Набережные Челны, 2006. № 8.
ОБ АВТОРАХ
Юсупова Нафиса Исламовна, проф., зав. каф. выч. математики и кибернетики, декан ФИРТ. Дипл. радиофизик (Воронежск. гос. ун-т, 1975). Д-р техн. наук в обл. упр-я техн. сист. (УГАТУ,
1998). Иссл. в обл. ситуац. упр-я и информатики.
Сметанина Ольга Николаевна, доц. той же каф. Дипл. инж.-системотехн. по обраб. информ. (УАИ, 1985). Канд. техн. наук по АСУ (УГАТУ,
1999). Иссл. в обл. интел. информ. систем.
Ахтариев Айдар Азатович,
нач. фин. упр., гл. экон-т ОАО «АФ Банк». Дипл. спец. по мат. методам и иссл. операций в экономике (УГАТУ, 2004). Иссл. в обл. теории расписаний.