12 · SARSA (en política)
Cambia un símbolo — el max se vuelve la acción que realmente tomas a continuación — y Q-learning se convierte en SARSA. Ese único cambio hace que el agente aprenda una política más segura y prudente.
Una idea, un intento. A tu ritmo.
APRENDE HACIENDOPon a prueba tu intuición3 pasos
12 · SARSA (en política)
Usa los ejemplos y la explicación de la lección para comprobar tu idea.
Reflexión personal. No se envía a ningún servicio de IA.SARSA actualiza Q(s,a) ← Q(s,a) + α·[r + γ·Q(s',a') − Q(s,a)], donde a' es la acción que el agente REALMENTE toma a continuación (elegida ε-codiciosamente), no el max. Es en política: evalúa la política que sigue, incluyendo su exploración — así aprende a evitar desastres que la exploración causaría.
Sin esto:
Sin la visión en política creerías que el camino óptimo-pero-arriesgado de Q-learning siempre es preferible. SARSA muestra que cuando explorar es peligroso (robots reales, finanzas) la política que considera sus propios errores puede ser la mejor para desplegar.
Q-learning y SARSA son gemelos que difieren en exactamente un término. El nombre SARSA deletrea la tupla que usa en cada actualización: State (estado), Action (acción), Reward (recompensa), next State (siguiente estado), next Action (siguiente acción) — (s, a, r, s', a'). Compara los objetivos:
- Q-learning (fuera de política):
r + γ·**max**_a' Q(s', a')— asume la acción óptima siguiente. - SARSA (en política):
r + γ·Q(s', **a'**)— usa la acción que el agente realmente elige a continuación.
Ese a' en SARSA lo elige la misma política ε-codiciosa que el agente sigue. Así SARSA evalúa y mejora la política que realmente ejecuta, exploración incluida. Eso significa en política: la política que se aprende es la que se usa para generar datos.
¿Por qué importa? Porque el objetivo de Q-learning es ciego a los propios errores exploratorios del agente. Aprende "el valor de actuar de forma óptima desde aquí", pero el agente no actúa de forma óptima — a veces explora y cae por un acantilado. SARSA siente esos desastres ocasionales (un paso exploratorio al acantilado aporta su −100 al valor de la acción siguiente) y por eso aprende una política con un margen de seguridad.
La demostración canónica es caminar por el acantilado (cliff-walking): un grid donde el camino más corto a la meta corre justo por el borde de un acantilado. Pisa el acantilado y obtienes −100 y reinicias. Abajo entrenamos ambos algoritmos en el mismo acantilado e imprimimos el camino codicioso que aprende cada uno. Q-learning toma el borde óptimo arriesgado; SARSA toma el rodeo más seguro lejos del acantilado. Mismo entorno, misma exploración — un símbolo de diferencia.
Python (in browser)
Mismo acantilado, misma exploración ε-codiciosa: Q-learning aprende el camino óptimo arriesgado por el borde; SARSA, que siente sus propias caídas exploratorias, aprende la ruta más segura una fila arriba.
Python runs entirely in your browser via Pyodide (~6 MB on first Run, cached after).
Laboratorio 3D: el acantilado que SARSA evita
Esto es Q-learning en el acantilado: va pegado al borde porque aprende el valor de la política codiciosa. SARSA aprende el valor de lo que realmente hace, así que camina por la ruta más segura, más lejos.
En la tarea del acantilado, ¿por qué SARSA aprende un camino más alejado del acantilado que Q-learning?
- SARSA es control TD en política: Q(s,a) ← Q(s,a) + α·[r + γ·Q(s',a') − Q(s,a)], usando la acción a' realmente tomada a continuación.
- En política significa que evalúa la política que sigue (exploración incluida); el Q-learning fuera de política evalúa la política codiciosa/óptima vía el max.
- Cuando explorar es peligroso, la política consciente de seguridad de SARSA puede ser preferible a la óptima-pero-arriesgada de Q-learning — la lección del acantilado.
El control en política sustenta expected-SARSA, SARSA de n pasos, y es el ancestro conceptual de los métodos de gradiente de política en política (A2C/PPO) del próximo capítulo.
Si lo quitas: Sin la distinción en política/fuera de política no puedes razonar sobre si un agente debe considerar el costo de su propia exploración al decidir cómo actuar.