DeepMind lanza un robot de ping-pong: comparable a jugadores de nivel intermedio, capaz de responder a todo tipo de jugadas

El tenis de mesa da la bienvenida a jugadores de inteligencia artificial.

¿Cómo hacer que los robots jueguen al tenis de mesa?

Actualmente, el tenis de mesa es uno de los grandes atractivos de los Juegos Olímpicos de París, donde los jugadores demuestran un alto nivel de condición física, capacidad de movimiento rápido, control preciso de diferentes tipos de bolas y una sensibilidad sobrehumana.

Por esta razón, desde la década de 1980, los investigadores han utilizado el tenis de mesa como punto de referencia para los robots, desarrollando numerosos robots de tenis de mesa y logrando avances en aspectos clave como devolver la pelota al campo contrario, golpear objetivos específicos, realizar remates, jugar en cooperación y muchos otros aspectos del tenis de mesa. Sin embargo, hasta ahora ningún robot ha jugado un partido completo de tenis de mesa contra un oponente humano desconocido.

En esta investigación, el equipo de Google DeepMind logró que un robot alcanzara un rendimiento de nivel amateur en partidos competitivos de tenis de mesa contra jugadores humanos, utilizando técnicas como una arquitectura de estrategia jerárquica y modular, definición iterativa de la distribución de tareas, capa de adaptación de simulación a simulación, aleatorización de dominio, adaptación en tiempo real a oponentes desconocidos e implementación de hardware.

1. Arquitectura de estrategia jerárquica y modular basada en una biblioteca de habilidades

Controladores de bajo nivel (LLC): Esta biblioteca contiene varias habilidades de tenis de mesa, como golpes de derecha, posicionamiento de revés, servicio de derecha, etc. Cada LLC es una estrategia independiente que se centra en el entrenamiento de una habilidad específica. Estos LLC se aprenden a través de redes neuronales y se entrenan en simulación utilizando el motor físico MuJoCo.

Controladores de alto nivel (HLC): El HLC es responsable de seleccionar el LLC más apropiado según la situación actual del juego y las habilidades del oponente. Consta de los siguientes módulos:

Estrategia de selección de estilo: Esta estrategia elige entre derecha o revés según el tipo de bola entrante (servicio o ataque).

Clasificador de rotación: Este clasificador determina si la bola entrante tiene efecto hacia arriba o hacia abajo.

Descriptores de habilidades LLC: Estos descriptores registran los indicadores de rendimiento de cada LLC en diferentes condiciones de bola entrante, como la tasa de aciertos y la ubicación de la bola.

Módulo de selección de estrategia: Este módulo genera una lista de candidatos LLC basada en los descriptores de habilidades LLC, las estadísticas del juego y las habilidades del oponente.

Preferencia LLC (H-value): Este módulo utiliza un algoritmo de bandido de gradiente para aprender en línea los valores de preferencia de cada LLC y selecciona el LLC final basado en estos valores.

2. Técnicas para lograr una transferencia de simulación a realidad sin ejemplos

Definición iterativa de la distribución de tareas: Este método recopila datos de estados iniciales de bola de partidos humano-humano y entrena LLC y HLC en un entorno simulado. Luego, los datos generados por el entrenamiento en simulación se agregan al conjunto de datos del mundo real, y este proceso se repite para refinar gradualmente la distribución de tareas de entrenamiento.

Capa de adaptación de simulación a simulación: Para resolver el problema de las diferencias en los parámetros del modelo de bola con efecto hacia arriba y hacia abajo en el entorno simulado, el artículo propone dos soluciones: regularización de rotación y capa de adaptación de simulación a simulación. La regularización de rotación se resuelve ajustando el conjunto de datos de entrenamiento de LLC, mientras que la capa de adaptación de simulación a simulación utiliza capas FiLM para aprender las relaciones de mapeo entre bolas con efecto hacia arriba y hacia abajo.

Aleatorización de dominio: Durante el entrenamiento, el artículo aleatoriza parámetros en el entorno simulado, como el ruido de observación, el retraso, la amortiguación de la mesa y la raqueta, la fricción, etc., para simular las incertidumbres del mundo real.

3. Adaptación en tiempo real a oponentes desconocidos

Seguimiento en tiempo real de las estadísticas del juego: El HLC realiza un seguimiento en tiempo real de las estadísticas del juego, como los puntos y errores del robot y del oponente, y ajusta los valores de preferencia de LLC en función de estos datos para adaptarse a los cambios del oponente.

Aprendizaje en línea de preferencias LLC: A través del algoritmo de bandido de gradiente, el HLC puede aprender en línea los valores de preferencia de cada LLC y seleccionar LLC más apropiados basados en las debilidades del oponente.

El equipo de investigación recopila una pequeña cantidad de datos de juego humano-humano para inicializar las condiciones de la tarea. Luego, utilizan aprendizaje por refuerzo (RL) para entrenar agentes en simulación y emplean varias técnicas para implementar las políticas en hardware real sin ejemplos. Este agente juega contra jugadores humanos para generar más condiciones de tarea de entrenamiento, y luego se repite el ciclo de entrenamiento-implementación. A medida que el robot mejora, los estándares del juego se vuelven más complejos, mientras se mantienen basados en condiciones de tarea del mundo real. Este ciclo híbrido de simulación-realidad crea un currículo de tareas automatizado que mejora las habilidades del robot con el tiempo.

¿Cómo juega?

Para evaluar el nivel de habilidad del agente, el robot jugó partidos competitivos contra 29 jugadores de tenis de mesa de diferentes niveles de habilidad: principiante, intermedio, avanzado y avanzado+, niveles determinados por entrenadores profesionales de tenis de mesa.

Contra todos los oponentes, el robot ganó el 45% de los partidos y el 46% de los juegos individuales. Desglosado por nivel de habilidad, se puede ver que el robot ganó todos los partidos contra principiantes, perdió todos los partidos contra jugadores avanzados y avanzados+, y ganó el 55% de los partidos contra jugadores intermedios. Esto sugiere fuertemente que el agente alcanzó el nivel de un jugador humano intermedio en los rallies.

A los participantes del estudio les gustó jugar contra el robot, calificándolo alto en "diversión" y "atractivo". Esta calificación fue consistente en todos los niveles de habilidad, independientemente de si los participantes ganaron o perdieron. También respondieron abrumadoramente que "definitivamente" jugarían contra el robot de nuevo. Cuando se les dio tiempo libre para jugar contra el robot, jugaron un promedio de 4 minutos y 6 segundos de un total de 5 minutos.

Los jugadores avanzados pudieron explotar las debilidades en la estrategia del robot, pero aún así disfrutaron jugando contra él. En entrevistas posteriores al juego, lo consideraron un compañero de práctica más dinámico que una máquina lanzadora de pelotas.

Limitaciones y perspectivas

El equipo de investigación señala que este sistema de aprendizaje robótico aún tiene algunas ### limitaciones, como la capacidad limitada para reaccionar a bolas rápidas y bajas, baja precisión en la detección de rotación, falta de estrategias y tácticas de múltiples bolas, etc.

Las direcciones futuras de investigación incluyen mejorar la capacidad del robot para manejar diversos tipos de bolas, aprender estrategias más complejas, mejorar las técnicas de captura de movimiento, etc.

El equipo de investigación también señala que la arquitectura de estrategia jerárquica y los métodos de transferencia de simulación a realidad sin ejemplos propuestos en este estudio pueden aplicarse a otras tareas de aprendizaje robótico. Además, las técnicas de adaptación en tiempo real pueden ayudar a los robots a adaptarse mejor a entornos y tareas en constante cambio. Asimismo, los principios de diseño del sistema son cruciales para desarrollar sistemas de aprendizaje robótico de alto rendimiento y robustos.