Páginas

PA3_U3.- un proyecto para resolver un problema de un juego clásico Ajedrez

 

AlphaZero

A finales de 2017, DeepMind (la filial británica de Alphabet dedicada a la IA) presentó en sociedad a AlphaZero, una inteligencia artificial que había demostrado ser capaz de aprender a jugar desde cero ajedrez, shogi y Goy terminar ganando a todas las IAs que se habían proclamado campeonas en cada uno de esos juegos.

 

·         Un ejemplo de aprendizaje por refuerzo

Según los autores de la investigación, miembros de DeepMind, los "resultados demuestran que un algoritmo de aprendizaje por refuerzo y de propósito general puede aprender desde cero y alcanzar un rendimiento sobrehumano en varios juegos de gran complejidad".

La cantidad de entrenamiento que AlphaZero necesitó en cada caso dependió del estilo y la complejidad del juego: aproximadamente 9 horas para el ajedrez, 12 horas para el shogi y 13 días para el Go.

 

El mencionado 'aprendizaje por refuerzo' (ya usado también con videojuegos) consiste en este caso en una red neuronal que juega millones de partidas contra sí misma en un proceso de prueba y error, de tal modo que va tomando nota de la clase de jugadas que contribuyen de alcanzar el objetivo de ganar la partida.

Una vez entrenada, la red se usa para guiar un algoritmo de búsqueda llamado 'Árbol de búsqueda de Monte-Carlo' que permite que, en lugar de analizar todos los movimientos posibles, AlphaZero se centre únicamente en aquellos más prometedores según su experiencia previa.

Pese a eso (y a contar con menor capacidad de computación), AlphaZero se proclamó vencedor sobre todos sus rivales.





Para jugar bien al ajedrez un sistema de IA ha de hacer tres cosas:

·         En primer lugar ha de aplicar algún tipo de técnica que le permita encontrar el movimiento óptimo (esto se hace a través de un algoritmo conocido como minimax), teniendo en cuenta que existe enfrente un adversario con «información perfecta» (es decir, que conoce de antemano nuestra estrategia y sus consecuencias).

·         En segundo lugar, el sistema de IA ha de aprender a reducir el espacio de búsqueda para poder elegir un buen movimiento cuando el tiempo de búsqueda es limitado (aunque quizás no el óptimo), para lo cual se utilizan técnicas que permiten ignorar las porciones del árbol de búsqueda que no hacen ninguna diferencia de cara al resultado final y por tanto son «prescindibles» (el algoritmo más usado para esto se llama podado [del árbol] alfa-beta).

·         Finalmente, hay que hacer uso de funciones de evaluación heurísticas (basadas en la experiencia de los jugadores de ajedrez) que nos permitan aproximar lo “buena” que es una posición concreta del juego en una partida sin tener que hacer una búsqueda completa de todos los movimientos posibles “hacia adelante” de la partida.

 

 

El núcleo del algoritmo α-β: la función de evaluación. Como primera aproximación podemos definir la función de evaluación como una combinación lineal de m características. e(x) = ω1 · f1(x) + ω2 · f2(x) + · · · + ωm · fm(x) donde ωi es el peso asociado a la característica fi(x). Una versión muy básica de función de evaluación consistiría en considerar las diferencias de material, es decir, la diferencia en número de piezas de cada uno de los jugadores. Tengamos en cuenta que suele ser habitual normalizar el valor de las piezas


 

Tabla 5.1: Valor de las piezas en ajedrez con normalización respecto al peón. Se añaden además los símbolos que representan a todas las piezas del tablero a excepción del rey cuyo símbolo es R y de los peones, que no tienen símbolo asignado, sino que su posición se declara mediante las coordenadas en el tablero. (y de la posición en general) con respecto al valor del peón. Un peón vale teóricamente 100 contienes, siendo esta unidad la mínima usada para evaluar una posición. Notemos que esta función de evaluación no es fiable pues, como vemos en el siguiente ejemplo, es posible tener gran ventaja de material y aun así encontrarse ante una posición perdida

 


Tablero 5. En este caso extremo e irreal, el jugador negro tiene gran ventaja de material. La función de evaluación le daría una ventaja de 9·(0−10)+5·(2−0) = −80,00. No obstante, el jugador blanco puede dar mate con el movimiento Tg8#.


---------------------------------------------------------------------------------------------
















·         Referencias:

o   Merino, M. (2018, 7 diciembre). AlphaZero, la IA capaz de aprender ella misma a jugar al ajedrez y ganar a todas a las IAs adiestradas por... Recuperado de https://www.xataka.com/robotica-e-ia/alphazero-ia-capaz-aprender-ella-a-jugar-al-ajedrez-ganar-a-todas-a-ias-adiestradas-humanos

o   Gutiérrez, S. (2019, 11 septiembre). LA INTELIGENCIA ARTIFICIAL Y EL AJEDREZ: DEL RETO A LA INSPIRACIÓN – Crónicas de un humano en la era digital. Recuperado de https://santiferris.com/inteligencia-artificial/la-inteligencia-artificial-y-el-ajedrez-del-reto-a-la-inspiracion/


No hay comentarios:

Publicar un comentario