bellman ford exp final

Upload: layslaszet-mortos

Post on 05-Apr-2018

272 views

Category:

Documents


6 download

TRANSCRIPT

  • 7/31/2019 Bellman Ford Exp Final

    1/62

    BELLMAN-FORD

    Jorge MondragnLeonardo Herrera

    Cristian Fernndez

  • 7/31/2019 Bellman Ford Exp Final

    2/62

    DESCRIPCIN DEL PROBLEMA

    El algoritmo de Bellman-Ford genera el camino mscorto en un grafo dirigido ponderado (en el que elpeso de alguna de las aristas puede ser negativo).

    El algoritmo de Dijkstra resuelve este mismo problemaen un tiempo menor, pero requiere que los pesos delas aristas no sean negativos. Por lo que el algoritmoBellman-Ford normalmente se utiliza cuando hayaristas con peso negativo

    Si el grafo contiene un ciclo de coste negativo, elalgoritmo lo detectar pero no encontrar el caminoms corto que no repite ningn vrtice, la complejidadde este problema es NP-completo.

  • 7/31/2019 Bellman Ford Exp Final

    3/62

    DEFINICIN DEL ALGORITMO

    El algoritmo de Bellman-Ford genera el camino mscorto en un Grafo dirigido ponderado ( en el que elpeso de alguna de las aristas puede ser negativo).

    Este Algoritmo fuedesarrollado por RichardBellman, Samuel End y

    Lester Ford.

  • 7/31/2019 Bellman Ford Exp Final

    4/62

    CARACTERISTICAS YCOMPLEJIDAD

    COMPUTACIONAL El algoritmo de Dijkstra resuelve este mismo problema

    en un tiempo menor, pero requiere que los pesos delas aristas no sean negativos. Por lo que el Algoritmo

    Bellman-Ford normalmente se utiliza cuando hayaristas con peso negativo.

    La complejidad computacional de este problema es

    complejidad NP-Completo.

  • 7/31/2019 Bellman Ford Exp Final

    5/62

    EXPLICACIN DEL ALGORITMO

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

    En el paso 1, actualizamos el paso anterior, aplicandolas frmulas. En este caso ponemos la distancia delos nodos que tienen accesos directos al vrtice 1, yse la sumamos a la distancia mnima acumulada quehay hasta el vrtice oportuno. Aqu esta distancia

    acumulada sera 0 para 1, debido que sera ladistancia a l mismo, e infinito para el resto porque nohan sido analizados todava

  • 7/31/2019 Bellman Ford Exp Final

    6/62

    EXPLICACIN DELALGORITMO

    En el paso 2, al saber ya una distancia mnimaacumulada desde los nodos 2 y 3 hasta 1,podemos actualizar las distancias mnimas de losnodos 4 y 5.

    En los pasos sucesivos, se van actualizando lasdistancias mnimas acumuladas (D) de losdistintos vrtices hasta 1, y se van utilizando enlos pasos siguientes para optimizar el camino

    mnimo. El final del algoritmo se da cuando no hayningn cambio de un paso a otro, cuando ya no sepuede encontrar un camino ms corto.

  • 7/31/2019 Bellman Ford Exp Final

    7/62

    ANALISIS DEL ALGORITMO

    Grafo Inicial.

    El objetivo delAlgoritmo esencontrar el caminomnimo desde todoslos nodos al vrtice 1.

    http://4.bp.blogspot.com/_RIEFxU9FyeA/S_TnFgLbYFI/AAAAAAAAABs/mfSfrXVYTsg/s1600/INICIO.jpg
  • 7/31/2019 Bellman Ford Exp Final

    8/62

    ANALISIS DEL ALGORITMO

    http://4.bp.blogspot.com/_RIEFxU9FyeA/S_TnFgLbYFI/AAAAAAAAABs/mfSfrXVYTsg/s1600/INICIO.jpg
  • 7/31/2019 Bellman Ford Exp Final

    9/62

    EJEMPLO ( REALIZACIN DELALGORITMO)

  • 7/31/2019 Bellman Ford Exp Final

    10/62

    EJEMPLO (GRAFO FINAL)

    * Resultado delcamino mnimodesde todos losnodos al vrtice 1.

  • 7/31/2019 Bellman Ford Exp Final

    11/62

    APLICACIONES DELALGORITMO

    Una variante distribuida del Algoritmo del Bellman-Ford se usa en protocolos de encaminamientobasados en vector de distancias.

    En el mundo de las redes (comunicaciones) elprotocolo de encaminamiento de informacin (RIP).http://neo.lcc.uma.es/evirtual/cdd/applets/BellmanFord

    /Example3.html

  • 7/31/2019 Bellman Ford Exp Final

    12/62

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Encontrar el camino ms corto delVrtice z a cada uno de los otrosVrtices.

    Paso 0.0

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    V [ ] = { u v x y z }

    d [ ] = { _ _ _ _ _ }

    [ ] = { _ _ _ _ _ }

  • 7/31/2019 Bellman Ford Exp Final

    13/62

    0

    z

    u v

    x y

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Inicializar los vectores d y P.

    Paso 0.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

  • 7/31/2019 Bellman Ford Exp Final

    14/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,v)

    Paso 1.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[u] + w( u , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    15/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,x)

    Paso 1.2

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[u] + w( u , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    16/62

  • 7/31/2019 Bellman Ford Exp Final

    17/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u) (x,v)(x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (v,u)

    Paso 1.4

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[v] + w( v , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    18/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v) (x,y)(y,v)(y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x,v)Paso 1.5

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[x] + w( x , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    19/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y) (y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x,y)Paso 1.6

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[x] + w( x , y ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    20/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y,v)Paso 1.7

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[y] + w( y , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    21/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z) (z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y,v)Paso 1.8

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[z] > d[y] + w( y , z ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    22/62

    0

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u) (z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,u)Paso 1.9

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[z] + w( z , u ) ?

    Respuesta: SI

    Proceso: d[u] = d[z] + w( z, u ) y [u] = z

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { }

  • 7/31/2019 Bellman Ford Exp Final

    23/62

    0

    6

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u) (z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,u)Paso 1.9

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[z] + w( z , u ) ?

    Respuesta: SI

    Proceso: d[u] = d[z] + w( z, u ) y [u] = z

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { z }

  • 7/31/2019 Bellman Ford Exp Final

    24/62

    0

    6

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,x)Paso 1.10

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[z] + w( z , x ) ?

    Respuesta: SI

    Proceso: d[x] = d[z] + w( z, x ) y [x] = z

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { z }

  • 7/31/2019 Bellman Ford Exp Final

    25/62

    0

    7

    6

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,x)Paso 1.10

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[z] + w( z , x ) ?

    Respuesta: SI

    Proceso: d[x] = d[z] + w( z, x ) y [x] = z

    V [ ] = { u v x y z }

    d [ ] = { 7 0 }

    [ ] = { z z }

  • 7/31/2019 Bellman Ford Exp Final

    26/62

    0

    7

    6

    z

    u v

    x y

    (u,v) (u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,v)Paso 2.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[u] + w( u , v ) ?

    Respuesta: SI

    Proceso: d[v] = d[u] + w( u, v ) y [v] = u

    V [ ] = { u v x y z }

    d [ ] = { 0 }

    [ ] = { z z }

  • 7/31/2019 Bellman Ford Exp Final

    27/62

    0

    7

    6 11

    z

    u v

    x y

    (u,v) (u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,v)Paso 2.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[u] + w( u , v ) ?

    Respuesta: SI

    Proceso: d[v] = d[u] + w( u, v ) y [v] = u

    V [ ] = { u v x y z }

    d [ ] = { 7 0 }

    [ ] = { z u z }

  • 7/31/2019 Bellman Ford Exp Final

    28/62

    0

    7

    6 11

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,x)Paso 2.2

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[u] + w( u , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z u z }

  • 7/31/2019 Bellman Ford Exp Final

    29/62

    0

    7

    6 11

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)

    (v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,y)Paso 2.3

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[u] + w( u , y ) ?

    Respuesta: SI

    Proceso: d[y] = d[u] + w( u, y ) y [y] = u

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z u z }

  • 7/31/2019 Bellman Ford Exp Final

    30/62

    0

    7

    6 11

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)

    (v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,y)Paso 2.3

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[u] + w( u , y ) ?

    Respuesta: SI

    Proceso: d[y] = d[u] + w( u, y ) y [y] = u

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z u z u }

  • 7/31/2019 Bellman Ford Exp Final

    31/62

    0

    7

    6 11

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u) (x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (v,u)Paso 2.4

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[v] + w( v , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z u z u }

  • 7/31/2019 Bellman Ford Exp Final

    32/62

    0

    7

    6 11

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v) (x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x,v)Paso 2.5

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[x] + w( x , v ) ?

    Respuesta: SI

    Proceso:d[y] = d[x] + w( x, v ) y [y] = x

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z u z u }

  • 7/31/2019 Bellman Ford Exp Final

    33/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v) (x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x,v)Paso 2.5

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[x] + w( x , v ) ?

    Respuesta: SI

    Proceso: d[y] = d[x] + w( x, v ) y [y] = x

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

  • 7/31/2019 Bellman Ford Exp Final

    34/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y) (y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x,y)Paso 2.6

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[x] + w( x , y ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

  • 7/31/2019 Bellman Ford Exp Final

    35/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y,v)Paso 2.7

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[y] + w( y , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

  • 7/31/2019 Bellman Ford Exp Final

    36/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z) (z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y,z)Paso 2.8

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[z] > d[y] + w( y , z ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    Li d A

  • 7/31/2019 Bellman Ford Exp Final

    37/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u) (z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,u)Paso 2.9

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[z] + w( z , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    Li t d A

  • 7/31/2019 Bellman Ford Exp Final

    38/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z,x)Paso 2.10

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[z] + w( z , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    Li t d A5

  • 7/31/2019 Bellman Ford Exp Final

    39/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v) (u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,v)Paso 3.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[u] + w( u , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    Li t d A5

  • 7/31/2019 Bellman Ford Exp Final

    40/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,x)Paso 3.2

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[u] + w( u , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    Li t d A5

  • 7/31/2019 Bellman Ford Exp Final

    41/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)

    (v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u,y)Paso 3.3

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[u] + w( u , y ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    42/62

    0

    7

    6 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u) (x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (v, u)Paso 3.4

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[v] + w( v , u ) ?

    Respuesta: SI

    Proceso: d[u] = d[v] + w( v, u ) y [u] = v

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { z x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    43/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u) (x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (v, u)Paso 3.4

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[v] + w( v , u ) ?

    Respuesta: SI

    Proceso: d[u] = d[v] + w( v, u ) y [u] = v

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    44/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)

    (u,y)(v,u)(x,v) (x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x, v)Paso 3.5

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[x] + w( x , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    45/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y) (y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (x, y)Paso 3.6

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[x] + w( x , y ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    46/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y, v)Paso 3.7

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[y] + w( y , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    47/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z) (z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (y, z)Paso 3.8

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[z] > d[y] + w( y , z ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    48/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u) (z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z, u)Paso 3.9

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[z] + w( z , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    49/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (z, x)Paso 3.10

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[z] + w( z , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    50/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v) (u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u, v)Paso 4.1

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[u] + w( u , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    51/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x) (u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u, x)Paso 4.2

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[u] + w( u , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    52/62

    0

    7

    2 4

    2

    z

    u v

    x y

    (u,v)(u,x)(u,y) (v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u, y)Paso 4.3

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[u] + w( u , y ) ?

    Respuesta: SI

    Proceso: d[y] = d[u] + w( u, y ) y [y] = u

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    53/62

    0

    7

    2 4

    -2

    z

    u v

    x y

    (u,v)(u,x)(u,y) (v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (u, y)Paso 4.3

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[u] + w( u , y ) ?

    Respuesta: SI

    Proceso: d[y] = d[u] + w( u, y ) y [y] = u

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    54/62

    0

    7

    2 4

    -2

    z

    u v

    x y

    (u,v)(u,x)(u,y)(v,u) (x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Lista de Arcos

    Aplicar Relax al Arco (v, u)Paso 4.4

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[v] + w( v , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

  • 7/31/2019 Bellman Ford Exp Final

    55/62

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    56/62

    0

    7

    2 4

    -2

    z

    u

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y) (y,v)

    (y,z)(z,u)(z,x)

    sta de cos

    Aplicar Relax al Arco (x, y)Paso 4.6

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[y] > d[x] + w( x , y ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    57/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Aplicar Relax al Arco (y, v)Paso 4.7

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[v] > d[y] + w( y , v ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    58/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z) (z,u)(z,x)

    Aplicar Relax al Arco (y, z)Paso 4.8

    6

    5

    -2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[z] > d[y] + w( y , z ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    59/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u) (z,x)

    Aplicar Relax al Arco (z, u)Paso 4.9

    6-2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[u] > d[z] + w( z , u ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    60/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Aplicar Relax al Arco (z, x)Paso 4.10

    6-2

    7 2

    9

    -3

    8

    -4

    7

    Pregunta: d[x] > d[z] + w( z , x ) ?

    Respuesta: NO

    Proceso: No se hace nada.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos5

  • 7/31/2019 Bellman Ford Exp Final

    61/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    Paso 5.0

    6-2

    7 2

    9

    -3

    8

    -4

    7

    Verificar en cada arco que secumple la condicin:

    d[Vf] NO EXISTE SOLUCIN.

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }

    u v Lista de Arcos

  • 7/31/2019 Bellman Ford Exp Final

    62/62

    0

    7

    2 4

    -2

    z

    x y

    (u,v)(u,x)(u,y)(v,u)(x,v)(x,y)(y,v)

    (y,z)(z,u)(z,x)

    SOLUCIN

    -2

    7

    -3

    -4

    V [ ] = { u v x y z }

    d [ ] = { }

    [ ] = { v x z u }