Un equipo de ingenieros de Google Deepmind, los creadores de AlphaGo, ha publicado un desafío dirigido a la comunidad de desarrolladores de IA. El objetivo es obtener una Inteligencia Artificial que sea capaz de alcanzar las mayores puntuaciones en un juego de cartas llamado Hanabi.

Los juegos de mesa siempre han sido uno de los mayores campos de estudio en el área de Inteligencia Artificial, ya que suelen requerir de capacidades muy asociadas a la inteligencia humana, como resolución de problemas, planificación o pensamiento creativo, pero con la ventaja de ser escenarios controlados con un conjunto de reglas definidas.

En los últimos años hemos visto grandes avances en este campo, con programas capaces de derrotar a los mejores jugadores humanos en algunos de los juegos considerados como de mayor complejidad.

El primero fue DeepBlue, de IBM, venciendo al Gran Maestro de ajedrez Gary Kaspárov. Otros ejemplos son DeepStack y Libratus en el mundo del póker, Watson en el concurso de televisión Jeopardy o más recientemente AlphaGo, de Deepmind, contra los grandes maestros del Go.

La pregunta entonces es, habiendo desarrollado una IA capaz de ganar al campeón mundial de un juego tan complejo como es el Go, ¿por qué desarrollar ahora un sistema para jugar a este pequeño juego de cartas?

Pero, ¿qué es Hanabi?

Hanabi es un pequeño juego de cartas publicado en 2010. A diferencia de los juegos clásicos, es un juego cooperativo, lo que significa que todos los jugadores colaboran para llegar a un objetivo común. En un juego cooperativo o todos los jugadores ganan o todos pierden.

En Hanabi, los jugadores intentan crear “el espectáculo de fuegos artificiales más espectacular posible”. Esto se traduce en que intentan jugar cartas de varios colores numeradas del 1 al 5 en orden y en su color correspondiente.

La gracia del juego está en que se juega con las cartas de la mano puestas al revés, de tal forma que cada jugador desconoce las cartas que tiene en su mano y no ve la carta que va a jugar.

Cada turno consiste en hacer una de estas tres acciones: descartar una carta para obtener una ficha de pista, gastar una de esas fichas para dar una pista o intentar jugar una carta.

Las pistas están muy limitadas y consisten en decirle a un jugador qué cartas tiene de un cierto color o de un cierto número. Ejemplos de pistas pueden ser “Estas dos cartas son de valor 3” o “estas tres cartas son blancas” o “no tienes ningún 4 en la mano”.

Cuando se intenta jugar una carta, si esa jugada no es válida porque no es una carta correlativa con las que hay en la mesa, se marca como un fallo. Si se marcan 3 fallos la partida acaba en derrota. Si esto no ocurre, el juego termina cuando se roba la última carta del mazo y entonces se calcula la puntuación.

La puntuación es la suma de la carta jugada correctamente más alta de cada color. Por tanto, la puntuación máxima es de 25 puntos.

¿Por qué Hanabi?

Las grandes compañías de la Inteligencia Artificial ya han conseguido desarrollar sistemas que son capaces de ganar a los mejores humanos en juegos mucho más complicados. Entonces, ¿por qué dedicar tiempo y esfuerzo a un relativamente desconocido juego de cartas?

Principalmente porque Hanabi plantea retos distintos a otros juegos. El ajedrez, el Go y otros muchos son “Zero Sum games”, que significa que solamente hay un ganador y que los demás pierden.

Además, la mayoría de ellos son de dos jugadores. Hanabi requiere de colaboración y comunicación, que son retos distintos a los que planteaban esos otros juegos, y por tanto, capacidades que no tienen los agentes desarrollados hasta ahora.

Para hacer las cosas más interesantes y ahondar en esos dos aspectos, el desafío planteado tiene como objetivo último que el agente sea capaz de jugar con humanos.

Hanabi es un juego que se basa en la comunicación como mecanismo principal de juego. Esto es un reto enorme para una inteligencia Artificial, pero la ventaja que puede tener Hanabi con respecto a otros entornos es que la comunicación está perfectamente reglada y limitada.

La información que se puede transmitir es finita y se puede comunicar solamente en ciertos momentos. Además, la comunicación paralingüística está excluida, es decir, no se admiten gestos, entonaciones, posturas, etc.

De cualquier modo, la necesidad de comunicarse hace que el agente tenga que ser capaz de establecer un protocolo de comunicación efectivo con los demás jugadores. Para ello, debe tener alguna forma de establecer una serie de reglas de comunicación dentro del grupo de jugadores.

Teniendo en cuenta que también puede jugar con humanos, el agente tiene que ser capaz de establecer un protocolo de comunicación durante la partida. El problema añadido es que, a diferencia de los agentes de programación, los humanos tienden a adoptar estas convenciones de manera orgánica, evolucionándolas a lo largo de una o varias partidas, en vez de establecer una serie de reglas fijas y respetarlas perfectamente.

De todas formas, aunque el agente sea capaz de establecer un protocolo de comunicación efectivo, lo que hace que este juego sea realmente interesante es que la información transmitida no se limita solamente a la pista en sí, sino que también influye mucho cuándo se ha dado, dependiendo enormemente la intención de cada pista del contexto de la partida.

Por poner un ejemplo, si al principio de la partida alguien me señala que tengo un 4, que es una carta que no puedo jugar, esto puede significar que es una carta que puedo descartar sin miedo y las otras no. Si esa pista se da cuando hay un 3 verde en la mesa, probablemente signifique que el 4 es un 4 verde y que lo debo jugar.

Por tanto, la Inteligencia Artificial tiene que ser capaz de inferir el propósito de las acciones de los demás jugadores. Aquí es donde entra en juego el área de estudio que en ciencias cognitivas se conoce como Teoría de la Mente. Esto se puede resumir en pocas palabras como intentar adivinar lo que el otro está pensando y qué intención tienen sus acciones.

Para añadirle aún más dificultad, en el desarrollo de esta Inteligencia Artificial no se puede hacer una asunción muy común a la resolución de juegos, la conocida como Equilibrio de Nash, según la cual la IA supone que todos los jugadores adoptan la mejor estrategia posible.

Así que, este agente tiene que ser capaz de deducir el propósito último de cada acción, buscando inferir lo que el otro jugador tenía en mente, teniendo en cuenta que puede que el otro jugador no haya elegido la jugada óptima y que el protocolo de comunicación puede ser imperfecto.

Cabe preguntarse si el problema de la Teoría de la Mente no se resolvió ya en aquellos agentes que jugaban al póker. La respuesta es no, porque al asumir el equilibrio de Nash, se da por hecho que los jugadores siempre escogen la mejor estrategia y en póker esto consiste en transmitir la menor cantidad de información posible en cada jugada.

Por tanto, los agentes de IA se programaron presuponiendo que los oponentes no transmiten ninguna información adicional. Esto es, nunca intentaban leer las intenciones del oponente.

El equipo de Deepmind, que ha propuesto el reto, ya se ha enfrentado al problema y se ha dado cuenta de que el uso de las últimas técnicas de Deep Learning presentes en las Inteligencias Artificiales más avanzadas del momento como AlphaGo, no son capaces de resolver bien este juego.

Este tipo de técnicas tienen peor rendimiento que un programa más simple desarrollado con un conjunto de comportamientos predefinidos en el código. Esto es lo que le ha llamado la atención a este equipo y lo que les ha llevado a lanzar este desafío.

Queda claro que queda mucho camino por andar hasta llegar a la mitológica Inteligencia Artificial general, pero puede que este sea otro pequeño paso en esa dirección. Para todo el que se anime a participar o simplemente tenga curiosidad, el artículo del reto está aquí y también han publicado un entorno de pruebas en Github.

Fuentes

  1. The Hanabi Challenge: a new frontier for AI Research
  2. The Hanabi Challenge
  3. GitHub - Hanabi learning environment

Cuéntanos qué te parece.

Enviar.

Los comentarios serán moderados. Serán visibles si aportan un argumento constructivo. Si no estás de acuerdo con algún punto, por favor, muestra tus opiniones de manera educada.