ОПРЕДЕЛЕНИЕ ПЛАНОВ АНАЛИЗА И ОПТИМИЗАЦИИ КОМПЛЕКСА ОПЕРАЦИЙ ПРИ ПЕРЕМЕЩЕНИИ РЕСУРСОВ УДК 519.72

advertisement
УДК 519.72
ОПРЕДЕЛЕНИЕ ПЛАНОВ АНАЛИЗА И ОПТИМИЗАЦИИ КОМПЛЕКСА
ОПЕРАЦИЙ ПРИ ПЕРЕМЕЩЕНИИ РЕСУРСОВ
В.И. Алферов, О.В. Будков, В.Н. Бурков
В статье рассматриваются вопросы анализа (определение моментов начала и окончания операций, а также резервов операций) и оптимизации комплексов операций при учете перемещений ресурсов
Ключевые слова: анализ, операция, планирование, ресурс
Проводится анализ и оптимизация комплексов операций при учете перемещений ресурсов′. Отмечается, что если операции выполняются с
переменной интенсивностью, то при наличии перемещений ресурсов классические методы определения моментов начала и окончания операций, а также такие понятия, как «критический путь», «резерв
времени» операции, становятся неприменимыми.
Предлагаются алгоритмы определения наиболее
ранних и наиболее поздних моментов начала и
окончания операций, введено понятие «резерв объема» операции, которое является мерой ее критичности, рассмотрено применение этого понятия.
В данной работе рассматриваются вопросы
анализа (определение моментов начала и окончания
операций, а также резервов операций) и оптимизации комплексов операций при учете перемещений ресурсов.
Учет перемещений ресурсов заставляет пересмотреть такие уже ставшие привычными понятия, как «критический путь», «резерв времени»
операции и др. [1], поскольку, помимо жестких ограничений, задаваемых сетью, возникают зависимости между операциями, вызванные переходом
ресурсов с одной операции на другую. Неприменимость указанных понятий при учете перемещений
ресурсов отмечалась в ряде работ [2, 3]. В [3, 4]
предлагалось определение резерва времени операции, учитывающее перемещение ресурсов. Там же
введена двойная сетевая модель комплекса операций, в которой основными переменными являются
потоки ресурсов между операциями, и описан алгоритм определения моментов окончания операций
при заданных потоках ресурсов. В [5] показано,
что, по-разному определяя перемещения ресурсов
между операциями, мы будем получать различные
значения резервов времени операций. Это приводит
к ряду задач оптимизации по резервам, т. е. к определению таких перемещений ресурсов, при которых
Алферов Виктор Иванович – ВГАСУ, докторант, тел.
(473) 276-40-07
Будков Олег Владимирович – ВГАСУ, аспирант, тел.
(473) 276-40-07
Бурков Владимир Николаевич – ИПУ РАН, д-р техн. наук, профессор, тел. (495) 334-79-00
обеспечивается максимальная надежность комплекса, оцениваемая по величине резервов операций.
В тех случаях, когда каждая операция комплекса выполняется фиксированным количеством
ресурсов, учет перемещений ресурсов не вызывает
особых затруднений. Достаточно считать, что зависимости, возникающие при перемещениях ресурсов
между операциями, ничем не отличаются от обычных (действительно, операция не может начаться,
пока не пришли все ресурсы, участвующие в ее выполнении) и можно применять классические алгоритмы определения резервов времени операций.
Трудности возникают тогда, когда допускается выполнение операций с переменной интенсивностью
(это наиболее важный случай на практике). В [3, 4]
предлагается следующее определение резерва времени операции:
∆τ i (ξt ) = δ (ξt ) − ξt ,
(1)
где δi (εт) — максимальная задержка i- й операции,
при которой задержка комплекса не превышает заданной величины 8т. При этом считается, что выполняются два условия. Первое условие запрещает
снимать ресурсы с операции до ее окончания. Однако во многих случаях целесообразно снять часть
ресурсов с данной операции, с тем чтобы можно
было начать другую, более важную операцию. Вовторых, предполагается, что задержка комплекса
вызвана задержкой только одной данной операции.
Это приводит к завышенному значению резерва
времени операции. Дело в том, что если на одной
операции сходятся ресурсы с нескольких операций,
то эффект от их задержки суммируется.
В связи с изложенным, на наш взгляд, было
бы более целесообразным отказаться от использования резерва времени операции как показателя ее
критичности в том случае, когда допускается выполнение операций с переменной интенсивностью
(отметим, что в большинстве современных программ распределения ресурсов предполагается по
крайней мере два уровня интенсивности операции).
В работе предлагается понятие резерва
объема операции, свободное от отмеченных выше
недостатков понятия резерва времени операции, и
рассматривается применение этого понятия.
Основные понятия и обозначения
Будем рассматривать двойную сетевую модель комплекса из п операций [3, 4]. Множество
операций разбито на классы таким образом, что
операции данного класса выполняются ресурсами
соответствующего вида.
Обозначим через W i объем i- й операции,
Vi(t) — количество ресурсов на ней (Vi(t) —
кусочно-постоянная функция, непрерывная справа),
U(Vi)—зависимость скорости выполнения операции от количества ресурсов (fi(Vi) — неубывающая функция V i fi (0) =0).
Если распределение ресурсов на операции
Vi(t) задано, то момент tiк окончания операции определяется из уравнения
t ik
∫ f i [vi (t )]dt = Wi
0
(2)
Будем говорить, что задан план по ресурсам, если задано множество чисел {ϕi j} где од —
количество ресурсов, переходящих с i-й операции
на j-ю. План по ресурсам можно получить, применяя один из алгоритмов распределения ресурсов.
Обозначим через Qi множество операций,
непосредственно предшествующих i- й операции,
Qi — множество операций, непосредственно следующих за i- й, R i — множество операций, с которых
ресурсы приходят на i-ю операцию (R i = {k : ϕki >
0 } ) , и R i — множество операций, на которые ресурсы уходят с i-й операции (R i = {j: ϕi j >0}). Так
как на некоторые операции ресурсы не приходят с
других операций, а назначаются сразу, то будем
обозначать через ϕi количество ресурсов, назначаемых на операцию непосредственно. Обозначим
также через θi j время перехода ресурсов с i-й операции на j-ю a ηij — минимальное время, которое
должно пройти между окончанием i- й операции и
началом операции j ∈ 0 i (по технологическим
причинам).
Включим в сеть дуги, соответствующие переходам ресурсов, обозначив их пунктиром.
Резерв объема операции
Пусть задан план по ресурсам {ϕi j } и
поздние моменты ti j п ухода ресурсов фij. Моменты
tijn могут либо быть директивными сроками, либо
получаются при обратном просчете комплекса. Если поздние моменты ухода некоторых ресурсов не
заданы, полагаем их равными достаточно большому
числу, которое заведомо больше момента окончания комплекса Т.
Пусть, далее, определены ранние моменты
окончания операций множества Qi U Ri и моменты
ухода tki ресурсов ϕi j.
Тогда можно найти момент возможного начала операции
tiнв = max(t kкр + η ki )
(3)
и ранние моменты прихода ресурсов ϕк j на i-ю операцию
t kip = max(tiкнв + θ ki )
(4)
По известным ϕк j, t ki и фij, t ij можно построить график Vi(t) наличия ресурсов на операции,
р
п
считая, что ресурсы приходят в моменты tрki а уходят в моменты t п ij. Обозначим через toi t1i tri последовательные моменты изменения функции V I , а
через V oi V1i, Vri - ее значения в эти моменты (считая, что Vi(t) непрерывна справа).
Найдем
Wi =
r −1
∑ f i (Vi q )(tiq +1 − tiq ) (5)
q =0
где Wi — общий объем, который могут выполнить ресурсы, поступающие на операцию i, до
поздних моментов ухода ресурсов с операции. Определение. Назовем резервом объема i-й операции
величину
∆Wi = W i − Wi =
r −1
= ∑ f i (Vi 2 )(tiq +1 − tiq ) − Wi
(6)
q =0
Физический смысл резерва объема заключается в следующем. Резерв объема — это объем,
который могли бы выполнить ресурсы за время их
максимально допустимого простоя (его величина
определяется тем, что ресурсы ϕij должны сниматься с операции не позднее моментов t п ij).
Если величина ∆Wi получилась отрицательной, это означает, что операцию i нельзя выполнить при данных моментах tp ij и t п ij.
Моменты tij ухода ресурсов ϕij - получаются
равномерным сдвигом поздних моментов ухода: tij
= tp ki —∆ti. Знак ∆ti соответствует знаку ∆Wi. Величина сдвига выбирается такой, чтобы функция
V i ( t ) — количество ресурсов на операции i — , построенная по значениям tp ki, tij и Фkj, удовлетворяла
уравнению (2), где
t kip = max tij
j
рации i.
(7)
Здесь tp ki — ранний момент окончания опе-
Процедура нахождения величины ∆ti приведена в Приложении.
При этом может оказаться, что благодаря
осуществленному сдвигу количество ресурсов,
приходящих на операцию, можно уменьшить.
Например, в случае положительного резерва объема (рисунок,а) ресурсы, приходящие в момент t3i, не используются на i -й операции (функция
V i ( i ) показана на рисунке тонкой линией), а поэтому их можно направить на другие операции.
В этом случае возникает неоднозначность в
распределении ресурсов, так как неизвестно, на какую из операций нужно направить снятые с i-й операции ресурсы. Такой план по ресурсам называется
некорректным. Для корректировки плана необходимо устранить неоднозначность распределения ресурсов. Будем пользоваться следующим простым
правилом: освобождающиеся ресурсы распределяются по операциям j ∈ Ri последовательно, согласно возрастанию tпij (либо tнвi при равных tпij). Воз-
можны и другие способы корректировки плана. Например, можно распределять освобождающиеся ресурсы по операциям j ∈ Ri пропорционально ϕij
(«веерный способ» корректировки плана).
Если же ∆Wi < 0 (рисунок, б), то может оказаться, что в момент tp ki (например, t3i на рисунок,
б) на i -ю операцию поступают ресурсы ϕк j и в этот
же момент в результате произведенного сдвига
должны уходить ресурсы ϕij. Очевидно, что в этом
случае лучше направить ресурсы ϕк j = min (ϕк j, ϕij)
на операцию j не с операции а непосредственно с
операции к, а ресурсы ϕij оставить на i -й операции.
а
б
Пример. Рассмотрим часть комплекса.
Пусть fi(Vi) = Vi θ ij = ηij = 0, а все tпij = 50.
Пусть, далее, W4 = 12 t1кр = 5, t2кр = 9, t3кр = 12, t5нв = 8,
t6нв = 10, t7нв = 12. Тогда t14 = 5, V14 =4, t24= 9, V24 =
10, t34 = 12, V34 = 13.
Таким образом, ∆W4 = 528, ∆t4 = 42, a tKp4 =
50 — 42 = 8.
Ресурсы ϕ24 и ϕ34 приходят уже после
окончания операции. Поэтому ресурсы ϕ34 = 3, приходящие позже всех, назначим на операцию 7, имеющую наибольшее значение tнв7 = 12. Ресурсы ϕ24
частично (2 единицы) назначаем на операцию 7, а
остальные 4 единицы — на операцию 6. Резерв
объема в новом плане ∆W4 =168.
Определение правосдвинутого плана
Рассмотрим обращенную сеть (т. е. изменим направление всех дуг сети на обратное) и соответственно обращенный план по ресурсам (заменив
каждое перемещение ресурсов ϕij обратным перемещением ϕij‘ = ϕij с временем перемещения θ’ ij = θ
ij.
Будем считать, что левосдвинутый план
комплекса известен, т. е. величины tнвi, tpki tpki и tij
заданы.
Определим поздние моменты ухода τпjk ресурсов ϕjk:
τпjk = T- tpki,
(8)
где Т — заданный срок окончания комплекса.
Найдем левосдвинутый план для обращенного комплекса, считая, что величины Т — τ (где τji
— ранние моменты прихода ресурсов) не должны
превышать директивных поздних сроков ухода ресурсов t п ij . Пусть τiкр — ранние моменты окончания
операций в этом плане. Преобразованием t = Т — τ
(τ — время в обращенном комплексе) получим право- сдвинутый план комплекса. Моменты tнпi = Т —
τiкр называются поздними моментами начала операций. Новые поздние моменты ухода ресурсов ϕij
равны Т — τрji.
Улучшение плана
Определение 2. Операция называется критической, если ее резерв объема равен нулю.
Определение 2. Критическим путем называется путь, ведущий от множества входных операций к множеству выходных операций и состоящий
из критических операций.
Теорема 1. Пусть время выполнения комплекса при прямом и обратном просчетах сети не
изменяется, а моменты t п ij не являются директивными. Если операция i критическая, то моменты
изменения количества ресурсов Vi(t) на ней определяются операциями, которые также являются критическими.
Рассмотрим операции k∈Q i такие, что tkkp
нp
= t i — ηki - Поскольку ∆Wi = 0, то tнpi = tнпi. Кроме
того, tkkp ≤ tkkп ≤ tнпi — ηki. Таким образом, tkkp = tkkп.
Отсюда следует, что все tкj= tпkj, поскольку tkj получены равномерным сдвигом tпkj влево и, следовательно, ∆Wк=0
Рассмотрим теперь операции k ∈ R i такие,
что t ki = tpki— θ ki. Так как tp ki — θ ki = t ki ≤ t п ki ≤
t’ п ki - θ ki где t’ п ki __ поздние моменты прихода ресурсов ϕki, и t’ п ki = tpki (поскольку ∆Wi = 0), то все tkj
= t п ki (j∈ Rk), т. е.
∆Wk =о.
Аналогично можно показать, что резервы
объема операций j таких, что
t p ij = tij + θij (j∈ R i )
и t j нп = t i кп + ηij (j ∈ Qi), равны нулю.
Следствие 1. Если выполнены предположения теоремы, то для каждой критической операции существует критический путь, проходящий через нее.
Следствие 2. Резервы операций критического пути нельзя увеличить изменением моментов
перемещения ресурсов при постоянных потоках ресурсов и времени окончания комплекса.
Теорема 2. Для того чтобы время выполнения комплекса при заданном потоке ресурсов можно было уменьшить, необходимо и достаточно, чтобы в сети не существовало критического пути.
Необходимость. Проведем доказательство
методом от противного. Пусть время окончания
комплекса можно уменьшить на ∆i, изменив моменты ухода некоторых ресурсов, несмотря на то
что в сети имеется критический путь. При этом изменятся моменты ухода ресурсов хотя бы с одной
операции критического пути. Обозначим их iij и положим новые поздние моменты ухода ресурсов
равными t’iп =tij + ∆t, считая, что время выполнения
комплекса осталось прежним. Таким образом мы
получили, что при том же потоке ресурсов и том же
времени окончания комплекса резерв объема операции критического пути увеличился (так как tijп>ti)
в результате изменения моментов ухода ресурсов.
Но это противоречит следствию 2 приведенной
выше теоремы.
Достаточность. Рассмотрим разрез (X, X)
сети [1], состоящий из дуг (i, j) таких, что ∆Wi > 0.
В силу предположений теоремы такой разрез существует. Обозначим через S множество операций i
таких, что (Qi U Ri) ∩ X ≠ ф. Все операции i ∈ S
имеют ненулевой резерв объема. Рассмотрим функцию Vi( t ) в интервале [tiнр, tiкп]. Произведем сдвиг
моментов ухода ресурсов tij (j ∈ Ri) аналогично тому, как мы это делали при нахождении левосдвинутого плана. Новые моменты ухода t i j = t п i j — ∆t i
Проделав это со всеми операциями множества S,
тем самым уменьшим все поздние моменты начала
операций j ∈Qi ∩Х, а также все поздние моменты
прихода ресурсов на операции множества Ri ∩ X на
величину ∆t = min ∆ti. Поэтому, даже если следовать правосдвинутому плану (с учетом произведенного сдвига), время окончания комплекса уменьшится на ∆t.
Таким образом, если получен такой план
комплекса, что в сети нет критического пути, то
этот план можно улучшить, проводя дополнитель-
ные просчеты комплекса в прямом и обратном направлениях до тех пор, пока величина Т не уменьшится настолько, что в сети появится критический
путь.
Литература
1. Зуховицкий С. И., Радчик И. А. Математические методы сетевого планирования. «Наука», 1965.
2. Обзор исследований по вопросам оптимального использования ресурсов в системах сетевого планирования и управления. НИИСП Госстроя УССР, 1966.
3. Бурков В. Н., Ловецкий С. Е. О проблеме
временного планирования // Проблемы организации научных исследований и разработок: сб. науч. трудов.
«Наука», 1967.
4. Бурков В. Н., Ланд а Б. Д., Ловецкий С. Е.,
Гейман А. И., Чернышев В. Н. Сетевые модели и задачи
управления. «Советское радио», 1967.
5. Бурков В. Н., Лернер А. Я. Новые задачи
теории сетевого планирования иуправления // Вопросы
управления в больших системах: сб. науч. трудов. Онтиприбор, 1967.
Воронежский государственный архитектурно-строительный университет
Институт проблем управления им. В.А. Трапезникова РАН (г. Москва)
DEFINITION OF PLANS OF THE ANALYSIS AND OPTIMIZATION
OF THE COMPLEX OF OPERATIONS AT ПЕРМЕЩЕНИЯ RESOURCES
V.I. Alferov, O.V. Budkov, V.N. Burkov
In clause questions of the analysis (definition of the moment of the beginning and the termination of operations, and
also reserves of operations) and optimization of complexes of operations are considered at the account of movings of resources
Key words: the analysis, operation, planning, a resource
Download