La ecuación de Bellman es una ecuación fundamental en el aprendizaje por refuerzo que expresa la relación entre el valor de un estado o par estado-acción y las recompensas esperadas obtenidas a partir de ese estado. Recibe su nombre de Richard E. Bellman, quien realizó importantes contribuciones a la programación dinámica y la teoría de control.
Ecuación de Bellman para Funciones de Valor
La ecuación de Bellman para la función de valor de estado V(s) se define de la siguiente manera:
V(s) = E[R + γ * V(s') | s, a]
donde:
- V(s) es el valor del estado s.
- R es la recompensa inmediata obtenida al tomar la acción a en el estado s.
- γ (gamma) es el factor de descuento que determina la importancia de las recompensas futuras.
- V(s') es el valor del siguiente estado s' al que el agente transiciona después de tomar la acción a en el estado s.
- E[ ] representa la expectativa sobre los posibles siguientes estados y recompensas.
La ecuación de Bellman establece que el valor de un estado es igual a la recompensa inmediata esperada más el valor descontado del siguiente estado. Esta ecuación es la base para la iteración de valores y otros algoritmos de programación dinámica para resolver MDPs (Procesos de Decisión de Markov).
Ecuación de Bellman para Funciones Q
La ecuación de Bellman para la función de valor de acción Q(s, a) se define de la siguiente manera:
Q(s, a) = E[R + γ * max[Q(s', a')] | s, a]
donde:
- Q(s, a) es el valor de tomar la acción a en el estado s.
- max[Q(s', a')] representa el valor máximo de la función de valor de acción sobre todas las acciones posibles a' en el siguiente estado s'.
La ecuación de Bellman para las funciones Q se utiliza comúnmente en el aprendizaje Q y otros algoritmos de aprendizaje por refuerzo basados en valores. Esta ecuación establece que el valor de un par estado-acción es igual a la recompensa inmediata esperada más el valor descontado de la mejor acción a tomar en el siguiente estado.
Al resolver iterativamente la ecuación de Bellman, ya sea para funciones de valor o funciones Q, los agentes pueden aprender políticas óptimas que maximizan las recompensas acumulativas esperadas en un entorno dado.
Cómo se calcula la ecuación de Bellman
La ecuación de Bellman simplifica nuestro cálculo de valor de estado o valor de estado-acción.
Hasta ahora, hemos aprendido que si calculamos V(s) (el valor de un estado), necesitamos calcular el retorno a partir de ese estado y luego seguir la política para siempre. (La política que hemos definido en el siguiente ejemplo es una política codiciosa; para simplificar, no descontamos la recompensa).
Entonces, para calcular V(s), necesitamos calcular la suma de las recompensas esperadas. Por lo tanto:
Para calcular el valor del Estado 1: la suma de las recompensas si el agente comenzara en ese estado y luego siguiera la política codiciosa (tomando acciones que llevan a los mejores valores de estado) durante todos los pasos de tiempo.
Luego, para calcular V(s+1), necesitamos calcular el retorno a partir de ese estado s+
Para calcular el valor del Estado 2: la suma de las recompensas si el agente comenzara en ese estado y luego siguiera la política durante todos los pasos de tiempo.
Entonces, puede haber notado que estamos repitiendo el cálculo del valor de diferentes estados, lo cual puede ser tedioso si es necesario hacerlo para cada valor de estado o valor de estado-acción.
En lugar de calcular el retorno esperado para cada estado o cada par estado-acción, podemos utilizar la ecuación de Bellman. (pista: si sabes qué es la programación dinámica, ¡esto es muy similar! si no sabes qué es, ¡no te preocupes!)
La ecuación de Bellman es una ecuación recursiva que funciona de la siguiente manera: en lugar de comenzar para cada estado desde el principio y calcular el retorno, podemos considerar el valor de cualquier estado como:
La recompensa inmediata R(t+1) + el valor descontado del estado siguiente (γ * V(s+1)).
Si volvemos a nuestro ejemplo, podemos decir que el valor del Estado 1 es igual al retorno acumulativo esperado si comenzamos en ese estado.
Para simplificar, aquí no descontamos, por lo que gamma =
La idea de la ecuación de Bellman es que, en lugar de calcular cada valor como la suma del retorno esperado, que es un proceso largo, calculamos el valor como la suma de la recompensa inmediata más el valor descontado del estado siguiente.
Antes de pasar a la siguiente sección, piensa en el papel de gamma en la ecuación de Bellman. ¿Qué sucede si el valor de gamma es muy bajo (por ejemplo, 0.1 o incluso 0)? ¿Qué sucede si el valor es 1? ¿Qué sucede si el valor es muy alto, como un millón?
Si quieres conocer otras notas parecidas a La ecuación de bellman en ia: fundamentos y aplicaciones puedes visitar la categoría Inteligencia.