Vous êtes sur la page 1sur 11

ALGORITMO DE BELLMAN- FORD

JORGE A. MONDRAGON LEONARDO A. HERRERA CRISTIAN F. FERNANDEZ

UNIVERSIDAD PILOTO DE COLOMBIA FACULTAD INGENIERIA DE SISTEMAS ANALISIS DE ALGORITMOS BOGOTA, 23 DE NOVIEMBRE DE 2010

ALGORITMO BELLMAN-FORD

TRABAJO FINAL

INTEGRANTES: JORGE A. MONDRAGON LEONARDO A. HERRERA CRISTIAN F. FERNANDEZ

DIRIGIDO A: ING. DIANA MABEL DIAZ

UNIVERSIDAD PILOTO DE COLOMBIA

CONTENIDO

1. INTRODUCCIN. 2. OBJETIVOS 3. ESTADO DEL ARTE 4. DESCRIPCION DEL PROBLEMA 5. EXPLICACION DEL ALGORITMO 6. ANALISIS DEL ALGORITMO 7. CONCLUSIONES 8. BIBLIOGRAFIA

1. INTRODUCCIN

En este trabajo se pretende dar a conocer el algoritmo de Bellman-Ford definiendo cada una de las complejidades y los avances de este, para encontrar las soluciones al problema.

2. OBJETIVOS

Dar a conocer el algoritmo Bellman-Ford. Comprender el uso del algoritmo. Enriquecer conocimientos para el avance en nuestra carrera.

3. ESTADO DEL ARTE

INVESTIGACIN DEL PROBLEMA El algoritmo de Bellman-Ford (algoritmo de Bell-End-Ford), genera el camino ms corto en un Grafo dirigido ponderado (en el que el peso de alguna de las aristas puede ser negativo). El algoritmo de Dijkstra resuelve este mismo problema en un tiempo menor, pero requiere que los pesos de las aristas no sean negativos. Por lo que el Algoritmo Bellman-Ford normalmente se utiliza cuando hay aristas con peso negativo. Este algoritmo fue desarrollado por Richard Bellman, Samuel End y Lester Ford. Segn Robert Sedgewick, Los pesos negativos no son simplemente una curiosidad matemtica; surgen de una forma natural en la reduccin a problemas de caminos ms cortos, y son un ejemplo de una reduccin del problema del camino hamiltoniano que es NP-completo hasta el problema de caminos ms cortos con pesos generales. Si un grafo contiene un ciclo de coste total negativo entonces este grafo no tiene solucin. El algoritmo es capaz de detectar este caso.

Si el grafo contiene un ciclo de coste negativo, el algoritmo lo detectar, pero no encontrar el camino ms corto que no repite ningn vrtice. La complejidad de este problema es al menos la del problema del camino ms largo de complejidad NP-Completo.

4. DESCRIPCION DEL PROBLEMA

El Algoritmo de Bellman-Ford es, en su 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 pesos sean positivos, esta solucin se aproxima ms al caso general.

5. EXPLICACIN DEL ALGORITMO

En el paso 0, inicializamos todas las distancias o costos mnimos a infinito.

En el paso 1, actualizamos el paso anterior, aplicando las frmulas. En este caso ponemos la distancia de los nodos que tienen accesos directos al vrtice 1, y se la sumamos a la distancia mnima acumulada que hay hasta el vrtice oportuno. Aqu esta distancia acumulada sera 0 para 1, debido que sera la distancia a l mismo, e infinito para el resto porque no han sido analizados todava. En el paso 2, al saber ya una distancia mnima acumulada desde los nodos 2 y 3 hasta 1, podemos actualizar las distancias mnimas de los nodos 4 y 5. En los pasos sucesivos, se van actualizando las distancias mnimas acumuladas (D) de los distintos vrtices hasta 1, y se van utilizando en los pasos siguientes para optimizar el camino mnimo. El final del algoritmo se da cuando no hay ningn cambio de un paso a otro, cuando ya no se puede encontrar un camino ms corto.

6. ANLISIS DEL ALGORITMO

Mediante un ejemplo analizaremos el algoritmo: Procedimiento para hallar el camino mnimo de todos los vrtices a un nico vrtice destino.

Grafo inicial

En esta tabla estn representados los nodos con los costos o distancias de sus respectivos nodos vecinos. Como se ve en la tabla, los nodos que no son vecinos, se pone como costo el smbolo de infinito

En esta otra tabla se muestran las soluciones parciales que se han ido obteniendo

a travs de la realizacin del algoritmo.

Este es el grafo final, con los caminos de costo mnimo de cada nodo.

7. CONCLUSIONES

Concluimos que el Algoritmo de Bellman-Ford genera el camino mas corto en un grafo dirigido. Se concluye que el Algoritmo de Dijkstra resuelve este mismo problema en un tiempo menor, pero requiere que los pesos de las aristas no sean negativos. Concluimos que la complejidad computacional de este problema es complejidad NP-Completo.

8. BIBLIOGRAFIA

http://es.wikipedia.org/wiki/Algoritmo_de_Bellman-Ford Autor: Richard Bellman Actualizado: 20 abr 2010 http://es.wikipedia.org/wiki/Anexo:Ejemplo_de_Algoritmo_de_Bellman_-_Ford Autor: N/A Actualizado: 23 abr 2010 http://neo.lcc.uma.es/evirtual/cdd/tutorial/red/bellman.html Autor: N/A Actualizado: N/A http://neo.lcc.uma.es/evirtual/cdd/applets/BellmanFord/Example3.html Autor: N/A Actualizado: N/A http://personales.upv.es/arodrigu/grafos/Ford.htm Autor: Alejandro Rodrguez Villalobos http://ingecomp.mforos.com/674005/4736533-algoritmo-de-bellman-ford/ Autor: DarkSpawn2004 Fecha: 19/Ene/2005 http://www.webdelprofesor.ula.ve/ingenieria/ibc/ayda/c17digrafosEtiquetados.pdf Autor: Lusbin R Vargas Universidad de los Andes Mrida-Venezuela http://www.slideshare.net/guest4ce8197/bellman-fordjueves-4172933 Autor: Carlos Triana Sarmiento

Vous aimerez peut-être aussi