Entrenar una IA para batir a todos los humanos en las carreras de coches de los videojuegos
Uno de los más legendarios y competitivos juegos de carreras más creativos es Trackmania, de Ubisoft Nadeo. Es un videojuego de acción en el que se premia la precisión, en el que hay emocionantes eliminatorias por tiempos y competiciones online contra cientos de otros jugadores. Es curiosamente un entorno en el que los jugadores humanos son capaces de vencer a muchos bots que tal vez conduzcan bien, pero no con tanta precisión ni seguridad como los humanos.
Un YouTuber llamado Yosh, que lleva más de 17 años jugando a Trackmania decidió comprobar si era posible utilizar una red neuronal y el aprendizaje por refuerzo que se emplea en las IAs actuales para entrenar al «coche perfecto de Trackmania». Su teoría era la filosofía de que «cuanto más se entrena, mejor se vuelve» y aunque para una IA el proceso también es lento y delicado, tras tres años de duro esfuerzo parece que lo consiguió.
Entrenar una IA paso a paso
Todo el proceso de concepción, entrenamiento y programación y también los «ensayos y errores» pueden verse en un vídeo que Yosh fue grabando a lo largo de nada más y nada menos que tres años. Es un ejercicio sumamente didáctico para aprender cómo funciona esta última tecnología como si se tratara de un juego.
Lo que puede verse es básicamente:
- Cada coche está controlado por una red neuronal mediante aprendizaje por refuerzo.
- La red neuronal recibe diversa información de estado (distancias, velocidad, etcétera) cada 0,1 segundos.
- Como respuesta, se pueden realizar acciones: girar el volante, frenar, acelerar.
Lo interesante con las redes neuronales es que se pueden crear miles de copias y ver cuál aprende mejor, que es lo interesante del proceso, tal y como se ve en el vídeo en el que circulan «coches fantasma». En el duro camino del aprendizaje la red neuronal comienza con una tendencia muy insistente por chocarse contra los bordes del circuito, pero va haciendo pequeñas variaciones en las acciones al azar. Lo que funciona, «sobrevive», lo que no funciona, se descarta.
El refinamiento de la IA
Pero todo esto sucede en un circuito bastante sencillo, con bordes en los que los coches rebotan y donde no hay demasiada competitividad. Entonces comienza otra fase interesante: complicar el circuito en una especie de «laberinto elevado» donde salirse un poco de la pista significa caer y perder el juego.
Con toda la información a su alcance, incluyendo el contacto de las ruedas y los derrapes, la IA es capaz de apurar en las curvas, rascando segundos al cronómetro poco a poco, mientras mantiene la máxima velocidad posible. Aquí la IA también acaba superando al piloto humano al cabo de unas pocas horas de entrenamiento; ya no se necesitan semanas o meses como al principio.
Con el tiempo, estas redes neuronales son capaces de adaptarse no solo a los entornos de prueba sino también a situaciones para las que no se ha entrenado inicialmente. Es algo tan palpable en el mundo real como en el universo de las carreras de videojuegos de Trackmania, donde hay cientos de circuitos de aspecto completamente diferente y donde los escenarios y reglas pueden cambiar, pero que ahora las IA también pueden tener bajo control.