El futuro ya ha comenzado: autodidacta AlphaZero aprende a jugar al ajedrez

por Albert Silver
07/12/2017 – Imagínense lo siguiente: explicamos las reglas del ajedrez a un sistema informático sin más. Después le damos la instrucción de que aprenda a jugar al ajedrez por si mismo. Un día más tarde (sí, correcto, únicamente 24 horas) nuestro compañero de silicio se lo sabe todo. Y encima es capaz de derrotar a los módulos de ajedrez más fuertes del mundo. DeepMind, la empresa que hace poco también creó el programa más fuerte del mundo de go ahora ha dirigido su atención al ajedrez y ha anunciado un resultado alucinante. El protagonista se llama AlphaZero. | Foto: captura de pantalla del vídeo de DeepMind

ChessBase 17 - Mega package - Edition 2024 ChessBase 17 - Mega package - Edition 2024

It is the program of choice for anyone who loves the game and wants to know more about it. Start your personal success story with ChessBase and enjoy the game even more.

Más...

DeepMind y AlphaZero

DeepMind, una empresa relacionada con Google, creó hace poco un programa muy fuerte de go. Ahora ha desarrollado una "bestia de ajedrez" con inteligencia artificial cuyo nombre es AlphaZero. En su momento, al programa de go le habían enseñado miles de partidas magistrales y así la máquina aprendió a jugar.

En el caso de AlphaZero, no le enseñaron ni una sola partida de ajedrez. Lo único que le explicaron fueron las reglas de juego, nada más. El resultado llegó como un choque. El programa de go, AlphaGo había aprendido a jugar en tres días. Ahora, AlphaZero aprendió a jugar al ajedrez en un solo día.

El desarollo relativo de AlphaZero : Fuente: DeepMind

El desarollo relativo de AlphaZero : Fuente: DeepMind

Ha habido varias máquinas que han obtenido resultados impresionantes en el mundo del ajedrez. Hace 20 años, por ejemplo, Deep Blue venció a Garry Kasparov. Hoy en día hasta los teléfonos inteligentes de cierta calidad son capaces de derrotar al mejor jugador de ajedrez del mundo. O sea que, ¿qué más queda por demostrar?

Garry Kasparov charlando con Demis Hassabis, fundador de DeepMind | Foto: Lennart Ootes

El profesor David Silver explicando como AlphaZero ha sido capaz de aprender a jugar mucho más rápido cuando se enseñó todas las cosas a si mismo. El factor más importante fue la eficacia del algoritmo principal.

Un nuevo paradigma

El 5 de diciembre 2017, el grupo DeepMind publicó un nuevo informe en la web de la Universidad de Cornell con el título "Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm", (el autoaprendizaje del ajedrez y del shogi con un algoritmo generalmente reinforzado de aprendizaje).

AlphaZero no solamente aprendió a jugar al ajedrez por su cuenta, sino que al día siguiente ya era capaz de derrotar a uno de los mejores módulos de ajedrez. AlphaZero venció a Stockfish (en su versión más potente) por 64:36. Es más: AlphaZero no perdió ni una sola partida (sumó 28 victorias y empató en 72 partidas).

Stockfish seguro que es un programa conocido entre los lectores de la web de ChessBase. Durante el duelo, corrió en un ordenador 900 veces más rápido que el que utilizaba AlphaZero. Este último calculaba unas 80.000 posiciones por segundo, mientras que Stockfish, funcionaba en un ordenador normal con 64 hilos (probablemente en una máquina con 32 núcleos) calculaba unos 70.000.000 posiciones por segundo. A pesar de esa desventaja tremenda, AlphaZero fue capaz de aplastar a Stockfish con ese marcador tan impresionante de 64:36.

¿Cómo es posible?

El informe "Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm" en la Universidad de Cornell

El informe explica:

“AlphaZero compensa la cantidad inferior de evaluaciones, sirviéndose de una red artificial de neuronas para calcular de manera mucho más selectiva que los módulos normales. Presta atención únicamente a aquellas variantes que parezcan ser las más prometedoras. Es decir, trabaja de una manera que se parece al enfoque humano, tal y como había sugerido originalmente Shannon.

El gráfico indica cuánto tiempo necesitaba cada programa para reflexionar los movimientos en relación con una valoración "relativa" de Elo. Resulta que Stockfish o Elmo necesitan unos 40 milisegundos por movimiento.  La valoración de AlphaZero resultó ser mucho más eficiente en comparación con el tiempo de reflexión que requerían Stockfish o Elmo. Eso pone en duda la teoría de que la búsqueda alfa-beta era inherentemente superior en este tipo de cálculos".

Este diagarama demuestra que cuanto más tiempo tenía que reflexionar AlphaZero, tanto más mejoraba su cálculo en comparación con el de Stockfish

En otras palabras: el cálculo selectivo (solamente calcular las variante razonables) es mucho más eficiente que el cálculo de fuerza bruta (cuantas más variantes, mejor).

¿Cómo juega AlphaZero?

Dado que AlphaZero no tenía la posibilidad de aprovecharse de conocimientos previos ni de experiencias ajedrecísticas algunas, hay que constatar que ha descubierto teoría de aperturas relevante por su propia cuenta. Y no nos olvidemos que ha obtenido ese brillante resultado tras tan solo 24 horas de aprendizaje.

El equipo de investigadores podía ver como AlphaZero iba descubriendo las aperturas y como a continuación las iba descartando de una en una si no le parecían útiles. 

El professor David Silver explica como AlphaZero aprendió las aperturas en el juego de go y como las iba descartando poco a poco y mejorando su juego gradualmente. Lo mismo ocurrió en ajedrez

En el diagrama de la parte superior podemos ver las partidas que jugó AlphaZero al comienzo del aprendizaje. En primer lugar le solía gustar bastante la defensa Francesa, pero dos horas más tarde (y qué humillante es eso), ya comenzó a jugarla cada vez menos porque ya no le convencía y había otras aperturas que le parecían más útiles.

La Caro-Kann aguantó durante más tiempo como variante favorita de AlphaZero. Poco a poco también decidó descartarla. Entonces le pasaron a gustar más la apertura Inglesa y el gambito de Dama.

El informe incluía también diez partidas para acompañar los resultados. Hay que reconocer que son partidas bastante diferentes a las partidas habituales jugadas por los módulos de ajedrez. Si Karpov hubiese sido un módulo de ajedrez, igual su nombre habría sido AlphaZero. AlphaZero Juega en plan boa constrictor y no tiene compasión.

Los módulos modernos suelen centrarse sobre todo en factores como la actividad. Tienen incorporados ciertos sistema de seguridad para evitar posiciones bloqueadas porque esas no las llegan a comprender muy bien en muchos casos.

No así AlphaZero. Este sí que juega sin miedo y sin prejuicio alguno. Parece que está espiando el juego del oponente para entonces torcerle el cuello justamente aprovechándose de los conocimientos obtenidos sobre la marcha. Es francamente impresionante como juega AlphaZero. Incluso es capaz de encontrar aquellos giros tácticos que los demás módulos no son capaces de ver.

 

Esta posición surgió en la quinta partida tras el movimiento 20...Rh8. El desorden de las piezas negras es alucinante y AlphaZero planteó la fantástica idea de 21.Ag5!! Tras haberlo analizado y lo que tiene como consecuencia, no cabe ningún lugar a duda de que aquel es el movimiento asesino. ¡Analizado con Houdini 6.02 en un ordenador portátil, calculando 9 millones de posiciones por segundo durante una hora no fuimos capaces de encontrar 21.Ag5!

Una captura de pantalla de Houdini 6.02 y lo que desplegaba tras una hora de análisis

Otra prueba del juego increíblemente astuto de AlphaZero (partida número 9 del duelo contra Stockfish):

 

Aquí AlphaZero jugó el increíble movimiento 30. Axg6!! La amenaza obviamente es 30...fxg6 31. Dxe6+ pero ¿cómo continuar tras lo que ocurrió en la partida 30...Axg5 31. Dxg5 fxg6?

 

Aquí AlphaZero continuó con 32. f5!! y tras 32...Tg8 33. Dh6 Df7 34. f6. AlphaZero lo convirtió en una victoria 20 movimientos más tarde.

Habrá que hacers con un diccionaro únicamente de sinónimos para "alucinante" e "impresionante" para poder escribir más sobre este tema.

10 partidas entre AlphaZero y Stockfish 8 (70.000.000 NPS)

Texto original en inglés Albert Silver (ChessBase)
Traducción al castellano y adaptación: Nadja Wittmann (ChessBase)

Enlaces


Editor y escritor de la página de ChessBase de noticias en inglés. Vive en Río de Janeiro (Brasil)

Comentar

Normas sobre los comentarios

 
 

¿Aún no eres usuario? Registro