Está en la página 1de 7

Análisis de redes

Árbol de expansión mínima o método del recorrido mínimo


(Kruskal)

Cuando el número de ramas (arcos o enlaces) es exactamente uno menos que el número de
nodos se le conoce como árbol de expansión. Se necesita hallar una red conexa que incluya
todos los nodos de modo que su costo sea mínimo.

1) Se selecciona arbitrariamente cualquier nodo de la red para iniciar.


2) Se analizan las ramas que conectan al nodo inicial elegido en el paso (1) con los
nodo aún no conectados a la red y se selecciona la del costo mínimo.
3) Con los nodos conectados, se busca la rama más económica que conecte cualquiera
de ellos a un nodo no conectado a la red. Este procedimiento se repite hasta tener
todos los nodos conectados a la red.

Método de la ruta más corta


(algoritmo de Djistra)
Un problema de ruta más corta requiere de una red conexa, donde
cada rama (arco tiene un costo no negativo), tiene un nodo
denominado destino y otro origen, cuyo objetivo es determinar una
ruta de costo mínimo entre el origen y el destino. En este tipo de

Fis. Javier Lara de Paz


problemas no necesariamente se incluyen a todos los nodos de la
red.
Paso 1. Constrúyase una lista tabulando cada nodo como columna
abajo del cual se enlistarán cada una de las ramas conectadas a dicho
nodo en orden ascendente según el costo de cada rama. Omítanse en
esa lista a cualquier rama que tenga al origen como su segundo nodo
e igualmente que tengan al destino como primer nodo.
Paso 2. Márquese con un asterisco * a la fuente (origen) y asígnele
el valor cero. Localice la rama más barata que coincida con el
origen, es decir, la de menor costo de su columna y enciérrese éste
en un círculo. Márquese con un asterisco * al segundo nodo de esta
rama y asigne el valor del costo al mismo. Elimine de la lista todas
las ramas que tengan como segundo nodo al nodo marcado en este
último paso.
Paso 3. Si el nodo que acaba de marcarse es el nodo destino pase al
paso 5 (último paso). De lo contrario continúe con el paso 4.
Paso 4. De la lista actualizada, todos los nodos que tengan asterisco
bajo los cuales haya ramas encerradas en círculos, encuentre las
ramas que aún no estén marcadas que tengan el menor costo. La
rama que corresponda a la más barata se señalará nuevamente
encerrándola en un círculo y el segundo de esta rama se marcará
con un asterisco en su columna y se le agrega el costo de esta rama.
Se elimina de la lista todas las ramas que tengan como segundo nodo
al que se marcó con asterisco y se continúa con el paso 3.
Paso 5. Se calcula el valor Z* asignado al destino. La ruta de costo
mínimo se obtiene recursivamente hacia atrás iniciando con el
destino, al incluir cada rama encerrada en círculo cuyo segundo
nodo pertenece a la ruta.

Fis. Javier Lara de Paz


Ejemplo:
Encontrar la ruta más corta entre dos puntos A y F. a continuación se
enlistan las distancias entre los diferentes nodos de la red:
A B C D E F
A ---- 18 ---- 32 ---- ----
B 18 ---- 12 28 ---- ----
C ---- 12 ---- 17 ---- 32
D 32 28 17 ---- 4 17
E ---- ---- ---- 4 ---- 11
F ---- ---- 32 17 11 ----

Solución:
Paso 1. Enlistar en columnas los nodos y abajo de cada columna las
ramas
A B C D E F
AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28
Paso 2. Marcar con asterisco al nodo origen A y asignar el valor cero
al mismo. La rama más barata debajo de A es AB, así que se marca
a B con asterisco se le asigna el valor de 18 y la rama se encierra en
un círculo, además se elimina de toda lista todas las ramas cuyo
segundo nodo sea B.
A*(0) B*(18) C D E F
AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28

Fis. Javier Lara de Paz


Paso 3. No hay convergencia , es decir, aún no se llega al destino.
Paso 4. De las columnas A y B, se seleccionan las ramas no
encerradas y se calcula la suma de costos para cada rama:
Para la rama AD=0+32=32
Para la rama BC=18+12=30
Para la rama BD=18+28=46
La más barata es BC, se encierra en círculo y se marca con asterisco
a la columna C y se elimina de la lista las ramas que tengan a C
como segundo nodo.
A*(0) B*(18) C* (30) D E F
AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28

Paso 4. Repetir el proceso. Buscamos de las columnas marcadas


con asterisco rama de menor costo que no estén encerradas:
Para AD=0+32=32
Para BD=18+28=46
Para CD=30+17=47
Para CF=30+32=62
Se encierra AD y se marca con asterisco la columna D y se agrega el
costo 32. Se eliminan las ramas que tenga a D como segundo nodo.

A*(0) B*(18) C* (30) D* (32) E F


AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28

Fis. Javier Lara de Paz


Paso 4. De las columnas marcadas con asterisco se localiza la rama
de menor costo no encerrada aún en círculo.
Para CF=30+32=62
Para DE=32+4=36
Para DF=32+17=49
Se encierra DE y se marca con asterisco la columna E, se agrega el
costo y se eliminan de la lista todas las ramas que tengan E commo
segundo nodo.
A*(0) B*(18) C* (30) D* (32) E* (36) F
AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28

Paso 4. De las columnas marcadas con asterisco se localiza la rama


de menor costo no encerrada aún en círculo.
Para CF=30+32=62
Para EF=36+11=47
Para DF=32+17=49
Se encierra EF y se marca con asterisco la columna F, se agrega el
costo y se eliminan de la lista todas las ramas que tengan F (destino)
como segundo nodo.
A*(0) B*(18) C* (30) D* (32) E* (36) F* (47)
AB 18 BC 12 CB 12 DE 4 ED 4 FE 11
AD 32 BD 28 CD 17 DC 17 EF 11 FD 17
CF 32 DF 17 FC 32
DB 28

Paso 5. La distancia mínima desde el punto A hacia F es Z*=47. La


ruta corresponde a las ramas encerradas en círculo, primero

Fis. Javier Lara de Paz


localizamos la que tenga a F (destino) como segundo nodo, y así de
manera recursiva se localizara el segundo nodo de cada rama hasta
llegar al origen:
Las ramas son: EF-DE-AD , como el origen es el nodo A, la ruta
deseada quedaría:
ADEF con un costo de Z*=47.

Método de flujo máximo

En problemas cuando se presentan flujos como gasoductos, canales o tuberías hidráulicas,


los cuales generan redes no dirigidas cuyas ramas tienen capacidad de flujo en dos
diferentes sentidos. La solución busca encontrar un programa de flujo máximo desde un
punto inicial o nodo origen a uno fina o destino, con los empalmes correspondientes o
nodos intermedios donde no se puede acumular material.

1. Hallar en la red del problema una ruta de flujo positivo y enviar el número máximo
de unidades posible, denotando como M, desde el origen hasta el destino a través de
la misma. Sino existe la ruta el problema ha finalizado, y se pasa al paso 4.
2. Para el envío de las M unidades del origen al destino se deberá disminuir todas las
ramas de la ruta seleccionada en el paso anterior en M unidades en su inicio y se
aumenta en esa misma cantidad en su parte final.
3. Se regresa al paso 1.
4. El problema ya ha sido resuelto al llegar a ese paso, porque no hay ramas de flujo
positivo en la red, por lo que la cantidad máxima de flujo posible será la suma de
todos los envíos realizados en las etapas anteriores.

Fis. Javier Lara de Paz


Fis. Javier Lara de Paz

También podría gustarte