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

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

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






 

Пусть задан ориентированный граф 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; просмотров: 852. Нарушение авторских прав; Мы поможем в написании вашей работы!



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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

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

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

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