You are on page 1of 5

Investigado por Jhefry Camacho y Rafael Ramírez

Link -> http://es.scribd.com/doc/45842124/La-Ruta-mas-Corta

Ejemplo De la Ruta más corta Tipo Acíclico

Un algoritmo clásico de Investigación de Operaciones es el de La Ruta más Corta, usado por


ejemplo para encontrar en una serie de ciudades conectadas por carreteras, la ruta para llegar de
una ciudad a otra, siguiendo una trayectoria mínima. Existen dos tipos principales de algoritmos:
Cíclicos y Acíclicos. Los algoritmos Acíclicos son usados en redes que no tienen ciclos, es decir
que no tienen rutas que partiendo de un nodo lo lleven a él mismo de nuevo . Los ciclos son
también llamados "lazos".

Los algoritmos cíclicos son para las redes que tienen ciclos o lazos... o en español vueltas en
redondo. Un ejemplo de un lazo: Si del nodo "A" puedo ir al nodo "B", y del nodo "B" puedo ir al
"C" y del "C" al "D" y del "D" puedo retornar al "A" de nuevo, ahí hay un lazo o un ciclo. Las flechas
indican en que sentido esta permitido el movimiento.

Algoritmo Acíclico:

Si la red no tiene ciclos, apliquemos el siguiente algoritmo:

Etiquetar cada nodo con el siguiente formato [distancia desde el nodo inicial, Nombre del
Nodo Precedente]. Para el nodo inicial por definición la distancia es cero (la distancia a sí
mismo), y el nodo precedente es vacío (ninguno): [0 , ] . Después para cada nodo, se analiza los
nodos que lo preceden por las flechas, se escoge aquel cuya distancia al nodo inicial más la
distancia al nodo presente sea mínima. Se etiqueta con la suma, y el nombre del nodo escogido...
bueno, esto en carreta es muy enredador... mejor con un ejemplo, paso a paso.

Consideremos la siguiente red:


Investigado por Jhefry Camacho y Rafael Ramírez
Link -> http://es.scribd.com/doc/45842124/La-Ruta-mas-Corta

Los nodos pueden representan sitios (p.e ciudades, facilidades, etc) las flechas (también llamadas
Arcos) indican las trayectorias permitidas y sobre ellas están las distancias (pero también puede
representar el costo de desplazamiento, o el nivel de riesgo, o un producto de ambos).

Encontremos la distancia más corta entre el nodo "A" y el nodo "G".

1. Rotular el Nodo Inicial : Recordemos el formato del rótulo es : [distancia al primer nodo,
nodo precedente]. La distancia al primer nodo, es la distancia a sí mismo en éste caso, por lo tanto
es cero. El nodo precedente: como no viene de ningún nodo, lo rotulamos vacio: [ 0, ] :

2. Rotular todos los nodos que dependan unicamente del nodo inicial:

A el Nodo B se puede llegar desde el Nodo A, con la ruta A-C-B o con la ruta A-D-C-B. Asi que
depende de otros nodos a parte del Nodo inicial. Lo mismo podemos decir del Nodo C. Pero...
... Pero al Nodo D sólo se puede llegar directamente desde el Nodo A. Este es el nodo que vamos a
rotular, y si hubieran más como él también los rotulariamos, pero en este ejemplo sólo tenemos el
D.

El rótulo del Nodo D, es : [distancia mínima desde el Nodo Inicial, Nodo Precedente]. La
distancia mínima desde el Nodo Inicial al Nodo D es 15: pos no hay otra alternativa, che! y el Nodo
Precedente el "A". Rótulo: [15, "A"]
Investigado por Jhefry Camacho y Rafael Ramírez
Link -> http://es.scribd.com/doc/45842124/La-Ruta-mas-Corta

3. Rotular Todos los Nodos que tengan la información suficiente para rotularlos:

La información necesaria para rotular un Nodo con este algoritmo, es que todos los Nodos de los
que dependa, deben estar ya rotulados. Por ejemplo el Nodo B: depende del A y del C. El Nodo A
ya esta rotulado, pero el C aún no. Así que aún no se puede rotular el Nodo B. El Nodo C depende
del A y del D, y ambos estan rotulados, así que si podemos rotularlo. La distancia desde A es 8, y
desde D es: la distancia que tiene en el rótulo (que es la distancia mínima desde él al Nodo inicial,
o sea 15), MAS la distancia entre D y C = 15 +4 = 19: entre 8 y 19 es más pequeño 8. Así que
escogemos el Nodo A como precedente: el rótulo es [ 8 , "A"]

4. Seguir rotulando todos los Nodos que tengan información suficiente hasta llegar al
Nodo deseado:

G. Ahora ya hay información suficiente para rotular los Nodos B y F. Entonces rotulemos el Nodo B
(no importa cuál se haga primero, igual hay que rotularlos todos). El rotulo para el Nodo B: La
distancia desde A es 10, la distancia mínima al Nodo inicial desde C es: el la distancia del rótulo de
C: 8 + la distancia de C a B : 3 => 8 + 3 = 11. El mínimo entre 10 y 11 es 10. Rótulo= [10, "A"].
Investigado por Jhefry Camacho y Rafael Ramírez
Link -> http://es.scribd.com/doc/45842124/La-Ruta-mas-Corta

Rótulo para el F: Desde C : 8 + 4 = 12 y desde D : 15 + 15 = 30. Entonces el Rótulo es [12, "C" ]

Rótulo para el Nodo E: Desde B : 10 + 20 = 30 y desde C: 8 + 15 = 23 Rótulo : [23,"C"]

Por último para el Nodo G: la distancia desde E es 23 + 5 = 28 y desde F es 12 + 3 = 15 Rótulo


[15, F]
Investigado por Jhefry Camacho y Rafael Ramírez
Link -> http://es.scribd.com/doc/45842124/La-Ruta-mas-Corta

Ahora se puede leer la trayectoria mínima partiendo del rótulo del Nodo G, dicho rotulo nos dice
que viene del F el de F dice que viene del C y el del C dice que viene del A. Solución: Distancia
Mínima= 15 Ruta Más Corta = A-C-F-G

You might also like