IA aprende más rápido un videojuego con niveles graduales de dificultad
Así lo determinó una investigación reciente que muestra cómo el aprendizaje por currículos, o métodos, puede reducir el tiempo de aprendizaje de un agente inteligente –que en esencia es un algoritmo de IA diseñado para ejecutar una tarea específica– en un videojuego.
En el estudio, realizado por Rigoberto Sáenz Imbacuán, magíster en Ingeniería de Sistemas y Computación de la Universidad Nacional de Colombia (UNAL), con la dirección del profesor Jorge Eliécer Camargo Mendoza, doctor en la misma área, se plantea cómo un agente inteligente potencialmente puede aprender más rápido a jugar un videojuego si se usan currículos de aprendizaje durante su entrenamiento. Estos currículos son un conjunto de parámetros que determinan como varía la dificultad del juego en el tiempo.
En los experimentos entrenaron al agente para que aprendiera un videojuego de minifútbol de dos jugadores usando un currículo en particular, durante 100 millones de partidos que fueron simulados usando el motor de videojuegos Unity.
En los currículos de mejor desempeño, el agente aprendió de manera óptima solo con 60 o 70 millones de partidos. En cada uno, el agente inteligente, representado como un cubo azul en el videojuego, competía con un adversario rojo; el campo de fútbol tenía barreras que evitaban que la pelota saliera del campo y facilitaba el entrenamiento.
El agente podía ver su entorno mediante rayos de detección lanzados continuamente en diferentes direcciones y que detectan todos los elementos presentes en el campo, incluyendo los adversarios, el balón, las barreras y los arcos.
El investigador diseñó 24 currículos variando en cada uno parámetros del partido a distintas velocidades, con el fin de determinar cuáles tenían mejor efecto en los tiempos de entrenamiento.
Cada currículo se puede interpretar como distintas formas de darle una ventaja al jugador. “Al inicio de un partido, para guiar el proceso de aprendizaje del jugador, puedo reducir la velocidad de movimiento de los adversarios dándole una ventaja significativa y permitiéndole aprender rápidamente a perseguir la pelota y empujarla al arco contrario. Cuando aprende a marcar goles aumento la velocidad de los adversarios, con el fin de que este aprenda a esquivarlos y siga anotando goles”, detalla el magíster Sáenz.
La inteligencia artificial es cada vez más usada en diferentes ámbitos, incluyendo sistemas robóticos que operan plantas de producción, detección de fraude en operaciones bancarias, y análisis y segmentación de compradores a partir de información de sus compras pasadas.
Usualmente, para que un jugador controlado por IA aprenda a jugar un videojuego, por ejemplo de baloncesto, se ponen todos los adversarios en el campo de juego desde el inicio y se le indica: “muévase, actúe”, y según sus acciones se le da una recompensa o un castigo.
Si hace una cesta se le recompensa, si los adversarios la hacen se le castiga. En este escenario es muy difícil que el jugador aprenda de manera rápida y efectiva, ya que desde el inicio existe una clara desventaja y recibirá muchas cestas en contra. Eventualmente aprenderá a evitar que le hagan puntos, y luego aprenderá a hacerlos, pero será necesario que juegue cientos y miles de millones de partidos para aprenderlo.
“La hipótesis de nuestro trabajo es que este proceso de dificultad incremental es más efectivo, en términos de la velocidad de aprendizaje”, asegura el investigador.
Los currículos que tuvieron el mejor desempeño exhibieron características comunes y redujeron el tiempo de entrenamiento desde un 15 hasta un 40 % en el mejor de los casos.
Si se tiene en cuenta que el tiempo de entrenamiento de un agente inteligente usualmente toma varias semanas, o incluso meses, la reducción resulta significativa.
Este tipo de entrenamientos se suelen ejecutar en servicios de computación en la nube que pueden resultar costosos, por lo que una reducción de tiempos de entrenamiento también se traduce en una disminución de costos.
Si bien la aplicación principal de los resultados de esta investigación es el desarrollo de NPC (Non-player character), que son los jugadores autónomos contra los que un jugador humano debe competir dentro de un videojuego, los resultados también se podrían aplicar a otros ámbitos como la robótica, la ciberseguridad y la conducción autónoma.