Escuela Profesional de Ingeniera de Ingeniera Industrial
Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 1 ALGORITMOS DE LA RUTA MS CORTA Esta seccin presenta dos algoritmos para resolver tanto redes cclicas (es decir, que contienen bucles) como redes acclicas: 1. El algoritmo de Dijkstra para determinar las rutas ms cortas entre el nodo origen y los dems nodos en la red. 2. El algoritmo de Floyd para determinar la ruta ms corta entre dos nodos cualesquiera en la red.
ALGORITMO DE DIJKSTRA El algoritmo de Dijkstra, tambin llamado algoritmo de caminos mnimos, es un algoritmo para la determinacin del camino ms corto dado un vrtice origen al resto de vrtices en un grafo con pesos en cada arista. Su nombre se refiere a Edsger Dijkstra, quien lo describi por primera vez en 1959. La idea subyacente en este algoritmo consiste en ir explorando todos los caminos ms cortos que parten del vrtice origen y que llevan a todos los dems vrtices; cuando se obtiene el camino ms corto desde el vrtice origen, al resto de vrtices que componen el grafo, el algoritmo se detiene. 1. Sea ui la distancia ms corta del nodo origen 1 al nodo i. 2. Definimos dij (>= 0) como la longitud del arco (i,j). 3. Los nodos sern etiquetados de la siguiente forma: [ui + dij, i]
Distancia hasta el nodo j desde el nodo origen
Nodo inmediato anterior al j
Facultad de Ingenieras Escuela Profesional de Ingeniera de Ingeniera Industrial Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 2 Iteracin 0. Etiquete el nodo de origen (nodo 1) con la etiqueta permanente [0, 2].Establezca i = 1.
Iteracin 1. Se puede llegar a los nodos 2 y 3 desde el nodo 1 (el ltimo etiquetado permanentemente). As, la lista de nodos etiquetados (temporales y permanentes) es:
[0 , -] [0 , -] [0 + 100 , 1] [0 + 30 , 1]
Facultad de Ingenieras Escuela Profesional de Ingeniera de Ingeniera Industrial Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 3 Iteracin 2. Se puede llegar a los nodos 4 y 5 desde el nodo 3, y la lista de los nodos etiquetados es:
Iteracin 3. Desde el nodo 4 se puede llegar a los nodos 2 y 5 As, la lista de los nodos etiquetados se actualiza como:
En el nodo 2, la nueva etiqueta [55,4] reemplaza a la etiqueta temporal [100,1] de la iteracin 1 porque proporciona una ruta ms corta. Adems, en la iteracin 3 el nodo 5 tiene dos etiquetas alternativas con la misma distancia (u5 = 90). La etiqueta temporal [55,4] en el nodo 2 ahora es permanente (u2 = 55). [0 , -] [100 , 1] [30 , 1] [10 + 30 , 3] [30 + 60 , 3]
Facultad de Ingenieras Escuela Profesional de Ingeniera de Ingeniera Industrial Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 4
Iteracin 4. Slo el nodo 3 permanentemente etiquetado puede ser alcanzado desde el nodo 2. Por consiguiente el nodo 3 no puede ser reetiquetado. La nueva lista de etiquetas permanece como estaba en la iteracin 3 excepto que la etiqueta en el nodo 2 ahora es permanente. Esto deja al nodo 5 como la nica etiqueta temporal. Como el nodo 5 no conduce a otros nodos, su etiqueta se hace permanente, y el proceso termina.
La ruta ms corta entre el nodo 1 y cualquier otro nodo en la red se determina partiendo del nodo destino deseado y retrocediendo hasta el nodo de inicio utilizando la informacin en las etiquetas permanentes
Facultad de Ingenieras Escuela Profesional de Ingeniera de Ingeniera Industrial Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 5
Ejercicio 1: Determine la ruta ms corta desde el nodo 1 y cualquier otro nodo utilizando el algoritmo de Dijkstra en la red de la figura:
Ejercicio 2: En fecha reciente se reserv el rea de Parque Nacional del Manu para paseos y campamentos. No se permite la entrada de automviles, pero existe un sistema de caminos angostos y sinuosos para tranvas y para jeeps conducidos por los guardabosques. En la figura 3.1 se muestra este sistema de caminos sin las curvas, en donde O es la entrada al parque; las otras letras representan la localizacin de las casetas de los guardabosques y otras instalaciones de servicio. Los nmeros son las distancias en millas de estos caminos accidentados. El parque contiene un mirador a un hermoso paisaje en la estacin T. Unas cuantas camionetas transportan a los visitantes desde la entrada a la estacin T y viceversa. En este momento la administracin del parque se enfrenta a tres problemas. Uno consiste en determinar qu ruta, desde la entrada del parque a la estacin T, es la que representa la distancia total ms corta para la operacin de los tranvas.
Facultad de Ingenieras Escuela Profesional de Ingeniera de Ingeniera Industrial Investigacin Operativa II Ruta Ms Corta - Algoritmo de Dijkstra SESION N 3
I n g . N s t o r H u a n q u i V e l a Pgina 6
Figura 3.1- Red del Parque Nacional del Manu Ejercicio 3: Usted debe hacer un viaje en automvil a una ciudad que nunca ha visitado. Estudia un plano para determinar la ruta ms corta hasta su destino. Segn la ruta que elija, hay otras cinco ciudades (llamadas A, B, C, D, E) por las que puede pasar en el camino. El plano muestra las millas de cada carretera que son una conexin directa entre dos ciudades sin que otra intervenga. Estas cifras se resumen en la siguiente tabla, donde un guion indica que no hay conexin directa sin pasar por otras ciudades.
Resuelva el ejercicio utilizando el Algoritmo de Dijkstra