УДК 65.012.122
> ч
V,
ТРАНСПОРТНАЯ ЗАДАЧА ПО КРИТЕРИЮ МИНИМУМА ОБЩЕГО ВРЕМЕНИ С УЧЕТОМ ПОТЕРЬ НА ПРОМЕЖУТОЧНУЮ ОБРАБОТКУ РЕСУРСОВ
© 2003 г. Н.М. Нечитайло
The criterion of time transport model with interval processing is formulated. Using of Hungarian method for its solution is examined. Using of auxiliary two-measure matrixes for many-sided tasks solution is suggested.
Рассматривается задача, в которой ресурсы из пунктов производства поступают в пункты потребления после дополнительной обработки в промежуточных пунктах. Задача заключается в составлении плана перевозок, при котором либо все ресурсы вывозятся из исходных пунктов, либо полностью используются возможности пунктов промежуточной обработки, либо удовлетворяются потребности всех пунктов назначения, а время всей операции минимально. Задачи этого класса не распадаются на одностадийные (общее время операции, получаемое суммированием решений одностадийных задач, в среднем на 15 % и более превышает общее время существующего оптимального решения).
К настоящему времени в математическом программировании модели и методы поиска оптимальных решений многостадийных задач не нашли обстоятельного рассмотрения. Так, в [1, 2] дается решение задачи перевозок с промежуточной обработкой по критерию минимума суммарных издержек. Предложенный метод не позволяет решать многостадийные задачи с минимаксной целевой функцией, так как используемая матрица перевозок приводит к совокупности решений не связанных между собой одностадийных задач. Рассматриваемая задача имеет много общего с транспортной задачей с фиксированными доплатами [3], для решения которой используются либо приближенные методы (за счет линеаризации целевой функции), либо достаточно трудоемкие комбинаторные методы поиска точного решения. Возможности точного решения многостадийных задач по критерию времени комбинаторными методами изучены в [4]. Наиболее близка к сформулированной задаче указанная в [5, 6] двустадийная задача по критерию минимума общего времени, однако в ней не учитываются временные потери на обработку продукта в промежуточных пунктах, что и обусловливает необходимость разработки специального алгоритма.
В предложенной задаче-возможны три основных правила вывоза обработанного продукта из пунктов промежуточной обработки:
1) по окончании промежуточной обработки на всех пунктах рассматриваемой стадии;
2) по готовности очередной партии продукта, доставленной ранее из какого-либо пункта отправления (транзитные перевозки); -
3) по окончании обработки продукта, назначенного в рассматриваемый пункт промежуточной обработки (перевозки с накоплением).
Решение в соответствии с первым правилом интереса не представляет, так как в этом случае оптимальное решение может быть найдено последовательным решением независимых одностадийных задач известными методами [1-3, 7, 8]. Рассмотрим сначала решение задачи в соответствии со вторым правилом вывоза обработанного продукта, а затем, используя полученные результаты, составим алгоритм решения задачи для перевозок с накоплением. В обоих случаях предлагается использовать метод последовательного сокращения невязок, поскольку в отличие от методов последовательного улучшения плана решение, как правило, достигается за меньшее число итераций: отсутствует необходимость принятия специальных мер борьбы с вырожденностью, нет необходимости приведения задачи к сбалансированному виду.
Для простоты изложения рассмотрим двустадийную модель, поскольку, как будет показано ниже, ее обобщение для случая многостадийной обработки не вносит существенных изменений в алгоритм. Пусть х,у - количество продукта, доставляемое из базы А-, в В] через пункт обработки £>к. Будем полагать, что время обработки полуфабрикатов на каждом из промежуточных пунктов линейно зависит от объема поступившей партии. Предполагается также, что возможности пунктов промежуточной обработки позволяют обрабатывать полуфабрикаты без создания очередей (решение задачи в условиях образования очередей будет рассмотрено ниже). Требуется определить план перевозок Цлг/^Ц, при котором достигается минимум целевой функции
Р = шах ГЩ (.ХЦд) . (1)
I, к, У
где Хц,)) — функция, определяемая следующим образом:
. _ [* щ'+ с к ХШ] ПРИ ХЩ > °>
0 при = 0
при транзитных перевозках;
тах(4 + ск xikj)+tkj при Xlkj > 0, 0 ПРИ Xikj ~ 0
при перевозках с накоплением;
Ьк]-^1к+^”к] — время доставки из 1-й базы в у-й пункт назначения через к-й пункт промежуточной обработки. При этом должны быть выполнены условия
£ П
к=\]=\ т 5
1=1 к=1 (2) т я
2 —Як>
'=и=1
•Х/ф > 0, /= у = 1...П, £= 1 ...Б.
Для поиска оптимального решения предлагается определить нижнюю границу целевой функции Рп, с помощью которой затем вычислить ограничения на величину перевозимого продукта по каждому маршруту <1щ по правилу:
<*,у = гшп{аг-, дк, при
ск >0, < Рп( /= у = 1...я, );
^щ = тт{аг-, «и, £ ;} при /,л,у
ск =0, г|уу <Рп( г = 1...т, у = 1 ...п, к = 1..5);
= 0 ПРИ Гг*/ > Рп( 1 = 1 ...от,у = 1...П, А: = 1...$)
и решить задачу о максимальном потоке в сети с ограниченными пропускными способностями коммуникаций (в статье рассмотрено использование в этих целях модифицированного венгерского метода).
Если в результате решения задачи о потоке либо все ресурсы окажутся вывезенными из исходных пунктов, либо окажутся полностью загруженными пункты промежуточной обработки, либо окажутся полностью удовлетворенными потребности всех пунктов назначения, то оптимальное решение найдено. В противном случае значение Рп увеличивается либо до величины следующего по возрастанию времени % (в случае, когда пропускная способность разрешенных маршрутов достигла величины шш( д;, Ъ ;), либо в частном
случае задачи, когда отсутствуют временные потери на промежуточную обработку [4 - 6]), либо на величину АРи, следующим образом:
ЛРп - шаСк(к=1,..., в). (4)
• При решении иллюстративного примера для простоты примем ЛРп = 1, в случае необходимости проведем перерасчет для получения истинного значения функции (1). Затем производится пересчет ограничений на величину перевозимого продукта по каждому маршруту, решается задача о максимальном транспортном потоке и т.д.
Реализацию предлагаемого алгоритма рассмотрим на примере, представленном на рисунке в виде сети.
Цифры над линиями, соединяющими пункты сети, и цифры в правых верхних углах клеток матриц перевозок (табл. 1 - 4) - времена движения между соответствующими пунктами. Цифры в окружностях на рисунке — ресурсы и потребности соответствующих пунктов. В пунктах <2;> <Эг в окружностях виде знаменателя указано время обработки единицы полуфабриката.
Для определения нижней границы Рп целевой функции (1) в каждой строке и каждой группе столб-
цов по одноименным к и У матрицы перевозок найдем минимальное время (табл. 1) и среди полученных времен выявим максимальное время г(-0£0у (в приме-
ре *,-0£0/0=И)- В соответствии с [8], за время, меньшее г/о£оУо ’ перевозки не могут быть совершены. Найденная нижняя граница значения целевой функции может быть уточнена следующим образом. После вычисления ограничений на величины перевозок по маршрутам по правилу (3) необходимо проверить выполнение хотя бы одного из условий:
.9 П
к=1;=1
т 5
£ >Ь;,У=1...П, ■.
М*=1
т п
X — ^7к ’ к—1...5,
ММ
Невыполнение первого условия свидетельствует о невозможности вывоза всего продукта из исходных пунктов; невыполнение второго - о невозможности полного удовлетворения пунктов назначения; невыполнение третьего — о невозможности полного удовлетворения потребностей пунктов промежуточной обработки. При невыполнении всех условий (4) увеличим значение Рп до следующего по возрастанию целочисленного значения и вернемся к проверке выполнения условий (4). Поскольку иллюстративный пример представляет собой сбалансированную зада-
Таблицаї
Исходный план иллюстративного примера (^и=14)
Р і/ь, ч і/ь2 Ч і/ь3 ц2/Ь, С| 2 / Ь 2 Чг! Ь3
Зі 11 17 17 13 10 12 17 0 16 0 1 1 12 10 20
а2 13 10 15 0 19 0 12 10 7 2 12 6 18 20
а3 14 0 16 0 20 0 14 0 9 10 8 1 10
— — — — —
НІ
чу, величина Frt будет наращиваться до выполнения всех условий (4). Для иллюстративного примера Рп после уточнения стала равной 14. Вычисленные для иллюстративного примера проставлены в левых нижних углах клеток матриц перевозок (табл. 1 - 4).
Таблица 2
Первая вспомогательная матрица (Ри=15, Дх=2)
a,/q. al/C|2 ^2^І2 a3/q, a3/q2
bt И 17 16 13 12 14 14
17 — 0 17 17 10 + 5
Ь2 13 10 И 15 7 2 16 9
12 + 12 0 12 — 0 10
Ьз 17 10 19 6 18 20 8 1 —
0 21 0 20 + 0 10
- - - -
Затем составляется исходный план перевозок одним из известных методов [1-3, 7, 8]. При этом назначение величины перевозки в каждой клетке матрицы должно производится по правилу: х1к]-тт(аЬ), (11к1), где а\, с/’ъ Ь) - ресурсы и потребности соответствующих пунктов с учетом уже назначенных перевозок.
Исходный план иллюстративного примера (табл. 1), не является решением задачи, поскольку ни одно из условий (2) не приняло вид строгого равенства.
Построение цепочки следует начинать с клетки полностью открытого столбца, т.е. столбца, в котором неудовлетворенными остались потребности и пункта промежуточной обработки, и пункта назначения. Поскольку в полностью открытом третьем столбце примера нет клеток, через которые возможны перевозки, то он считается рассмотренным и ведется поиск следующего полностью открытого столбца. Других таких столбцов в матрице нет. Для иллюстративного примера не существует возможностей увеличения потока при Рп =14. Исходный план при ^ = 15 совпадает с исходным планом при Fи =14. Поскольку и в этой матрице (назовем ее исходной) нельзя построить ни одной цепочки, перейдем к рассмотрению первой вспомогательной матрицы перевозок, в которой х\к]=х]1Ь (Г1к]=с1’рь (1=1..т,]=1..п, к= 1..5).
Полученная матрица представлена в табл. 2, в которой построенная цепочка обозначена знаками "+" и расположенными в правых нижних углах клеток.
Поскольку в данной матрице возможности построения цепочек на этом оказались исчерпанными, то производится переход к исходной матрице. В ней также отсутствуют возможности построения цепочек по увеличению транспортного потока, производится переход ко второй (для двустадийной задачи - последней) вспомогательной матрице, в которой (табл. 3) х”А]-хк1],
(1”,^=<1к1], (7=1..т,у=1..п, &=1..$).
Так как и в этой матрице отсутствуют возможности наращивания транспортного потока, производится возврат к исходной матрице и увеличение Fn. Для иллюстративного примера без увеличения транспортного потока проведены шаги при Р/г= 15, 16,17. При Рп = 18 существует возможность наращивания потока на исходной матрице. В табл. 4 приведена матрица перевозок оптимального плана. При этом F =17,7 (это значение определяет перевозка А/- <21~В3).
Поскольку значение F при решении задачи транзитных перевозок не (превышает величины целевой функции при решении задачи с накоплением при тех же исходных данных, то предлагается получить оптимальное решение задачи с накоплением, используя результаты решения * задачи транзитных перевозок и исключая из него после пересчета времен перевозки со временем, равным значению Р (критические перевозки). Такое исключение может быть достигнуто присвоением максимальному времени (в примере -время движения по маршруту Аз - ВО, входящему в общее время критической перевозки какого-то штрафного значения и повторным решением транзитной задачи с измененными исходными данными. Если в результате решения после пересчета времен Р не превысит предыдущего значения целевой функции, то можно сделать вывод об успешном исключении критической перевозки. Затем следует поиск новой критической перевозки, попытка ее исключения и т.д. В противном случае следует вывод о невозможности исключения критической перевозки и о том, что на предыдущем шаге получено оптимальное решение задачи (при решении иллюстративного примера не удалось избавиться от перевозки по маршруту 2-1-1). При этом F= 19,7 (не удалось избавиться от маршрута Л2 - ()]).
Таким образом, поскольку суммарное значение целевых функций при решении примера как последовательности двух одностадийных задач равно 21,3 ед. времени, выигрыш при решении задачи транзитных перевозок составил 17 %, а при решении задачи с накоплением - 7,5 %.
В заключение следует отметить, что выигрыш, получаемый при решении многостадийных задач в соответствии как со вторым, так и с третьим правилами перемещения продукта через пункты промежуточной обработки, по сравнению с решением последовательности одностадийных задач является неубывающим при увеличении размерности задач (числа пунктов на любой стадии). При увеличении же числа стадий выигрыш от решения транзитных задач растет, а от за-
Вторая вспомогательная матрица (/'«=15)
Таблица 3
ai/bi a[/b2 a,/b, a2/b| a2/b2 а2/Ьз a3/b, ач/Ь2 a4/b3
qi 11 15 17 13 12 12 17 0 13 17 15 0 19 0 14 2 10 16 0 20 0
42 16 0 11 12 10 21 12 17 7 12 6 20 20 14 5 9 10 8 1 10
_ — - —
Таблица 4
Оптимальный план для задачи с транзитными перевозками
q i /ь i q i /ь2 q,/b3 q2/b, q2/b2 q2/b3
2] li 13 17 16 11 10
8 12 7
17 12 27 17 12 12
a? 13 15 19 12 7 6
20
17 12 0 17 12 20
a-, 14 16 20 14 9 8
9 1
10 10 0 10 10 10
дач с накоплением убывает. Изложенный алгоритм решения двустадийных задач может быть распространен и на многостадийные задачи, однако в этом случае возрастает число вспомогательных матриц перевозок, которое в общем случае равно р+\, р -число стадий промежуточной обработки.
Необходимо также отметить, что в случаях, когда возможности пунктов промежуточной обработки не позволяют обрабатывать полуфабрикаты без создания очередей, оптимальное решение может быть получено за счет решения конечной последовательности подзадач, в каждой из которых потребности пунктов промежуточной обработки равны их производительности, а ресурсы исходных пунктов и пунктов назначения вычисляются с учетом ресурсов, запланированных к перемещению в ходе решения предыдущих подзадач. При этом необходимо учитывать, что в последующих
задачах времена движения из исходных пунктов в пункты промежуточной обработки приравниваются нулю в случае использования этих маршрутов любой предыдущей подзадачей. В итоге наступает ситуация, когда либо все ресурсы вывезены из исходных пунктов, либо полностью удовлетворены потребности пунктов назначения, либо возможности пунктов промежуточной обработки полностью исчерпаны. Теперь необходимо наложить полученные решения друг на друга. Временные потери на ожидание обслуживания в очередях исходной задачи будут в таком решении учтены за счет суммирования времен обслуживания одноименных маршрутов всех подзадач.
Литература
1 .Гольштейн Е.Г., Юдин Д.Б. Задачи линейного программирования транспортного типа. М., 1969.
2. Зуховицкий С.И., Авдеева Л.И. Линейное и выпуклое программирование. М., 1969.,
3. Корбут А.А., Финкельштейн Ю.Ю. Дискретное программирование. М., 1969.
4. Нечитайло НМ., Носко С.В., Прокопец В.Н. //Сб. реф. деп. рукописей. 1991. Вып.19. Сер. Б. Инв. № В2058.
5. Золотухин В.Ф., Нечитайло Н.М. // Изв. вузов. Сев.-Кавк. регион. Естеств. науки. 1993. № 1-2. С. 4—13.
6. Золотухин В.Ф. и др. И Изв. вузов. Сев.-Кавк. регион. Естеств. науки. 1995. № 2. С. 16-24.
1. Золотухин В.Ф. Основы общей теории систем. 4.2: Элементы теории принятия решений: Учеб. пособие. М., 1993.
8. Триус Е.Б. Задачи математического программирования транспортного типа. М., 1967.
Ростовский государственный университет путей сообщения_____________________________________6 декабря 2002 г.
УДК 517.968 .
О ВЗАИМОСВЯЗИ ДОПУСТИМОСТИ И УСТОЙЧИВОСТИ ЛИНЕЙНЫХ ИНТЕГРАЛЬНЫХ УРАВНЕНИЙ ВОЛЬТЕРРА
©2003 г. В.Ф. Пуляев,Д.Г. Сокол
The problem about intercoupling of stability and admissibility tions is investigated.
Исследуется задача о взаимосвязи устойчивости и допустимости различных пар пространств для линейных интегральных уравнений Вольтерра вида
x(t) = \K{t,s)x{s)ds + f{t). (1)
а
Аналогичные вопросы изучались в работах [1-3]. В данном случае уравнение (1) рассматривается при более слабых предположениях относительно ядра K(t,s), что привело не только к изменению пространств, в которых изучается уравнение, но и потребовало применения новой техники для его исследования. Полученные результаты являются естественным развитием исследований указанных выше работ.
different pairs of the spaces for linear integral Volterra equa-
Обозначим через L£, loc(a,°°) пространство измеримых (относительно меры Лебега) отображений х:(а,°°)-> R”, ограниченных в существенном на любом промежутке (а,с), а через 1Д(а,°°) - его подпространство функций, для которых норма
|| jc ||L„ = vraisup || x(t) ||RII < 00 • Определим также под-~ /е (а,»)
пространства C0L^,(а,оо) = [хе 1^(0,°°):
vrailimx(z) = lim[vraisup || x(s) || „ ] = 0} и /—»<*> s>t
A0Ll(a,«o) = C0Ln.(a,eo)©Rn.