Sesion6_IdaliaFlores_20abr15
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