Soft Actor-Critic
- También llamado: SAC
- Categoría: Learning & autonomy › RL & simulation
- Etiquetas: reinforcement-learning, off-policy, actor-critic, maximum-entropy, robot-learning, continuous-control
Un algoritmo de aprendizaje por refuerzo off-policy que entrena una política estocástica para maximizar tanto la recompensa como la entropía de las acciones, reutilizando la experiencia pasada de un búfer de repetición para ser eficiente en muestras.
Definición
Soft Actor-Critic (SAC) es un algoritmo de aprendizaje por refuerzo off-policy y actor-crítico para espacios de acción continuos, presentado por Tuomas Haarnoja y sus colaboradores en 2018. Se basa en el marco de máxima entropía: en lugar de maximizar solo la recompensa esperada, la política maximiza la recompensa más una bonificación por la entropía, o aleatoriedad, de sus acciones. Un parámetro de temperatura fija el equilibrio entre ambas. El término de entropía fomenta una exploración amplia y evita que la política colapse prematuramente en un único comportamiento.
SAC aprende una política estocástica (el actor), normalmente una gaussiana cuyas muestras se comprimen con una función tanh para respetar los límites de las acciones, y dos críticos de función Q. Tomar el mínimo de los dos críticos al calcular los objetivos de aprendizaje reduce el sesgo de sobreestimación habitual en Q-learning, una técnica que comparte con el algoritmo TD3, y las redes objetivo que se actualizan lentamente estabilizan el aprendizaje. Una versión posterior de SAC ajusta la temperatura automáticamente para mantener la entropía de la política cerca de un objetivo elegido, lo que elimina uno de los hiperparámetros más sensibles.
Como SAC es off-policy, cada transición que experimenta el robot se almacena en un búfer de repetición y se reutiliza en muchas actualizaciones de gradiente. Esto lo hace bastante más eficiente en muestras que los métodos on-policy como PPO, que descartan los datos después de cada actualización. Esa propiedad hizo de SAC una opción habitual para aprender directamente en robots físicos, donde cada minuto de interacción cuesta tiempo y desgaste, y para tareas en las que la simulación es lenta o no está disponible.
Los compromisos están en el cómputo y el escalado. SAC realiza muchas actualizaciones de la red por cada paso del entorno y, históricamente, se ha beneficiado menos que PPO de la simulación masivamente paralela en GPU, donde los datos nuevos son baratos. El entrenamiento también puede volverse inestable en espacios de acción de alta dimensión o con redes grandes, y la investigación en curso estudia cómo escalar métodos off-policy como SAC a muchos entornos paralelos y a robots con muchas articulaciones.
Por qué importa
SAC hizo práctico el aprendizaje por refuerzo profundo en contextos donde los datos son caros, incluido el aprendizaje directamente en hardware robótico real. Sigue siendo una de las referencias estándar para el control continuo, y su formulación regularizada por entropía influye en muchos métodos posteriores off-policy y basados en modelos.
Aplicaciones clave
- Aprendizaje en hardware real — entrenar habilidades de manipulación y locomoción con un tiempo de robot limitado
- Benchmarks de control continuo — una referencia estándar para tareas robóticas simuladas
- Manipulación — aprender políticas de agarre, empuje e inserción con recompensas dispersas o diseñadas
- Ajuste fino de políticas preentrenadas — mejorar políticas obtenidas por clonación del comportamiento con aprendizaje por refuerzo en línea
- Control de vehículos y drones — aprender comandos continuos de dirección y empuje
En la práctica
Un equipo que usa SAC suele envolver el robot o el simulador en una interfaz de entorno estándar, elegir una implementación de biblioteca como Stable-Baselines3 y fijar el tamaño del búfer de repetición, el tamaño de lote, las tasas de aprendizaje y la proporción entre actualizaciones de gradiente y pasos del entorno. Cuando aprende en hardware, añade límites de seguridad a las acciones, reinicios automáticos y señales de recompensa que puedan medirse con los sensores a bordo, y a menudo inicializa el búfer de repetición con demostraciones o datos de ejecuciones anteriores. Los ingenieros vigilan la pérdida del crítico, el valor de la temperatura y la entropía de la política; una temperatura que cae casi a cero o unas estimaciones del crítico que crecen sin límite son señales habituales de que el entrenamiento necesita ajustes.
Ideas erróneas comunes
- SAC siempre es mejor que PPO — SAC es más eficiente en muestras, pero PPO a menudo entrena más rápido en tiempo transcurrido cuando miles de entornos simulados se ejecutan en paralelo
- La bonificación de entropía hace que la política final sea aleatoria — en el despliegue se suele usar la acción media, y el ajuste automático de la temperatura reduce la entropía a medida que avanza el aprendizaje
- SAC maneja acciones discretas sin cambios — el algoritmo estándar está pensado para acciones continuas; las variantes discretas requieren modificaciones
- Off-policy significa que sirve cualquier dato antiguo — los datos muy alejados del comportamiento de la política actual pueden seguir causando estimaciones de valor inestables, sobre todo en entornos totalmente offline
Quién debería saberlo
- Investigadores en aprendizaje de robots que entrenan en hardware físico
- Profesionales del aprendizaje por refuerzo que trabajan en control continuo
- Ingenieros de manipulación que usan ajuste fino en línea
- Estudiantes que aprenden métodos actor-crítico
Tecnologías relacionadas
- Proximal Policy Optimization
- TD3
- Deep Deterministic Policy Gradient (DDPG)
- Búfer de repetición (Replay Buffer)
- Aprendizaje por refuerzo de máxima entropía (Maximum Entropy Reinforcement Learning)
- Stable-Baselines3
Términos relacionados
Proyectos relacionados
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- MuJoCo: DeepMind physics engine for robotics and ML research
- PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- Microduck: Pollen Robotics' $399 walking duck robot: open-source software, closed hardware
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
Vídeos
- L5 DDPG and SAC (Foundations of Deep RL Series): Pieter Abbeel