Open Source Robotics

Una colección curada de proyectos, herramientas y software de robótica de código abierto de alta calidad.

Inverse Reinforcement Learning

  • También llamado: IRL, inverse RL
  • Categoría: Learning & autonomy › Learning from demonstration
  • Etiquetas: reward-learning, imitation-learning, reinforcement-learning, robot-learning, learning-from-demonstration

Aprender la función de recompensa que explica el comportamiento demostrado por un experto, para después entrenar una política que optimice esa recompensa con aprendizaje por refuerzo o planificación.

Definición

Aprendizaje por refuerzo inverso (IRL) (inverse reinforcement learning) invierte el problema habitual del aprendizaje por refuerzo. En lugar de recibir una recompensa y tener que encontrar una buena política, el aprendiz recibe demostraciones de un buen comportamiento y debe encontrar una función de recompensa bajo la cual ese comportamiento sea óptimo o cercano al óptimo. La recompensa aprendida se usa después para entrenar una política, a veces en situaciones nuevas o en un robot distinto, suponiendo que la recompensa capta la intención de la tarea mejor que las acciones demostradas. Andrew Ng y Stuart Russell dieron un tratamiento formal temprano del problema en 2000.

El problema está mal planteado: muchas funciones de recompensa explican el mismo comportamiento, incluida una recompensa que vale cero en todas partes. Los métodos resuelven esta ambigüedad de distintas formas. El aprendizaje de aprendiz (apprenticeship learning) iguala los recuentos esperados de características del aprendiz con los del experto. El IRL de máxima entropía, introducido por Brian Ziebart y colaboradores en 2008, modela al experto como alguien que elige trayectorias con probabilidad proporcional a la exponencial de su recompensa, lo que da una verosimilitud bien definida y tolera demostraciones imperfectas. Los métodos adversariales entrenan un discriminador para distinguir los datos del experto de los datos propios de la política y usan su salida como señal de entrenamiento; GAIL lo hace sin devolver una recompensa explícita, mientras que AIRL está diseñado para recuperar una.

El IRL clásico alterna entre actualizar la recompensa y resolver un problema completo de aprendizaje por refuerzo bajo ella, lo que es costoso. Por eso los sistemas robóticos prácticos usan a menudo esquemas de aprendizaje de recompensas más simples, como recompensas basadas en la similitud con fotogramas de demostración o clasificadores entrenados con ejemplos de éxito, conservando la idea central de derivar la señal de entrenamiento a partir de ejemplos. En teoría de control, el problema estrechamente relacionado de recuperar una función de coste a partir de trayectorias óptimas observadas se llama control óptimo inverso.

Por qué importa

Escribir a mano recompensas para tareas robóticas es lento y propenso a errores, y las políticas explotan cualquier diferencia entre la recompensa y el comportamiento pretendido. El IRL obtiene en cambio las recompensas de demostraciones, que pueden trasladarse a condiciones en las que copiar las acciones demostradas fallaría, y conecta el aprendizaje por imitación con el aprendizaje por refuerzo.

Aplicaciones clave

  • Aprendizaje de recompensas para tareas de manipulación a partir de demostraciones
  • Modelado del comportamiento de conductores y peatones para vehículos autónomos
  • Aprendizaje de mapas de coste de navegación a partir de trayectorias de expertos
  • Inferencia de preferencias humanas en la interacción humano-robot
  • Provisión de recompensas de entrenamiento para el aprendizaje por refuerzo en robots reales

En la práctica

Un equipo quiere que un brazo robótico limpie una mesa como lo hace una persona. Graba un conjunto de demostraciones teleoperadas y luego entrena un modelo de recompensa junto con la política: un discriminador aprende a puntuar las transiciones de estado según se parezcan o no a las del experto, y la política se entrena con aprendizaje por refuerzo en simulación para maximizar esa puntuación antes de ajustarla en el robot. Para evitar que la política explote fallos de la recompensa aprendida, regulariza el discriminador, añade un pequeño término escrito a mano para la finalización de la tarea y revisa a ojo las ejecuciones. Más adelante, cuando trasladan la tarea a una mesa de distinta altura, la recompensa aprendida se usa para puntuar las ejecuciones de la política adaptada.

Ideas erróneas comunes

  • El IRL es lo mismo que la clonación de comportamiento — la clonación de comportamiento copia las acciones directamente, mientras que el IRL recupera una recompensa y luego entrena una política para optimizarla
  • La recompensa recuperada es la recompensa verdadera — muchas recompensas explican las mismas demostraciones, y el IRL devuelve una que se ajusta a los datos según sus propios supuestos
  • El IRL necesita demostraciones perfectas — las primeras formulaciones suponían expertos óptimos, pero el de máxima entropía y los métodos posteriores toleran demostraciones ruidosas o subóptimas

Quién debería saberlo

  • Investigadores en aprendizaje de robots
  • Ingenieros de aprendizaje por refuerzo que diseñan funciones de recompensa
  • Equipos de modelado del comportamiento para conducción autónoma
  • Investigadores en interacción humano-robot

Tecnologías relacionadas

  • IRL de máxima entropía (Maximum Entropy IRL)
  • Generative Adversarial Imitation Learning (GAIL)
  • Adversarial Inverse Reinforcement Learning (AIRL)
  • Control óptimo inverso (Inverse Optimal Control)
  • Aprendizaje de aprendiz (Apprenticeship Learning)

Términos relacionados

  • Reinforcement Learning
  • Imitation Learning
  • Behavior Cloning
  • DAgger
  • Residual Reinforcement Learning

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

  • CS 285: Lecture 20, Inverse Reinforcement Learning, Part 1: RAIL
  • Inverse Reinforcement Learning Explained: Edan Meyer

Este sitio web requiere JavaScript. Por favor, habilite JavaScript para explorar nuestros proyectos de robótica.