Sesion6_IdaliaFlores_20abr15

download Sesion6_IdaliaFlores_20abr15

of 35

Transcript of Sesion6_IdaliaFlores_20abr15

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    1/35

    PROGRAMACIN

    DINMICA

    Idalia Flores

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    2/35

    CONCEPTOS

    La programacin dinmica es una tcnica matemtica quese utiliza para la solucin de problemas matemticosseleccionados, en los cuales se toma un serie de decisionesen forma secuencial.

    Proporciona un procedimiento sistemtico para encontrar lacombinacin de decisiones que maximice la efectividad total,al descomponer el problema en etapas, las que pueden sercompletadas por una o ms formas (estados), y enlazandocada etapa a travs de clculos recursivos.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    3/35

    DEFINICIONES

    Etapa: es la parte del problema que posee un conjunto

    de alternativas mutuamente excluyentes, de las cuales se

    seleccionar la mejor alternativa.

    Estado: es el que refleja la condicin o estado de las

    restricciones que enlazan las etapas. Representa la liga

    entre etapas de tal manera que cuando cada etapa se

    optimiza por separado la decisin resultante esautomticamente factible para el problema completo.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    4/35

    ESQUEMA DE UNA ETAPA

    qi Variable de estado en la etapa i

    Xij Uno de los valores que puedeadoptar la variable de decisin

    Xi en la etapa i

    Xi

    * Decisin ptima de la etapa i

    ETAPA i

    Xi1

    Xij

    XiJ

    ....

    ....

    E

    ST

    A

    D

    O

    S

    Xi*

    qi

    RESTO

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    5/35

    FORMULACIN Y SOLUCIN DE PROBLEMAS

    La programacin dinmica no cuenta con una formulacinmatemtica estndar, sino que se trata de un enfoque de

    tipo general para la solucin de problemas, y lasecuaciones especficas que se usan se deben desarrollarpara que representen cada situacin individual.

    Comnmente resuelve el problema por etapas, en dondecada etapa interviene exactamente una variable deoptimizacin (u optimizadora)

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    6/35

    La teora unificadora fundamental de la programacin dinmica esel Principio de Optimalidad, que nos indica bsicamente como se

    puede resolver un problema adecuadamente descompuesto en

    etapas utilizando clculos recursivos.

    Unapoltica ptima tiene la propiedad de que, independientemente

    de las decisiones tomadas para llegar a un estado particular, en una

    etapa particular, las decisiones restantes deben constituir una

    poltica ptima para abandonar ese estado,

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    7/35

    PARA RESOLVER PROBLEMAS DE PROGRAMACINDINMICA SE NECESITA:

    Un grado de creatividad

    Un buen conocimiento de la estructura general de losproblemas de programacin dinmica para reconocer cuando

    un problema se puede resolver por medio de estos

    procedimientos y como esto se puede llevar a cabo.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    8/35

    CARACTERSTICAS DE LOS PROBLEMAS DEPROGRAMACIN DINMICA

    El problema se puede dividir en etapas que requieren una

    poltica de decisin en cada una.

    Cada etapa tiene cierto nmero de estados asociados a ella.

    El efecto de la poltica de decisin en cada etapa es transformar

    el estado actual en un estado asociado con la siguiente etapa.

    El procedimiento de solucin esta diseado para encontrar una

    poltica ptima para el problema completo.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    9/35

    CARACTERSTICAS DE LOS PROBLEMAS DE PROGRAMACINDINMICA

    Dado un estado actual, una poltica ptima para las etapasrestantes es independiente de la poltica adoptada en las etapas

    anteriores (principio de optimalidad).

    El procedimiento de solucin se inicia al encontrar la polticaoptima para la ultima etapa.

    Se dispone de una relacin recursiva que identifica la poltica

    optima par la etapa n dada la poltica optima para la etapa (n+1)

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    10/35

    RECURSIVIDAD

    Existen dos formas de plantear la frmula de recursividad

    en los problemas de programacin dinmica:

    Recursividad de Retroceso: el problema se resuelvapartiendo de la ltima etapa hacia la primera.

    Recursividad de Avance: el problema se resuelve partiendo

    de la primera etapa hacia la ltima.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    11/35

    RECURSIVIDAD

    Las formulaciones de avance y retroceso son en realidadequivalentes en trminos de clculo. Sin embargo, haysituaciones donde habra alguna diferencia, en la eficiencia

    del clculo, segn la formulacin que se utilice. Estosucede en particular en problemas donde intervine la tomade decisiones conforme transcurre el tiempo. En esto casolas etapas se designan con base en el estricto ordencronolgico de los periodos que ellas representan y la

    eficiencia de los clculos depender de si se utilizaformulacin de avance o retroceso.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    12/35

    FRACTALES Y RECURSIVIDAD

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    13/35

    EJEMPLO PROTOTIPO(EL PROBLEMA DE LA DILIGENCIA)

    Un caza fortunas de Missouri decide irse al oeste a unirse a la fiebredel oro en California . Tiene que hacer el viaje en diligencia a travs

    de territorios sin ley donde existan serios peligros de ser atacados por

    merodeadores. An cuando su punto de partida y destino eran fijos,

    tenia muchas opciones en cuanto a que estados deba elegir comopuntos intermedios. Se desea estimar la ruta mas segura , como el

    costo de la pliza para cualquier jornada de la diligencia esta basada

    en una evaluacin de seguridad del recorrido, la ruta mas segura debe

    ser aquella que tenga el costo total mas barato.

    Cul es la ruta que minimiza el costo total de la pliza?

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    14/35

    SISTEMA DE CAMINOS Y LOS COSTOS DEL PROBLEMADE LA DILIGENCIA

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    2

    4

    3

    7

    4

    6

    3

    2

    4

    4

    1

    5

    1

    4

    6

    3

    3

    3

    3

    4

    2 4 3

    7 4 6

    3 2 4

    4 1 5

    1 4

    6 3

    3 3

    3

    4

    A

    B C D

    B

    C

    D

    E F G

    E

    F

    G

    H IJ

    H

    I

    Costos de

    Transicin:

    Missouri California

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    15/35

    SOLUCIN

    Los clculos se realizan en etapas dividiendo el problema ensubproblemas.

    Despus, se considera por separado cada subproblema con el fin de

    reducir el nmero de operaciones de clculo.

    Se comienza con una pequea porcin del problema original y seencuentra la solucin optima.

    Luego, se agranda gradualmente el problema y se encuentra la

    solucin ptima actual a partir de la que le precede , hasta resolver el

    problema original completo. En cada problema aumentado se puede encontrar la solucin ptima

    tomando en cuenta los resultados obtenidos en la interaccin anterior.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    16/35

    PROCEDIMIENTO DE SOLUCIN

    Para este caso se emplear el desarrollo del problema con unrecorrido hacia atrs.

    Cuando el cazafortunas tiene una sola etapa por recorrer (n=4), suruta de ah en adelante esta perfectamente determinada por su

    estado actual (ya sea H o I) y su destino final, x4 = J , de manera quela ruta para esta ultima jornada en diligencias es s J

    La solucin al problema es:

    f*4(H) = 3

    f*4(I) = 4

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    17/35

    Cuando se tienen dos etapas por

    recorrer (n=3), se analiza de la siguiente

    manera: Supngase que se encuentra en

    el estado F, entonces como se ve en la

    figura, se debe ir al estado H al estado

    I. a un costo de CF,H = 6 CF,I =3. Si se

    elige el estado H, el costo adicional

    mnimo al llegar ah es 3, por tanto el

    costo de decisin es 6+3=9, de igual

    manera si se elige el estado I, el costo

    total es 3+4=7 que es menor por lo tantose escoger el estado I.

    PROCEDIMIENTO DE SOLUCIN

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    18/35

    PROCEDIMIENTO DE SOLUCIN

    Se trabaja de manera similar con los otros dos estadosposibles s=E y s=G, cuando quedan dos jornadas por

    viajar,los resultados son:

    f*3(E) = 4f*3(F) = 7

    f*3(G) = 6

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    19/35

    La solucin para el problema de

    tres etapas (n=2) se obtiene en

    forma parecida. Por ejemplo

    supngase que el agente seencuentra en el estado C, como

    se muestra el diagrama. Ahora

    deber ir al estado E, F G con

    un costo inmediato de CC,E

    =3

    CC,F =2 CC,G=4,

    respectivamente.

    PROCEDIMIENTO DE SOLUCIN

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    20/35

    PROCEDIMIENTO DE SOLUCIN

    Al llegar aqu el costo adicional mnimo hasta llegar a su destinoesta dado de la siguiente manera:

    x2= E f2(C,E) = cC,E + f*3(E) = 3 + 4 = 7

    x2= F f2(C,F) = cC,F + f*3(F) = 2 + 7 = 9

    x2= G f2(C,G) = cC,G + f*3(G) = 4 + 6 = 10

    El mnimo de estos tres nmeros es 7, por lo que el costo mnimo

    desde el estado C al final es f*2(C) = 7, y el destino inmediato debe

    ser x*2 = E.

    Se realizan clculos similares cuando se comienza desde el estado B

    D. Los resultados son:

    f*2(B) = 11 f*2(C) = 7 f

    *2(D) = 8

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    21/35

    PROCEDIMIENTO DE SOLUCIN

    Si se pasa al problema de

    cuatro etapas (n=1), los

    clculos son parecidos a

    los que se acaban demostrar

    para el problema de tres

    etapas (n=2) , excepto que

    ahora hay solo un inicio

    posible, s=A , como se

    muestra el diagrama.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    22/35

    PROCEDIMIENTO DE SOLUCIN

    Los resultados se resumen de la siguiente manera :

    x1= B f1(A,B) = cA,B + f*2(B) = 2 + 11 = 13

    x1= C f1(A,C) = cA,C + f*2(C) = 4 + 7 = 11

    x1

    = D f1

    (A,D) = cA,D

    + f*2

    (D) = 3 + 8 = 11

    Como el mnimo costo es 11, por tanto los caminos pueden ser C D.

    En este punto se puede identificar la solucin ptima. Los resultados

    indican los caminos ptimos a seguir:A D E H J A D F I J, las dos tienen un costo total de 11

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    23/35

    PROBLEMAS TPICOS DE P.D.

    1. PROBLEMA DE INVERSIN DE CAPITAL Veamos un problema simple de inversin de capital. Una

    corporacin tiene $5 millones para invertir en sus tres plantaspara una posible expansin. Cada planta ha presentado un

    nmero de propuestas sobre como pretende gastar el dinero.Cada propuesta entrega el costo de la expansin (c) y laganancia esperada (r). La siguiente tabla resume las propuestas:

    Cada planta slo podr realizar una de sus propuestas. El

    objetivo es maximizar el retorno de la firma dada su inversin de$5 millones. Se supondr que si no se gastan los $5 millonescompletamente, ese dinero se perder.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    24/35

    TABLA

    Propuesta Planta 1 Planta 2 Planta 3

    c1 r1 c2 r2 c3 r3

    1 0 0 0 0 0 0

    2 1 5 2 8 1 4

    3 2 6 3 9 - -

    4 - - 4 12 - -

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    25/35

    INVERSIN DE CAPITAL

    Una forma de resolver este problema es intentar todas las posibilidades yelegir la mejor. En ese caso, hay solo 3 x 4 x 2 = 24 formas de invertir eldinero. Muchas de estas son infactibles (por ejemplo, propuestas 3, 4 y 1para las tres plantas cuesta $6 millones). Otras propuestas son factibles,pero son muy pobres en retorno (como propuestas 1, 1 y 2, con un retornode slo $4 millones.)

    Desventajas de una enumeracin completa:

    Para problemas de gran tamao la enumeracin de todas las posiblessoluciones puede no ser factible computacionalmente.

    Las combinaciones NO factibles no pueden ser detectadas a priori,llevando a una ineficiencia.

    Informacin sobre combinaciones previamente investigadas no se usanpara eliminar otras combinaciones menos buenas, o no factibles.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    26/35

    INVERSIN DE CAPITAL

    Cabe hacer notar que este problema no puede ser formulado como un problema de

    programacin lineal porque los retornos no son funciones lineales.

    Un mtodo para calcular la solucin es:

    Dividamos el problema en 3 etapas: cada etapa representa el dinero asignado a una

    nica planta. As la etapa 1 representa el dinero asignado a la planta 1.Artificialmente se dar un orden a las etapas, asumiendo que primero se asignar ala planta 1, luego a la planta 2 y finalmente a la planta 3.

    Cada etapa est dividida en estados. Un estado guarda la informacin requeridapara ir desde una etapa a la siguiente. En este caso los estados por etapa 1, 2 y 3son:

    {0,1,2,3,4,5}: cantidad de dinero gastado en la planta 1, representado como x1 ,

    {0,1,2,3,4,5}: cantidad de dinero gastado en las plantas 1 y 2 (x2), y {5}: cantidad de dinero gastado en las plantas 1, 2, y 3 (x3).

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    27/35

    INVERSIN DE CAPITAL

    Es necesario notar que diferentemente a lo que esprogramacin lineal, las xino representan variables dedecisin: ellas son simplemente representaciones de unestado genrico en la etapa.

    Un retorno se asocia a cada estado. Se debe notar que paratomar una decisin en el estado 3, es slo necesarioconocer cuanto se gast en las plantas 1 y 2, no cmo estofue gastado. Tambin note que se desea que x3sea 5

    Determinando los retornos asociados a cada estado, lo msfcil es en la etapa 1, los estados x1. La Tabla 2 muestra elretorno asociado con x1.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    28/35

    TABLA 2

    Si el capital disponiblex1es:

    Entonces la propuestaptima es:

    Y el retorno para laetapa 1 es:

    0 1 0

    1 2 52 3 6

    3 3 64 3 65 3 6

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    29/35

    EL PROBLEMA DE LA MOCHILA

    El problema de la mochila es un tipo particular deprogramacin entera con slo una restriccin.Cada artculo que puede ir en la mochila tiene untamao y un beneficio asociado. La mochila tieneuna capacidad mxima. Qu se debe llevar en lamochila para maximizar el beneficio total? A modode ejemplo supongamos que hay tres artculos

    como se muestra en la Tabla 3, y suponga que lacapacidad de la mochila es 5.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    30/35

    EL PROBLEMA DE LA MOCHILA

    Artculo (j) Peso (wj) Beneficio (bj)

    1 2 65

    2 3 803 1 30

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    31/35

    EL PROBLEMA DE LA MOCHILA

    Las etapas representan los artculos: luego se tienentres etapasj = 1,2,3. El estado yien la etapajrepresenta el peso total de los artculosjms todos losartculos que se agregarn posteriormente a la mochila.

    La decisin en el etapaj es cuntos artculosjponer enla mochila. Sea ese valor kj.

    Luego se tienen las siguientes frmulas recursivas: Sea

    fj(yj) el valor de usar yjunidades de la capacidad paraartculosjms los que se agregarn. Si [a] representa elmayor entero menor o igual a a.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    32/35

    PROBLEMA DE LA MOCHILA

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    33/35

    REEMPLAZO DE EQUIPO

    Suponga que un negocio necesita tener una mquina en losprximos 5 aos. Cada mquina nueva tiene un costo $1000. Elcosto de mantener la mquina durante el aoi-simo de operacines: m1= $60, m2= $80, y m3= $120. Una mquina se puede usarpor tres aos y luego ser rematada. El valor de remate de la mquinadespus de i aos es s1= $800, s2= $600 , y s3= $500.Cmo

    podra minimizar los costos el dueo del negocio sobre un perodo de5 aos?.

    Las etapas estn asociadas a cada ao. El estado ser la edad de lamquina en ese ao. Las decisiones son ya sea mantener la

    mquina o rematarla y reemplazarla por una nueva.

    Sea ft(x) el mnimo costo desde el instante tal 5, dado que lamquina tienexaos de antigedad en el instante t.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    34/35

    CONCLUSIONES

    Un problema de optimizacin que se puedadividir en etapas y que sea dinmico en eltiempo puede resolverse por programacin

    dinmica. Las soluciones se pueden ver de manera

    parcial.

    Si es posible se validan los resultados usandootros mtodos de solucin como programacinlineal, no lineal, entera o teora de redes.

  • 7/25/2019 Sesion6_IdaliaFlores_20abr15

    35/35

    BIBLIOGRAFA

    Bertsekas D.P. "Dynamic Programming; Deterministic

    and Stochastic Models"Academic Press, 1987.

    Dreyfus S.E. y Law A.M., "The Art and Theory of

    Dynamic Programming", Academic Press, 1977.

    Hiller, F. S. Introduccin a la Investigacin deOperaciones. 2008

    Taha, H. A. Investigacinde Operaciones. 2005