Una iA rompe el Tetris de NES en el nivel 237
Daniel Marín

Todavía el ser humano no ha creado una inteligencia artificial lo suficientemente potente como para que controle nuestras mentes y nos haga esclavos. Lo que sí se han creado son máquinas capaces de ganar sobradamente a un humano a videojuegos clásicos de toda la vida. Hasta el punto de que hay un ingeniero de software que ha programado una IA que se ha pasado el Tetris.

¿Tiene el Tetris final?

Todo apuntaba a que no, ya que en los casi 40 años que han pasado desde que Alekséi Pázhitnov lo programó, nadie parece haberlo encontrado.

Pero claro, dile tú a una IA que el Tetris no tiene final. ¿Quién es un humano para fastidiarle su único propósito en esta vida? Lo normal es que reviente los botones de la consola para demostrar lo contrario. Pues algo así es lo que le ha pasado a StackRabbit, una inteligencia artificial creada por Greg Cannon, un programador de software.

Normalmente, las inteligencias artificiales que juegan a videojuegos se hacen únicamente por descubrir los límites de un videojuego. Ver cuánto más puede conseguir la máquina respecto al humano. Y en los juegos de dos jugadores como el ajedrez, lo habitual es enfrentar a dos IAs diferentes y disfrutar viendo cómo van creando sus estrategias, así como cometiendo sus propios errores.

StackRabbit, rompe el Tetris

El récord del mundo actual de Tetris (en sistema NTSC) lo tiene Joseph Saele, que el 28 de diciembre de 2019 alcanzó nada más y nada menos que 1.357.428 puntos. StackRabbit supera ese récord sin despeinarse un poco antes del minuto 7 de vídeo. Aún así, se estima que un humano podría hacer hasta 1,5 millones de puntos como máximo.

Sin embargo, cuando Alekséi Pázhitnov escribió sus líneas de código, no pensó en ningún final para el videojuego. No sabía ni siquiera que su juego iba a volverse tan popular. Lo que sí programó fue una creciente subida de la dificultad, que es el motivo por el que ningún humano ha superado la barrera de los 1,5 millones de puntos.

¿Qué pasa más allá de esta frontera? Pues que, si se supera el nivel 29, la pantalla volverá a mostrar «Level 00». Pero no, la dificultad no se verá reducida. Todo lo contrario. Las piezas comienzan a caer a una velocidad tan exagerada, que ningún humano sería capaz de reaccionar a tiempo.

En la esquina inferior derecha de la imagen se puede ver la previsualización de la memoria RAM durante la partida.

Lo que viene a continuación es divertido, ya que los números en pantalla comienzan a buggearse. El conteo pasará a ser hexadecimal, por lo que el nivel 105 pasará a ser el «Level BD». La línea 1000 se contabiliza como A01, y el recuento de puntos también empezará a descuadrarse utilizando letras. Poco después, el juego comenzará a glitchearse, ya que cada cierto cambio de nivel, las piezas del Tetris cambian de color. Al no existir una programación de dicho nivel como tal, el juego comienza a leer la información aleatoria de la memoria RAM e interpretarla a su estilo. El propio programador de StackRabbit muestra en el vídeo una representación visual de la RAM para que veamos de dónde está interpretando el juego los datos.

Finalmente, cuando la IA alcanza aproximadamente los 101 millones de puntos, las cosas se ponen feas. La pieza larga prácticamente desaparece del juego, tirando por tierra totalmente la estrategia de StackRabbit. La IA se recompone, sale del paso, y en cuanto sale la pieza larga, el juego se congela. Gracias a esto, podemos hacernos una idea de que el final de Tetris está aproximadamente en el nivel 237, tras 3.112 líneas y más de 102 millones de puntos.

¡Sé el primero en comentar!