Tema 7: Redes de Flujo - CD Universidad de...

47
Tema 7: Redes de Flujo Modelización Matemática Máster en Ingeniería de Caminos, Canales y Puertos Ignacio Montes Departamento de Estadística e I.O. y D.M. I. Montes Tema 7: Redes de Flujo 1 / 14

Transcript of Tema 7: Redes de Flujo - CD Universidad de...

Page 1: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Tema 7: Redes de Flujo

Modelización MatemáticaMáster en Ingeniería de Caminos, Canales y Puertos

Ignacio MontesDepartamento de Estadística e I.O. y D.M.

I. Montes Tema 7: Redes de Flujo 1 / 14

Page 2: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

1 Descripción del problema

2 Algoritmos

I. Montes Tema 7: Redes de Flujo 2 / 14

Page 3: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Red de flujo

Consideraremos una red orientada R = (V ,A,p) cumpliendo las si-guientes propiedades:

G = (V ,A) es un grafo conexo.Los pesos son no-negativos y reciben el nombre de capacidad delarco.Hay dos vértices llamados fuente (F) y salida (S) de manera queF no tiene antecesores y S no tiene sucesores.

I. Montes Tema 7: Redes de Flujo 3 / 14

Page 4: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Flujo

Partimos de una red de flujo R = (V ,A,p). El flujo de valor v esuna colección de números que a cada arco (i , j) le asigna un valor fij ,cumpliendo:

Acotación del flujo: 0 ≤ fij ≤ pij .Conservación del flujo: para todo i ∈ V ,

∑j∈Γ(i)

fij −∑

k∈Γ−(i)

fki =

v , si i = F .

−v , si i = S.

0 en otro caso.

I. Montes Tema 7: Redes de Flujo 4 / 14

Page 5: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo )

F

F

1

1

2

2

S

S

3

3

2 3 2

4 1

3

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 6: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F

1

1

2

2

S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 7: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F 1

1

2

2

S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 8: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F 1

1 2

2

S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

Γ(1) = {2, 3}, Γ−(1) = {F}∑j∈Γ(1) f1j −

∑k∈Γ−(1) fk1 = 1 + 0− 1 = 0

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 9: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F

1

1 2

2 S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

Γ(2) = {S}, Γ−(2) = {F , 1}∑j∈Γ(2) f2j −

∑k∈Γ−(2) fk2 = 2− 1− 1 = 0

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 10: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F

1

1

2

2

S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

Γ(3) = {S}, Γ−(3) = {1}∑j∈Γ(3) f3j −

∑k∈Γ−(3) fk3 = 0− 0 = 0

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 11: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de flujo

Ejemplo (Red de flujo de valor v = 2)

F

F

1

1

2

2 S

S

3

3

2 1 3 1 2 2

4 0 1 0

3 1

Γ(F ) = {1, 2}, Γ−(F ) = ∅∑j∈Γ(F ) fFj −

∑k∈Γ−(F ) fkF = 1 + 1 = 2

Γ(S) = ∅, Γ−(S) = {2, 3}∑j∈Γ(S) fSj −

∑k∈Γ−(S) fkS = −2− 0 = −2

I. Montes Tema 7: Redes de Flujo 5 / 14

Page 12: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Corte

Dada una red de flujo R = (V ,A,p) y una partición B,Bc de V , el cortede la red de flujo se denota por (B,Bc) y es el conjunto de arcos de Acon origen en B y final Bc .

La capacidad de corte (B,Bc) es el valor:

c(B,Bc) =∑

ij∈(B,Bc)

pij .

El flujo neto del corte (B,Bc) es el valor:

f (B,Bc) =∑

i∈B,j∈Bc∩Γi

fij −∑

i∈B,k∈Bc∩Γ−i

fki .

I. Montes Tema 7: Redes de Flujo 6 / 14

Page 13: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de corte de un flujo

Ejemplo (Corte )

F 1

F 1

2 S

3

2 1 3 1 2 2

4 0 1 0

3 1

B = {F ,1},Bc = {2,3,S}

Capacidad: c(B,Bc) = 4 + 3 + 3 = 10.

Flujo neto: f (B,Bc) = 0 + 1 + 1 = 2.

I. Montes Tema 7: Redes de Flujo 7 / 14

Page 14: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de corte de un flujo

Ejemplo (Corte B = {F ,1},Bc = {2,3,S})

F 1

F 1 2 S

3

2 1 3 1 2 2

4 0 1 0

3 1

B = {F ,1},Bc = {2,3,S}

Capacidad: c(B,Bc) = 4 + 3 + 3 = 10.

Flujo neto: f (B,Bc) = 0 + 1 + 1 = 2.

I. Montes Tema 7: Redes de Flujo 7 / 14

Page 15: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ejemplo de corte de un flujo

Ejemplo (Corte B = {F ,1},Bc = {2,3,S})

F 1

F 1 2 S

3

2 1 3 1 2 2

4 0 1 0

3 1

B = {F ,1},Bc = {2,3,S}

Capacidad: c(B,Bc) = 4 + 3 + 3 = 10.

Flujo neto: f (B,Bc) = 0 + 1 + 1 = 2.

I. Montes Tema 7: Redes de Flujo 7 / 14

Page 16: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Relación flujo-corte

TeoremaSea R = (V ,A,p) una red de flujo, f un flujo y (B,Bc) un corte.Entonces:

El valor del flujo está acotado por la capacidad del corte.El valor del flujo coincide con el flujo neto.

I. Montes Tema 7: Redes de Flujo 8 / 14

Page 17: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Objetivo: maximizar el flujo

Sea R = (V ,A,p) una red de flujo.Flujo máximo: es un flujo f ∗ de manera que cualquier otro flujo fsatisface vf ≤ vf∗.Objetivo: entontrar el flujo máximo en R = (V ,A,p).

Corte mínimo: es un corte (B,Bc) que para otro corte (C,Cc)cumple c(B,Bc) ≤ c(C,Cc).Se cumple que el valor del flujo máximo es igual a la capacidad delcorte mínimo.

I. Montes Tema 7: Redes de Flujo 9 / 14

Page 18: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Objetivo: maximizar el flujo

Sea R = (V ,A,p) una red de flujo.Flujo máximo: es un flujo f ∗ de manera que cualquier otro flujo fsatisface vf ≤ vf∗.Objetivo: entontrar el flujo máximo en R = (V ,A,p).Corte mínimo: es un corte (B,Bc) que para otro corte (C,Cc)cumple c(B,Bc) ≤ c(C,Cc).Se cumple que el valor del flujo máximo es igual a la capacidad delcorte mínimo.

I. Montes Tema 7: Redes de Flujo 9 / 14

Page 19: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmos

Ford-Fulkerson Algoritmo clásico de etiquetado. Se trata de buscarcaminos de flujo aumentable.

Boykov-Kolmogorov Algoritmo novedoso (2004) que mejora algoritmosprevios tanto para el problema del flujo máximo como parael flujo a coste mínimo. Es el algoritmo utilizado por Mat-Lab.

I. Montes Tema 7: Redes de Flujo 10 / 14

Page 20: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ford-Fulkerson (I)

1 Considera un flujo f en la red R = (V ,A,p) (por ejemplo, f=0).2 Denotar por A1 el conjunto de arcos no saturados (pij > fij ) y por

A2 el conjuntos de arcos con flujo positivo (fij > 0). Etiquetado:1 Se le asigna la etiqueta + al vértice F .2 Si i está etiquetado, j no está etiquetado y (i , j) ∈ A1, entonces

etiqueto i y (i , j). (i , j) es un arco de salida.3 Si j no está etiquetado, i está etiquetado y (j , i) ∈ A2, entonces

etiquetar j y (j , i). (j , i) es un arco de entrada.4 Continuar el etiquetado hasta llegar a S o hasta que no sea posible

etiquetar más arcos/vértices.

I. Montes Tema 7: Redes de Flujo 11 / 14

Page 21: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Ford-Fulkerson (II)

3 Si S no se ha etiquetado, el flujo es máximo. Si S se ha etiquetado,buscar una cadena formada por arcos etiquetados desde F hastaS. Definir:

k1 = min{fij | (i , j) ∈ C ∩ A2},k2 = min{pij − fij | (i , j) ∈ A1 ∩ C},k = min{k1, k2}.

Aumentar en k unidades el flujo de los arcos de C ∩A1 y disminuiren k unidades el flujo de los arcos de C ∩ A2. Volver al paso 2.

I. Montes Tema 7: Redes de Flujo 12 / 14

Page 22: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 1: consideramos el flujo nulo)

F

F

1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 23: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2: definir A1,A2)

F

F

1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 24: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2.1: etiquetar el vértice F )

F

F 1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 25: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1 2

2

S

S

3

2 , 0

3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0

3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 26: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 0 3 , 0

2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0

2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 27: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 28: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 3: cadena de flujo aumentable)

F

F

1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S

+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 29: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 3: cadena de flujo aumentable)

F

F

1

1

2

2

S

S

3

2 , 0 3 , 0 2 , 0

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 0

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 30: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 1: actualización del flujo)

F

F

1

1

2

2

S

S

3

2 , 2 3 , 2 2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 31: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2: definir A1,A2)

F

F

1

1

2

2

S

S

3

2 , 2 3 , 2 2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 32: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2.1: etiquetar el vértice F )

F

F 1

1

2

2

S

S

3

2 , 2 3 , 2 2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 33: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F 1

1 2

2 S

S

3

2 , 2 3 , 2 2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 34: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 2

3 , 2

2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 35: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 2

3 , 2

2 , 2

4 , 0

1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0

1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 36: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2

S

S

3

2 , 2

3 , 2

2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 37: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 3: cadena de flujo aumentable)

F

F

1

1

2

2

S

S

3

2 , 2

3 , 2

2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S

-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 38: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 3: cadena de flujo aumentable)

F

F

1

1

2

2

S

S

3

2 , 2

3 , 2

2 , 2

4 , 0 1 , 0

3 , 0

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1

Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 39: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 1: actualización del flujo)

F

F

1

1

2

2

S

S

3

2 , 2 3 , 1 2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1

Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 40: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2: definir A1,A2)

F

F

1

1

2

2

S

S

3

2 , 2 3 , 1 2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 41: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Paso 2.1: etiquetar el vértice F )

F

F 1

1

2

2

S

S

3

2 , 2 3 , 1 2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 42: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F 1

1 2

2 S

S

3

2 , 2 3 , 1 2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 43: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 2

3 , 1

2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 44: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 2

3 , 1

2 , 2

4 , 1

1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximoc(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 45: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Pasos 2.2, 2.3, 2.4)

F

F

1

1

2

2 S

S

3

2 , 2

3 , 1

2 , 2

4 , 1

1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximo

c(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 46: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejemplo

Ejemplo (Corte mínimo)

F

F

1

1

2

2

S

S

3

2 , 2 3 , 1 2 , 2

4 , 1 1 , 1

3 , 1

Valor del flujo: v = 0

A1 = A

A2 = ∅

F 1 2 S+2 +2 +2

2 , 0 3 , 0 2 , 0

Valor del flujo: v = 2

A1 = {(F , 2), (1, 2), (1, 3), (3,S)}

A2 = {(F , 1), (1, 2), (2,S)}

3 , 0

3 , 2

3

4 , 0 1 , 0

F 1 2

3

S-1

+1

+1 +1Valor del flujo: v = 3

A1 = {(F , 2), (1, 2), (1, 3)}

A2 = A

3 , 1

3 , 1

4 , 1

No se puede etiquetar más. Flujo máximo

c(B,Bc) = 2 + 1 = 3 = f (B,Bc)

B = {F , 1, 2, 3}

Bc = {S}

I. Montes Tema 7: Redes de Flujo 13 / 14

Page 47: Tema 7: Redes de Flujo - CD Universidad de Oviedoocw.uniovi.es/pluginfile.php/6035/mod_resource/content/0/Tema 4.pdf · I. Montes Tema 7: Redes de Flujo 9 / 14. Algoritmos Ford-FulkersonAlgoritmo

Algoritmo de Ford-Fulkerson: Ejercicio

Buscar el flujo máximo en la siguiente red de flujo:

F

1 2

3

S

1514

12

7

3 8

14

I. Montes Tema 7: Redes de Flujo 14 / 14