16 votos

Resolviendo la ecuación de Hamilton-Jacobi-Bellman; ¿es necesario y suficiente para la optimalidad?

Considere la siguiente ecuación diferencial \begin{align} \dot x(t)=f(x(t),u(t)) \end{align> donde $x$ es el estado y $u$ es la variable de control. La solución se da por \begin{align} x(t)=x_0 + \int^t_0f(x(s),u(s))ds. donde $x_0:=x(0)$ es el estado inicial dado.

Ahora considere el siguiente programa \begin{align} &V(x_0) := \max_u \int^\infty_0 e^{-\rho t}F(x(t),u(t))dt\\ s.t.~&\dot x(t)=f(x(t),u(t))\\ &x(0) = x_0 donde $\rho > 0$ denota la preferencia por el tiempo, $V(\cdot)$ es el valor y $F(\cdot)$ una función objetivo. Una aplicación económica clásica es el modelo de crecimiento óptimo de Ramsey-Cass-Koopmans. La ecuación Hamilton-Jacobi-Bellman se da por \begin{align} \rho V(x)=\max_u [F(x,u) + V'(x)f(x,u)],\quad \forall t\in[0,\infty). \end{align>

Digamos que he resuelto el HJB para $V$. El control óptimo se da entonces por \begin{align> u^*=\arg\max_u [F(x,u) + V'(x)f(x,u)]. Obtendré trayectorias óptimas para el estado y el control $\{(x^*(t),u^*(t)):t\in[0,\infty)\}$.

El artículo de Wikipedia dice

...pero cuando se resuelve sobre todo el espacio de estados, la ecuación HJB es una condición necesaria y suficiente para un óptimo.

En Bertsekas (2005) Dynamic Programming and Optimal Control, Vol 1, 3ra ed., en la Proposición 3.2.1 él afirma que resolver para $V$ es la función óptima de costo y el correspondiente $u^*$ es óptimo. Sin embargo, él lo declara explícitamente como un teorema de suficiencia.

De hecho, solo quiero asegurarme de que si he resuelto el HJB y recuperado las trayectorias de estado y control asociadas, no tengo que preocuparme por ninguna condición de optimalidad adicional.

Solución

Primer Intento

Creo que pude derivar condiciones necesarias del principio del máximo por la ecuación HJB en sí misma.

Defina el hamiltoniano \begin{align> H(x,u,V'(x)) := F(x,u) + V'(x)f(x,u)

entonces tenemos \begin{align> \rho V(x)=\max_u H(x,u,V'(x))

que es \begin{align> \rho V(x)= H(x,u^*,V'(x)).

Defina una función arbitraria $q:[0,\infty)\to\mathbb{R}$ con $q(0)=\lim_{t\to\infty} q(t)=0$. Ahora fije \begin{align> x = x^*+\varepsilon q

donde $\varepsilon\in\mathbb{R}$ es un parámetro. Inserte el término en el hamiltoniano maximizado que da \begin{align> \rho V(x^*+\varepsilon q)= H(x^*+\varepsilon q,u^*,V'(x^*+\varepsilon q)).

En $\varepsilon = 0$ tenemos la solución óptima. Por lo tanto, diferencie con respecto a $\varepsilon$ para obtener una condición de primer orden \begin{align> \rho V'q = H_x q + H_{V'}V''q.

Defina la variable adjunta con \begin{align> \lambda = V'(x).

Diferencie con respecto al tiempo \begin{align> \dot \lambda = V''\dot x.

y note que \begin{align> H_{V'} = f(x,u) = \dot x.

Inserte todo en la foc para obtener \begin{align> \rho \lambda = H_x + \dot \lambda.

Eso es más o menos todo. Por lo tanto, resolver la ecuación HJB es de hecho necesario y suficiente (omito aquí) para la optimalidad. Alguien debería agregarlo a Wikipedia. Podría ahorrar tiempo para las personas que piensan en tales problemas (no serán muchas, supongo).

Sin embargo, la condición de tranversalidad \begin{align> \lim_{t\to\infty} e^{-\rho t}\lambda(t) = 0 está faltando.

Segundo Intento

Defina el funcional de pago \begin{align> J(u):=\int^\infty_0 e^{-\rho t}F(x,u)dt

Note que \begin{align> \int^\infty_0{e^{-\rho t}\lambda[f(x,u) - \dot x]dt} = 0 por la definición de $\dot x = f(x,u)$. Agregue el término neutro al funcional de pago \begin{align> J(u)&=\int^\infty_0 e^{-\rho t}[F(x,u)+\lambda f(x,u)]dt - \int^\infty_0{e^{-\rho t}\lambda\dot xdt}\\ &=\int^\infty_0 e^{-\rho t}H(x,u,\lambda) - \int^\infty_0{e^{-\rho t}\lambda\dot xdt}

La integración por partes del término derecho en la rhs da \begin{align> \int^\infty_0{e^{-\rho t}\lambda\dot xdt} = [e^{-\rho t}\lambda(t)x(t)]^\infty_0 - \int^\infty_0{e^{-\rho t}x(\dot \lambda-\rho\lambda)dt}

Resustituya ese término \begin{align> J(u)=\int^\infty_0 e^{-\rho t}[H(x,u,\lambda) + x(\dot \lambda-\rho\lambda)]dt - \lim_{t\to\infty}e^{-\rho t}\lambda(t)x(t) + \lambda(0)x(0)

Defina \begin{align> x &= x^*+\varepsilon q\\ u &= u^*+\varepsilon p

lo que da \begin{align> J(\varepsilon)=\int^\infty_0 e^{-\rho t}[H(x^*+\varepsilon q,u^*+\varepsilon p,\lambda) + (x^*+\varepsilon q)(\dot \lambda-\rho\lambda)]dt - \lim_{t\to\infty}e^{-\rho t}\lambda(t)[x^*(t)+\varepsilon q(t)] + \lambda(0)x(0)

La foc para máximo $J_\varepsilon = 0$ \begin{align> J_\varepsilon=\int^\infty_0 e^{-\rho t}[H_x q + H_u p + q(\dot \lambda-\rho\lambda)]dt - \lim_{t\to\infty}e^{-\rho t}\lambda(t)q(t) = 0

Dado que $q$ y $p$ no están restringidos, debemos tener \begin{align> H_u &= 0\\ H_x &= \rho\lambda - \dot \lambda\\ \lim_{t\to\infty}e^{-\rho t}\lambda(t) &= 0

0 votos

¿Ya has identificado las condiciones necesarias y suficientes?

0 votos

En qué contexto económico surge esto?

0 votos

2voto

Bill718 Puntos 90

(Esto quizás debería considerarse un comentario.)

Si has resuelto la ecuación HJB, es suficiente para obtener la solución óptima. Por lo tanto, no "tienes que preocuparte por ninguna otra condición de optimalidad," lo cual creo que responde a tu pregunta.

Parece que estás preocupado por el componente "necesario" del teorema. El lado de la necesidad de la afirmación es el siguiente: si hay una solución óptima, debe existir una solución a la ecuación HJB.

No he trabajado con este problema en particular, pero la respuesta en general es que no esperamos tener una función diferenciable V. Por lo tanto, no tenemos una solución a la ecuación tal como está planteada. En su lugar, necesitamos ver derivadas generalizadas y convertir la ecuación HJB en una desigualdad. En ese caso, puedes obtener una "solución de viscosidad". Si extendemos el uso de derivadas generalizadas, puede ser posible demostrar que una solución así siempre existe. Echando un vistazo a tus pruebas, no ayudarán en las condiciones de necesidad, ya que estás asumiendo diferenciabilidad.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X