Una Inteligencia Artificial hace trampa en un mítico juego de Atari
Las Inteligencias Artificiales están hace rato aprendiendo a jugar videojuegos. Vimos a una aprender a manejar en Grand Theft Auto V. También vimos a otra jugar Super Mario 64. Y ahora, resulta que una IA descubrió un bug en el clásico de Atari Q*Bert.
Tres investigadores de la Universidad de Freiburg, en Alemania, investigaban un método para enseñar a una inteligencia artificial a navegar por los viejos juegos de Atari cuando descubrieron algo extraño. En su afán por conseguir la mayor puntuación posible, la IA había aprendido a aprovechar un fallo del Q*bert que le permitía acumular puntos infinitos. Según ha confirmado el diseñador del juego, nadie había dado con este error de programación desde su publicación en 1982.
En la segunda solución, la máquina descubre un bug; primero, completa el nivel y luego empieza a saltar de plataforma a plataforma en una manera que parece ser al azar. Pero por una razón desconocida para nosotros, el juego no avanza al siguiente nivel sino que las plataformas comienzan a parpadear y el personaje rápidamente obtiene una gran cantidad de puntos.
Normalmente, un jugador de Q*bert salta de cubo en cubo para cambiar el color de todas las plataformas y luego pasa al siguiente nivel. La IA descubrió que podía terminar el primer nivel con normalidad y después empezar a dar saltos aparentemente aleatorios entre los cubos para que todas las plataformas empezaran a parpadear. Con este extraño método llegó a acumular hasta un millón de puntos en el tiempo límite que le otorgaban los investigadores.
Es interesante que el sistema no es capaz de aprovechar el bug siempre y en 22 de 30 ocasiones consigue un puntaje mucho menor.
Since I designed and programmed the original arcade version, I can't really say much about any port. This certainly doesn't look right, but I don't think you'd see the same behavior in the arcade version.
— Warren Davis (@WarrenDavis29) February 28, 2018
El software desarrollado por los tres ingenieros utiliza una forma de IA conocida como “algoritmos evolutivos”, los cuales comparan algoritmos entre sí para ver cuál puede completar mejor una tarea determinada, y luego agregar pequeños retoques (o mutaciones) a los sobrevivientes para ver si les va mejor. De esta manera, los algoritmos lentamente mejoran cada vez más.
Los investigadores explican que el bug fue encontrado por el algoritmo luego de cinco horas de “entrenamiento”. También explican el método utilizado para que la IA reconozca los cuadros de video que aparecen en pantalla y concluyen que “las estrategias de evolución natural representan una alternativa viable a aproximaciones más comunes utilizadas para el aprendizaje de refuerzo”.
Los interesados en el tema deberían echarle un vistazo al borrador que incluye lenguaje muy técnico y donde además se detalla la metodología y otros conceptos sobre el trabajo.
Cabe destacar que esta IA no funciona con algoritmos de aprendizaje por refuerzo, como la máquina de Google que ganó al campeón de Go, sino con algoritmos evolutivos, una alternativa menos utilizada que compara métodos entre sí para ver cuál puede completar mejor una tarea determinada y luego añade pequeños retoques para ver si les va mejor, y así mejora lentamente.
Fuente: ARXIV.