Вы находитесь на странице: 1из 3

ALGORITMO PARA LA RUTA MAS CORTA

Algoritmo de la ruta ms corta:



Es un algoritmo de bsqueda grafica que resuelve solo la fuente ms corta de un problema
del camino para un grfico con los negativos de bordes costos de ruta, produciendo un
camino ms corto al rbol. Este algoritmo se utiliza a menudo en la ruta y como una
subrutina en otros algoritmos de grafos.
Para una fuente dada de vrtice (nodo) en el grfico, el algoritmo encuentra la ruta con
menor coste (es decir, el camino ms corto) entre el vrtice y cualquier otro vrtice.

Por ejemplo, si los vrtices de una grfica representan las ciudades y los costos de borde
de ruta representan conducir distancias entre pares de ciudades conectadas por un camino
directo, el algoritmo de dijkstra se puede utilizar para encontrar la ruta ms corta entre una
ciudad y todas las dems ciudades. Como resultado, el camino ms corto primera vez
ampliamente utilizado en la red los protocolos de enrutamiento, en especial IS-IS y OSPF
(Open ShortestPathFirst).

Modelo de la ruta ms corta:
El problema de la ruta ms corta incluye un juego de nodos conectados donde solo un
nodo es considerado como el origen y solo un nodo es considerado como el nodo destino.
Su objetivo es determinar un camino de conexiones que minimizan la distancia total del
origen al destino. El problema se resuelve por el algoritmo de etiquetado. La esencia del
procedimiento es que analiza toda la red a partir del origen; identifica de manera sucesiva
la ruta ms corta a cada uno de los nodos en orden ascendente de sus distancias (ms
cortas), desde el origen; el problema queda resuelto en el momento de llegar al nodo
destino.

Definicin del problema:
*- se tiene n nodos, partiendo del nodo inicial1 y terminando en el nodo final n.
*- arcos bi-direccionales conectan los nodos con distancias mayores que cero.
*- se desea encontrar la ruta de mnima distancia que conecta el nodo 1 con el nodo n.
Por medio de la aplicacin del algoritmo de este problema podemos conocer la
menor distancia entre un nodo origen y un nodo destino.

Pasos a seguir:
1. Elaborar un cuadro con todos los nodos y los ramales que salen de l.
2. Partiendo del origen, debemos encontrar el nodo ms cercano a l.
3. Anular todos los ramales que entren al nodo ms cercano elegido.
4. Comenzando en el origen se debe encontrar el nodo ms cercano a l, por intermedio del
nodo ya elegido y volver al tercer paso hasta llegar al destino.

Ejemplo del rbol de expansin mnima:
Un rbol de expansin mnima es aquel que conecta todos los nodos dentro de una red
que est en una distancia mnima y que no contiene un ciclo.

Pasos para elaborar un rbol de expansin mnima:
Seleccionar cualquier nodo de la red o indicando segn el problema
Colocar este nodo al ms cercano que minimice la distancia y proseguir considerando
todos los nodos que estn conectados, escogiendo de igual manera el que tenga la mnima
distancia, hasta incluir todos los nodos. Si los nodos son igual valor se selecciona uno
arbitrariamente, y esto quiere decir que puede haber ms de una solucin ptima.

Caractersticas:
*- determina el camino ms corto dado un vrtice origen.
*- utiliza un tipo de estructura de cola llamado cola de prioridad.

Origen del algoritmo de dijkstra:
Este algoritmo tambin llamado algoritmo de caminos mnimos, es un algoritmo para la
determinar 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 algoritmoconsiste 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 del vrtices que componen el
grafo, el algoritmo se detiene. El algoritmo es una especializacin de la bsqueda de
costos uniforme, y como tal, no funciona en grafos con aristas de costo negativo(al elegir
siempre el nodo con distancia menor, pueden quedar excluidos de la bsqueda de nodos
que en prximas iteraciones bajaran el costo general del camino al pasar por una arista
con costo negativo).

Ruta ms corta solucin por el algoritmo de Dijkstra:
Para solucionar el problema de la ruta ms corta entre dos nodos de un grafo se puede
utilizar el algoritmo de Dijkstra, el cual sigue el siguiente procedimiento para calcular la ruta
ms corta desde el nodo origen hasta cada uno de los nodos del grafo:
Crear una lista de nodos para almacenar los nodos con distancia mnima ya calculada
Crear una cola de prioridad para los nodos pendientes de evaluar
Inserta el nodo de origen a la cola de prioridad
Mientras que haya nodos en la cola de prioridad

extrae el primer nodo de la cola de prioridad (tmp)
agrega el nodo tmp a la lista de nodos ya calculados
genera una lista de los nodos conectados al nodo tmp que no estn en la lista de ya
calculados
Para cada nodo de la lista (nod)

calcula la distancia al origen con la distancia entre tmp y nod mas la distancia calculada
entre el origen y tmp.
Si el nodo nodest en la cola de prioridad lo agrega
Si el nodo nod ya est en la cola de prioridad y la distancia con la que est guardado
en la cola es menor, lo deja como esta y si no, lo actualiza con la distancia calculada.

Fin
Fin

El algoritmo de Bellman-Ford:

Este algoritmo es una estructura bsica muy parecido al algoritmo de Dijkstra, pero en vez
de seleccionar vorazmente el nodo de peso mnimo aun sin procesar para relajarlo,
simplemente relaja todas las aristas, y lo hace V-1 veces, siendo V el nmero de
vrtices en el grafo. Las repeticiones permiten a las distancias mnimas recorrer el rbol, ya
que en la ausencia de ciclos negativos, el camino ms corto solo visita cada vrtice una
vez. A diferencia de la solucin voraz, la cual depende de la suposicin de que los pasos
sean positivos, esta solucin se aproxima ms al caso general.

Existen dos versiones:
Versin no optimatizada para grafos con ciclos negativos, cuyo coste de tiempo es O(VE)
Versin optimatizada para grafos con aristas de peso negativo, pero en el grafo no existen
ciclos de coste negativo, cuyo coste de tiempo, es tambin O (VE).

Aplicaciones de encaminamiento:
Una variante distribuida al algoritmo del Bellman-Ford se usa en protocolos de
encaminamiento basados en vector de distancias, por ejemplo el protocolo de
encaminamiento de informacin (RIP). El algoritmo es distribuido porque envuelve unas
series de nodos (routers) dentro de un sistema autnomo (AS), un conjunto de redes y
dispositivos router IP administrados tpicamente por un Proveedor de Servicios de Internet
(ISP). Se compone de los siguientes pasos:
1. Cada nodo calcula la distancia entre el mismo y todos los dems dentro de un AS y
almacena esta informacin en una tabla.
2. Cada nodo enva su tabla a todos los nodos vecinos.
3. Cuando un nodo recibe las tablas de distancias de sus vecinos, este calcula la ruta ms
corta a los dems nodos y actualiza su tabla para reflejar los cambios.

Las desventajas principales del algoritmo de Bellman-Ford en este ajuste son:
No es escala bien.
los cambios en la topologa de red no se reflejan rpidamente ya que las actualizaciones
se distribuyen nodo por nodo.
Contando hasta el infinito (si un fallo de enlace o nodo hace que un nodo sea inalcanzable
desde un conjunto de otros nodos, estos pueden estar siempre aumentando gradualmente
sus clculos de distancia a l, y mientras tanto puede haber bucles de enrutamiento).

Вам также может понравиться