Documentos de Académico
Documentos de Profesional
Documentos de Cultura
● La variable de estado xt cuyo valor se determina para cada instante t 0;1; ; T + 1 . Esta
variable generalmente representa stocks, y, por lo tanto, cuentan con una ley de
acumulación (también llamada ley de transición) que va actualizando sus valores.
Consideraremos que x t R para t=0;1 ;T+1
1
● Una función de transición, g : * → R, g (ut ; xt ) que actualiza el valor de la variable
de estado en el siguiente periodo, t + 1, cuando el estado actual es xt y la acción (control)
tomada es ut
Por lo tanto, el problema (1) consiste en: determinar una secuencia de controles (acciones)
T
u0* ; u1* ; ; uT* que deben tomarse de modo que la utilidad acumulada f (u ; x )
t =0
t t sea
máxima
La secuencia de controles u0* ; u1* ; ; uT* que resuelve el problema (1) se llama control óptimo
y la secuencia x0* ; x1* ; ; xT* +1 determinada por función de transición a partir de x0 se llama
trayectoria de estado optima
b) En dicha etapa (la etapa 2) se debe elegir un control u1 , y se realiza un aporte a la
función objetivo dado por f ( u1; x1 ) y se inicia la etapa 3 (la cual inicia en t = 2 ) con el
siguiente valor de la variable de estado x2 = f ( u1; x1 )
c) Se sigue de esta manera hasta que llegamos a la etapa T + 1 (la cual inicia en t = T ) con
estado inicial xT y se elige un control uT , se realiza un aporte a la función objetivo
dado por f ( uT ; xT ) y el sistema alcanza un estado final dado por xT +1 = g (uT ; xT )
u0 uj uT
(se determina en la etapa 1) (se determina en la etapa j +1) (se determina en la etapa T + 1
)
x0 x1 x2 xj x j +1 xT xT +1
2
El problema de optimización dinámica secuencial (1) satisface la siguiente propiedad
Principio de causalidad
Dados dos estados cualquiera del sistema, uno anterior y otro posterior, el valor que toma el
estado posterior depende únicamente del valor del estado anterior y de los valores de los
controles intermedios entre ambos estados
Con mayor formalidad
Dados j.r 0;1;...; T − 1, con j r, se verifica que xr depende únicamente de x j y de los
controles intermedios u j ; u j +1; ; ur −1
Es decir, dado el estado x j en el que se encuentra el sistema al comienzo de la etapa j + 1 ,
para cualquier etapa posterior r se verifica que el estado que se alcanza al finalizar dicha
etapa, xr , depende exclusivamente del estado x j y de los controles que se apliquen entre las
etapas j + 1 y r
uj u j +1 ur −1
xj x j +1 x j +2 xr −1 xr
Imagine que se tiene un problema complejo que requiere tomar muchas decisiones a lo largo
del tiempo, y cada decisión afecta las decisiones futuras y el resultado final. El principio de
optimalidad de Bellman dice que, si se tiene una solución óptima para todo el problema,
entonces cada parte más pequeña del problema también debe tener una solución óptima
En otras palabras, si se tiene una estrategia óptima para resolver el problema completo,
entonces también se tiene una estrategia óptima para resolver cada parte del problema por
separado. Esto permite descomponer un problema grande y complicado en partes más
pequeñas y manejables, lo que facilita encontrar una solución óptima global
3
Teorema (Principio de optimalidad de Bellman)
La secuencia de variables de control u0* ; ; uT* es óptima para el problema de optimización dinámica
secuencial (1) si y solo si ut* ; ut*+1; ; uT* es óptimo del siguiente problema para todo t = 0; ;T
T
maximizar f (ut ; xt )
( Pt ) ut
j =t
sujeto a x = g (u ; x ), para j = t; ; T con x dado
t +1 t t 0
Vt ( xt ) = maximizar f (ut ; xt ) + Vt +1 ( xt +1 )
( Pt ) ut
4
Procedimiento para aplicar el Principio de optimalidad de Bellman
Para poder separar al problema de optimización en múltiples problemas de dimensión más
pequeña (de un periodo y una variable) y recursivos, empezamos resolviendo para el periodo
T (el cual es el inicio de la última etapa del problema)
Paso 1
Resolvemos
VT ( xT ) = maximizar f ( uT ; xT )
uT
sujeto a xT +1 = g (uT ; xT )
asumiendo que todos los periodos previos ya fueron optimizados. Asumiendo que 𝑥𝑇+1 es
dato del problema y además 𝑥𝑇 viene dado del periodo previo (es perfectamente conocido al
inicio de 𝑇), entonces la restricción termina siendo una ecuación para una variable. Es así
como podemos encontrar directamente, a partir de la ley de acumulación, el valor de 𝑢𝑇 el
cual saldrá en función solo de 𝑥𝑇
𝑥𝑇+1 = 𝑔(𝑢𝑇 ; 𝑥𝑇 ) → 𝑢𝑇 = ℎ𝑇 (𝑥𝑇 )
A 𝑢𝑇 = ℎ𝑇 (𝑥𝑇 ) se le llama función de política, una vez que ya conocemos 𝑢𝑇 = ℎ𝑇 (𝑥𝑇 ),
reemplazamos en la función objetivo del periodo, de forma que obtenemos 𝑉𝑇 (𝑥𝑇 )
Paso 2
Ahora retrocedemos y optimizamos la función correspondiente a 𝑇 − 1:
VT −1 ( xT −1 ) = maximizar f ( uT −1; xT −1 ) + VT ( xT )
uT −1
Lo que haremos en este caso será sustituir la expresión de 𝑥𝑇 dentro de la función objetivo, y
proceder mediante una optimización sin restricciones:
VT −1 ( xT −1 ) = maximizar f ( uT −1; xT −1 ) + VT ( g ( uT −1 ; xT −1 ) )
uT −1
Ahora procedemos con la condición de primer orden (recordemos que debemos tomar a 𝑥𝑇−1
como dado, ya que dicho valor ya es conocido al inicio del periodo 𝑇 − 1):
Una vez que encontramos esta función de política, debemos encontrar la función valor
(
VT −1 ( xT −1 ) = f ( hT −1 ( xT −1 ) ; xT −1 ) + VT g ( hT −1 ( xT −1 ) ; xT −1 ) )
5
Paso 3
Ahora resolvemos el problema para 𝑇 − 2, asumiendo que todos los periodos previos ya
fueron optimizados:
VT −2 ( xT −2 ) = maximizar f ( uT −2 ; xT −2 ) + VT −1 ( xT −1 )
uT − 2
sujeto a xT −1 = g (uT −2 ; xT −2 )
Ahora, reemplacemos la función de valor que ya obtuvimos del paso previo (correspondiente
a 𝑇 − 1):
VT −2 ( xT −2 ) = maximizar f ( uT −2 ; xT −2 ) + VT −1 ( xT −1 )
uT − 2
sujeto a xT −1 = g (uT −2 ; xT −2 )
VT −2 ( xT −2 ) = maximizar f ( uT −2 ; xT −2 ) + VT −1 ( g (uT −2 ; xT −2 ) )
uT − 2
Ahora reemplazamos esta función de política dentro de la función objetivo, de forma que
obtenemos 𝑉𝑇−2 (𝑥𝑇−2 ) función valor que será útil para la optimización del periodo previo
T −3
Paso 4
Este proceso se repite iterativamente hasta llegar a 𝑡 = 0 donde resolvemos
V0 ( x0 ) = maximizar f ( u0 ; x0 ) + V1 ( x1 )
u0
sujeto a x1 = g (u0 ; x0 )
Equivalentemente
V0 ( x0 ) = maximizar f ( u0 ; x0 ) + V1 ( g (u0 ; x0 ) )
u0
6
Ejemplo: Resuelva problema usando la ecuacion recursiva de Bellman
3
maximizar
c
c
=1
sujeto a s +1 = c + s
s1 = 0
s4 = 3
maximizar c3
sujeto a s4 = c3 + s3
maximizar f 2 ( c2 , s2 ) + V3 ( s3 ) =
c2
c2 + 3 − s3
sujeto a s3 = c2 + s2 ,
V2 ( s2 ) = maximizar f 2 ( c2 , s2 ) + V3 ( s3 ) =
c2
c2 + 3 − s3
sujeto a s3 = c2 + s2 ,
maximizar f 2 ( c2 , s2 ) + V3 ( s3 ) =
c2
c+2 3 − ( c2 + s2 )
La aplicación de CNO1 da
7
1 1
− =0
2 c2 2 3 − c2 − s2
y desde aquí
3 − s2
c2 =
2
y
V2 ( s2 ) = 2 ( 3 − s2 )
maximizar f1 ( c1 , s1 ) + V2 ( s2 ) = maximizar
c1 c1
c+
1 2 ( 3 − s2 )
sujeto a s2 = c1 + s1 sujeto a s2 = c1 + s1 ,
V1 ( s1 ) = maximizar
c1
c+ 1 2 ( 3 − s2 )
sujeto a s2 = c1 + s1
maximizar
c1
c+ 1 2 ( 3 − c1 − s1 )
Aplicación de CNO1 da
1 2
− =0
2 c1 2 2 ( 3 − c1 − s1 )
8
y desde aquí
3 − s1 3 − 0
c1 = = =1
3 3
Ejemplo
Resuelva problema usando la ecuacion recursiva de Bellman
maximizar (1 + xt − ut2 )
3
u0 ; ;u3
t =0
sujeto a xt +1 = xt + ut t = 0;1;2;3 x0 = 0
Solucion
Empezamos resolviendo para el periodo t = 3
V3 ( x3 ) = maximizar f ( u3 ; x3 ) = 1 + x3 − u32
u3
sujeto a x3 = x2 + u2
Simplificando obtenemos
V2 ( x2 ) = maximizar 2 + 2 x2 − u22 + u2
u2
9
Ahora determinamos la eleccion optima de u1 en el periodo t=1 teniendo en cuenta que
9
en el periodo t=2 el valor maximo es V2 ( x2 ) = 2 x2 +
4
sujeto a x2 = x1 + u1
9
V1 ( x1 ) = maximizar 1 + x1 − u12 + 2 x1 + 2u1 +
u1
4
13
V1 ( x1 ) = maximizar 3x1 − u12 + 2u1 +
u1
4
sujeto a x1 = x0 + u0
17 21
V0 ( x0 ) == maximizar 1 + x0 − u02 + 3x0 + 3u0 + = maximizar 4 x0 − u02 + 3u0 +
u0
4 u0 4
10
x0 = 0
3 3
x1 = x0 + u0 = 0 + =
2 2
3 5
x2 = x1 + u1 = + 1 =
2 2
5 1
x3 = x2 + u2 = + = 3
2 2
Ejemplo
Una comunidad amazónica tiene como principal actividad económica la tala de árboles y
desea maximizar la suma de sus ganancias netas a lo largo de 𝑇 periodos. El precio p de la
madera lo fija el mercado. Asimismo, yt denota la extracción de madera (nivel de
producción) y xt las reservas restantes en el periodo 𝑡. El costo de extracción está dado por
2 yt2
ct = . Las reservas en el primer periodo están dadas por x1 = 800 millones de árboles y
xt
al final del horizonte temporal el stock (reservas) deben agotarse
Solucion
a) El problema es
T
2 y2
maximizar pyt − t
t =1 xt
y1 ; ; yT
sujeto a xt +1 = xt − yt t = 1; ; T x1 = 800
11
En V3 ( x3 ) = ( p − 2) x3 sustituimos x3 por x3 = x2 − y2 y obtenemos
2 y2
V2 ( y2 ) = maximizar py2 − 2 + ( x2 − y2 )( p − 2 )
y2
x2
Derivando con respecto a y 2 y verificando que corresponde a un máximo se obtiene
4 y2
p− − p+2=0
x2
1
Entonces, y2 = x2 x2 = 2 y2 . Luego, V2 ( y2 ) = ( 2 p − 3) y2
2
Para el instante t = 1
2 y2
V1 ( y1 ) = maximizar py1 − 1 + V2 ( y2 )
y1
x1
sujeto a x2 = x1 − y1
Pero x1 = 800 . Entonces el problema anterior queda como
2 y2
V1 ( y1 ) = maximizar py1 − 1 + V2 ( y2 )
y1
800
sujeto a x2 = 800 − y1
1
Ahora bien, V2 ( y2 ) = ( 2 p − 3) y2 pero de lo anterior y2 = x2 . Entonces,
2
1
V2 ( y2 ) = ( 2 p − 3) y2 = ( 2 p − 3) x2
2
Luego,
2 y12 1
V1 ( y1 ) = maximizar py1 − + ( 2 p − 3) x2
y1
800 2
sujeto a x2 = 800 − y1
2 y2 1
V1 ( y1 ) = maximizar py1 − 1 + ( 2 p − 3)(800 − y1 )
y1
800 2
Derivando con respecto a y1 y verificando que corresponde a un máximo se obtiene
y1 1
p− − ( 2 p − 3) = 0 y1* = 300
200 2
1
Ahora partir de x2 = 800 − y1 se obtiene que x2* = 500 y de y2 = x2 se obtiene que
2
y2* = 250 . Además, de x3 = x2 − y2 se obtiene x3* = 250 .
Finalmente, siendo x3 = y3 se obtiene y3* = 250
12
Ejercicio
Consideremos un modelo de consumo inter temporal de dos periodos (t = 0; 1)
maximizar U ( c0 ; c1 ) = ln ( c0 ) + ln ( c1 )
sujeto a st +1 = yt − ct + (1 + r ) st , s0 = 0, t = 0; 1
Solucion
En este caso, haremos la hipótesis de que 𝑠2 = 0 ya que no hay ningún incentivo para
guardar recursos para después de la vida. Procedamos según el método de programación
dinámica. Empecemos por 𝑡 = 𝑇 = 1:
V1 ( s1 ) = max ln ( c1 )
c1
sujeto a s2 = y1 − c1 + (1 + r ) s1 = 0
c1 = y1 + (1 + r ) s1 1
¡Esta es la función de política! Ahora reemplazamos en la función objetivo:
V1 ( s1 ) = ln ( c1 ) V1 ( s1 ) = ln ( y1 + (1 + r ) s1 )
V0 ( s0 ) = maximizar ln ( c0 ) + V1 ( s1 )
c0
V0 ( s0 ) = maximizar ln ( c0 ) + ln ( y1 + (1 + r ) s1 )
c0
sujeto a s1 = y0 − c0 , s0 = 0 sujeto a s1 = y0 − c0 , s0 = 0
V0 ( s0 ) = maximizar ln ( c0 ) + ln ( y1 + (1 + r )( y0 − c0 ) )
c0
Ahora derivamos con respecto a la variable de control:
1 𝛽(1 + 𝑟)
− =0
𝑐0 𝑦1 + (1 + 𝑟)(𝑦0 − 𝑐0 )
Ahora despejamos:
13
(1 + r ) c0 = y1 + (1 + r )( y0 − c0 )
(1 + )(1 + r ) c0 = (1 + r ) y0 + y1
y0 y1
c0* = + 2
1 + (1 + r )(1 + )
s1 = y0 − c0
y0 y1
c1* = y1 + (1 + r ) +
1 + (1 + r )(1 + )
Pero nótese que el único control que opera durante el tiempo de vida del consumidor es en
realidad c0*
14