Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Задача о максимальном потоке в сети





 

Пусть задан ориентированный граф G=< E, V, H>, в котором направление каждой дуги vÎ V означает направление движения потока (например поток автомобилей), пропускная способность каждой дуги равна d(v). На множестве вершин E выделены две вершины t и s. Вершина t является источником потока, s - стоком. Требуется определить максимальный поток, который может быть пропущен из вершины t в s.

Обозначим через x(v) величину потока, движущегося по дуге v. Очевидно, что

0£ x(v) £ d(v), vÎ V. (6. 1)

В каждой вершине iÎ E\{t, s} объем потока входящего равен объему потока выходящего, т.е. справедливо равенство

{x(v) |i Î V+(i)}= {x(v)| iÎ V -(i)}

т.е.

{x(v)| iÎ V+(i)} - {x(v)| iÎ V -(i)}=0. (6.2)

Для вершины t

{x(v)| iÎ V+(i)} -{x(v)¦ iÎ V -(i)}=-Q, (6.3)

для вершины s

{x(v)| iÎ V+(i)} - {x(v)¦ i Î V -(i)}= Q. (6.4)

Величина Q является величиной потока, который выходит из вершины t и входит в вершину s.

Требуется определить

Q ® max (6.5)

при ограничениях (6.1-6.4).

Величины Q, x(v), vÎ V, удовлетворяющие ограничениям (6.1-6.4) будем называть потоком в сети, и если они максимизируют величину Q, то максимальным потоком. Нетрудно видеть, что значения Q=0, x(v)=0, vÎ V, являются потоком в сети.

Задача (6.1-6.5) является задачей линейного программирования и ее можно решить алгоритмами симплекс-метода.

Разобьем множество вершины Е на две непересекающиеся части Е1 и Е2 таким образом, чтобы tÎ E1, sÎ E2. Разрезом V(E1, E2), разделяющим t и s будем называть множество V(E1, E2)Ì V такое, что для каждой дуги v Î V(E1, E2) либо h1(v)Î E1 и h2(v)Î E2, либо h1(v)Î E2 и h2(v)Î E1.

Разобьем множество V(E1, E2) на две части V(E1, E2, +), V(E1, E2, -) следующим образом:

V(E1, E2, +)={vÎ V(E1, E2)| h1(v)Î E1 и h2(v)Î E2}

V(E1, E2, -)= { vÎ V(E1, E2)| h2(v)Î E1 и h1(v)Î E2}

Пропускной способностью разреза будем называть

Q(E1, E2) =  {x(v)| vÎ V(E1, E2, +)}- {x(v)| vÎ V(E1, E2, -)}

Справедлива следующая

Теорема 1. (О максимальном потоке и минимальном разрезе).

В любой сети величина максимального потока из источника t в сток s равна минимальной пропускной способности Q(E1, E2) среди всех разрезов V(E1, E2), разделяющих вершины t и s.

Заметим, что в максимальном потоке

x(v)=d(v), vÎ V(E1, E2, +),

x(v)=0, vÎ V(E1, E2, -).

 

Пусть Q, x(v), vÎ V, - некоторый поток в сети, последовательность

t=i(0), v(1), i(1), v(2), i(2),..., v(k), i(k)=s,

является цепью, соединяющих вершины t и s. Зададим на этой цепи направление движения от вершины t к s. Дуга v(j) из этой цепи называется прямой, если ее направление совпадает с направлением движения от t к s, и обратной в противном случае. Эту цепь будем называть путем увеличения потока, если для прямых дуг v цепи x(v) < d(v) и для обратных x(v) > 0. По этой цепи можно пропустить дополнительный поток q из t к s величиной q = min (q1, q2), где q1=min (d(v) -x(v)), минимум берется по всем прямым дугам цепи, q1=min (x(v)), минимум берется по всем обратным дугам цепи.

Теорема 2.

Поток Q, x(v), vÎ V, максимальный тогда и только тогда, когда не существует пути увеличения потока.

 

Предлагаемый алгоритм решения задачи о максимальном потоке в сети, основан на поиске пути увеличения потока из t в s, который в свою очередь основан на процессе расстановки пометок вершин. Будем говорить, что

вершина i помечена пометкой [g(i), +v(i)], если до нее дошел некоторый дополнительный поток величиной q(i)> 0, а также известна дуга прямая дуга v(i), через которую поступил этот поток, либо помечена пометкой [g(i), -v(i)], если до нее дошел некоторый дополнительный поток величиной q(i)> 0, а также известна обратная дуга v(i), через которую поступил этот поток;

вершина i просмотрена, если помечены все соседние с ней вершины.

Если помечена вершина s, то найден путь увеличения потока величиной q, который пропускается по этому пути. Для описания алгоритма нам понадобится также массив SPW, в который помещаются номера помеченных вершин в порядке их пометки. С1 - номер в массиве SPW просматриваемой вершины, С2 - номер последней помеченной вершины в этом массиве.

 







Дата добавления: 2014-12-06; просмотров: 898. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

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

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

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

БИОХИМИЯ ТКАНЕЙ ЗУБА В составе зуба выделяют минерализованные и неминерализованные ткани...

Типология суицида. Феномен суицида (самоубийство или попытка самоубийства) чаще всего связывается с представлением о психологическом кризисе личности...

ОСНОВНЫЕ ТИПЫ МОЗГА ПОЗВОНОЧНЫХ Ихтиопсидный тип мозга характерен для низших позвоночных - рыб и амфибий...

Studopedia.info - Студопедия - 2014-2025 год . (0.01 сек.) русская версия | украинская версия