Flujo máximo (Max Flow)

Flujo máximo (Max Flow)

En primer lugar, la red de flujo

G = (V, E) un grafo dirigido, en donde cada borde (u, v) no es un valor no negativo de la capacidad de c (u, v), y si E contiene un borde (u, v), a continuación, no existe en la Fig su reverso. Hay dos nodos especiales en la red de flujo, el nodo fuente y el disipador de s t.

La siguiente red de flujo dada definición formal. Para que G = (V, E) en una corriente de red, la función de la capacidad que es c, I S es el punto de origen se encuentra en la red, t es el nodo de sumidero. El flujo G es un valor real-función f, las siguientes dos propiedades:

1. Los límites de capacidad (capacidad contraint): Para todos los nodos u, v, requisitos

2. flujo conservado (conservación de flujo): para todos los nodos no de origen y los puntos de sumidero U, requisitos:

A continuación se muestra un ejemplo de una red de flujo de la figura, ayudan a la gente a entender, donde "/" no sólo delimitador operador, "/" representa un valor antes de la confluencia después de que el valor es la capacidad de este borde (Capacidad ):

red de flujo es un problema común de transporte escenario, es necesario transportar mercancías desde s a t, a través de varias estaciones de tránsito, cada envío de bienes a la cantidad de cada estación de transferencia está limitada. En la práctica, es posible que en algunos bares en el lado de transporte bidireccional, por lo tanto, en violación de la definición de la red de convección antes que nosotros, pero podemos contener vista lateral anti-paralelo de la red de transformarse en un arroyo, el método específico es introducir una ficticia nodo de tránsito, el método sigue la fig.

Consideremos otro caso especial, las mercancías enviadas desde múltiples plantas finalmente transportados a otra planta más, esta vez hemos más de una fuente y múltiples puntos de intercambio, que también es una buena solución, la solución es añadir artificialmente súper fuente ( SuperSource ) y súper fregadero ( supersink ), el método específico que se muestra a continuación.

Dos, el método de Ford-Fulkerson

Después de que el problema real en una red de flujo, ya que podemos resolver el problema de flujo máximo. Esta necesidad método para comprender algunos conceptos básicos para entender sobre el flujo de la red.

1. La red (red residual) restante

Dada una red de flujo G = (V, E), que es una fuente s, punto fregadero t, f G es una corriente. Es decir eh puntos de u, v, define la capacidad restante (capacidad residual) , son:

Puede contener gráfico de la red residual G no está presente lado, un lado inverso de la red restante permite que el tráfico se ha transmitido a cabo del algoritmo es enviado de vuelta. La figura ejemplo de una red permanece por debajo de:

El panel A es una red de flujo, b es una red correspondiente residual, el valor de cada borde de la nota, la capacidad restante en el calculo de la red la tira de borde que queda en presencia de un flujo hacia delante con respecto a cada borde, y dibujar un reverso, es decir, la capacidad del lado inverso del tamaño de la emisión de la corriente, para facilitar el flujo de transporte enviado de vuelta al remitente, se omitirá los lados y el peso es cero.

El resto de la red es una indicación de cómo aumentar el flujo de la red de flujo original. Si f es un flujo de G, que corresponde a una red residual, podemos definir la red restante una corriente . En este punto podemos definir una función , que llamamos fluir a f delta (aumento) .

2. trayectoria de aumento (trayectorias de aumento)

Teniendo en cuenta el flujo y el flujo de las redes G f, p es la trayectoria de aumento restante en una red desde un nodo fuente s a la trayectoria fregadero t simple. De acuerdo con la definición de la red restante, para el borde (u, v) en una trayectoria de aumento, podemos aumentar la magnitud de su flujo máximo , es decir, la capacidad restante (capacidad residual) que define antes. Vamos a resumir el caso discutido aquí como un lema:

Lemma Sea G una red de flujo, f está dispuesto en un diagrama de flujo G, un conjunto aumentada p es la ruta de red restante. Una función se define como sigue:

En donde una corriente de la red restante, y su valor .

Corolario  Sea G una red de flujo, f se establece en una corriente G, p es el conjunto restante una trayectoria de aumento de la red. Se proporciona como se define anteriormente lemma, se supone que f aumento de cantidad, la función es un flujo gráfico G, y su valor .

3. corte de flujo de red (cortes de redes)

Un corte (S, T) G fluirá red de conjunto de nodos V se divide en S y T = VS dos conjuntos tales que , . Si f es un flujo, a través del corte definido (S, T) del flujo neto f (S, T) como sigue:

Cutting (S, T) es la capacidad de:

Cortar un mínimo de toda la red de capacidad de la red de corte más pequeño.

Ilustra método de cálculo de corte:

El flujo neto a través del corte:

La capacidad de corte:

Lemma  Sea f un flujo de corriente de red G, el nodo de origen del flujo de red para s, punto fregadero t, conjunto (S, T) está cortando una arbitraria la red de flujo G, a continuación, cortando a través de la (S, T) el flujo neto .

Inferencia de flujo de flujo de red a cualquier valor arbitrario G f G no puede exceder la capacidad del corte.

Teorema (flujo máximo de corte Teorema) Sea f una red de flujo de la corriente G = (V, E) en el nodo de origen a la red de flujo s, punto fregadero t, a continuación, los siguientes son equivalentes:

1. f es un caudal máximo de G.

2. La red residual no contiene ninguna trayectoria de aumento

3. | F | = c (S, T), en el que la (S, T) es un corte en la red de flujo G.

4. El Ford-Fulkerson básica algoritmo

En cada iteración del método de Ford-Fulkerrson encontrar una trayectoria de aumento p, entonces p a la convección f modificado (aumentado). Estamos constantemente buscando en la trayectoria de aumento figura, y de acuerdo para aumentar el valor de f, hasta la cifra sin aumentar caminos. Pseudocódigo de la siguiente manera:

Tiempo de duración algoritmo de Ford-Fulkerson depende en busca aumentar método de la ruta, que es el algoritmo de Edmonds-Karp para hacer mejoras sobre la base de la base teórica del algoritmo de Ford-Fulkerson.

Elegimos la trayectoria de aumento de la red restante es un camino desde el nodo fuente s hundirse t camino más corto, en el que cada peso de borde de unidades de distancia, lo llamamos algoritmo de Ford-Fulkerson así alcanzado es algoritmo Edmonds-Karp .

 

 

 

 

Referencias adicionales:
https://www.jianshu.com/p/efb2d79e2b0f

Publicado ocho artículos originales · ganado elogios 5 · Vistas 3408

Supongo que te gusta

Origin blog.csdn.net/G1011/article/details/89786489
Recomendado
Clasificación