Google es una máquina jugando a 'Starcraft II'
AlphaGo era un algoritmo y consiguió ganar en marzo al cinco veces campeón mundial de Go, Lee Se-dol. Lo hizo en 24 horas. Antes, en 2015, un software llamado Agent “se pasaba” de un plumazo 49 juegos clásicos de Atari aplicando machine learning. El primero seleccionaba la mejor de entre todas las jugadas posibles y la mejor de entre todas las jugadas ganadoras, aplicando la conjunción de ambas. El segundo utilizaba fuerza bruta: calculaba todas las jugadas posibles de todos los escenarios posibles y se quedaba con el mejor movimiento. Ambos los desarrolló DeepMind, la rama de Google dedicada a la Inteligencia Artificial que el buscador compró en enero de 2014 por 400 millones de dólares.
¿La rebelión de las máquinas era esto? No exactamente, pero DeepMind, después de meter la nariz en los hospitales de la NHS británica (sabe los datos clínicos de casi dos millones de pacientes), prepara su nuevo proyecto: el jugador perfecto de StarCraft II. Y como en los casos anteriores, tampoco se trata de ningún ser humano. Para ello ha contado con la ayuda inestimable de los desarrolladores del popular videojuego: Blizzard.
StarCraft es un juego de estrategia en tiempo real que tuvo su boom a principios de los 2000. De ambientación futurista, el jugador podía manejar tres razas con habilidades diferentes (Terran, Zerg o Protoss) para extraer los recursos disponibles en cada escenario. El gas y los minerales eran necesarios para construir edificios y crear unidades, por lo que ganaba el jugador que derrotase al resto de rivales de la partida. Para eso era imprescindible uno, tener mejor ejército y dos, ser mejor que los otros. Todo esto si hablamos del modo online.
En 2010 se lanzó StarCraft II, que vino a continuar la historia del primero y a mejorar los gráficos. Hoy, el juego desarrollado por Blizzard es un fijo en cualquier competición de eSports que se precie; no solo porque su trayectoria, historia y modos de juego enganchan, sino porque su dificultad y la estrategia a seguir en cada partida varía, y con ello las claves para ganar. Pero sobre todas las cosas está la habilidad del jugador, que se traduce en las decisiones que ha de tomar durante el juego y el número de acciones (clicks con el ratón) que es capaz de realizar. Este concepto se llama APM (actions per minute) y los que son muy buenos rondan las 250-300 apm.
¿Qué quiere DeepMind?
Google anunció el proyecto en la BlizzCon de California el viernes. En el blog de DeepMind, el investigador Oriol Vinyals explica cuáles son los propósitos y las intenciones que tienen de cara al popular juego de ordenador. No es casual: el de Sabadell fue el número uno de nuestro país en StarCraft con 15 años. “StarCraft es un entorno de prueba muy interesante para las actuales investigaciones sobre Inteligencia Artificial porque proporciona un puente muy útil a los desórdenes del mundo real”, dice la compañía a través del español.
En este punto es necesario añadir que, durante la partida, cada jugador empieza en una esquina diferente del mapa y no pueden ver lo que hace el otro, así que es necesario enviar unidades para explorar el terreno. “Un agente que pueda jugar a StarCraft necesitará demostrar un uso efectivo de la memoria, una habilidad para planear en el tiempo y la capacidad de adaptarse a esos planes en base a nueva información”, continúan desde DeepMind. Por eso, la que un día fue una startup británica, hoy integrada en el tejido de Alphabet, ha desarrollado una API en colaboración con Blizzard que abrirá a investigadores el año que viene. No estará lista hasta el primer cuarto de 2017, pero gracias a ella los desarrolladores podrán exprimir el juego y algún día crear el bot definitivo de StarCraft II, como ya hicieron con AlphaGo.
De momento, la API de DeepMind dividirá el minimapa en capas, más fáciles de interpretar para los sistemas de machine learning. Además, Blizzard proporcionará una gran base de datos en forma de repeticiones de partidas de jugadores de carne y hueso para que los bots tengan por donde empezar. La meta final es que ese bot definitivo de StarCraft II pueda jugar de la misma forma que un humano lo haría: a partir de lo que ve en la pantalla.
A pesar de todo, tanto Blizzard como DeepMind aún se muestran prudentes y ven bastante lejano el momento en el que una IA derrote a uno de los mejores jugadores de StarCraft del mundo. Sin embargo, en marzo, previo al enfrentamiento entre AlphaGo y Se-dol, muchos expertos pensaron que aún faltaba una década para que una máquina ganase a un humano al Go. Y ya sabemos lo que pasó.
Al final será una cuestión de APMs: las del bot serán un buen número de veces mayores que las del mejor jugador del mundo y la IA tomará mejores decisiones y ejecutará más rápido las acciones. Será mejor técnica, operativa y llanamente hablando. Solo falta saber cuándo se hará realidad.