Моделирование транспортных систем. Потоки в сетях
Одно из основных приложений сетей — моделирование транспортных систем, по которым перемещаются люди, автомобили, корабли, транспортируют грузы, жидкие продукты и т.д. В данных моделях пункты, в которых происходит изменение потоков транспортируемых объектов — населенные пункты, станции, точки ветвления либо слияния — отмечают вершинами. Те части систем, по которым происходит само пространственное перемещение объектов (участки трубопроводов, линии электропередач, дороги, каналы) отображают взвешенными ориентированными ребрами (дугами). Вес означает предельную пропускную способность данного участка системы.
Обычно в графовых моделях транспортных систем рассматривают два полюса: источник vи (входная вершина, которая не имеет входящих дуг, а только исходящие) и сток vс (выходная вершина, в которую дуги только входят). Все остальные вершины — внутренние. Им инцидентны как входящие, так и выходящие дуги. Множество входящих дуг внутренней вершины Vi обозначим через D+(Vi), множество выходящих дуг — через D+(Vi).
Графовая модель транспортной системы может быть представлена в виде взвешенной ориентированной двухполюсной сети Г = ({vи , vс}, V, X, D), у которой веса дуг заданы матрицей весов D. На рис. 1.15 показана графовая сетевая модель простейшей транспортной сети. Веса проставлены непосредственно на дугах сети.
Рис.1.15. Сетевая модель транспортной системы
Для сетевых моделей транспортных систем вводятся специальные понятия, характеризующие их пропускную способность.
Определение. Неотрицательное отображение j, заданное на множестве дуг сети, называют потоком, если оно удовлетворяет двум условиям:
1) для каждой дуги сети х = (Vi, Vj ): j(х)=j ij=j (Vi, Vj ) £ dij,
2) для каждой внутренней вершины сети Vi :
3) для источника vи и стока сети vс. :
где А — количество продукта, подаваемого через источник в сеть и выходящего из ее стока, называемое суммарным потоком в сети (потоком в сети). Максимально возможную его величину сокращенно называют максимальным потоком в сети.
Физически поток обычно означает количество продукта, передаваемого по выделенному участку транспортной системы за единицу времени. Первое условие выражает ограниченность пропускной способности рассмотренного участка. Второе — неразрывность потока во внутренних вершинах, передаваемый продукт в них не появляется и не исчезает. Третье означает отсутствие потерь и добавок продукта при его передаче по сети в целом —сколько продукта поступает в источник, столько же удаляется из стока.
Определение. Если для дуги сети х = (Vi, Vj )выполняется условие dij = j ij , то данную дугу называют насыщенной. Если выполняется условие dij > j ij , то дугу называют ненасыщенной, а величину (dij - j ij) — остаточной пропускной способностью дуги.
Для оценки потока в сети используют понятие разреза.
Определение. Множество дуг сети, удаление которых разрывает все цепи в ней таким образом, что начала всех дуг лежат в одной части сети, а концы — в другой, называют разрезом. Разрез можно указать путем перечисления дуг {(Vi, Vj )}, образующих его. Обозначим разрез через S{(Vi, Vj )}. Пропускной способностью Р(S{(Vi, Vj)}) разреза S{(Vi, Vj)} называют сумму пропускных способностей дуг{(Vi, Vj )}, образующих его:
Разрез с минимальной пропускной способностью называют минимальным.
В сетевой модели транспортной системы на рис.1.15. показаны разрезы, обозначенные SIи SII. Как следует из рисунка,
Р(SI ) = Р({(V1, V2); (V1, V3); (V1, V4)}) = 10 +15 + 45 = 70,
Р(SII ) = Р({(V2, V5); (V3, V6); (V4, V6)}) = 20 + 40 +15 = 75.
Связь максимального потока в сети с разрезами устанавливает
Теорема 1.2. Форда—Фалкерсона.В любойвзвешенной ориентированной двухполюсной сети Г = ({vи , vс}, V, X, D) максимальный поток в сети равен пропускной способности ее минимального разреза.
Рассмотрим свойства потоков в сетях, которые используют при построении общих алгоритмов определения максимального потока в сети. Пусть М — произвольный маршрут в сети от источника к стоку, состоящий из вершин (vи , Vi1, Vi2,… , Vik, vс) . Очевидно, его пропускная способность равна минимальному из весов дуг, составляющих маршрут:
А(М) = min {dи,i1, di1,i2, … , dik,с}.
Если вычесть данный предельный поток А(М)из общей пропускной способности сети, то все дуги (Vi, Vj) , входящие в маршрут М, будут иметь остаточную пропускную способность (dij - А(М)). При этом дуги с нулевой остаточной пропускной способностью (dij - А(М)=0)могут быть исключены из сети, поскольку их пропускная способность использована полностью.
Пример 1. Найти максимальный поток А(М1)в маршруте М1 = (vи=V1, V2, V5,vс=V7) сети на рис.1.15 и определить остаточные пропускные способности дуг М1 после вычитания А(М1).Решение. Максимальная пропускная способность М1 равна:
А(М1) = min {d12, d25, d57}= min {10, 20, 25}=10.
Если учесть поток величиной А(М1)=10по сети в целом, дугам, входящим в М1, необходимо присвоить новые (остаточные) пропускные способности:
d12¢= d12 - 10 = 0, d25¢= d25 - 10 = 10, d57¢= d57 - 10 = 15.
При этом дугу (V1, V2) с нулевой остаточной пропускной способностью можно из общей сети исключить.
Ответ: А(М1)=10. d12¢= 0, d25¢=10, d57¢=15.
Данное свойство лежит в основе всех алгоритмов расчета максимального потока. Рассмотрим его простейший вариант.
Дата добавления: 2015-10-05; просмотров: 1503;