Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada...

27
TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 1 Flujos de redes (Network Flows NF) 1. Terminología 2. Árbol generador mínimo 3. Camino mínimo 4. Flujo máximo 5. Flujo de coste mínimo

Transcript of Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada...

Page 1: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 1

Flujos de redes (Network Flows NF) 1. Terminología 2. Árbol generador mínimo 3. Camino mínimo 4. Flujo máximo 5. Flujo de coste mínimo

Page 2: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 2

Terminología

Red o grafo (G)

Nodos o Vértices o Nudos

(V)

Arcos (dirigidos) o Aristas o Ramas

(A)

G=(V,A) V = {1, 2, 3, 4}

A = {(1, 2), (1, 3), (1, 4), (3, 4)}

Arco dirigido aquél que permite el flujo en un solo sentido Red dirigida conjunto de nodos unidos por arcos Camino secuencia de arcos dirigidos Cadena secuencia de arcos cuyo sentido puede ser hacia o desde el

nodo final (por lo que en redes dirigidas no importa el sentido) Ciclo (dirigido=Circuito) camino o cadena que empieza y acaba en el mismo nodo

1 2

3 4

Page 3: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 3

Camino (1, 2) (2, 5) (5, 3) (3, 4) Cadena (1, 2) (2, 5) (5, 4)

Ciclo (2, 5) (5, 3) (3, 1) (1,2) Circuito (1, 2) (2, 5) (5, 3) (3, 1)

Nodos conexos dos nodos son conexos si la red contiene al menos una

cadena (camino sí importa el sentido) entre ellos Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente n-1 arcos para

recorrer todos los n nodos Capacidad de un arco máximo flujo por un arco (para grafos con arcos valorados) Nudo de generación aquél cuyo flujo saliente excede al entrante Nudo de demanda aquél cuyo flujo entrante excede al saliente Nudo de trasbordo aquél que conserva el flujo

1 3

2 5 4

Page 4: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 4

Problema del árbol generador de mínimo peso Hipótesis:

• Red conexa no dirigida (o dirigida pero el sentido no es relevante) • Distancia no negativa en cada arco

Objetivo:

• Encontrar la cadena de longitud mínima que recorre todos los nodos sin ciclos (es decir, el árbol generador de mínimo peso).

arbol generadormin kC

k C

u e∈

⎧ ⎫⎪ ⎪⎪ ⎪= ⎨ ⎬⎪ ⎪⎪ ⎪⎩ ⎭∑

Comentario: • Obsérvese que no busca minimizar la distancia o coste entre dos nodos concretos sino

el global de la red.

Page 5: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 5

Procedimiento del problema del árbol generador mínimo

Algoritmo de Prim 1. Selección arbitraria de cualquier nodo inicial

Hacer 0C = ∅ , 0C V= . Elegir un vértice cualquiera i V∈ y hacer { }1C i= , { }1C V i= − . Sea 2k = y T =∅ (T es el árbol generador).

2. Selección el nodo no conectado más cercano a cualquier nodo conectado y

establecimiento de un arco nuevo. Seleccionar *

1kj C −∈ , un nodo no conectado tal que se une a algún vértice ya conectado (de 1kC − ) con la arista de menor peso 1ke − . Hacer { }*

1k kC C j−= ∪ , { }*1k kC C j−= − y

{ }1kT T e −= ∪ . Si k n= , parar. Si no, poner 1k k= + y repetir el paso 2.

Page 6: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 6

Los empates se pueden solucionar de manera arbitraria sin pérdida del óptimo. Indican la posible existencia de múltiples soluciones óptimas. La distancia óptima no depende de la elección del nodo inicial.

Page 7: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 7

Page 8: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 8

Problema del camino mínimo Hipótesis: • Red conexa (normalmente dirigida, aunque no dirigido=dirigido en los dos sentidos) • No existen circuitos de longitud negativa • Nodo especial: origen

Objetivo:

• Encontrar la distancia (coste, tiempo, etc.) mínima entre el origen y cualquier otro nodo (obtiene un árbol dirigido o arborescencia de caminos de mínimo peso)

( )camino de origen a k

,

mink ijCi j C

u d k∈

⎧ ⎫⎪ ⎪⎪ ⎪= ∀⎨ ⎬⎪ ⎪⎪ ⎪⎩ ⎭∑

Metodología basada en ecuaciones de Bellman: • Dijkstra para grafo valorado con pesos positivos (nunca circuitos negativos). • Bellman-Ford, general aunque más complejo.

Page 9: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 9

Procedimiento del problema del camino mínimo

Algoritmo de Dijkstra PASO 0: INICIO, SE ETIQUETAN LOS NODOS CON LA LONGITUD DEL ARCO QUE LOS UNE CON EL

ORIGEN ( ),ijd i j A= ∞∀ ∉ , 1 0u = , 1 2,...,j ju d j n= = . { }1P = , { }2,..,T n= , ( ) 1, 2,...,pred j j n= =

PASO 1: DESIGNAR LA ETIQUETA PERMANENTE DE LA ITERACIÓN: VÉRTICE CON MENOR VALOR

DE LA ETIQUETA TRANSITORIA Buscar k T∈ tal que { }mink jj T

u u∈

= . Hacer { }P P k= ∪ y { }T T k= − .

Si T =∅ , parar. PASO 2: REVISAR LAS ETIQUETAS TRANSITORIAS

j T∀ ∈ calcular { }min ,j j k kju u u d= + , si se modifica poner ( )pred j k= . Volver al PASO

1.

Page 10: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 10

1 (origen)

2

3

4

5

100

15

20 10

30 60

50

Paso 0: 1 0u = , 2 100u = , 3 30u = , 4u = ∞ , 5u = ∞ . { }1P = , { }2, 3, 4, 5T = , ( ) 1, 2, 3, 4, 5pred j j= =

P. 1: 30ku = 3k = . { }1, 3P = , { }2, 4, 5T = ≠ ∅ . P. 2: { } { }2 2 3 32min , min 100, 30 100u u u d= + = + ∞ = ,

{ } { }4 4 3 34min , min , 30 10 40u u u d= + = ∞ + = (4) 3pred = { } { }5 5 3 35min , min , 30 60 90u u u d= + = ∞ + = (5) 3pred =

P. 1: 40ku = 4k = . { }1, 3, 4P = , { }2, 5T = ≠ ∅ .

P. 2: { }2 min 100, 40 15 55u = + = (2) 4pred = , { }5 min 90, 40 50 90u = + = ( (5) 4pred =

(MULTIPLES ÓPTIMOS) P. 1: 55ku = 2k = . { }1, 3, 4, 2P = , { }5T = ≠ ∅ . P. 2: { } { }5 5 2 25min , min 90, 55 90u u u d= + = + ∞ =

P. 1: 90ku = 5k = . { }1, 3, 4, 2, 5P = , T = ∅ , PARAR.

Page 11: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 11

Problema del árbol generador mínimo Algoritmo de Bellman-Ford

• Utilizar sólo para el caso de arcos con distancia negativa (no equivale a aplicar Dijkstra sumando una misma cantidad a todos los arcos)

mju longitud del camino mínimo del vértice 1 al vértice j usando a lo sumo m arcos

PASO 1: INICIAR CON LONGITUDES DE LOS ARCOS DEL NODO 1 A LOS DEMÁS NODOS

( ),ijd i j A= ∞∀ ∉ , 11 0u = , 1

1 ( ) 1 2,...,j ju d pred j j n= = = . Poner 1m =

PASO 2: CALCULAR LAS DISTANCIAS MÍNIMAS USANDO A LO SUMO 1m + ARCOS

Calcular { }{ }1 min ,minm m mj j k kjk j

u u u d+

≠= + . Si 1m m

j ju u j+ = ∀ , parar1. Si no, para j tal que 1m m

j ju u+ ≠ hacer pred(j)=k* siendo { } * *1min m m m

k kj jk k jk ju d u d u +

≠+ = + = . Poner 1m m= + y volver

al paso 2.

1 Obsérvese que para m n= seguro se cumplirá 1n n

j ju u −= ya que se trata de construir un árbol.

Page 12: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 12

1

2

3

4

5

2

34

- 3

6

1

Paso 1: 11 0u = ,

12 5u = , 1

3 2u = , 14u = ∞ , PRED(J)=1,J=1,2,3,4. 1m =

P. 2: { }{ } { }{ }2 1 1 12 2 3 32 4 42min , min , min 5, min 2 , 3 5u u u d u d= + + = + ∞ ∞ − =

{ }{ } { }{ }2 1 1 13 3 2 23 4 43min , min , min 2, min 5 3, 6 2u u u d u d= + + = + ∞ + =

{ }{ } { }{ }2 1 1 14 4 2 24 3 34min , min , min , min 5 4, 2 1 3u u u d u d= + + = ∞ + + = 2 1

4 4u u≠ →PRED(4)=3 2m = → P. 2.

P. 2: { }{ }32 min 5, min 2 ,3 3 0u = + ∞ − = { }{ }3

3 min 2, min 5 3,3 6 2u = + + =

{ }{ } { }{ }3 2 2 24 4 2 24 3 34min ,min , min 3,min 5 4,2 1 3u u u d u d= + + = + + = , 3 2

2 2u u≠ →PRED(2)=4, 3m = →P. 2

P. 2: { }{ } { }{ }4 3 3 32 2 3 32 4 42min , min , min 0, min 2 ,3 3 0u u u d u d= + + = + ∞ − =

{ }{ } { }{ }4 3 3 33 3 2 23 4 43min , min , min 2, min 0 3,3 6 2u u u d u d= + + = + + =

{ }{ } { }{ }4 3 3 34 4 2 24 3 34min , min , min 3, min 0 4, 2 1 3u u u d u d= + + = + + =

4 3j ju u j= ∀ , PARAR.

Page 13: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 13

Otras aplicaciones de los algoritmos de camino mínimo • Resolución problemas de maximización de beneficios:

• Objetivo: Encontrar el camino desde el nodo origen que maximiza el beneficio

( )camino de origen a k

,

maxk ijCi j C

u d k∈

⎧ ⎫⎪ ⎪⎪ ⎪= ∀⎨ ⎬⎪ ⎪⎪ ⎪⎩ ⎭∑

Alternativa 1: Adaptación de los algoritmos. Actualizar las inicializaciones y las fórmulas de cálculo de las distancias mínimas:

Dijkstra: En paso 0 reemplazar por ( ),ijd i j A= −∞∀ ∉

En paso 1 reemplazar por { }maxk jj Tu u

∈=

En paso 2 reemplazar por { }max ,j j k kju u u d= + j T∀ ∈

Bellman-Ford: En paso 1 reemplazar por ( ),ijd i j A= −∞∀ ∉

Page 14: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 14

En paso 2 reemplazar por { }{ }1 max ,maxm m mj j k kjk j

u u u d+

≠= +

{ } * *1max m m m

k kj jk k jk ju d u d u +

≠+ = + =

Alternativa 2: Aplicación directa de los algoritmos. Teniendo en cuenta que maximizar f equivale a minimizar -f, multiplicar por -1 los valores del grafo y resolver el problema de camino mínimo con los algoritmos Dijkstra y Bellman-Ford convencionales

Page 15: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 15

• Resolución problemas de maximización de probabilidades:

• Hipótesis sobre la valoración de los arcos: Existe una probabilidad de éxito pij sobre cada arco, todas ellas independientes (Ej. probabilidad de no ser atracado en una calle, etc.)

• Objetivo: Encontrar el camino desde el nodo origen que maximiza la probabilidad de éxito

( ){ }camino de origen a k ,maxk ijC i j C

u p k∈

= Π ∀

Alternativa 1: Adaptación del algoritmo de Dijkstra. Actualizar las inicializaciones y las fórmulas de cálculo de las distancias mínimas:

En paso 0 reemplazar por ( )0 ,ijp i j A= ∀ ∉ , 1

1 1u =

Page 16: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 16

En paso 1 reemplazar por { }maxk jj Tu u

∈=

En paso 2 reemplazar por { }max ,j j k kju u u p= ⋅ j T∀ ∈

Alternativa 2: Aplicación directa del algoritmo de Dijkstra. Obsérvese que al incorporar logaritmos neperianos (que convierten productos en sumas) a la función objetivo se tienen las siguientes equivalencias):

max max ln max ln min ( ln )ij ij ij ijC C C CC C C C

p p p p⇔ ⇔ ⇔ −∑ ∑∏ ∏

La última expresión es una función objetivo optimizable con Dijkstra (pues es suma de valores positivos) considerar el mismo grafo pero valorado con –ln(pij)≥0 en lugar de con pij y aplicar Dijkstra.

Page 17: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 17

Problema de flujo máximo Hipótesis:

• Red conexa dirigida • Nodos especiales: origen s y destino t, el resto son de trasbordo • Cada arco tiene capacidades máximas asociadas

Objetivo:

• Maximizar el flujo total desde el origen al destino Métodos de resolución:

• Algoritmo del camino de aumento (Ford-Fulkerson) • Programación lineal

Page 18: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 18

Flujo compatible (factible) Aquél que verifica:

• El flujo no supera la capacidad de ningún arco ( ( , )ij ijc i jϕ ≤ ∀ ) • Verifica la ley de conservación de flujo:

/( , ) /( , ), 0ji ij

j j i A j i j Ai s t ϕ ϕ

∈ ∈

∀ ≠ − =∑ ∑

1 2

3 4

s t

( 5 )

( 7 )

( 5 )

( 4 )

( 6 ) ( 2 )

( 5 )

( 6 )

( 5 )

3

2

2

5

3

3

4

2

4

Problema de flujo máximo: determinar el flujo compatible (luego es la incógnita) que transporta la mayor cantidad de flujo de la fuente (origen s) al sumidero (destino t).

Page 19: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 19

Capacidad residual de un arco: es la diferencia entre la capacidad de un arco y el flujo asignado a éste.

Camino de aumento: es un camino de la fuente al sumidero tal que el mínimo de las capacidades residuales de los arcos que lo forman es positivo, denominándose a este valor capacidad residual del camino de aumento.

Corte: Partición de la red en dos subredes s P∈ y t P∈ (componentes) cualesquiera, conteniendo una el origen y otra el destino.

Capacidad del corte:

Suma de las capacidades de los arcos que unen ambas subredes (cruzan el corte) en el sentido de origen en P a destino en P , es decir, ( )

( , ) : ,

, iji j A i P j P

c P P c∈ ∈ ∈

= ∑

Page 20: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 20

Teorema de máximo flujo mínimo corte:

Para una red conexa dirigida con un origen y un destino el valor del flujo máximo es igual al valor mínimo de las capacidades de cualquier corte de la red (flujo máximo=mínima capacidad de corte).

( )( )

( , )/ ,,itflujo compatible P P cortei i t A

Max Min c P Pϕ

ϕ∈

=∑

Formulados como problemas de programación matemática, los problemas de flujo máximo y de corte de mínima capacidad son problemas duales. La teoría de la optimización permite resolver ambos problemas, al igual que el algoritmo de Ford Fulkerson.

Page 21: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 21

Algoritmo de Ford-Fulkerson PASO 1: COMENZAR CON UN FLUJO COMPATIBLE Y OBTENER LAS CAPACIDADES RESIDUALES DE

LOS ARCOS Poner flujo 0 0 ( , )ij i j Aϕ = ∀ ∈ y capacidades residuales * ( , )ij ijc c i j A= ∀ ∈ . Etiquetar ( , )s → − ∞ (no existe predecesor, capacidad residual infinita)

PASO 2: OBTENER UN CAMINO DE AUMENTO, INCLUSO REDIRECCIONANDO FLUJO

ANTERIORMENTE ASIGNADO Sea i V∈ un nodo ya etiquetado y sea j V∈ un nodo sin etiquetar tal que existe el arco ( , )i j o el arco ( , )j i . Hacer según el caso: a) Si ( , )i j A∈ y la capacidad residual no es 0 ( * 0ijc > ) puede aumentar flujo, calcular el

mínimo de la capacidad residual de los arcos que llegan a i y este arco y etiquetar el nodo j , es decir, calcular { }*min ,j i ijcδ δ= y etiquetar el nodo j con ( , )jj i δ→ + .

b) Si ( , )j i A∈ y se está enviando flujo por ese arco ( 0jiϕ > ) se puede redireccionar parte de ese flujo (se puede disminuir en ese arco), entonces calcular { }min ,j i jiδ δ ϕ= y etiquetar el nodo j con ( , )jj i δ→ − .

Page 22: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 22

Repetir hasta que el sumidero esté etiquetado e ir al paso 3 o hasta que no sea posible etiquetar más nodos (que se habrá acabado) e ir al paso 4.

PASO 3: AUMENTAR EL FLUJO EN EL CAMINO OBTENIDO Y RECALCULAR LAS CAPACIDADES

RESIDUALES Recorrer el camino de nodos etiquetados aumentando el flujo en los arcos cuyos nodos finales estén etiquetados positivamente y disminuyéndolo en los iniciales etiquetados negativamente, en la cantidad tδ con que se etiquetó el sumidero t (capacidad residual del camino de aumento de capacidad). Recalcular las capacidades residuales (disminuir en los arcos positivos y aumentar en los negativos). Borrar las etiquetas, excepto la de la fuente, y volver al paso 2.

PASO 4: PARAR, NO ES POSIBLE AUMENTAR EL FLUJO La sucesión de etiquetas establecida en cada iteración puede no ser única, pero se demuestra que cualquiera de ellas permite la obtención del flujo máximo. El corte de mínima capacidad es el formado por las componentes ( ),P P siendo P el conjunto de nodos etiquetados y P el conjunto de nodos no etiquetados, que contiene al sumidero t, que resultan de la última iteración del algoritmo. La capacidad mínima es la

Page 23: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 23

suma de la capacidad de los arcos que empiezan en P y terminan en P . Nótese que el corte no tiene porqué aislar exclusivamente la fuente t, sino cualquier conjunto de vértices que no contenga al sumidero s (es decir, ( ),P P pueden ser cualquier partición del conjunto de nodos V siempre que se cumpla ,s P t P∈ ∈ ).

Page 24: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 24

Ejemplo FF:Ejemplo FF:

P.1:P.2: i = s j = 2: a)P.2: i = 2 j = 3: a) P.2: i = 3 j = t: a) t etiquetado: P.3:

2

3

4

s t

(2)

(3)

(4)

(3)

(1)

(2)

(0 , )ij i j Uϕ ∀= ∈ * ( , )ij ijc c i j U∀ ∈= ( , )s → − ∞{ }2 min , 2 2δ = ∞ = 2 ( ,2)s→ +

{ }3 min 22,3δ = = 3 (2 ,2)→ +

{ }min 22, 2tδ = = (3 ,2)t → +

(-,∞)

(s+,2)

(2+,2)

(3+,2)

2 23 32, 2, 2s tϕ ϕ ϕ= = =

* * *2 23 3

* * *3 24 4( 3, 4,, , 0 11 )0 s ts t cc cc c c= = = = = =

2

3

4

s t

(0 )

(3 )

(4 )

(1 )

(1 )

(0 )

( , )− ∞2

2

2

Page 25: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 25

Ej. FF (Ej. FF (contcont.):.):

P.2: i = s j = 3: a)P.2: i = 3 j = 2: b) P.2: i = 2 j = 4: a)P.2: i = 4 j = t: a)t etiquetado: P.3:

2

3

4

s t

(0 )

(3 )

(4 )

(1 )

(1 )

(0 )

( , )− ∞2

2

2

{ }3 min ,3 3δ = ∞ = 3 ( ,3)s→ +{ }2 min 23, 2δ = = 2 (3 ,2)→ −

{ }4 min 22, 4δ = = 4 (2 ,2)→ +

{ }min 12,1tδ = = (4 ,1)t → +

3 32 24

34

4

2

0 1, 2 1( 2, 2

1, 1)

1,

s

s tϕ ϕ ϕϕ

ϕϕ

= + = − = == =

=

* * * *3 23 24

2

4

* *3

2, 2, 3, 0

( 0, 0)s

t

t

s

c c c c

c c=

= =

=

= =

(s+,3)

(3-,2) (2+,2)

(4+,1)

2

3

4

s t

(0 )

(2 )

(3 )

(2 )

(0 )

(0 )

( , )− ∞2

1

21

1

1

Page 26: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 26

Ej. FF (Ej. FF (contcont.):.):

P.2: i = s j = 3: a)P.2: i = 3 j = 2: b) P.2: i = 2 j = 4: a)No se puede etiquetar más y t no etiquetado: ir a 4P.4: Parar, Flujo óptimo, valor 3.

Corte mínima capacidad ({s,2,3,4}{t}) = 3

2

3

4

s t

(0)

(2)

(3)

(2)

(0)

(0)

( , )− ∞2

1

21

1

1

{ }3 min , 2 2δ = ∞ = 3 ( ,2)s→ +{ }2 min 12,1δ = = 2 (3 ,1)→ −{ }4 min 11,3δ = = 4 (2 ,1)→ +

(s+,2)

(3-,1) (2+,1)

Page 27: Flujos de redes (Network Flows NF) - IIT Comillas · 2008-05-07 · Red conexa red donde cada pareja de nodos es conexa Árbol generador red conexa sin ciclos que tiene exactamente

TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES 27

Problema de flujo compatible con coste mínimo En este problema se incorpora un nuevo elemento en la red anterior, el coste. Se supone asociado a cada arco un coste unitario ijd de envío de flujo a través del arco. El problema consiste en enviar una cantidad de flujo conocida θ a través de la red desde la fuente (origen) al sumidero (destino), con coste total mínimo. La formulación de este problema utilizando las técnicas de programación matemática es la siguiente:

( , )

/( , )

/( , )

/( , ) /( , )

min

0 ,

0 ( , )

ij iji j A

sii s i A

iti i t A

ij jii i j A i j i A

ij ij

d

j s t

c i j A

ϕ

ϕ θ

ϕ θ

ϕ ϕ

ϕ

∈ ∈

=

=

− = ∀ ≠

≤ ≤ ∀ ∈

∑ ∑