Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Басакер Р. Конечные графы и сети

.pdf
Скачиваний:
76
Добавлен:
25.10.2023
Размер:
12.41 Mб
Скачать

7.10] НЕКОТОРЫЕ СПЕЦИАЛЬНЫЕ ЗАДАЧИ О ПОТОКАХ 339

Пусть S j , . . . , Sm и Т\, Тп—множества пунктов отправления п пунктов получения соответственно, между которыми должен быть распределен некоторый однород­

ный товар. К а ж д ы й

пункт

отправления Sf имеет ограни­

ченный склад At и каждый

пункт

получения

Т}— опреде­

ленную

потребность

В}

(спрос).

Известна

стоимость

перевозки

единицы товара

из S,- в

Th равная

Un. В про­

стейшем случае на объемы перевозок из S,- в Ts не нало­

жено никаких

ограничений (конечно, они

не д о л ж н ы

нарушать

ограничений, накладываемых

складами А,

и спросом

Bj).

З а д а ч а состоит

в

отыскании

плана пере­

возок от

пунктов отправления

к

пунктам

потребления,

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

Эту задачу можно рассматривать как задачу нахож ­ дения максимального потока, имеющего минимальную

стоимость в сети, изображенной на

рис. 7.12. (Упорядо­

ченная

пара чисел

(х, у),

приписанная

к а ж д о й

дуге,

представляет пропускную способность дуги (х)

и еди­

ничную

стоимость

перевозок (у)).

Если

перевозки из

некоторых пунктов S, в некоторые пункты Т} не разреша ­

ются, то соответствующие

дуги в

сети

просто опуска­

ются. Если имеются ограничения на количество товара, перевозимого из некоторых S, в некоторые Th то соответ­ ствующим дугам приписывается конечная пропускная

способность.

В этом

случае, конечно, может оказаться,

что спрос в

пунктах

потребления не будет удовлетворен

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

Если m = ii, а А и В соответствуют работникам и ви­ дам работ соответственно, то та же самая модель приме­ нима для решения задачи о назначениях, в которой требуется назначить m работников для выполнения гп работ так, чтобы оптимально использовались их возмож ­

ности. (В

этом

случае под

11ц

следует

понимать

меру

полезности при

назначении

г'-го работника на

/-ую

работу.)

Величины Л,- и В,

полагаются

равными едини­

це; поэтому каждый работник должен быть назначен максимум на одну работу, к а ж д а я работа должна быть

22*

840

ПОТОКИ В СЕТЯХ

[ГЛ. 7

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

Д л я двудольных

графов

рассматривавшаяся

в главе

б задача

о максимальном

паросочетании

т а к ж е

может

быть сведена

к задаче о

нахождении

максимального

потока в

сети

типа

изображенной па рис. 7.12.

В этом

Рис. 7.1_'.

случае все дуги имеют едпнпчгую пропускную

способ­

ность,

стоимости не

учитываю . ся

и решается

з а д а ч а

максимизации потока

от источнн

а к стоку. Заметим,

что

задача

увеличения потока с nor. эщыо нахождения

пути

в графе

приращений

на самом

v i e

совпадает с задачей

нахождения чередующейся це...', соединяющей две не­

покрытые вершины, которая

бы. .: описана в разделе

6.14.

Упражнение 7.15.

Пусть

на

рис.

7.12

т — п = 8

и

каждый

Я .

соединяется дугой с

каждым

Т

•, все

Л\ =

1, а В . =

2 и

U.j

i\-j.

Найти максимальный

допустимый

поток

от

источника

к стоку,

имею­

щий минимальную стоимость.

7.11.Задачи о многопродуктовых потоках

До спх нор мы предполагали, что в рассматривав ­

шихся

сетях распространялся

некоторый

однородный

поток

или продукт

одного

вида. Если сеть

имела не­

сколько источников

и иеско

'.ько

стоков, то мы предпола-

-7.11]

ЗАДАЧИ

О МНОГОПРОДУКТОВЫХ ПОТОКАХ

311

тали,

что решение

может иметь

вид

потока

по цепи,

соединяющей любой источник с любым

стоком.

 

Пусть теперь мы имеем К продуктов, и среди

вершин

сети

имеется различных вершин у,-, z{

( 7 =

1, 2 , . . . , k)

таких, что в сети

одновременно

существует

потоков,

каждый из которых является потоком из г/,- в г,- (для не­

которого

/) и имеет заданную величину Qt.

 

 

Чтобы

различать

продукты,

обозначим

через /?/ по­

ток

/г-го

продукта из вершин vt и вершину

vh положив

при

этом,

что f%=—flj-

Пусть Сц

обозначает

пропускную

способность (в любом направлении) дуги, соединяющей

вершины vt и Vj. Возникает задача: приписать

каждой

дуге (/', /) целое число /?/ для

каждого продукта

k таким

образом, чтобы для любого фиксированного

k множество

потоков по дугам

Fk =

[flj]

являлось потоком

величи­

ны Qi,

из у,- в г{ и

чтобы

для

каждой дуги

(/, /)

выпол­

нялось

неравенство

 

 

 

 

(Может оказаться, что для получения решения

различ­

ные продукты должны течь в противоположных

направ ­

лениях по одной и той же дуге, поэтому в неравенстве стоит модуль.)

Д л я двухпродуктового случая, т. е. когда k = 2, Ху

[9]получил теоретический результат, аналогичный

теореме

о минимальном разрезе — максимальном

потоке,

и дал вычислительную процедуру для

решения

постав­

ленной

задачи. Д л я

иллюстрации этой

процедуры

рас­

смотрим

сеть, изображенную на

рис. 7.13. Предположим,

что к а ж д а я дуга

имеет (симметричную)

пропускную

спо­

собность, равную

2,

и что Qi =

Q 2 = 2 .

 

 

 

Рис. 7.13.

Рис. 7.14.

П р е ж д е всего пренебрежем продуктом 2 и будем искать любой допустимый поток величины Qi = 2 товара 1 из i/i в Zi, используя описанный ранее однопродукто-

342

ПОТОКИ В СЕТЯХ

[ГЛ. 7

вый метод. В результате мы можем получить, например, поток, показанный на рис. 7.14.

Если такого потока не существует, то, очевидно, зада ­ ча не имеет решения. Если же, как в нашем случае, хоти бы один такой поток существует, то па следующем шаге мы уменьшаем пропускные способности дуг на величины \f\i\ и повторяем весь процесс уже только для второго продукта. Уменьшенные пропускные способности для данного примера показаны на рис. 7.15. Очевидно, что

Hi

 

 

 

с,

г

 

2

Л 2

 

 

 

 

0

г

 

Z

 

0

 

0

 

 

Рис.

7.15.

 

Рис. 7.16.

здесь не существует допустимого потока продукта 2, так

как все дуги, инцидентные источнику у2,

имеют

пулевую

остаточную пропускную способность. Отсюда

мы

дела­

ем вывод, что перед тем, как пытаться пропустить

поток

продукта 2, нужно изменить маршрут движения

потока

для

продукта / .

 

 

 

 

 

Ху предложил следующую процедуру

для

изменения

маршрутов . Найдем прежде всего (если возможно)

неко­

торую цепь С( , ориентированную от

у2 к

z2

и

обладаю ­

щую

тем свойством, что, по крайней

мере, одна

единица

продукта / может быть добавлена к каждой дуге в на­ правлении, определяемом ориентацией цепи. Затем нахо­

дим

(если

возможно) некоторую

цепь С2, ориентирован­

ную

от z2

к у2 и имеющую то ж е

самое свойство. (Цепи

С\ и С2 могут содержать некоторые одинаковые дуги.) Цепи, удовлетворяющие названным условиям, показаны на рис. 7.16. Увеличим теперь поток продукта / в обеих

цепях

на

единицу

(на

практике

в некоторых

случаях

можно

использовать и

большие

приращения

потока) .

В результате

получим,

как

показано

на рис. 7.17, изме­

ненный

поток

продукта / .

Наконец

увеличим

поток

продукта

2 вдоль

цепи

С\

и обращенной цепи

С2 на

единицу и получим потоки, изображенные пунктиром на рис. 7.18.

СТОХАСТИЧЕСКИЕ ПОТОКИ В СЕТЯХ

343

В данном примере мы получили решение задачи, так как нам удалось обеспечить два одновременных потока разных продуктов величины 2. Если бы поток продукта 2 был меньше чем Q2 , то нужно было бы искать другую

1

 

/

 

1

 

i

г

/

! /

 

 

 

1

 

/

/

 

г

Рис. 7.17,.

 

Рис. 7 18.

 

пару цепей С\ и С2 , соответствующее

изменение маршру ­

та продукта / и увеличение потока

продукта

2. М о ж н о

показать, что если з а д а ч а

имеет решение, то

продолже ­

ние процесса выбора пар цепей в конечном счете приво­

дит

к увеличению

потока

продукта

2 до величины

Q2

(при

сохранении

величины

потока

продукта

/

на

уровне Q\). .

 

 

 

 

 

 

 

Пусть А\ и А 2 обозначают

соответственно пропускные

способности

минимальных

разрезов, отделяющих у\ от Z\

и у2

от 22 , а

А 1

2 — пропускная

способность минимального

разделяющего

множества,

которое пересекает все

цепи,

соединяющие у\ с zx и у2 с z2. Тогда двухпродуктовый аналог теоремы о минимальном разрезе и максимальном потоке формулируется следующим образом.

Теорема 7.9.

Потоки Fi

и F2 (из

у\ в zx

и

из у 2 в z2

соответственно),

имеющие

величины

Qi и

Q2,

совместно

допустимы тогда и только тогда, когда выполнены сле­ дующие три условия:

Qi^Au Q2^A2, Q i + Q 2 < i 4 l s .

Необходимость условии очевидна. Доказательство доста­ точности можно найти в работе [ 9 ] .

7.12.Стохастические потоки в сетях

Вданном разделе мы кратко изложили идеи, которые относятся к теории потоков в сетях, но происхождение которых восходит к теории массового обслуживания.

Рассмотрим сеть, пропускные способности дуг которой з а д а ю т с я распределениями вероятностей, являющимися

344

ПОТОКИ В СЕТЯХ'

[ГЛ. 7

ф у н к ц и я ми времени

(т. е. описываются

стохастическими

процессами) . Пусть мы хотим

пропустить

поток от

источника к стоку в такой сети. З а д а ч а

состоит

в опреде­

лении общего среднего потока в

любой

момент

времени

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

способность

дуги,

через

которую

он

должен пройти, он

з а д е р ж и в а е т с я в

начальной вершине

этой

дуги.

 

Сеть с

ожиданием

состоит

из

множества взаимо­

связанных специализированных

каналов

обслуживания,

соединенных

последовательно

и

параллельно .

Перед

к а ж д ы м каналом обслуживания

(или множеством

кана ­

лов обслуживания, если они соединены параллельно) име­

ется линия ожидания (длина которой может равняться ну­

лю) готовых требований,

поступивших для

обслуживания

в этих каналах . Выход

одного

 

канала

 

обслуживания

может являться входами другого. Если

каждому

появ­

лению требования в очереди поставить

в

соответствие

одну вершину, а

выбытию из очереди — другую

и сое­

динить эти вершины дугой, соответствующей факту об­

служивания, то получим некоторый граф .

Этот граф

будет

обыкновенным,

если

к а ж д а я ' очередь

состоит

из

единственного к а н а л а

и единственной линии.

Если,

на­

пример, существуют

несколько

параллельных

каналов

обслуживания, имеющих одну и ту

ж е линию

ожидания

и один

и тот

ж е

выход, то

т а к а я

часть сети

изобража ­

ется графом

типа

рис. 7.19.

Если

же, например,

каждый

Рис. 7.19.

Рис. 7.20.

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

7.12]

СТОХАСТИЧЕСКИЕ ПОТОКИ В

СЕТЯХ

345

налов может

иметь выход на другие

последовательные

каналы или стоки, представлен рис. 7.21. В качестве источника берется начальная совокупность заявок на обслуживание, а в качестве стока та ж е совокупность (после удовлетворения спроса) .

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

ми дуг могут возникнуть две си­

 

туации. Поток может «потеряться»

 

в начальной вершине, если дуга у ж е

полностью насыще­

на текущим по

ней потоком или

он

может задержаться,

о ж и д а я входа.

Интересующая

нас

теорема для диск­

ретного потока применима к сетям с ожиданием, в кото­ рых потоки обрабатываются в течение длительного вре­ мени и исследуется установившееся состояние, т. е. асимптотическое поведение потока при / - » - о о .

Существует довольно универсальный тип потока, в котором поступление требований происходит случайным образом и подчиняется пуассоновскому распределению

^( я = 0 . , , 2 . . . . . .

В а ж н ы м свойством пуассоновских процессов является тот факт, что вероятность поступления более чем одного требования на малом интервале времени является пренеб­ режимо малой по сравнению с вероятностью поступления (или непоступления) одного требования.

Время между поступлениями требований в пуассоновском процессе подчиняется экспоненциальному распреде­ лению вида Хе~х'. Таким образом, задачи, в которых по­ ступления требований подчиняются пуассоновскому рас­ пределению, а обслуживание — д р у г о м у такому ж е распределению, можно изучать, считая, что интервалы между поступлениями требований и интервалы обслужи ­ вания распределены экспоненциально.

346

потоки В СЕТЯХ

[ГЛ. т

Если дуга имеет экспоненциальную пропускную спо­

собность

(экспоненциальное

время

обслуживания)

и интервалы поступлений экспоненциальны, то поток на

выходе т а к ж е имеет

экспоненциальное распределение.

При этом отношение

скорости поступления требовании

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

Сеть с ожиданием можно

представить иначе,

если

одну вершину

сопоставить с

линией ожидания, а

дру­

г у ю — с линией

обслуживания

и считать, что дуга,

инци­

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

ожидания . Таким образом, мы можем разбить

вершины

на три класса: вершины каналов обслуживания,

верши­

ны линий о ж и д а н и я и вершины выходов.

 

Упражнения

7.16.Интерпретируйте оба названных представления для парал­ лельной и последовательной сети с ожиданием и нарисуйте диаграммы.

7.17.Перечислите десять возможных вариантов потоков в сетях,

например

стохастические потоки, потоки через

губчатые

трубки

(т. е. потоки с потерями), потоки по деформируемым

дугам.

 

Более исчерпывающее описание теории потоков в се­

тях с различных точек зрения дается в работах

[ 5 ] ,

[10],

[12] и

[14] литературы к главе 1. Мы т а к ж е

отсылаем

читателя к списку литературы в конце этой главы и к более обширной библиографии, содержащейся в пере­

численных выше

книгах.

 

 

 

 

 

 

 

Л И Т Е Р А Т У Р А

 

 

 

1. B e r g e С ,

Les Problems de Flot et de

Tension.

Cahiers

Centre

Eludes Rech. Oper., 3, :69—93 (1961).

 

 

 

2. D a n t z i g

G.

В.,

F u l k e r s o n

D. R.,

Compulation of

Maxi­

mal Flows

in

Networks. The R A N D

Corp.,

p. 677,

1955.

 

 

 

 

 

 

 

ЛИТЕРАТУРА

 

 

 

 

 

347

3.

F o r d

L .

R., Jr., Nclwoi-к

Flow Theory. The

R A N D

Corp., p.

923,

 

1956.

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

F o r d

L . R.,

Jr.,

F u l k e r s o n

D.

R.,

Maximal Flow

through

 

a Network. Can. J . Math., S: 399—404

(1956).

 

 

 

 

5.

F o r d

L . R., Jr.,

F u l k e r s o n

D. R., A Simple Algorithm

for

 

Finding

Maximal Network

Flows

and

an

Application

to

the

 

Hitchcock

Problem. The R A N D corp., RM-1604, 1955.

 

 

 

6.

F o r d

L . R.,

Jr.,

F u l k e r s o n

D.

R.,

Constructing

Maximal

 

Dynamic Flows from Sialic Flows. Operalions Res.,

6: 419—433

 

(1959).

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

F u 1 к e r s о n

D.

R.,

An

Out-of-kilter Method for

Minimal-cost

 

Flow Problems.

J .

Soc. Ind. Appl. Math., 9: 18—27 (1961).

 

8.

G о m e г у

R.

E . ,

Н и

Т.

C , Multi-terminal Network

Flows. J .

 

Soc. Ind. Appl. Math., 9: 551—570

(1961).

 

 

 

 

 

9.H u Т. C , Multi-commodity Network Flows. Operations Res., 11: 344—360 (1963). .

10. J e w e l l

VV.

S., Optimal Flew through Networks. MI T Interim

Tech. Repl

8.

1958.

11.S a a l y T. L . , Elements of Queucing Theory. McGraw-Hill Book Company, New York, 1961. [Русск. перев.: С а а т н 'Г., Элементы теории массового обслуживания и её приложения. «Советское радио». 1965.]

 

 

 

 

О Т В Е Т Ы К У П Р А Ж Н Е Н И Я М

 

 

 

 

 

 

 

 

 

 

 

Глава

1

 

 

 

 

 

 

 

 

1.2. Пусть

соответствующая

последовательность

вершин

будет

В|. ^2, • . •> vn,

 

где Vi =

v и

vn

— w.

Если

все

и; различны,

то

маршрут

обязательно

является

простой

цепью.

Если

v-, = Vj

для

некоторого

i < y ,

то

вычеркните

ребра,

соответствующие

подпоследовательности

вершин

vi,

c i / + i , . . .

vj.

 

 

 

 

 

 

 

 

 

 

 

 

 

Повторите

такие

вычеркивания

д о

тех

пор,

пока все

вершины

в последовательности, определяемой

оставшимся

маршрутом,

ока­

жутся различными.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.3. Пусть G состоит из

трех

вершин ot,

v2 и

v3,

двух

ребер ех

и е2,

где в\~

(у\ & v3)

н е 2

~

(t>i & v2).

Маршрут еи

е2,

соединяющий ^i

и v2,

является

требуемым

примером.

 

 

 

 

 

 

 

 

 

1.4.

Три

или более ребер,

имеющих

одну

о б щ у ю

конечную

точку,

а другие конечные точки различны, удовлетворяют сформулирован­

ному определению,

но не

обладают

свойством

«взаимопересечеиня»,

которое является важным в понятии

маршрута.

 

 

t»i к У з .

 

1.5. М о ж н о

получить

незамкнутый

маршрут

 

от

просто

соединяя цепь от

о2

к v3

с цепью

от

Oi к v2.

Если эта цепь не являет­

ся простой, то воспользуйтесь упражнением

1.2.

 

 

 

 

 

 

1.6. Пример, приведенный для

упражнения

1.3,

будет

ответом

к данному

упражнению

 

 

 

 

 

 

 

 

 

 

 

1.7. Достаточно

показать, что

ребра

простой

неупорядоченной

цепи С, соединяющей v и ш, могут

быть пройдены

только двумя пу­

тями (одним от v к ш и

другим

от

ш к v).

Заметим

прежде

всего,

что точно

одно

ребро С

инцидентно v

пли

w

п

точно два

ребра С

инцидентны любой другой вершине, пересекаемой С. В противном случае последовательность вершин, определенных при прохождении С, будет включать повторенные вершины. Следовательно, если мы, на­

чиная с v,

хотим

пройти к а ж д о е

ребро только один раз, то мы имеем

на к а ж д о м

шаге

единственный

выбор

для

перехода

на следующее

ребро.

 

 

 

 

 

 

 

 

1.8. Если петля добавляется

к одной или более

вершинам

про­

стой цепи, то полученная в результате

непростая цепь

может

быть

пройдена только двумя путями.

 

 

 

 

 

 

1.9. Заметим

прежде всего,

что каждая

вершина,

которая

при­

надлежит неупорядоченному циклу, имеет четную степень относитель­ но этого цикла. Удалите сначала петли. Начиная с некоторой верши­ ны о, выберите ребро, инцидентное v, и пройдите его. Из вершины, достигнутой таким образом, выберите и пройдите новое ребро (кото-

Соседние файлы в папке книги из ГПНТБ