Está en la página 1de 25

MODELOS ESTOCÁSTICOS

Clase 4: algoritmos de redes


Contenido
1. Concepto de redes.
2. Algoritmo del árbol de mínima
expansión.
3. Ruta más corta en una red.
4. Flujo máximo.
Resultado de aprendizaje
Resuelve problemas de redes a través de
algoritmos del árbol de mínima expansión, ruta
más corta en una red y flujo máximo.
Algoritmos de redes

Redes y aplicaciones

Existen múltiples situaciones que se pueden modelar como redes,


por ejemplo, determinación de la ruta más corta entre dos
ciudades en una red existente de carreteras, determinación del
cronograma (fechas de inicio y terminación) para las actividades
de un proyecto de construcción, entre otros.
La solución de estas situaciones se logra por medio de varios
algoritmos de optimización de redes. Entre ellos existen 4 clásicos:
1. Árbol de mínima expansión.
2. Algoritmo de la ruta más corta.
3. Algoritmo de flujo máximo.
4. Algoritmo de la ruta crítica (CPM).
Algoritmos de redes

Conceptos básicos

Una red se compone de un conjunto de nodos unidos por arcos


o ramas. La notación para describir una red es (N, A), donde N
es el conjunto de nodos y A es el conjunto de arcos.

Por ejemplo, se plantea N = {1, 2, 3, 4, 5} ; entonces, A = {(1, 2),


(1, 3), (2, 3), (2, 5), (3, 4), (3, 5), (4, 2), (4, 5)}.
Asociado con cada red hay un flujo, por ejemplo, los productos
de petróleo fluyen por un oleoducto y el tráfico de automóviles
fluye por las carreteras.
El flujo máximo en una red puede ser finito o infinito, según la
capacidad de sus arcos.
Algoritmos de redes

Conceptos básicos

• Se dice que un arco está dirigido u orientado si permite el flujo positivo sólo en una dirección.
• Una red dirigida tiene todos los arcos dirigidos. Una ruta es un conjunto de arcos que unen dos
nodos distintos y que pasan a través de otros nodos en la red. Por ejemplo, los arcos (1,2), (2,3),
(3,4) y (4,5) forman una ruta entre los nodos 1 y 5.
• Una ruta forma un ciclo o un bucle si conecta un nodo de vuelta a sí mismo a través de otros nodos,
por ejemplo, los arcos (2,3), (3,4) y (4,2) forman un ciclo.
• Un árbol es una red conectada libre de ciclos compuesta de un subconjunto de todos los nodos y un
árbol de expansión es un árbol que une todos los nodos de la red.
Algoritmos de redes

Algoritmo del árbol de mínima expansión

Este árbol vincula los nodos de una red valiéndose de la


longitud mínima total de las ramas de conexión. Una
aplicación común se presenta en la pavimentación de
carreteras que unen poblaciones de forma directa o que
pasan por otras poblaciones. La solución del árbol de
mínima expansión proporciona el diseño del sistema de
carreteras.

Sea N = {1, 2,…,n} el conjunto de nodos de la red y se define:


• Ck = conjunto de nodos que han estado conectados de manera permanente en la iteración k.
• Ck= conjunto de nodos que se construirán permanentemente después de la iteración k.
Algoritmos de redes

Ejercicio ejemplo árbol de mínima expansión

La red graficada muestra la conexión en millas


de 6 nodos.

Buscar la red que permita la conectividad de


todas las locaciones, con el fin de utilizar la
mínima cantidad de material para construcción
de una red vial de carreteras entre ellas.

Obtenida de Taha, 2004. p. 213.


Algoritmos de redes

Solución ejemplo árbol de mínima expansión

Primero se revisa la conexión del nodo 1 con


todos los restantes, observándose la mínima
distancia al nodo 2. Con esto se genera una
primera rama o eje permanente.

Luego, desde los nodos de esta rama se busca la


mínima distancia al resto de los nodos. Como
resultado se conecta al nodo 5. A esta rama 1-2-5,
se agrega luego el nodo 4, quedando por conectar
los nodos 6 y 3. Por el criterio de la mínima
distancia, se incorpora al nodo 6 desde el nodo 4.

Obtenida de Taha, 2004. p. 214.


Algoritmos de redes

Resolución ejemplo árbol de mínima expansión

Constituido el árbol 1-2-5-4 y 6, se busca


conectar al nodo 3.

Por el criterio de la mínima distancia, este se


puede conectar, ya sea desde el nodo 1 o desde
el nodo 4. La dimensión total de la red que
permite crear una red vial para incorporar a las
6 localidades, usando el mínimo material de
construcción de carretera, se dimensiona en una
distancia 1+3+4+3+5 = 16 millas.
Obtenida de Taha, 2004. p. 214.
Algoritmos de redes

Algoritmo de ruta más corta

Este problema determina la ruta más


corta entre un origen y un destino en
una red de transporte.
En una red, esto suele implicar la
determinación de la ruta más corta de
un nodo a cada uno de los otros nodos.
Este problema se resuelve con la
técnica de la ruta más corta o bien,
planteándose como un programa lineal
con variables 0 - 1.
Obtenida de Render, Stair, Hanna, 2012. p. 440.
Algoritmos de redes

Pasos algorítmicos

1 Encontrar el nodo más cercano al origen (planta).


Colocar la distancia en un cuadro al lado del nodo.
2 Encontrar el siguiente nodo más cercano al origen
(planta) y poner la distancia en un cuadro al lado del
nodo. En algunos casos, deberán revisarse varias rutas
para encontrar el nodo más cercano. Obtenida de Render, Stair, Hanna, 2012. p. 440.

3 Repetir este proceso hasta que se haya revisado la red completa. La última distancia en el nodo final
será la distancia de la ruta más corta.
Debería observar que la distancia colocada en el cuadro al lado de cada nodo será la distancia de
la ruta más corta a ese nodo. Tales distancias se usan como resultados parciales para encontrar el
siguiente nodo más cercano.

Obtenida de Flaticon, 2020.


Algoritmos de redes

Desarrollo de ejercicio
Primera iteración

1
Encontrar el nodo más cercano al
origen (planta). Colocar la distancia en
un cuadro al lado del nodo.

En este caso es descrito por el arco (1, 2)

Obtenida de Render, Stair, Hanna, 2012. p. 441.


Algoritmos de redes

Desarrollo de ejercicio ejemplo


Segunda iteración

2 Encontrar el siguiente nodo más cercano al


origen (planta) y poner la distancia en un
cuadro al lado del nodo. En algunos casos,
deberán revisarse varias rutas para
encontrar el nodo más cercano.

Es descrito por el arco (2, 3)

Obtenida de Render, Stair, Hanna, 2012. p. 441.


Algoritmos de redes

Desarrollo de ejercicio ejemplo


Tercera iteración

3 Repetir este proceso hasta que se haya


revisado la red completa. La última
distancia en el nodo final será la distancia
de la ruta más corta.

La siguiente interacción es
descrita por el arco (3, 5).
Obtenida de Render, Stair, Hanna, 2012. p. 441.
Algoritmos de redes

Desarrollo de ejercicio ejemplo


Cuarta iteración

La siguiente interacción es descrita por el


arco (5, 6) y llegando al nodo 6 se termina las
iteraciones, encontrando que la distancia
más corta entre los nodos 1 y 6 es de 290.

Obtenida de Render, Stair, Hanna, 2012. p. 441.


Algoritmos de redes

EL mismo problema resuelto por programación lineal binaria

Min d = 100X12 + 200X13 + 50X23 + 50X32 + 200X24 + 200X42 + 100X25 + 100X52 + 40X35 + 40X53 + 150X45 +
150X54 + 100X46 + 100X56
• S.A.
• X12 + X13 = 1 nodo 1
• X12 + X32 - X23 - X24 – X25 = 0 nodo 2
• X13 + X23 - X32 - X35 = 0 nodo 3
• X24 + X54 - X42 - X45 - X46 = 0 nodo 4
• X25 + X35 + X45 - X52 – X53 – X54 – X56 = 0 nodo 5
• X46 + X56 = 1 nodo 6
Obtenida de Render, Stair, Hanna, 2012. p. 440.
Algoritmos de redes

Algoritmo de flujo máximo

1. Todo flujo a través de una red conexa dirigida se origina en un


nodo llamado origen y termina en otro nodo llamado destino.
2. Los nodos restantes son nodos de trasbordo. Origen
1
3. Se permite el flujo a través de un arco, sólo en la dirección
indicada por la flecha, donde la cantidad máxima de flujo está
dada por la capacidad del arco. En el origen, todos los arcos 2 3 Transbordo
señalan hacia afuera. En el destino, todos señalan hacia el nodo.
4. El objetivo es maximizar la cantidad total de flujo del origen al 4 Destino
destino. Esta cantidad se mide en cualquiera de las dos maneras
equivalentes, esto es, la cantidad que sale del origen o la cantidad
que entra al destino. Elaboración propia
Algoritmos de redes

Método iterativo para algoritmo del flujo máximo

1 Elegir cualquier ruta del inicio (origen) al final (destino) con algún flujo. Si no existe una trayectoria
con flujo, entonces, se encontró la solución óptima.

2 Determinar el arco en esta ruta con la menor capacidad de flujo disponible. Llamar C a tal
capacidad, lo cual representa la capacidad adicional máxima que puede asignarse a esta ruta.

3 Para cada nodo en esta ruta, disminuir en la cantidad C la capacidad del flujo en la dirección del
flujo. Para cada nodo en esta ruta, incrementar la capacidad del flujo en la cantidad C en la
dirección contraria.

4 Repetir los pasos anteriores hasta que no sea posible aumentar el flujo.
Algoritmos de redes

Ejemplo: método iterativo para algoritmo del flujo máximo

Primera iteración: los valores en cada nodo indican la cantidad de autos


por hora que pueden salir desde cada nodo hacia diferentes destinos. En
este caso, la menor capacidad de flujo en la ruta 1-2-6 (de oeste a este)
es 200 autos/hora. Este valor de capacidad se resta a las salidas hacia el
este y suma a las salidas hacia el oeste. Con el ajuste se concluye que el
flujo máximo por la ruta 1-2-6 es de 200 automóviles/hora.

Obtenida de Render, Stair, y Hanna, 2012. p. 434. Obtenida de Render, Stair y Hanna, 2012. p. 436.
Algoritmos de redes

Método iterativo para algoritmo del flujo máximo


Segunda iteración: habiéndose descartado la ruta 2-6 y considerándose los valores ajustados de la ruta 1-
2, se evalúa la ruta 1-2-4-6 de oeste a este. Se realiza nuevo ajuste considerando una capacidad mínima
de 100 autos/hora en esa ruta. La nueva red indica la posibilidad de circular por la red 1-3-5-7
evaluándose su capacidad (adicional máxima) en 200 automóviles/hora.

Obtenida de Render, Stair, y Hanna, 2012. p. 437.


Algoritmos de redes

Método iterativo para algoritmo del flujo máximo

Tercera iteración: tras los


ajustes en la ruta 1-3-5-7 se
puede concluir que el
máximo flujo es de 500
autos/hora: 200 en la ruta 1-
2-6; 100 en la ruta 1-2-4-6 y
200 más en la ruta 1-3-5-7.

Obtenida de Render, Stair, y Hanna, 2012. p. 437.


Algoritmos de redes

PERT - CPM

• El método de la ruta crítica (CPM, por sus siglas en inglés) y la


técnica de evaluación y revisión de programas (PERT, por sus
siglas en inglés), son métodos basados en redes diseñados
para ayudar a planificar, programar y controlar proyectos.
• Un proyecto se define como un conjunto de actividades
interrelacionadas donde cada actividad consume tiempo y
recursos.
• El objetivo de CPM y PERT es idear herramientas analíticas
para programar las actividades.
• Este tema se verá con mayor detalle en la siguiente clase.
Algoritmos de redes

Bibliografía
Hillier, F. y Lieberman, G. (2010). Introducción a la Investigación de operaciones (9a

edición). México: McGraw Hill. p. 978.

Render, B., Stair, R., Hanna,M. (2012). Métodos cuantitativos para los negocios (11a

edición). Pearson. p. 645.

Taha, H. (2004). Investigación de operaciones (7a edición). México: Pearson Educación. p.

830.

También podría gustarte