книги / Типовые задачи оперативного управления непрерывным производством
..pdfВ [98] рассмотрен специальный метод декомпозиции. Так как этот метод позволяет решать детализированную задачу, рассмотрим его более подробно.
Решение задачи согласно [98] состоит в использо вании итерационной процедуры, состоящей из ife шагов. Во время каждого из к шагов решается последователь ность из Т задач. Обозначим эти задачи как SPh\,
■■■,SP“t.......SPkT_„ SP\.
3 вкmop
Рис. 6-2. Блочная структура детализированной задачи.
т-й
интервал
Ко э ф ф и ц и е н т
це л е в о й
фу н к ц и и
X, х 2
с.с2
1
В ,
h
L
К |
|
в. % |
|
в2 |
е2 |
|
|
|
|
|
|
Ез &2 |
-Ез |
|
|
а) |
|
|
1 |
|
|
Ei |
1 |
|
|
|
L |
. |
|
I S d J |
||
|
|
|
|
|
||||
|
1Н е м W7/7 |
|
|
|
|
|
||
9 9 9 |
h |
- i |
»*• |
X r. j |
x T |
П р а в ы е |
|
|
|
|
|
|
|
|
|
||
• • • ct-. |
ct Ct«I • • • |
cr-, |
C T |
ч и с т и |
|
|||
|
|
|
||||||
|
|
|
|
|
1 = |
d : |
|
|
|
|
|
|
|
1 |
~ |
а 1 |
|
9 |
|
|
|
|
|
|
|
|
• |
|
|
|
|
| |
: |
|
|
• |
|
|
|
|
|
|||
|
|
|
|
|
|
|
||
|
h |
i |
% |
|
1 |
= |
^ |
|
|
|
|
° И |
|
|
II |
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
• |
|
1 |
: |
|
|
|
|
|
• |
t |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
Br-, |
Dr |
|
|
|
6)
Рис. 6-3. Ступенчатая структура ограничений детализированной за дачи (с); ступенчатая структура ограничений (б).
Задача SP'Y* C O C T O H I |
в |
нахождении значений |
неотри |
|||
цательных переменных |
x kf |
(вектор) |
и Яр которые удов |
|||
летворяют |
ограничениям |
|
|
|
|
|
|
P/x*/ + 2 4 ,^ ‘ = |
d' : |
<6' 16) |
|||
|
|
|
i-i |
|
|
|
|
|
S |
М*= 1 |
|
<6'17) |
|
|
|
/=' |
|
|
|
|
и максимизируют функционал |
|
|
||||
|
|
|
|
/г-1 |
|
|
zkt= (Ct — л/г* + Л )х * ,+ 2 |
—max. |
(6-18) |
||||
|
|
|
|
/=» |
|
|
Здесь |
d,, с,, В, |
определяются исходной |
задачей |
календарного планирования; nkt+x — вектор двойственных
переменных задачи SPkt ,., |
соответствующих |
ограниче |
|
ниям (6-16). |
|
|
|
Значения pit и qh (вектор) определяются |
по фор |
||
мулам: |
|
|
|
|
Р!*= С/Ху.; |
|
|
|
/-1 |
|
(6-19) |
P 't — |
-j- 2 p st - i |
l't—v * = 3 , . . . , T; |
|
|
5 = 1 |
|
|
В задачу для Æ-го шага (6-16) — (6-17) входят значе ния pît и qjf для всех шагов от первого до (к—1)-го включительно, которые уже определены до начала рас четов /г-го шага. После перехода от одного шага к дру гому появляются новые рц и q-Y т. е. размерность ре шаемых задач возрастает.
Для задачи SPY необходимо знать вектор я \ +1. Ре
шение задач SPhi, ..., SPhT на каждом к-ы шаге осуще ствляется от последнего 7’-го интервала к первому. В первой задаче SPkr член jtr+iBr отсутствует, в ре-
* В задаче S P \ отсутствуют члены, включающие |
, а в за |
|
даче SP kT отсутствует член |
В/гг в функционале (6-18). |
зультате решения этой и двойственной к ней задайи на ходятся значения переменных лкт, которые используют ся в формулировке задачи SPkT l и т. д.
Таким образом, в задаче $Рк{значения nfe/+1 находятся при решении предыдущей прямой и двойственной задач
SP\+1.
При переходе от одного шага к следующему опти мальный базис задачи предыдущего шага (например, за
дачи SPk~l) используется как начальный базис соответ ствующей задачи следующего шага (задачи SPkt).
В [98] показано, что процедура сходится к решению за конечное число шагов. Условием получения оптималь ного решения является
2 |
= z*r, |
t=i
или
где aht— двойственная переменная задачи SPhu соот ветствующая ограничению (6-17).
Критерием останова итерационной процедуры реше ния могут служить условия, приведенные выше. В неко торых случаях исследователь может заранее назначить максимальное число шагов, при достижении которого
расчет прекращается. При этом степень |
приближения |
|
к оптимальному решению может быть оценена |
по бли- |
|
зости верхней оценки функционала задачи |
т |
nktàt к |
2 |
||
|
/=1 |
|
нижней zkT.
Полученное в результате описанной процедуры на k-м шаге решение xht не является допустимым для за дачи (6-16) — (6-18). Можно предложить два метода [98], позволяющие на основе решения xht получить до пустимое решение исходной детализированной задачи. Допустимое решение должно представлять собой линей ную комбинацию решений, полученных на всех к шагах процедуры, с весовыми коэффициентами р^, рЛ^О,
/=1
184
Обозначим допустимое решение исходной задачи (6-16) —(6-18) через у*, введем вектор jm/=(p!b р/1*).
Согласно первому методу значения yt и щ находятся по следующим рекуррентным формулам:
к
Уt= 'Z x itV‘It+i> t = T — 1 ,...,I;
/-* k
/=«
Этот метод требует хранения в памяти ЭВМ всех оптимальных решений для задач SPit, t= 1, .... Т. Вто рой метод не связан с хранением решений промежуточ ных задач, однако при его использовании требуется ре
шение последовательности из Т—1 задачи линейного программирования вида
шах (сф + р ^,)
при условиях
Dïy/+Q*p<=d*;
B<y*=d*+]—Df+iy*+1;
ep t= l, y^O , JLI^ O , |
t= T —1, |
1, |
|
причем yT—xhT и переменные |
pi не входят в задачу |
||
при t= 1. |
|
|
|
Здесь приняты те же обозначения, что и ранее: Q* — |
|||
матрица со столбцами q1*, |
q2*, ..., q**, |
коэффициенты |
|
в qJt вычисляются по формуле (6-19); |
е — единичный |
||
вектор. |
|
|
|
В [98] приведены некоторые данные по расчету ряда |
|||
экспериментальных задач |
предлагаемым |
методом на |
ЭВМ ИБМ 360/67. Приведем некоторые из этих данных, относящихся к двум задачам со ступенчатой структурой, имеющим параметры, приведенные в табл. 6-1.
|
|
|
|
|
|
Таблица 6-1 |
|
Задача |
|
|
|
Параметр |
|
|
|
т |
ш |
п |
N |
м |
п |
||
|
|||||||
1 |
6 |
и |
и |
118 |
50 |
3,19 |
|
2 |
и |
и |
il |
253 |
105 |
1,62 |
(SO
здесь |
T_число временных интервалов, т — наи |
большее |
число строк-ограничений на интервале, п — |
наибольшее число основных переменных на интервале, М — общее число переменных в задаче по всем интерва лам (включая дополнительные переменные), М — общее число строк в задаче, Я —процент ненулевого заполне
ния матрицы. |
|
|
|
|
|
|
На рис. |
6-4 приведены данные по сходимости рас |
|||||
|
|
сматриваемого |
метода. |
По |
||
|
|
оси ординат отложено отно |
||||
|
|
шение |
разности |
верхней и |
||
|
|
нижней текущих оценок |
це |
|||
|
|
левой функции к |
оптималь |
|||
|
|
ному |
значению |
целевой |
||
|
|
функции L, по оси абсцисс — |
||||
|
|
число расчетных шагов k. |
||||
|
|
Сравнение метода с тра |
||||
|
|
диционным симплекс-мето |
||||
Рис. 6-4. Показатели сходимо |
дом |
можно |
провести |
на |
||
сти. |
|
основе данных |
табл. |
6-2. |
||
(У— задача 1; |
2 — задача 2). |
[Рассматриваемый метод в |
||||
|
|
этой |
таблице |
представлен |
в виде двух вариаций (метод 1 и метод 2), отличающих
ся методом |
отыскания допустимого решения исходной |
||
задачи.] |
|
|
|
|
|
|
Таблица 6-2 |
|
|
Требуемая опера |
Время работы |
Задача |
Метод |
тивная память, |
процессора, |
|
|
тыс. слеп |
мин |
1 |
Симплекс-метод |
и |
0,4 |
|
Метод 1 |
3 |
1,8 |
|
Метод 2 |
2 |
2,9 |
2 |
Симплекс-метод |
27 |
3,6 |
|
Метод 1 |
8 |
9,1 |
|
Метод 2 |
3 |
17,0 |
Данные таблицы показывают, что симплекс-метод требует больше оперативной памяти, чем предлагаемый метод, однако обладает большим быстродействием. Из таблицы также видно, что метод 2 расходует меньше оперативной памяти, чем метод 1, но ведет к увеличе нию времени счета.
Предполагается, что программа работает с внешним накопителем, причем в оперативной памяти в каждый текущий момент времени хранится лишь та часть про граммы и данных, которые находятся в работе. Объем этих рабочих данных в оперативной памяти ЭВМ и при веден в третьем столбце табл. 6-2.
6-3. Метод упрощенной декомпозиции детализированной задачи
Рассмотренные выше общие методы декомпозиции требуют создания довольно сложных и больших про грамм, рассчитанных на ЭВМ с высоким быстродейст вием и развитой памятью. При применении их в про мышленных условиях возникают существенные трудно сти, так как промышленные организации, решающие по добные задачи, обычно имеют вычислительные средства средней и малой мощности с небольшой библиотекой стандартных программ (обычно включающей лишь не которые стандартные процедуры симплекс-метода реше ния задачи линейного программирования). Поэтому актуальна задача разработки таких процедур решения, в которых использование существенных особенностей структуры представленных задач позволило бы умень шить размерность детализированной задачи и эффек тивно применять стандартные программы линейного программирования. Одна из таких процедур [99] и рас сматривается в настоящем параграфе.
Для упрощения изложения будем в дальнейшем счи тать, что вся готовая продукция сразу отгружается по требителям, и как в задаче (6-8), так и в задаче (6-15) можно не учитывать ограничений, связанных с наличием выходных емкостей. Описанная далее процедура может быть применена и для решения с учетом этих огра
ничений.
Предварительно рассмотрим следующее свойство исходной (6-8) и детализированной (6-15) задач.
Предположим, что детализированная задача решена и получено значение целевой функции F*, затем решена соответствующая задача технико-экономического плани рования и получено значение F*a.
Можно показать, что
F\>F*, |
(6-20) |
f. ë. оптимальное значение целевой функций задачи (6-8) является верхней оценкой значения целевой функ ции детализированной задачи.
Действительно, если в задаче технико-экономиче- ското планирования сделать подстановку
г
■Кjs — - ^ |
) — 1 j • • • i Tl, S — 1 1 • • ■ j W i |
t= \
то эта задача превратится в детализированную задачу, в которой отсутствуют ограничения (6-13) и из всей си стемы ограничений (6-11) присутствуют только ограни чения, относящиеся к Г-му интервалу времени.
Таким образом, если детализированная задача имеет решение, то множество ее допустимых решений будет принадлежать множеству допустимых решений задачи технико-экономического планирования с указанной под становкой. В этом случае справедливо неравенство
(6-20).
Рассмотрим решение детализированной задачи. Предположим, что в результате ее решения на конец Г-го временного интервала имеются некоторые остатки
исходных компонентов 4?fr’ J= l, .... л, которые могут
быть и нулевыми, и некоторые значения суммарного вы пуска готовой продукции УsTt s= l, ..., m. Согласно введенным выше ограничениям
2 y s t , ~ 5 = 1 ,...,/л. t=i
Будем называть их конечными условиями 7Vo времен ного интервала. Конечные условия для (Т — 1)-го интер
вала |
запишутся как |
г ^ , УГ_,, г5,х ,= |
УГ_ 1= |
= |
Г—l}’ |
5 = 1 ,...,яг. |
|
Следует отметить, что существует, вообще говоря, бесчисленное множество конечных условий для (Т—1)- го интервала, из которых путем распределения потоков на Г-м интервале можно перейти в заданные конечные условия для Т-го интервала. Будем полагать, что это распределение потоков при заданных конечных условиях проводится оптимально, т. е. при максимизации крите рия (6-14). Аналогичным образом рассмотрим множест
во конечных условий интервала (Т—2), из которых мо* жет быть достигнуто каждое из допустимых конечных условий (Т—1)-го интервала и т. д. Последовательно проводя подобные рассмотрения, можно, наконец, дой ти до начала первого временного интервала.
Если каждое из конечных условий между временны ми интервалами условно изобразить кружком, а опти-
(2Т, У,)
Рис. 6-5. Дерево решений детализи рованной задачи.
мальное распределение потоков, соответствующее вы бранным конечным условиям, — прямоугольником, то задачу можно представить в виде дерева решений с бес конечным числом ветвей, часть которого изображена на рис. 6-5. Условия в начале первого интервала можно рассматривать как конечные условия специально введен ного нулевого интервала.
Цель процедуры получения оптимального детализи рованного плана состоит в нахождении таких ветвей этого дерева, которые ведут из заданных конечных усло вий нулевого интервала в заданные конечные условия Г-го интервала и при этом достигается максимум значе ния критерия (6-14).
Для нахождения такого оптимального решения мо жет быть использована процедура динамического про-
граммироваиия [16, 52], которая, однако, приводит к существенным вычислительным трудностям.
Исследуем другой подход. Рассмотрим верхнюю точ ку дерева решений, соответствующую концу Г-го интер вала. Конечные условия этого интервала известны из решения задачи оптимального технико-экономического планирования для Т интервалов. Предположим, что как-
то выбраны конечные условия Y'T-i для (Т—1)-го
интервала. Если эти условия известны, то оптимальное решение на последнем интервале определяется путем ре шения задачи только для этого интервала при известных
конечных условиях ZT—V ^’T- V ZT> ^т-
Кроме того, всегда можно получить оценку значения целевой функции для оптимального распределения по токов для первых Т—1 интервалов, приводящего к рас
сматриваемым конечным условиям z”x' , Y'T- \. Для это
го необходимо решить задачу оптимального технико экономического планирования для Т—1 интервалов и ко
нечных условий г^,, Y'T_j.
Выбор конечных условий (Т—1)-го интервала опре деляет ветвь дерева решений, по которой будет идти дальнейшее движение в процедуре решения. Естественно выбрать такое конечное условие между Т-м и (Т—1)-м временными интервалами, при котором максимизиро вались целевая функция на последнем Т-м интервале и максимальная оценка на всех Т—1 интервалах, начиная с первого.
Для этого необходимо решить следующую задачу: максимизировать
при ограничениях
п |
п |
п |
jsT — 1 ’
/ = l , .... я;