Inteligencia Artificial aplicada: Stockfish vs AlphaZero

¿Stockfish?

En este caso, cuando hablamos de Stockfish nos referimos a un sistema open source de simulación de ajedrez. Por tal de ejecutarlo necesitaremos una interfaz gráfica –GUI, ARENA, CHESSBASE–, ya que Stockfish es meramente código, el motor basado en redes neuronales, que consigue calcular los diferentes movimientos del juego. Es gratis, y distribuido bajo GNU General Public License Version 3 (GPLv3).

Fué desarrollado por Tord Romstad, Joona Kiiski, Marco Costalba y Gary Linscott, junto con una gran comunidad de desarrolladores de código abierto –Glaurung– en el año 2008. Podemos encontrar Stockfish en prácticamente cualquier plataforma actual; Windows, Linux, macOS, Android, iOS, etc. Este motor de análisis enfocado al ajedrez tiene mucho más nivel que cualquier jugador profesional humano.

En la propia configuración podremos determinar manualmente las tablas hash, que básicamente son archivos temporales que crea el sistema con evaluaciones previas de posiciones, y que se utilizan para una mayor fluidez a la hora de decidir óptimamente. Si el movimiento a realizar ha sido previamente evaluado y almacenado, el motor extraerá la información de las tablas hash. Otros aspectos que podremos manipular son:

  • Registros de depuración (Write Debug Log)
  • Nivel de optimismo, que determinará si el motor será más o menos arriesgado en el momento de jugar. (Contempt)
  • División de las subtareas. (Min Split Depth)
  • Hilos en el análisis (Threads)
  • Memoria a utilizar para el hash. (Hash)
  • Modificar el tiempo entre jugadas, sobretodo a través de Internet, en caso de detectar derrotas por tiempo. (Move Overhead)
  • Nivel al que jugará Stockfish. (Skill Level)
  • Tiempo que tardará en pensar la jugada, y por tanto en realizar el movimiento. (Slow Mover)
  • Profundidad a la cual el motor buscará en las tablas hash el movimiento. (SyzygyProbeDepth)
  • Etc

La fortaleza de este tipo de programa reside precisamente en su capacidad de aprendizaje, ya que gracias a las tablas con información que analiza, consigue lograr encontrar el mejor movimiento basándose en la experiencia tanto de la propia máquina, como del oponente. Por tanto, estamos ante un ejemplo de inteligencia artificial

Y… ¡llegó AlphaZero!

Por otro lado nos encontramos con AlphaZero, un sistema informático desarrollado por DeepMind, basado con las premisas de la inteligencia artificial y enfocado al ajedrez, aprendiendo por sí solo gracias a su algoritmo. Es la herencia de otros proyectos como son AlphaGo o AlphaGo Zero, también creados por DeepMind y destinados a juegos como el go. AlphaZero, al contrario que Stockfish, no es gratis ni se distribuye. DeepMind no permite el acceso al público, no existe una versión comercial ni de prueba que pueda servir para investigar e indagar.

Según los medios, en un plazo de 4 horas en las cuales AlphaZero se dedicaba a entrenar y aprender, ya superó a Stockfish, el sistema de código abierto. A pesar de esto, ésta inteligencia artificial ha dedicado mucho más tiempo a intentar mejorar, ya que, gracias a los nuevos avances computacionales, su alcance en cuanto a aprendizaje es mucho mayor que los de sus competidores. Y no sólo eso, activamente DeepMind ha invertido esfuerzos en mejorar su software, por lo que el sistema no hará más que mejorar con el paso del tiempo.

Desde el punto de vista científico, muchos tildan a AlphaZero como el “descubrimiento de nuestra era”, esperando que nos permita entender algunos de los misterios de nuestro universo y ayudarnos en problemas como el cambio climático, atención médica, etc. 

El razonamiento y aprendizaje de AlphaZero se da mediante una red neuronal, representada de esta forma;

Esta red no es más que el intento de simular informáticamente el cerebro humano, y cómo se comportaría. AlphaZero recibe un input del estado del tablero actual, y a través de diferentes estadios de procesamiento, acaba dando un resultado final. En un primer estadio, el sistema únicamente conoce las reglas básicas del juego, y es a través de diferentes partidas cuando se nutre, crece y mejora su juego

Gracias al hecho de poder jugar contra si mismo, sucede un readiestramiento por parte del propio AlphaZero, se almacenan las jugadas en forma de información para posteriormente analizarlas como posibles movimientos. El sistema realiza predicciones y elige sus jugadas almacenadas que han tenido mayor probabilidad de victoria; AlphaZero sopesa las diferentes variantes para deducir las mejores jugadas. Este proceso es básicamente el algoritmo heurístico que utiliza la inteligencia artificial para analizar los movimientos más prometedores, un aprendizaje por refuerzo partiendo de cero con el que se puede alcanzar un rendimiento superior al humano. 

Pero, ¿quién es DeepMind?

Según el propio DeepMind, se definen como un equipo de científicos, ingenieros, expertos en machine learning, etc.. los cuales trabajan conjuntamente en el campo de la inteligencia artificial. DeepMind fue fundada en 2010 por Demis Hassabis, un momento en el que tanto el uso como el estudio de la inteligencia artificial no era tan trendy como actualmente lo es en 2020. 

En 2014 DeepMind se unió a Google, hecho que les supuso poder avanzar más en sus investigaciones. Actualmente trabajan en muchos otros proyectos relacionados, por ejemplo, con la neurociencia, machine learning, robótica, computer vision, etc. 

Stockfish vs AlphaZero

Durante los últimos años, AlphaZero y Stockfish han sido enfrentados por tal de conocer el sistema con más potencial. En todas las ocasiones que se han puesto a prueba, ya sea al mejor de 100 partidas, o al mejor de 1000, AlphaZero ha mostrado ser infinitamente superior a Stockfish. No solo ha sido mucho superior, sino que también ha mostrado cómo a través de menos procesos de búsqueda, ha obtenido mejor resultados frente a su contrincante. Algunos ejemplos que se han registrado han sido de, sobre 1000 partidas, AlphaZero ha ganado 155 partidas, perdió 6 y empató 839. Ambos sistemas siguen evolucionando gracias a los equipos que trabajan en ellos. 

 

Aplicando inteligencia artificial..

AlphaZero o Stockfish son un claro ejemplo de aplicación de la inteligencia artificial, a pesar de que fue en 1956 cuando se descubrió como tal. Durante la última década se ha intentado explotar este campo para así poder aplicarlo y suplir las necesidades que surgen; desde un chatbot hasta los asistentes virtuales por voz que tan de moda están; Google Home, Amazon Echo, Siri, etc. 

El objetivo que muchos proyectos siguen es dotar de la mayor autonomía neuronal a un ente, que aprenda autónomamente (como es el caso de AlphaZero), que a medida que pasa el tiempo realice sus funciones de la manera más óptima, y que una máquina, sistema o robot consiga sustituir las funciones que realiza el ser humano.

0 Shares:
You May Also Like