˜La programación dinámica se utiliza tanto en
Clase # 19
                                                                 problemas lineales como no lineales.


                                                                 ˜La programación dinámica es útil para resolver
                                                                 un problema donde se deben tomar una serie de
                                                                 decisiones interrelacionadas.
      Programación dinámica
                                                                 ˜A diferencia de la P.L, la programación dinámica
                                                                 no tiene formulación matemática estándar. Se trata
                                                                 de un enfoque de tipo general para la solución de
                                                                 problemas, y las ecuaciones se derivan de las
                                                                 condiciones individuales de los mismos.
                                                         19-1                                                               19-2




El problema de la diligencia                                    Diagrama.
Un cazafortunas desea ir de Missouri a California                             B            E
en una diligencia, y quiere viajar de la forma más
segura posible. Tiene los puntos de salida y destino                                                       H
conocidos, pero tiene múltiples opciones para viajar             A            C            F                           J
a través del territorio.
                                                                                                           I
Se entera de la posibilidad de adquirir seguro de                             D            G
vida como pasajero de la diligencia.
                                                                                   E   F    G          H       I
                                                                  B C     D                                            J
El costo de la póliza estándar (cij ) se muestra en la                         B   7   4    6      E   1       4
                                                                                                                   H    3
tabla de la siguiente página.                                   A 2   4   3                        F   6       3
                                                                               C   3   2       4
                                                                                                                   I    4
                                                                               D   4   1       5   G   3       3
                                                         19-3                                                               19-4




                                                                Algunas alternativas de solución.

                                                                 1. Enumeración exhaustiva: Enumerar todas
                                                                 las rutas posibles, calcular su costo y elegir
          ¿Cual es la ruta                                       la de menor valor. En total son 18
          que minimiza el
          costo total de la                                      2. Elegir la ruta más barata en cada etapa.
                                                                 Esta solución no conduce al óptimo global.
         póliza de seguro?                                       Un pequeño sacrificio en una etapa puede
                                                                 permitir mayores ahorros más adelante.

                                                         19-5                                                               19-6




                                                                                                                                   1
3. Programación dinámica.
                                                                 Por P.D la solución sería entonces ir desde el
 Estrategia de solución: Un problema                             estado actual (cualquiera que sea) y llegar a
 complejo es desagregado en problemas                            su destino final (estado J) al costo cij
 simples que se resuelven etapa por etapa.
                                                                 Se hace lo mismo para cada jornada (etapa),
                                                                 ensanchando el problema. Así encontramos
 En el caso de la diligencia un problema                         la solución óptima del lugar al que debe
 simple sería pensar qué pasaría si al viajero                   dirigirse teniendo en cuenta la información
 sólo le faltara una jornada de viaje.                           de la iteración anterior.
                                                                                                              Veamos la
                                                                                                             formulación
                                                          19-7                                                                19-8




Formulación.
                                                                 Sea fn (S, Xn) el costo total de la mejor
 Sea Xn ( n = 1,2,3,4 ) las variables que                        política global para las etapas restantes, dado
 representan el destino inmediato en la etapa                    que el agente se encuentra en el estado S,
 n.                                                              listo para iniciar la etapa n y se dirige a Xn
                                                                 como destino inmediato.
 Luego la ruta seleccionada será:
 A        X1        X2        X3        X4
                                                                 Dados S y n , sea Xn* el valor de Xn (no
                                                                 necesariamente único), que minimiza
                              Donde X4 = J                       fn (S , Xn) , y sea fn* (S) el valor mínimo
                                                                 correspondiente de fn (S, Xn) entonces:
                                                  sigue                                                             sigue
                                                          19-9                                                               19-10




                                                                 Procedimiento de solución hacia atrás
     fn* (S) = Min Xn fn (S, Xn) = fn (S, Xn* )
                                                                 Etapa n=4
                 Costo    Mínimo costo
                                                                 Como el destino final (estado J) se alcanza al
  fn(S, Xn) = inmediato + futuro (etapa                          terminar la etapa 4, entonces
               (etapa n) n+1 en adelante)
                                                                                        f 5*(J) = 0

           = cs , xn + fn+1 * (Xn)                               El objetivo es hallar f 1* (A) y su ruta correspondiente.

                                                                 Cuando el cazafortunas tiene sólo una etapa por
         Costos por ir       Costo                               recorrer (n=4) , su ruta de ahí en adelante, estará
         de la ciudad i     óptimo                               determinada por el estado actual (H o I) y su destino
          al destino j    acumulado                              final X4 = J
                                                  sigue                        La ruta será: S    J donde S= H o I
                                                      19-11                                                                  19-12




                                                                                                                                     2
Luego f4* (S) = c S , J + f5* (J) = c S , J                                      Luego f3* (E) = 4 y X3* = H

  f4 (H) = cH , J = 3                         S      f4 * (S) X4*                 En general para la etapa 3
  f4 (I) = c I , J = 4                         H        3       J                 se tiene:
                                                I       4       J
                                                                                      X3 f3 (S, X3)= cS ,X3 + f4* ( X3)
Etapa n=3
                                                                                   S                                       f3 * (S) X3*
                                                                                                   H            I
 El cazafortunas tiene 2 etapas por recorrer (n=3).                                                4            8            4      H
                                                                                      E
 Suponga que sale de E.
                                                                                      F            9            7            7       I

     C E,          H
                     =1
                            H       + f 4* (H) = f 3(E)= cE ,H + f 4*(H) = 4                                                 6      H
                                                                                      G            6            7
E     C
          E, I      =4          I   + f 4* (I) = f3(E)= cE ,I + f 4*(I) = 8
                                                                          19-13                                                           19-14




Etapa n=2                                                                         Luego f2* (C) = 7 y X2* = E
En la segunda etapa, el cazafortunas tiene 3
jornadas por recorrer (n=2). Suponga que sale de C                                En general para la etapa 2
                                                                                  se tiene:

                            E       + f3* (E) = f 2(C)= cC ,E + f3* (E) = 7
                       =3                                                             X2 f2 (S, X2)= cS ,X2 + f3* ( X2)
                  ,E                                                               S                                       f2 * (S) X2*
      c       C
                                                                                              E          F          G
       c C, F =2                                                                              11         11         12       11   EoF
 C                          F       + f3* (F) = f 2(C)= cC ,F + f3* (F) = 9           B
      c                                                                               C       7          9          10       7       E
          C
              ,G
                   =4
                                                                                      D       8          8          11       8     EoF
                            G       + f3* (G) = f2(C)= cC ,G + f3* (G) = 10

                                                                          19-15                                                           19-16




Etapa n=1                                                                         Luego f1* (A) = 11 y X1 * = C o D
En la primera etapa, el cazafortunas tiene todas las
jornadas por recorrer (n=1). Necesariamente debe                                  Veamos :
salir de A

                                                                                      X1 f1 (S, X1)= cS ,X1 + f2* ( X1)
                                    + f2* (B) = f 1(A)= cA ,B + f2* (B) = 13      S                                       f1 * (S) X1*
                       =2   B                                                                B          C           D
                   ,B
          cA                                                                       A         13         11          11      11    CoD
          c A, C =4
 A                          C       + f2* (C) = f 1(A)= cA ,C + f2* (C) = 11
      c
          A
              ,D
                   =3
                                                                                                             Veamos la solución del
                            D       + f2* (D) = f1(A)= cA ,D + f2* (D) = 11
                                                                                                             problema gráficamente:
                                                                          19-17                                                           19-18




                                                                                                                                                  3
Solución                                                                 Características de la P.D
                     7
                B                E           1
                         4                                               1. El problema se puede dividir por etapas, que
                    3                            H       3               requieren una política de decisión en cada una
       4                 4
 A              C                F       3
                                                             J           de ellas.
                             1                       4
           3
                                     3           I
                D                G                                       2. Cada etapa tiene un cierto número de estados
                                                                         asociados a su inicio. (Estados son las diferentes
                                                                         condiciones posibles en las que se puede
  Podemos apreciar que partiendo de                                      encontrar el sistema en cada etapa del
  A existen 3 rutas óptimas:                                             problema).
                                                                 19-19                                                            19-20




                                                                         5. Dado el estado actual, la política óptima
 3. El efecto de la política de decisión en cada
                                                                         desde este estado es independiente de las
 etapa, es transformar el estado actual en un
                                                                         políticas adoptadas en las etapas anteriores.
 estado asociado con el INICIO de la siguiente
                                                                         (la solución depende únicamente del estado
 etapa.
                                                                         actual y no de cómo se llegó allí) PRINCIPIO
                                                                         DE OPTIMALIDAD EN LA P.D,
                                                                                    (Richard Bellman, 1957)
 4. El procedimiento pretende hallar la política
 óptima para el problema completo. Esto quiere
                                                                         6. El procedimiento de la solución termina
 decir, la política a emplear desde cualquier
                                                                         cuando se obtiene la política óptima de la
 posible estado del problema.
                                                                         última etapa (por lo general la solución en
                                                                         esta etapa es trivial)
                                                                 19-21                                                            19-22




 7. Siempre se dispone de una relación                                   8.Cuando se tiene una relación recursiva como
 recursiva (esto es lo que permite trabajar las                          la de la función, el procedimiento de solución
 decisiones interrelacionadas).                                          “hacia atrás” inicia en la última etapa y se
                                                                         mueve hacia la primera, etapa por etapa
              La relación recursiva será:
           fn* (Sn)= Max Xn  fn (Sn, Xn)                                     Xn fn* (Sn, Xn)= cS , Xn + fn+1* ( Xn) *
                                                                           S                                         fn (S) Xn*
                      o también
            fn* (Sn)= Min Xn  fn (Sn, Xn) 

N: número de etapas.             Sn : Estado actual para la
n: etiqueta para la etapa        etapa n.
                                 Xn : variable de decisión
                                                                                Xn* : Valor óptimo de Xn dado Sn
actual (1,2,...,N)
                                 para la etapa n
                                                                 19-23                                                            19-24




                                                                                                                                          4
Algoritmo de P.D hacia atrás                 Algoritmo de P.D hacia adelante




Para cada probable valor de la               Para cada probable valor de la
variable de estado al inicio de la           variable de estado al final de la
  etapa, determinar el mejor                   etapa, determinar el mejor
          estado final.                               estado inicial.

                                     19-25                                       19-26




                                                                                         5

Más contenido relacionado

PDF
Asignacion
PPT
Programación Dinámica
DOCX
61178886 i-o-ii-principal
PPTX
Programación Dinamica
DOC
Clase5 Ia
DOC
Clase5 Ia
PPTX
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
PDF
29566881 metodos-pert-cpm
Asignacion
Programación Dinámica
61178886 i-o-ii-principal
Programación Dinamica
Clase5 Ia
Clase5 Ia
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
29566881 metodos-pert-cpm

Similar a Clase19 programacion dinamica (20)

PDF
Sesion6_IdaliaFlores_20abr15 (1).pdf
PPTX
Programacion
DOCX
Grupo h1 grapa7_problema_m1_l1.1_e2_v2
PPTX
Clase 3 cap 2 rec dat
PPTX
Clase 2 cap 2 mitad inicial
PDF
PROGRAMACION DINAMICA
PDF
Boletin electronico
PPTX
Presentación: Programación Dinámica
PDF
planeacion matematicas 5 bim.
PPT
Resolución de problemas
PPTX
Unidad IV-ProgramaciónDinámica-VersiónFinal.pptx
DOCX
ProgDinamica.docx
DOC
DOC
DOC
PPTX
Presentacion Método CPM
DOC
Reformulacion
DOCX
Plan de trabajo simultáneo n57
DOCX
Plan de trabajo simultáneo n57
PDF
Mónica Pena
Sesion6_IdaliaFlores_20abr15 (1).pdf
Programacion
Grupo h1 grapa7_problema_m1_l1.1_e2_v2
Clase 3 cap 2 rec dat
Clase 2 cap 2 mitad inicial
PROGRAMACION DINAMICA
Boletin electronico
Presentación: Programación Dinámica
planeacion matematicas 5 bim.
Resolución de problemas
Unidad IV-ProgramaciónDinámica-VersiónFinal.pptx
ProgDinamica.docx
Presentacion Método CPM
Reformulacion
Plan de trabajo simultáneo n57
Plan de trabajo simultáneo n57
Mónica Pena
Publicidad

Clase19 programacion dinamica

  • 1. ˜La programación dinámica se utiliza tanto en Clase # 19 problemas lineales como no lineales. ˜La programación dinámica es útil para resolver un problema donde se deben tomar una serie de decisiones interrelacionadas. Programación dinámica ˜A diferencia de la P.L, la programación dinámica no tiene formulación matemática estándar. Se trata de un enfoque de tipo general para la solución de problemas, y las ecuaciones se derivan de las condiciones individuales de los mismos. 19-1 19-2 El problema de la diligencia Diagrama. Un cazafortunas desea ir de Missouri a California B E en una diligencia, y quiere viajar de la forma más segura posible. Tiene los puntos de salida y destino H conocidos, pero tiene múltiples opciones para viajar A C F J a través del territorio. I Se entera de la posibilidad de adquirir seguro de D G vida como pasajero de la diligencia. E F G H I B C D J El costo de la póliza estándar (cij ) se muestra en la B 7 4 6 E 1 4 H 3 tabla de la siguiente página. A 2 4 3 F 6 3 C 3 2 4 I 4 D 4 1 5 G 3 3 19-3 19-4 Algunas alternativas de solución. 1. Enumeración exhaustiva: Enumerar todas las rutas posibles, calcular su costo y elegir ¿Cual es la ruta la de menor valor. En total son 18 que minimiza el costo total de la 2. Elegir la ruta más barata en cada etapa. Esta solución no conduce al óptimo global. póliza de seguro? Un pequeño sacrificio en una etapa puede permitir mayores ahorros más adelante. 19-5 19-6 1
  • 2. 3. Programación dinámica. Por P.D la solución sería entonces ir desde el Estrategia de solución: Un problema estado actual (cualquiera que sea) y llegar a complejo es desagregado en problemas su destino final (estado J) al costo cij simples que se resuelven etapa por etapa. Se hace lo mismo para cada jornada (etapa), ensanchando el problema. Así encontramos En el caso de la diligencia un problema la solución óptima del lugar al que debe simple sería pensar qué pasaría si al viajero dirigirse teniendo en cuenta la información sólo le faltara una jornada de viaje. de la iteración anterior. Veamos la formulación 19-7 19-8 Formulación. Sea fn (S, Xn) el costo total de la mejor Sea Xn ( n = 1,2,3,4 ) las variables que política global para las etapas restantes, dado representan el destino inmediato en la etapa que el agente se encuentra en el estado S, n. listo para iniciar la etapa n y se dirige a Xn como destino inmediato. Luego la ruta seleccionada será: A X1 X2 X3 X4 Dados S y n , sea Xn* el valor de Xn (no necesariamente único), que minimiza Donde X4 = J fn (S , Xn) , y sea fn* (S) el valor mínimo correspondiente de fn (S, Xn) entonces: sigue sigue 19-9 19-10 Procedimiento de solución hacia atrás fn* (S) = Min Xn fn (S, Xn) = fn (S, Xn* ) Etapa n=4 Costo Mínimo costo Como el destino final (estado J) se alcanza al fn(S, Xn) = inmediato + futuro (etapa terminar la etapa 4, entonces (etapa n) n+1 en adelante) f 5*(J) = 0 = cs , xn + fn+1 * (Xn) El objetivo es hallar f 1* (A) y su ruta correspondiente. Cuando el cazafortunas tiene sólo una etapa por Costos por ir Costo recorrer (n=4) , su ruta de ahí en adelante, estará de la ciudad i óptimo determinada por el estado actual (H o I) y su destino al destino j acumulado final X4 = J sigue La ruta será: S J donde S= H o I 19-11 19-12 2
  • 3. Luego f4* (S) = c S , J + f5* (J) = c S , J Luego f3* (E) = 4 y X3* = H f4 (H) = cH , J = 3 S f4 * (S) X4* En general para la etapa 3 f4 (I) = c I , J = 4 H 3 J se tiene: I 4 J X3 f3 (S, X3)= cS ,X3 + f4* ( X3) Etapa n=3 S f3 * (S) X3* H I El cazafortunas tiene 2 etapas por recorrer (n=3). 4 8 4 H E Suponga que sale de E. F 9 7 7 I C E, H =1 H + f 4* (H) = f 3(E)= cE ,H + f 4*(H) = 4 6 H G 6 7 E C E, I =4 I + f 4* (I) = f3(E)= cE ,I + f 4*(I) = 8 19-13 19-14 Etapa n=2 Luego f2* (C) = 7 y X2* = E En la segunda etapa, el cazafortunas tiene 3 jornadas por recorrer (n=2). Suponga que sale de C En general para la etapa 2 se tiene: E + f3* (E) = f 2(C)= cC ,E + f3* (E) = 7 =3 X2 f2 (S, X2)= cS ,X2 + f3* ( X2) ,E S f2 * (S) X2* c C E F G c C, F =2 11 11 12 11 EoF C F + f3* (F) = f 2(C)= cC ,F + f3* (F) = 9 B c C 7 9 10 7 E C ,G =4 D 8 8 11 8 EoF G + f3* (G) = f2(C)= cC ,G + f3* (G) = 10 19-15 19-16 Etapa n=1 Luego f1* (A) = 11 y X1 * = C o D En la primera etapa, el cazafortunas tiene todas las jornadas por recorrer (n=1). Necesariamente debe Veamos : salir de A X1 f1 (S, X1)= cS ,X1 + f2* ( X1) + f2* (B) = f 1(A)= cA ,B + f2* (B) = 13 S f1 * (S) X1* =2 B B C D ,B cA A 13 11 11 11 CoD c A, C =4 A C + f2* (C) = f 1(A)= cA ,C + f2* (C) = 11 c A ,D =3 Veamos la solución del D + f2* (D) = f1(A)= cA ,D + f2* (D) = 11 problema gráficamente: 19-17 19-18 3
  • 4. Solución Características de la P.D 7 B E 1 4 1. El problema se puede dividir por etapas, que 3 H 3 requieren una política de decisión en cada una 4 4 A C F 3 J de ellas. 1 4 3 3 I D G 2. Cada etapa tiene un cierto número de estados asociados a su inicio. (Estados son las diferentes condiciones posibles en las que se puede Podemos apreciar que partiendo de encontrar el sistema en cada etapa del A existen 3 rutas óptimas: problema). 19-19 19-20 5. Dado el estado actual, la política óptima 3. El efecto de la política de decisión en cada desde este estado es independiente de las etapa, es transformar el estado actual en un políticas adoptadas en las etapas anteriores. estado asociado con el INICIO de la siguiente (la solución depende únicamente del estado etapa. actual y no de cómo se llegó allí) PRINCIPIO DE OPTIMALIDAD EN LA P.D, (Richard Bellman, 1957) 4. El procedimiento pretende hallar la política óptima para el problema completo. Esto quiere 6. El procedimiento de la solución termina decir, la política a emplear desde cualquier cuando se obtiene la política óptima de la posible estado del problema. última etapa (por lo general la solución en esta etapa es trivial) 19-21 19-22 7. Siempre se dispone de una relación 8.Cuando se tiene una relación recursiva como recursiva (esto es lo que permite trabajar las la de la función, el procedimiento de solución decisiones interrelacionadas). “hacia atrás” inicia en la última etapa y se mueve hacia la primera, etapa por etapa La relación recursiva será: fn* (Sn)= Max Xn  fn (Sn, Xn)  Xn fn* (Sn, Xn)= cS , Xn + fn+1* ( Xn) * S fn (S) Xn* o también fn* (Sn)= Min Xn  fn (Sn, Xn)  N: número de etapas. Sn : Estado actual para la n: etiqueta para la etapa etapa n. Xn : variable de decisión Xn* : Valor óptimo de Xn dado Sn actual (1,2,...,N) para la etapa n 19-23 19-24 4
  • 5. Algoritmo de P.D hacia atrás Algoritmo de P.D hacia adelante Para cada probable valor de la Para cada probable valor de la variable de estado al inicio de la variable de estado al final de la etapa, determinar el mejor etapa, determinar el mejor estado final. estado inicial. 19-25 19-26 5