You are on page 1of 26

1

Optimizacin en Redes
Dr. Enrique F. Garza Escalante
Facultad de Ingeniera
2
Conceptos Bsicos
Nodos
Arcos
Rutas
1
2
3
4
5
6
7
Cuntas rutas posibles entre dos nodos si todos estn
interconectados?
1 2 5 16

=
|
|
.
|

\
|

2
0
2
!
n
i
i
n
i
Para n= 15, rutas aprox. 17,000 millones
3
Tres Modelos de Optimizacin de
Redes
(Hillier & Lieberman Cap. 9, 7 ed.)
Ruta ms corta (Shortest path): Ruta ms corta
entre dos nodos (origen y destino)
El rbol ms pequeo que abarca los nodos
(Minimum Spanning tree): Conexin de longitud
mnima entre todos los nodos
Flujo Mximo (Maximum Flow)

4
Ruta ms corta
En qu ocasiones ser pertinente modelar un
problema de red buscando la ruta ms corta?
Se te ocurre como modelarlo como problema
de Optimizacin Lineal?
Qu dificultades identificas al hacerlo?
5
Algoritmo: Ruta ms corta
Objetivo de la n-esma iteracin: Encontrar el n-simo nodo ms
cercano al origen (se repite hasta que ste es el destino)
Entrada para la n-sima iteracin: n-1 nodos ms cercanos al origen
(resueltos en las iteraciones previas) incluidas sus distancias
mnimas al origen (Estos nodos y el origen se denotan nodos
resueltos)
Candidatos para el n-simo nodo ms cercano: Cada nodo resuelto,
conectado por un arco a uno o ms nodos no resueltos provee un
candidato - el nodo no resuelto con el arco ms cercano.
Clculo del n-simo nodo ms cercano: Para cada nodo resuelto y
su candidato, aadir la distancia entre ellos y la distancia del
camino ms corto del origen al nodo resuelto. El candidato con la
distancia ms corta total es el n-simo nodo ms cercano (empates
proveen nodos resueltos adicionales), y su camino ms corto es el
que genera la distancia ms corta.
Puedes mostrar la optimalidad del algoritmo?

6
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
Candidatos
7
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
2
2
8
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
3
2
2
9
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
3
2
2
4
10
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
3
2
2
4
5
11
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
3
2
2
4
5
6
12
Empleando Excel para resolver
problemas de ruta ms corta
Podemos formular este problema como un
modelo de programacin lineal:
La variable de decisin es si utilizo un arco o no
La funcin objetivo sera minimizar la suma de
las distancias por su variable binaria asociada
Las restricciones tienen que ver con nodo origen
emitiendo una unidad de salida, y nodo destino
recibindola y todos los nodos intermedios con
todo lo que entra igual a todo lo que sale.
Ver archivo: Prog Redes 1.xls
13
Algoritmo: El rbol ms pequeo
que abarca los nodos
Elegir cualquier nodo de manera arbitraria y conectarlo
(aadir un arco) al nodo que est ms cercano
Identificar el nodo desconexo que est ms cercano a
un nodo conectado y conectar ambos nodos (es decir
aadir un arco entre ambos). Repetir este paso hasta
que todos los nodos estn conectados.
Cualquier empate se rompe de manera arbitraria. Sin
embargo, los empates sealan la posible existencia de
mltiples soluciones ptimas.
Puedes mostrar la optimalidad del algoritmo?
14
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3 1
1
Ejemplo
Tomamos nodo 3 para iniciar.
Es nico?
15
Flujo Mximo
Un origen y un destino
Arcos con direccin y que muestran la capacidad de
flujo, en los origenes de los arcos se indica flujo
disponible, en el fin, flujo utilizado.
Red residual:
Luego de asignar ciertos flujos, muestra la capacidad residual
(disponible) en cada arco dirigido al inicio.
Ruta aumentada
Nueva ruta que emplea los flujos residuales disponibles en un
camino (origen destino) en el que el flujo mnimo disponible en
un arco limitar cuanto se enva

16
Preliminares: Flujo Mximo
Preparar la red con flujos disponibles y
empleados al inicio y fin de cada arco dirigido
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3
1
1
0
0
0
0
0
0
0
0
0
0
0 0
0
17
Teorema: Mximo Flujo Mnimo
Corte
Si en esa red realizamos un corte: P. ej.
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3
1
1
0
0
0
0
0
0
0
0
0
0
0 0
0
Flujo mximo= 4+3+2+3=12
Flujo mx=2+3+1
Flujo mximo=
2+1+1+3+4= 11
Cul es el mnimo de esos flujos mximos? Qu te dice?
18
Algoritmo: Flujo Mximo
1. Identificar una ruta aumentada del origen al destino en
la red residual, tal que cada arco tenga capacidad
residual positiva.
2. Identificar la capacidad residual c de esta ruta
aumentada al encontrar la mnima de entre las
capacidades residuales. Aumentar el flujo en esa ruta
por c unidades .
3. Decrementar en c unidades la capacidad residual
(cifra al inicio) de cada arco dirigido en la ruta
aumentada, y aumentar en c unidades la cifra al final
de cada arco dirigido en la ruta aumentada. Regresar al
paso 1.

19
Qu falta detallar en el algoritmo?
Cmo garantizas llegar al ptimo?
Qu ocurre si eliminas la direccin de los arcos
y fluyes de origen a destino?
20
Ejemplo
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3
1
1
0
0
0
0
0
0
0
0
0
0
0 0
0
De nodo 1 a nodo 8
21
Ruta 1-2-3-6-8
1
2
4
3
5
6
7
8
2
1
2
4
3
1
3
2
2
3
3
1
1
0
0
0
0
0
0
0
0
0
0
0 0
0
Mn capacidad {2,3,3,2}=2=c
22
Ruta 1-4-7-8
1
2
4
3
5
6
7
8
2
1
0
4
1
1
1
0
2
3
3
1
1
0
0
2
2
0
0
0
2
0
0
0 0
2
Mn capacidad={2,3,1]=1=c
23
Ruta 1-4-5-8
1
2
4
3
5
6
7
8
1
1
0
4
1
1
1
0
2
3
2
0
1
1
0
2
2
0
1
0
2
1
0
0 0
2
Min cap=1
24
1
2
4
3
5
6
7
8
0
1
0
4
1
1
1
0
1
2
2
0
1
2
0
2
2
0
1
0
2
1
1
0 1
2
Ya no existen ms rutas aumentadas, flujo mximo es 4
25
Cmo identificar una ruta
aumentada?
Cmo encontrar caminos todava viables en
presencia de una red residual?
Si elegimos el destino e identificamos los nodos
que estn conectados a l con capacidad
residual positiva y con estos a su vez,
identificamos aquellos que tambin se pueden
conectar directamente con capacidad residual
positiva y continuamos este procedimiento hasta
llegar al inicio, garantizamos encontrar una ruta
aumentada si esta existe.
26
Programacin Lineal del Flujo
Mximo
Variable de Decisin: flujo en el arco i
Funcin Objetivo: Maximizar flujo que llega al
destino (que es igual al que sale)
Restricciones:
Lo que entra a todos los nodos intermedios tiene que
ser igual a lo que sale.
El flujo de un arco menor o igual a su capacidad (y no
negativos)
Ver archivo: Prog Redes 1.xls

You might also like