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

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

CC BY
225
34
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Проблемы управления
ВАК
Область наук
Ключевые слова
ПОЧТОВЫЕ ПЕРЕВОЗКИ / ЛИНЕЙНОЕ БУЛЕВО ПРОГРАММИРОВАНИЕ / ДЕКОМПОЗИЦИЯ / МЕТОД «ВЕТВЕЙ И ГРАНИЦ» / MAIL TRANSPORT / LINEAR BOOLEAN PROGRAMMING / DECOMPOSITION / BRANCH AND BOUND ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Зак Юрий Александрович, Турок Евгений Борисович

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

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

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

И-

удк 519.2/656.8

МАТЕМАТИЧЕСКИЕ МОДЕЛИ И АЛГОРИТМЫ ОПЕРАТИВНОГО УПРАВЛЕНИЯ ПОТОКАМИ КОРРЕСПОНДЕНЦИИ И ГРУЗОВ В СЕТИ ПОЧТОВЫХ ПЕРЕВОЗОК

Ю.А. Зак, Е.Б. Турок

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

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

ВВЕДЕНИЕ

Доставка почтовой корреспонденции — писем, бандеролей, посылок, периодических печатных изданий и др. — в пределах страны связана с привлечением значительных объемов материальных и трудовых ресурсов, требует больших финансовых затрат, современной системы менеджмента. Почтовые перевозки осуществляются как автомобильным, так и авиационным и железнодорожным транспортом. В настоящее время на территории России задействовано около 42 тыс. почтовых отделений. Ежегодно отделения компании «Почта России» принимают, обрабатывают и доставляют более 1,4 млрд. писем, более 38 млн. посылок [1]. В сети почтовых перевозок задействованы почтовые отделения и межрайонные почтамты, магистральные сортировочные центры (МСЦ), обрабатывающие всю исходящую (сортировка «до конечного МСЦ») и всю входящую корреспонденцию (сортировка «до почтамта»).

Отправка почтовых грузов в другие города и административные районы России осуществляется по схемам, представленным на рис. 1 и 2. На рис. 2 треугольниками обозначены региональные почтовые отделения, источники почтовых грузов (ПО),

окружностями — магистральные сортировочные и распределительные центры для входящей (СЦВ) и исходящей информации (ИСЦ), а прямоугольниками региональные центры и крупные фирмы — получатели почтовых грузов (ПП). Аналогичные схемы доставки почтовых грузов действуют и в других странах [2—9].

Рассматриваемая четырехуровневая сеть почтовых перевозок внутри страны состоит из очень большого числа узлов. Так, число ПО и межрайонных почтамтов может достигать нескольких сотен наименований, а число ИСЦ и СЦВ — от нескольких десятков до сотен.

Отправитель

Местное отделение связи

Межрайонный почтамт

МСЦ МСЦ

исходя- входя-

щей > щей

коррес- коррес-

понден- понден-

ции ции

Получатель

Местное отделение связи

Межрайонный почтамт

Рис. 1. Схема почтовых перевозок в Российской Федерации

Рис. 2. Схема доставки почтовых грузов

Функции затрат в зависимости от объемов перевозок по каждой дуге сети различны и зависят от расстояний, видов используемого транспорта, состояния сети дорог, особенностей местности и региона, технической оснащенности районных и межрайонных почтамтов, организации работ и квалификации обслуживающего персонала в различных регионах страны и многих других факторов. Оптимизация почтовых перевозок может принести значительный экономический эффект, исчисляемый десятками и даже сотнями миллионов рублей в год. Изменяющиеся в течение месяца фактические объемы перевозок между различными почтовыми отделениями и межрайонными почтамтами страны требуют оперативного оптимального управления распределением почтовых грузов.

Различные постановки задач оптимизации почтовых перевозок внутри страны рассматривались и решались в Германии, Канаде, Швейцарии, Австралии, Японии, Польше [2—9]. Предлагаются приближенные методы и эвристические алгоритмы решения задачи, основанные на распределении потоков в сети [10] и методах математического программирования. К недостаткам этих методов можно отнести отсутствие оценок отклонения от оптимального решения, что затрудняет выбор момента остановки итеративного процесса. Кроме того, предлагаемые методы обладают некоторыми недостатками для организации параллельных вычислений.

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

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

1. ПОСТАНОВКА И МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ЗАДАЧИ

Рассматривается задача оптимального распределения почтовых грузов четырехуровневой сети, включающей в себя следующие виды узлов: ПО, ИСЦ, СЦВ и ПП.

Введем следующие обозначения: 5 е 5 = {1, 2, ..., 5, ..., 5} — множество ПО; / е I = {1, 2, ..., I, ..., п} — множество ИСЦ; у' е / = {1, 2, ..., у, ..., т} — множество СЦВ; ? е Т = {1, 2, ..., t, ..., Т} — множество ПП; Ь[, 5 е 5, t е Т — объем поставок (корреспонденции, бандеролей, посылок, периодических изданий и др.) из ПО 5 в ПП t.

Вычислим суммарные объемы корреспонденции и грузов:

— отправляемых из каждого ПО 5

В = I Ь, 5 е 5,

I е Т

— поставляемых в каждый ПП t

В' = I Ь\, t е Т.

,5 е £

Условиями задачи могут накладываться дополнительные ограничения, что все почтовые грузы из каждого ПО 5 должны отправляться только в один единственный ИСЦ I, а все почтовые грузы в каждый ПП t должны поступать только из одного единственного СЦВ у.

Пропускные способности МСЦ ограничены

объемами й, I е I, и О, у' е /. Следовательно, при

1 }

распределении потоков должны выполняться ограничения

1+ В * '' е 1, (1

,5 е и+(1)

I В' < О, у е /. (2)

,5 е и-(1)

Здесь и +(/) и и (/') — соответственно входящий поток грузов в узел / и исходящий поток грузов из узла у.

Пусть заданы некоторые функции определения затрат (в зависимости от объемов перевозок (т. е. величины Ь)) по каждой из дуг (5, г), (г, у), (у, ^ транспортной сети.

Эти функции могут иметь вид

Л(Ь) =

+ ф(Ь), если Ь > 0, 0 в противном случае,

Л(Ь) =

0, если Ь = 0,

d1 + фх(Ь), если 0 < Ь < Ь\,

dR + фд(Ь), если Ьд _ 1 < Ь < Ьд.

Здесь ф(Ь), фг(Ь), г = 1, ..., Я — некоторые неубывающие функции своих аргументов.

Следовательно, могут быть определены: — стоимости перевозки заданных объемов почтовых грузов Ь'$ из ПО 5 назначением в ПП t по маршруту из ИСЦ г е I в СЦВ у' е /:

4 (иу) = // ЬЯ);

(3)

— стоимости различных допустимых вариантов перевозки заданных объемов почтовых грузов Ь^ из ПО 5 в ПП t:

а (/, у) =

= |/<Ь^) + /](Ь^) + ]Ь^)1, если В5< Ц & В'< , [да в противном случае;

— стоимости доставки суммарных объемов почтовых грузов В,, из ПО 5 в различные ИСЦ г е I:

С( ) /(В) если В < Ц, _ . (4)

С(5, г) = ^ 5 е 5, г е I; (4)

[да, если В$ > Сг,

— стоимости доставки суммарных объемов почтовых грузов В * в каждый ^й ПП из различных ИСЦ у е /:

//(В *), если В * < О,-, _ _ С(/, 0 = Г ] ] е J, t е Т. (5)

да, если В > О,, Введем следующие булевы переменные:

— переменная х . определяет, осуществляется ли поставка в объеме В,, из ПО 5 в ИСЦ г, или нет;

— переменная х] определяет, осуществляется ли поставка в объеме В' из СЦВ у' в ПП t, или нет;

— переменная гЯ] определяет, осуществляется

ли поставка в объеме Ь^, направляемая из ПО 5 назначением в ПП ^ через ИСЦ г и СЦВ у, или нет.

На булевы переменные задачи налагаются следующие ограничения:

— поставка в объеме В,, из ПО 5 может осуществляться только в один ИСЦ г е I:

^ =

1 если I I ЬЯ

ВГ

] е/* еТ

0 в противном случае,

5 е 5, г е I;

I хя- = 1 5 е 5, I ВЛ < С, г' е I; (6)

г е/

я е £

— поставка в объеме В в ПП t может осуществляться только из одного СЦВ у' е /:

х] =

1 если I I = В ^ .

г е/я е £ у е

0 в противном случае,

/, t е Т;

I х] = 1, t е Т, I Ь] х] < О,, у е / ; (7)

] е/

* е Т

— поставка в объеме Ь5 из ПО 5 в ПП t может осуществляться лишь по одной какой-либо дуге (г, у):

I 4 = 1, у е /, 5 е 5, t е Т;

г е/

I 4 = 1, г е I, 5 е 5, t е Т. (9)

] е/

Ограничение, определяющее условие, что поставка Ь^ должна осуществляться по дуге (г, у') только в том случае, если все грузы из ПО 5 направляются в ИСЦ г и все грузы из в ПП t посылаются из СЦВ у, имеет вид:

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

I хя. + I х] + I I 4 = 3

яе£ *еТ яе£ *еТ

г е I, у е /. (10)

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

F = I I ^ 'К + I I t) x +

se S iei teTjeJ

+ II II c\ j) zSij ^ min, (11)

t eT s e S i ei j eJ t

где значения с, (/,у), С(я, /), С(у, ^ вычисляются соответственно по формулам (3), (4) и (5).

Если известны значения всех переменных х, и

/ / х,, то значения переменных определяются однозначно.

Следовательно, оптимизация потоков корреспонденции в сети почтовых перевозок сводится к решению задачи математического программирования (6)—(11) с булевыми переменными хх1 и ¿¡¡у достаточно большого размера.

2. МЕТОДЫ ДЕКОМПОЗИЦИИ И ПРИБЛИЖЕННЫЕ МЕТОДЫ РЕШЕНИЯ ОБЩЕЙ ПРОБЛЕМЫ

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

Определим:

— если х, = 1,

Г с[( /,/'), если х, = 1, _ _ с, (/, У) = \ ' , 1 I е I, У е J; (12)

10, если Ху = 0;

— если х, = 1,

ч,. л _ [cS(i,j), если xj = 1,

Cs (', j) =

0, если X,- = 0;

i e I, j e J. (13)

Вычислим также

C(s, i) = I CS (', j), s e S, i e I, (14)

j eJ

при ограничениях (2), (7),

C (j, t) = I CS (i, j), t e T, j e J. (15)

i ei

Рассмотрим следующие две задачи булевого линейного программирования.

Задача 1. Ex = I I C(s, i)xis ^ min при огра-

S e S i ei

ничениях (1), (6).

Задача 2. E2 = I I C( j, t) xj ^ min при огра-

ничениях (2), (7).

teT jeJ

Приближенный метод решения общей проблемы может быть представлен в виде последовательного получения точных решений следующих двух задач булевого линейного программирования существенно меньшей размерности и более простой структуры: задач 2 и 3, а также задач 1 и 4 (задачи 3 и 4 см. далее). Из двух полученных результатов выбирается наилучший. Точность полученного таким способом приближенного решения может быть исследована только в результате большого объема вычислительных экспериментов.

Найдем решение задачи 1, в результате будут определены значения всех переменных хs е 5, / е I. Вектор значений переменных, полученных в результате решения задачи, обозначим X,1. Решим задачу 2 и определим значение всех переменных х,, ? е Т, у е J. Полученный вектор значений этих переменных обозначим Xь. Пусть Е™" и

т-тшт 1

е2 — соответственно значения функции цели в

оптимальном решении этих задач. Задачи 1 и 2, как и рассматриваемые далее задачи 3 и 4 являются NP-сложными.

На основе результатов решения этих задач по

формулам (12)—(15) вычислим значения с,,(/, у),

С, (/, у), С, (/, у) и СI (/, у).

Сформулируем и решим задачи булевого линейного программирования 3 и 4.

Задача 3. E3 = I I C (s, i)xis = Ц [C(s, i)

SeS iei seS iei

+

+ I cs (i, j)]xis ^ min, при ограничениях (1), (6).

j eJ

Задача 4. E4 = I I C(j, t)xj = Ц [C(j, t)

+

teT jeJ

teT jeJ

+ I cs (i, j)] xj ^ min, при ограничениях (2), (7).

i ei

Пусть получено решение задач 3 и 4, функции цели которых в оптимальном решении соответс-

j-^min j-^min

твенно равны E3 и E4 , а значения векторов переменных задач в оптимальном решении — Xs

4t min min min min

и X . Если E3 + E2 < E4 + Ej , то в качестве приближенного решения общей задачи принимаем результаты решения задач 2 и 3 со значениями вектора переменных в наилучшем решении

(Xs3, X2t) и значением критерия оптимальности в

min min min

этом решении, равном E = E3 + E2 . В противном случае в качестве приближенного решения

общей задачи принимаем результаты решения за-

1 л 77шт у-гшт , у-гшт „

дач 1 и 4, Б = £1 + Б4 и вектор значения переменных (X1, X4*).

3. СВОЙСТВА допустимых и оптимальных решении

Определим

Р;г = с, + I тт^ (г, у), 5 е 5, г е I,

t е Т ] е /

(16)

Р = С) +

I тт с; (г, у), у' е I, t е Т, (17)

* еТ

7* г е /

а также

СТ = т1п Ся„ РГ = тт Р;г,

г е / г е /

стш = т^п с*, ртш = т^п р/,

5 е 5; t е Т.

(18) (19)

] е / ] е /

Грубая оценка нижней границы оптимального решения задачи определяется по формуле

^(Р) = тах^ I Р;

V ; е £

шт + с *

+ > сш1п I;

I сш

* еТ

+

I Р *

I , шт

* еТ

(20)

I сш

^ ; е £

В результате применения несложного алгоритма значение ^1(Р) может быть уточнено в сторону увеличения.

Пусть в процессе применения последовательных алгоритмов оптимизации на некотором этапе решения определены значения каких-либо переменных, а именно, переменных х ., определяющих, соединен ли ПО 5 с ИСЦ г (х . = 1), или такое соединение запрещено (х;г = 0), и переменных х], определяющих, соединен ли СЦВ у' с ПП t (х] = 1)

или нет (х] = 0).

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

Введем обозначения:

~1 ~0

5 , 5 и 5 — соответственно подмножества ПО, для которых установлено, что х . = 1, х . = 0 и значение переменной х . еще не выбрано;

~ 1 ~ о ~ —

Т , Т и Т — соответственно подмножества ПП, для которых установлено, что х]* = 1, х]* = 0

Обозначим соответственно

I; (V) = {г е I* 0}, 5 е {5- (у) и (у)}, (21)

— ¥ "" — ~ 0 I (V) = {у- е /|г] * 0}, t е {Т (у) и Т (у)}. (22)

В этом случае значения оценок Б;г(у) и Б] (у) вычисляются следующим образом:

Р» = СР) + I { с; (г; У-1)|= 1} +

* е Т (V)

+

I тт с; (г, у),

* е <Т"(у)иТ°(у)} ] е / (у)

(23)

Р] (у) = С] (у) + I {с; (г1, У)|х .! = 1} +

-1 ;г

; е £ (V)

+ I тт с;(г, у). (24)

; е <£>)и £%)} г е /'(у)

Здесь значения С;г(у) и Су (у) вычисляются соответственно по формулам

ад =

/;г( В;), если Ц - I (В;1|х;1 г = 1) > В; ,

;1 е £ (V)

или х;г = 1,

(25)

, если

- I ( В;1|х;1 г = 1) < В;

;1 е £ (V)

С (у) =

/(В *), если О] - I (В;1^1 = 1) > В *

е Т (V)

*

или х] = 1,

(26)

да, если

-V/1

О] - I (В/ |х] = 1) > В

е Т (V)

Найдем

Сш1п (у) = тт С», РГп (у) = тт Р»,

г е /,(у) г е /,(у)

5 е {5 (у) и 5 (у)};

1

С;ш1п (у) = СМ, 5 е ¿(у).

(27)

и значение переменной х]* еще не выбрано.

Ясно, что 5 и 5 и 5 = 5, 5 П 5 = 0,

^Г1 П 5 = 0, П 5 * 0, Т1 и Т0 и Т = Т, ТТ1 П ТТ0 = 0, Т1 П Т~ = 0, ТТ0 П Т- * 0.

Сш 1п (у) = тт С] (у), Ршп (у) = тт Р] (у),

] е / (V) ] е / (V)

0

t е {Т (у) и Т (у)}. Сш (у) = С] (у), t е Т1 (у).

(28)

да

Грубая оценка нижней границы оптимального решения задачи определяется по формуле

^{F(v)} = max 1 I P, (v) + I Cmin (v);

t eT

s e S

I Csmin (v) + I pmin (v)^.

seS teT

(29)

4. АЛГОРИТМЫ ТОЧНЫХ МЕТОДОВ РЕШЕНИЯ ЗАДАЧИ

Рассмотрим алгоритмы точных методов решения задачи на основе метода «ветвей и границ» [11—13]. Алгоритмы и формулы для вычисления нижней границы значения функции цели в оптимальном решении для каждого из подмножеств рассмотрены в § 3. Далее рассматриваются методы разбиения некоторого подмножества вариантов на два или несколько непересекающихся подмножеств (ветвление) и различные вычислительные схемы алгоритмов.

4.1. Разбиение на подмножества (ветвление)

Пусть значения Р,™1" (у) = Р, *;(у) достигается на некотором индексе /*(5, у) е I, (у), а значение Ршш (у) = Ру* достигается на некотором индексе

j*(t, v) e J (v).

Вычислим также значение Psmin'2 (v) = = min Psi(v) = P-. (v), которое достигается

i e(I(v)/i* (s, v)) "

на некотором индексе i (s, v) e Is (v), а также

Pmn 2 (v) = min Pj (v) = Pj(v), которое до. t j j e (J (v)/j*(t, v))

- ~t

стигается на некотором индексе j (t, v) e J (v). Определим

As(v) = Psmin 2 - Psmin, s e {S- (v) U S0 (v)}, (30)

At(v) = Pmin, 2 - Pmin, t e { T-(v) U TT0 (v)}, (31) а также

A1, max(v) = ma^ As(v) = As (v), A2, max(v) =

s e {S (v) uS°(v)}

max At(v) = At (v).

t e {T~(v)uT°(v)}

(32)

В качестве переменной, по которой производится ветвление на данном шаге, может быть выбрана переменная х. . или х'<у1 , обеспечи-

¡(.V), 1*( V) 1 * у, V)

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

4.2. Вычислительные схемы алгоритмов

Алгоритм решения задачи — это некоторый итеративный процесс, каждая итерация которого состоит из нескольких шагов.

Метка каждой вершины дерева (каждого подмножества вариантов у) имеет следующие признаки:

— вектор значения переменных х (у), каждая компонента которого может принимать следующие три значения: х (у) = 1, если в процессе решения установлено, что 5-й ПО соединен с /-м ИСЦ, х (у) = 0, если такое соединение запрещено, и хя(у) = —1, если возможность этого соединения должна быть установлена на последующих итерациях алгоритма;

— вектор значения переменных х, (у), каждая компонента которого может принимать следующие три значения: х1 (у) = 1, если в процессе решения установлено, что ?-й ПП соединен с у-м СЦВ, х1 (у) = 0, если такое соединение запрещено,

и х1 (у) = 1, если возможность этого соединения

должна быть установлена на последующих итерациях алгоритма;

— значение нижней границы функции цели для данного подмножества вариантов у — ^1{Р(у)};

— признак ст(у): ст(у) = 1, если подмножество планов у подлежит дальнейшему развитию; ст(у) = 0, если подмножество у уже разбито на два или несколько подмножеств и в процессе алгоритма не подлежит дальнейшему развитию;

— ст(у) = 2, если у-е подмножество является допустимым решением задачи, не подлежит дальнейшему развитию и значение ^1{Р(у)} является значением функции цели в данном допустимом решении.

Алгоритм А

Шаг 0 (предварительный). Полагаем индекс рассматриваемого множества вариантов V = 0 и значения

хя(у) = —1, ^ е £ , г е I; х] (V) = —1, г е Т, у е 1 ; а(у) = 1. Вычислим значения С , л е £ , г е I и С], у е / ,

я' ' ] ' '

г е Т, по формулам (14) и (15), а также значения с* (г,у),

п п/ ^шт г,шт п/ СУ • т • Г

Р] , С , Р , Сш1п и Ршп , л е £ , г е 1 , У е 1 ,

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

г е Т, соответственно по формулам (3), (16)—(19). Вычислим нижнюю границу функции цели в оптимальном

-1

решении по формуле (20) или (29). Положим £ = 0,

= 0, £- = £; Т1 = 0, Т0 = 0, Т- = Т.

Шаг 1. Для рассматриваемого подмножества вариантов V (в начале алгоритма V = 0) выполним все вычисления по формулам (21)—(28) и определим нижнюю границу функции цели в оптимальном решении по

формуле (29). Вычислим значения Р„тт (V) и Р„тт'2 (V),

^ е £ , а также Рт1п (V) и Рт1п 2 (V), t е Т . Найдем д1, тахМ и А2, тахМ по формулам (30)—(32).

Если А1 тахМ > А2 тахМ, то в качестве переменной, по которой ведется ветвление, выбираем переменную

x.

's(v),y*(s, v)

. В противном случае — переменную x'

t (v)

У*« v) .

Здесь {^(V), г*(.5, V)} и {t (V), _/*( t, V)} — пары индексов, на которых достигаются соответствующие минимальные значения.

Шаг 2. Если ветвление осуществлено по переменной х , то подмножество V разбиваем на два подмно-

«(V),/*(«, V)

жества: Г1'1 = {Г4х. . = 1} и Г2 = {Г4х. . = 0}.

1 1 «(V), г*(V) ' 1 1 «(V), г*(V) '

Если ветвление осуществлено по переменной х^ , то подмножество V разбиваем на два подмножества:

iv1 = |Qv|xt( v) = 1} и Qv2 = |Qv|xt(v) =

j*(t, v) j*(i, v)

В первом случае полагаем

S , = S U ä(v), S , = S , S , = S /i(v),

~v2,1 ~v, 1 Xv2,0 ~v, 0 „ ~v 2,- ~v, - . .

S ' = S , S,= S U s (v), S , = S / s (v). Во втором —

vi,i v, i vi,0 v, 0

Tv1,1 = T '1 U t (v), T ,0 = T ,

vi,

= t- /1 (v),

" v2,1

^v, 1

v2,0

^v, о

v2,

Т ' = Т , Т ' = Т и t (V), Т ' = Т ' /1 (V). Если для какого-то из подмножеств вариантов вы-

"VII "VII

полняются условия £ = £ и Т = Т , то получено допустимое решение, и переходим к шагу 3. В противном случае полагаем

^i(F(V)} = ^{F(V)},

^{F(V, 2)} = ^{F(V)}

A1, max( v) если x

A2, max( v) если x'

s(v),y*(S' v)

t (v)

= 1,

У*(t' v)

1.

Производим переиндексацию всех подлежащих дальнейшему разбиению подмножеств, I = 1, ..., /, ..., X, и переходим к шагу 4.

Шаг 3. Вычисляем значение функции цели в полученном допустимом решении. Если это решение лучше всех ранее полученных допустимых решений, то запоминаем его как Я . Если Я < ^{/(у)}, то получено оптимальное решение задачи, и алгоритм завершает свою работу. В противном случае переходим к шагу 2.

Шаг 4. Среди всех вершин дерева (подлежащих дальнейшему развитию подмножеств), для которых признак

a(v) = 1, находим подмножество с наименьшим значением нижней границы

^{F(v)} = { min yF(v)}|a(/) = 1

1 [ 1 < l < L 1

Пусть это будет подмножество с номером v. Переходим к шагу 1. Если таких подмножеств не существует,

то, если r ф да, соответствующий ему вектор переменных задачи и является решением задачи. Если R = да и для всех вершин дерева признак равен 0, то не существует допустимых решений задачи, и алгоритм заканчивает свою работу. ♦

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

Заметим, что для получения приближенного решения задачи может быть применена левосторонняя схема ветвления, в которой на шаге 4 алгоритма подмножество v для дальнейшего развития выбирается только среди двух образовавшихся

на шаге 2 подмножеств, т. е. и Qv2.

Приближенные методы решения основаны на последовательном решении задач 2 и 3, а также 1 и 4 алгоритмами ветвей и границ и выбора среди них наиболее эффективного.

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

[Emin - ^i{F(v)}]/^i{F(v)} < 8,

где 8 — заданная точность получения решения,

Emin — наилучшее из полученных приближенных решений задачи, ^1{F(v)} — наименьшее граничное значение среди всех висячих вершин дерева.

Если точность полученного методом декомпозиции приближенного решения недостаточна, то выбираем некоторую другую менее эффективную висячую вершину в дереве решений задач 1 или 2 и развиваем это подмножество планов до получения следующего оптимального решения этой задачи. Результаты полученного решения используем в качестве исходных данных для получения других решений задач 3 и (или) 4.

Если такая процедура будет проведена до состояния, что граничные значения для всех подлежащих развитию (висячих) вершин дерева при последовательном решении задач 1, 3 и 2, 4 будут

больше Emin полученного наиболее эффективного допустимого решения (рекорда), то это будет свидетельствовать о получении точного решения задачи. При реализации приближенного метода решения значительное количество висячих вершин

+

дерева, расположенных на ранних этапах ветвления, со значением ^1{Е(у)}, близким к Ет1П, может не храниться в памяти.

Авторами разработаны программы реализации точного и приближенного методов решения задачи и проведены вычислительные эксперименты при решении некоторых тестовых задач размерностью ПО и ПП до 50 узлов и ИСЦ и СЦВ до 20 узлов. Для получения приближенных решений с отклонениями 4—9,5 % от оптимального решения требуется 2—10 мин на многопроцессорной ЭВМ.

При организации параллельных вычислений, которые могут быть реализованы, например, на основе пакета «ОрепМР» [14], каждым процессором может обрабатываться своя перспективная ветвь дерева решений задачи.

ЗАКЛЮЧЕНИЕ

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

Авторами разработано программное обеспечение решения сформулированной задачи, позволяющее получать эффективные решения задач оптимизации почтовых перевозок достаточно большой размерности. В реальных задачах могут не рассматриваться возможности поставки грузов из ПО в те ИСЦ, а также из СЦВ в те ПП, расстояние, а следовательно, и удельные затраты на транспортировку грузов для которых в несколько (а в некоторых случаях и в десятки раз) превосходят удельные затраты на транспортировку для целого ряда имеющихся в наличии пунктов сети, лежащих на небольших расстояниях друг от друга. Учитывая, что в эффективных решениях реальных проблем такие связи практически никогда не могут быть выбраны, это исключение может быть выполнено на предварительных этапах при подготовке исходных данных для решения задачи. Такая процедура позволит сократить размерность решаемой оптимизационной задачи, что даст возможность получать на современных компьютерах эффективные оперативные решения перераспределения грузопотоков.

Требуемые объемы перевозок (значения Ь,) определяются местными отделениями связи или межрайонными почтамтами и направляются в центральный вычислительный центр Главного центра магистральных перевозок. Здесь решается опти-

мизационная задача. Полученные результаты реализуются во всех узлах ПО, ИСЦ и СЦВ транспортной сети в сроки, предусматривающие времена доставки этих грузов в соответствующие узлы сети.

ЛИТЕРАТУРА

1. Сайт «Почта России». URL: — http://www.russianpost.ru/ rp/company/ru/home (дата посещения 04.08.2011).

2. Sebastian H.-J. Optimization Approaches in the Strategic and Tactical Planning of Networks for Letter, Parcel and Freight Mail, in: edited book on «Modelling for Decision Support in Network-based Services». — Wiley Series in Systems Engineering and Management / Editors: D. Dolk and J. Granat, Nov. 2008.

3. Sebastian, H.-J. Optimization of Distribution Networks in Postal Logistics. — Informs Annual Meeting, Seattle, USA, Nov. 2007.

4. Bruns А., Klose А., Stahly Р. Retruction of Swiss parcel delivery services // OR Spectrum. — 2000. — N 22. — P. 285—302.

5. Armacost А.Р., Barnhart С., Ware K.A, Wilsor A.M. UPS Optimizes Its Air Network // Interfaces. — 2004. — Vol. 34, N 1. — P. 15—25.

6. Duhaime R, Riopel D, Langevin A. Value Analysis and Optimization of Reusable Containers at Canada Post // Interfaces. — 2001. — Vol. 31, N 3. — P. 3—15.

7. Hollis B, Forbes M, Douglas B. Vehicle Routing and Crew Scheduling for Metropolitan Mail Distribution at Australia Post // European Journ. Operational Research. — 2006. — Vol. 173. — P. 133—150.

8. Boronico J.S. Reliability-Constrained Pricing, Capacity, and Quality: An Illustration of Economic Concepts to Postal Services // Production and Operations Management. — 1999. — Vol. 8, N 1. — P. 92—107.

9. Mizutani F., Uranishi S. The Post Ofice vs. Parcel Delivery Companies: Competition Effects on Costs and Productivity // Journal of Regulatory Economics. — 2003. — Vol. 23, N 3. — P. 299—319.

10. Ху Т. Потоки в сетях. — М.: Мир, 1974. — 519 с.

11. Зак Ю.А. Методы многоэкстремальной оптимизации в условиях ограничений для сепарабильно квазимонотонных функций. — Изв. РАН. Теория и системы управления. — 2011. — № 3. — С. 38—55.

12. Зак Ю.А. Вычислительные схемы последовательных алгоритмов оптимизации // Автоматика и вычислительная техника. — 1980. — № 1. — С. 46—55.

13. Зак Ю.А. Об одном классе многоэкстремальных задач и методах их решения // Автоматика и вычислительная техника. — 1979. — № 5. — С. 46—55.

14. OpenMP. URL: https://computing.llnl.gov/tutorials/openMP (дата посещения 04.08.2011).

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

В.Н. Бурковым.

Зак Юрий Александрович — д-р техн. наук, пенсионер,

г. Аахен, Германия,

® + 49 (0) 241/543255, И [email protected],

Турок Евгений Борисович — и. о. науч. сотрудника,

Технический университет Аахен (RWTH Aachen,

Center for Learning and Knowledge Management and Departmen),

И [email protected].

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