Documentos de Académico
Documentos de Profesional
Documentos de Cultura
I. Introducción
• Euler (1707-1803): Inicio teoría de grafos (topología)
– Puentes de Konigsberg (río Pregel): representar con grafo
B
B
A D
A D
C
V 1,2, 3, 4, 5
A (1,2), (1, 3), (2, 3), (2,5), (3, 4), (3, 5), (5, 4), (4, 5), (2, 2) 2 4
. 1 5 7 9
2 5
1 . 6 4 3
5 6 . 5 10
1 3
7 4 5 . 8 3
9 3 8 .
.
4 6
10 3
PASO1: C0 , C0 V
1, 2, 3, 4, 5, 6
. POR EJ. i 1 : C1 1 , C1 2,3, 4,5, 6 . k 2 YT
T e1 k 6 ,k 3
PASO2: j 2 , e1 1, 2 . C2 1, 2 , C2 3, 4,5, 6 ,
*
. .
T e1 , e2 k 6
PASO2: j 5 , e2 2, 5 . C3 1, 2, 5 , C3 3, 4, 6 , 4
*
. ,k
C 4 1, 2, 5, 4 T e1 , e2 , e3 k 6 k 5
PASO2: j 4 , e3 2, 4 . , C4 3, 6 , . , .
*
100 20 10 50
30 60
1 3 5
P. 1: uk 40 k 4 . P 1, 3, 4 , T 2, 5 .
u 2 min 100, 40 15 55 pred (2) 4 u5 min 90, 40 50 90 pred (5) 4
P. 2: , ( )
P 1, 3, 4, 2 T 5
P. 1: uk 55 k 2 . , .
P. 2: u5 min u5 , u2 d 25 min 90, 55 90
P. 1: uk 90 k 5 .
P 1, 3, 4, 2, 5 , T , PARAR.
IV. Camino mínimo
• Algoritmo de Bellman-Ford
– Caso general
– Complejidad (n3 )
– u m longitud camino mínimo de 1 a j usando a lo sumo m arcos
j
– Algoritmo:
Paso 1: Inicio, longitudes arcos de 1 a los demás
u11 0 u1j d1 j j 2,..., n Poner m=1.
Paso 2: Calcular distancias mínimas con a lo sumo m+1 arcos
u mj 1 min u mj , min ukm d kj
k j
Si u mj 1 u mjj , parar. Si no, hacer m=m+1 y paso 2
Si no hay circuitos de longitud negativa para a lo sumo en n
iteraciones
IV. Camino mínimo
2
5 -3
4
1 3 4
2 1
3
P. 2: u 3
2 min 5, min 2 , 3 3 0 u33 min 2, min 5 3, 3 6 2
u43 min u42 , min u22 d24 , u32 d34 min 3, min 5 4, 2 1 3 , u 2 u 2
3 2
m 3 P. 2 (FIN)
P. 2: u2 min
4
u , min u
3
2
3
3
d 32 , u43 d 42 min 0, min 2 , 3 3 0
u34 min u33 , min u23 d 23 , u43 d 43 min 2, min 0 3, 3 6 2
u44 min u43 , min u23 d 24 , u33 d 34 min 3, min 0 4, 2 1 3 u 4j u 3j j , PARAR.
V. Flujo en redes
• Distintos planteamientos:
– Problema de flujo máximo con capacidades máximas en arcos
(de flujo máximo)
– Problema de flujo compatible con coste mínimo
• Problema de flujo máximo:
– G=(V,U) grafo dirigido sin bucles, es una red de transporte si:
• Única fuente, s
• Único sumidero, t
• Capacidad de los arcos, cij
• Cada vértice es alcanzable desde s, y t es alcanzable por todos
– Flujo compatible: vector dimensión número arcos tal que:
cij (i, j )
• ij
• Ley de conservación de flujo:
i s, t
j /( j ,i )U
ji ij 0
j /( i , j )U
5 4
(7) (6)
3 4
(5) 3
(1)
(3)
(-,) s t (3+,2)
(3)
(2)
3
(2+,2)
– P.1: ij 0 (i, j ) U c ij
*
cij (i, j ) U s (, )
– P.2: i = s j = 2: a) 2 min , 2 2 2 (s , 2)
3 (2,2)
– P.2: i = 2 j = 3: a) 3 min 2,3 2
– P.2: i = 3 j = t: a) t min 2, 2 2 t (3, 2)
(4)
– t etiquetado: P.3: (0)
2 4
(1)
2
( , )
s 2 2, 23 2, 3t 2 (1)
s 2 t
cs*2 0, c23
*
1, c3*t 0 (cs*3 3, c24
*
4, c4*t 1) (3)
(0)
3 2
V. Flujo en redes
(3-,2) (4)
(2+,2)
• Ej. FF (cont.): (0)
2 4
(1)
2
( , )
(1)
(4+,1)
s 2 t
(3)
(0)
3 2
(s+,3)
– P.2: i = s j = 3: a) 3 min ,3 3 3 (s ,3)
– P.2: i = 3 j = 2: b) 2 min 3, 2 2 2 (3, 2)
4 min 2, 4 2 4 (2, 2)
– P.2: i = 2 j = 4: a)
t min 2,1 1 t (4,1)
– P.2: i = 4 j = t: a) (3) 1
2 4
– t etiquetado: P.3: (0)
(0)
s 3 0 1, 32 2 1 1, 24 1, 4t 1 ( , )
2
1
( s 2 2, 34 2)
(2)
s 1 t
c 2, c 2, c 3, c 0
*
s3
*
23
*
24
*
4t
(2)
(c 0, c 0)
*
s2
*
3t
1
3 2
(0)
V. Flujo en redes
(3-,1) (3) 1 (2+,1)
• Ej. FF (cont.): 2 4
(0)
(0)
2
(, ) 1
(2)
s 1 t
(2)
1 (0)
3 2
(s+,2)
– P.2: i = s j = 3: a) 3 min , 2 2 3 (s , 2)
– P.2: i = 3 j = 2: b) 2 min 2,1 1 2 (3,1)
– P.2: i = 2 j = 4: a) 4 min 1,3 1 4 (2,1)
– No se puede etiquetar más y t no etiquetado: ir a 4
– P.4: Parar, Flujo óptimo, valor 3.
Corte mínima capacidad ({s,2,3,4}{t}) = 3
V. Flujo en redes
• Mediante programación lineal:
max v
v si i s
ji ij 0 si i s, t
j /( j ,i )U j /( i , j )U v si i t
0 ij cij
• Problema de flujo compatible con coste mínimo
– Valor flujo conocido , enviar con mínimo coste
– Coste unitario envío flujo: d ij min dijij
( i , j )U
i /( s ,i )U
ij
i /( i ,t )U
ij
i /( j ,i )U
ji
i /( i , j )U
ij 0 j s, t
0 ij cij (i, j ) U