Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Ecuaciones de Bellman | Programación Dinámica
Introducción al Aprendizaje por Refuerzo
course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Ecuaciones de Bellman

Note
Definición

Una ecuación de Bellman es una ecuación funcional que define una función de valor en forma recursiva.

Para aclarar la definición:

  • Una ecuación funcional es una ecuación cuya solución es una función. Para la ecuación de Bellman, esta solución es la función de valor para la cual se formuló la ecuación;
  • Una forma recursiva significa que el valor en el estado actual se expresa en términos de los valores en estados futuros.

En resumen, resolver la ecuación de Bellman proporciona la función de valor deseada, y derivar esta ecuación requiere identificar una relación recursiva entre los estados actuales y futuros.

Función de valor de estado

Como recordatorio, aquí está una función de valor de estado en forma compacta:

vπ(s)=Eπ[GtSt=s]\def\E{\operatorname{\mathbb{E}}} v_\pi(s) = \E_\pi[G_t | S_t = s]

Para obtener la ecuación de Bellman para esta función de valor, expandamos el lado derecho de la ecuación y establezcamos una relación recursiva:

vπ(s)=Eπ[GtSt=s]=Eπ[Rt+1+γRt+2+γ2Rt+3+...St=s]=Eπ[Rt+1+γk=0γkRt+k+2St=s]=Eπ[Rt+1+γGt+1St=s]=aπ(as)s,rp(s,rs,a)(r+γEπ[Gt+1St+1=s])=aπ(as)s,rp(s,rs,a)(r+γvπ(s))\def\E{\operatorname{\mathbb{E}}} \begin{aligned} v_\pi(s) &= \E_\pi[G_t | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma \sum_{k=0}^\infty \gamma^k R_{t+k+2} | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma G_{t+1} | S_t = s]\\ &= \sum_a \pi(a | s) \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \E_\pi\Bigl[G_{t+1} | S_{t+1} = s'\Bigr]\Bigr)\\ &= \sum_a \pi(a | s) \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma v_\pi(s')\Bigr) \end{aligned}

La última ecuación en esta cadena es una ecuación de Bellman para la función de valor de estado.

Intuición

Para encontrar el valor de un estado ss, se debe:

  1. Considerar todas las posibles acciones aa que se pueden tomar desde este estado, cada una ponderada por la probabilidad de elegir esa acción bajo la política actual π(as)\pi(a | s);
  2. Para cada acción aa, considerar todos los posibles siguientes estados ss' y recompensas rr, ponderados por su probabilidad p(s,rs,a)p(s', r | s, a);
  3. Para cada uno de estos resultados, tomar la recompensa inmediata rr obtenida más el valor descontado del siguiente estado γvπ(s)\gamma v_\pi(s').

Al sumar todas estas posibilidades, se obtiene el valor esperado total del estado ss bajo la política actual.

Función de Valor de Acción

Aquí se presenta una función de valor de acción en forma compacta:

qπ(s,a)=Eπ[GtSt=s,At=a]\def\E{\operatorname{\mathbb{E}}} q_\pi(s, a) = \E_\pi[G_t | S_t = s, A_t = a]

La deducción de la ecuación de Bellman para esta función es bastante similar a la anterior:

qπ(s,a)=Eπ[GtSt=s,At=a]=Eπ[Rt+1+γRt+2+γ2Rt+3+...St=s,At=a]=Eπ[Rt+1+γk=0γkRt+k+2St=s,At=a]=Eπ[Rt+1+γGt+1St=s,At=a]=s,rp(s,rs,a)(r+γEπ[Gt+1St+1=s])=s,rp(s,rs,a)(r+γaπ(as)(Eπ[Gt+1St+1=s,At+1=a]))=s,rp(s,rs,a)(r+γaπ(as)q(s,a))\def\E{\operatorname{\mathbb{E}}} \begin{aligned} q_\pi(s, a) &= \E_\pi[G_t | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma \sum_{k=0}^\infty \gamma^k R_{t+k+2} | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma G_{t+1} | S_t = s, A_t = a]\\ &= \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \E_\pi\Bigl[G_{t+1} | S_{t+1} = s'\Bigr]\Bigr)\\ &= \sum_{s', r} p(s', r | s, a)\Biggl(r + \gamma \sum_{a'} \pi(a' | s') \Bigl(\E_\pi\Bigl[G_{t+1} | S_{t+1} = s', A_{t+1} = a'\Bigr]\Bigr)\Biggr)\\ &= \sum_{s', r} p(s', r | s, a)\Biggl(r + \gamma \sum_{a'} \pi(a' | s') q(s', a')\Biggr) \end{aligned}

La última ecuación de esta cadena es una ecuación de Bellman para la función de valor de acción.

Intuición

Para encontrar el valor de un par estado-acción (s,a)(s, a), se debe:

  1. Considerar todos los posibles siguientes estados ss' y recompensas rr, ponderados por su probabilidad p(s,rs,a)p(s', r | s, a);
  2. Para cada uno de estos resultados, tomar la recompensa inmediata rr obtenida más el valor descontado del siguiente estado;
  3. Para calcular el valor del siguiente estado ss', para todas las acciones aa' posibles desde el estado ss', multiplicar el valor de la acción q(s,a)q(s', a') por la probabilidad de elegir aa' en el estado ss' bajo la política actual π(as\pi(a' | s'. Luego, sumar todo para obtener el valor final.

Al sumar todas estas posibilidades, se obtiene el valor esperado total del par estado-acción (s,a)(s, a) bajo la política actual.

question mark

¿Cuál de las siguientes opciones describe mejor la función de la ecuación de Bellman?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 2

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Ecuaciones de Bellman

Note
Definición

Una ecuación de Bellman es una ecuación funcional que define una función de valor en forma recursiva.

Para aclarar la definición:

  • Una ecuación funcional es una ecuación cuya solución es una función. Para la ecuación de Bellman, esta solución es la función de valor para la cual se formuló la ecuación;
  • Una forma recursiva significa que el valor en el estado actual se expresa en términos de los valores en estados futuros.

En resumen, resolver la ecuación de Bellman proporciona la función de valor deseada, y derivar esta ecuación requiere identificar una relación recursiva entre los estados actuales y futuros.

Función de valor de estado

Como recordatorio, aquí está una función de valor de estado en forma compacta:

vπ(s)=Eπ[GtSt=s]\def\E{\operatorname{\mathbb{E}}} v_\pi(s) = \E_\pi[G_t | S_t = s]

Para obtener la ecuación de Bellman para esta función de valor, expandamos el lado derecho de la ecuación y establezcamos una relación recursiva:

vπ(s)=Eπ[GtSt=s]=Eπ[Rt+1+γRt+2+γ2Rt+3+...St=s]=Eπ[Rt+1+γk=0γkRt+k+2St=s]=Eπ[Rt+1+γGt+1St=s]=aπ(as)s,rp(s,rs,a)(r+γEπ[Gt+1St+1=s])=aπ(as)s,rp(s,rs,a)(r+γvπ(s))\def\E{\operatorname{\mathbb{E}}} \begin{aligned} v_\pi(s) &= \E_\pi[G_t | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma \sum_{k=0}^\infty \gamma^k R_{t+k+2} | S_t = s]\\ &= \E_\pi[R_{t+1} + \gamma G_{t+1} | S_t = s]\\ &= \sum_a \pi(a | s) \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \E_\pi\Bigl[G_{t+1} | S_{t+1} = s'\Bigr]\Bigr)\\ &= \sum_a \pi(a | s) \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma v_\pi(s')\Bigr) \end{aligned}

La última ecuación en esta cadena es una ecuación de Bellman para la función de valor de estado.

Intuición

Para encontrar el valor de un estado ss, se debe:

  1. Considerar todas las posibles acciones aa que se pueden tomar desde este estado, cada una ponderada por la probabilidad de elegir esa acción bajo la política actual π(as)\pi(a | s);
  2. Para cada acción aa, considerar todos los posibles siguientes estados ss' y recompensas rr, ponderados por su probabilidad p(s,rs,a)p(s', r | s, a);
  3. Para cada uno de estos resultados, tomar la recompensa inmediata rr obtenida más el valor descontado del siguiente estado γvπ(s)\gamma v_\pi(s').

Al sumar todas estas posibilidades, se obtiene el valor esperado total del estado ss bajo la política actual.

Función de Valor de Acción

Aquí se presenta una función de valor de acción en forma compacta:

qπ(s,a)=Eπ[GtSt=s,At=a]\def\E{\operatorname{\mathbb{E}}} q_\pi(s, a) = \E_\pi[G_t | S_t = s, A_t = a]

La deducción de la ecuación de Bellman para esta función es bastante similar a la anterior:

qπ(s,a)=Eπ[GtSt=s,At=a]=Eπ[Rt+1+γRt+2+γ2Rt+3+...St=s,At=a]=Eπ[Rt+1+γk=0γkRt+k+2St=s,At=a]=Eπ[Rt+1+γGt+1St=s,At=a]=s,rp(s,rs,a)(r+γEπ[Gt+1St+1=s])=s,rp(s,rs,a)(r+γaπ(as)(Eπ[Gt+1St+1=s,At+1=a]))=s,rp(s,rs,a)(r+γaπ(as)q(s,a))\def\E{\operatorname{\mathbb{E}}} \begin{aligned} q_\pi(s, a) &= \E_\pi[G_t | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma \sum_{k=0}^\infty \gamma^k R_{t+k+2} | S_t = s, A_t = a]\\ &= \E_\pi[R_{t+1} + \gamma G_{t+1} | S_t = s, A_t = a]\\ &= \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \E_\pi\Bigl[G_{t+1} | S_{t+1} = s'\Bigr]\Bigr)\\ &= \sum_{s', r} p(s', r | s, a)\Biggl(r + \gamma \sum_{a'} \pi(a' | s') \Bigl(\E_\pi\Bigl[G_{t+1} | S_{t+1} = s', A_{t+1} = a'\Bigr]\Bigr)\Biggr)\\ &= \sum_{s', r} p(s', r | s, a)\Biggl(r + \gamma \sum_{a'} \pi(a' | s') q(s', a')\Biggr) \end{aligned}

La última ecuación de esta cadena es una ecuación de Bellman para la función de valor de acción.

Intuición

Para encontrar el valor de un par estado-acción (s,a)(s, a), se debe:

  1. Considerar todos los posibles siguientes estados ss' y recompensas rr, ponderados por su probabilidad p(s,rs,a)p(s', r | s, a);
  2. Para cada uno de estos resultados, tomar la recompensa inmediata rr obtenida más el valor descontado del siguiente estado;
  3. Para calcular el valor del siguiente estado ss', para todas las acciones aa' posibles desde el estado ss', multiplicar el valor de la acción q(s,a)q(s', a') por la probabilidad de elegir aa' en el estado ss' bajo la política actual π(as\pi(a' | s'. Luego, sumar todo para obtener el valor final.

Al sumar todas estas posibilidades, se obtiene el valor esperado total del par estado-acción (s,a)(s, a) bajo la política actual.

question mark

¿Cuál de las siguientes opciones describe mejor la función de la ecuación de Bellman?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 2
some-alt