Superando los nuevos límites de AlphaGo mediante el aprendizaje automático

Leturia Azkarate, Igor

Informatikaria eta ikertzailea

Elhuyar Hizkuntza eta Teknologia

Recientemente han anunciado por primera vez que ha sido capaz de ganar a un jugador profesional del juego de mesa Go, muy conocido en Extremo Oriente. Es la primera vez que en un juego de estas características se consigue superar a los seres humanos con los métodos denominados estudios automáticos. Pero no será el último.

alphago-muga-berriak-gainditzen-ikasketa-automatik
Go es un juego muy extendido en Japón y China. Hay al menos 10.100 veces más combinaciones que en el ajedrez. Ed. DOLLARPHOTOCLUB/LENZENDORFMARCUS.

En el camino hacia la inteligencia de las máquinas, es decir, hacia la inteligencia artificial, ha sido habitual tratar de inventar máquinas, programas o tecnologías que ganen a los seres humanos en tareas o juegos que se han considerado complejos y meramente aptos para la realización de cerebros humanos. Así han ido cayendo una a una, límites que parecían imposibles de antemano, y los ordenadores han ido superando al hombre en varios juegos: en el juego de tres pastores, la máquina OXO, capaz de hacer los partidos perfectos en 1952 y asegurar al menos el empate; en el juego de las damas, el programa Chino venció al mejor jugador de todos los tiempos, en 1994 (y la máquina consiguió ser capaz de hacer un partido perfecto para el Devoep en 2007); y el Debatido a los jugadores en el Blonep.

El juego Go era el siguiente reto a superar por las máquinas. Aunque algo desconocido en nuestro país, está muy extendido en China y Japón y cuenta con más de 40 millones de jugadores en el mundo. Se juega en una tabla del cuadro 19x19 en la que dos jugadores deben colocar las fichas negras y blancas para ir ganando las fichas de los demás y terminar con más fichas que el resto. Un partido puede durar varios días, pero en profesionales los partidos se limitan a 16 horas. Se calcula que en el juego Go pueden darse unas 2x10170 combinaciones posibles, ¡más que el cuadrado del número de átomos calculados en el universo! ¡Y al menos 10100 veces más combinaciones que en ajedrez! Debido a esta complejidad, los investigadores no conseguían hacer un programa que ganara a los jugadores profesionales en el juego Go. Hasta octubre del año pasado. Entonces, el sistema AlphaGo de Google ganó por primera vez a un jugador profesional Go.

 

Aprendizaje automático

En la historia de la informática se han utilizado diversas formas de resolver problemas. De la forma más sencilla, los seres humanos codifican directamente, en un programa, las decisiones o jugadas que se deben tomar en cada situación en función de las condiciones. Esto sólo sirve para los problemas más sencillos, pero en los inicios de los ordenadores no se podía hacer otra cosa. Sin embargo, ha servido para superar el juego de tres pastores y otros.

Otra metodología es la denominada “brute-force search”, es decir, “búsqueda de fuerza salvaje” o búsqueda combinatoria o profunda. A través de ella, se analiza en cada momento del partido a dónde pueden llevar todas las opciones posibles. Sin embargo, en función de la complejidad del juego, no se pueden
analizar las posibilidades de ganar o no se puede llegar a la profundidad mínima necesaria. Por ejemplo, hay que estudiar un millón de oportunidades para llegar a la profundidad de 4 jugadores, un billón de opciones para 8 jugadores, un trillón para el 12… Sin embargo, este tipo de sistemas se han utilizado mucho y con éxito. Deep Blue, en definitiva, utilizaba este método. Pero este sistema de juego Go tiene sus limitaciones, ya que en cada momento se pueden realizar alrededor de 250 posibles jugadas.

Por ello, el sistema más utilizado en los últimos tiempos para resolver este tipo de juegos, así como muchos otros problemas complejos, como muchos de los relacionados con la tecnología lingüística y de voz, es el aprendizaje automático. En el aprendizaje automático se combinan diferentes metodologías con un mismo funcionamiento: existen determinadas estructuras de datos que proporcionan unas entradas que proporcionan unas salidas; a estas estructuras se les dan muchos ejemplos para las entradas y las salidas que necesitarían y a través de unos algoritmos adaptan su estructura para dar las salidas que se desean conseguir. Por ejemplo, en el ajedrez las entradas pueden ser los estados del tablero y las salidas, las mejores jugadas para estas situaciones. Si se consigue adaptar las estructuras de datos para dar estas salidas frente a estas entradas, en la mayoría de los casos serán capaces de dar una respuesta óptima incluso en situaciones nuevas que nunca se les había mostrado anteriormente.

En el aprendizaje automático se utilizaron inicialmente estructuras de datos llamadas neural network o redes neuronales que intentan imitar el comportamiento de las neuronas de los cerebros humanos. En la década de los 70 la investigación en inteligencia artificial se alejó de estos sistemas, pero a finales de la década de 2000 se resurgió el interés por las redes neuronales, que son ampliamente utilizadas. El sistema AlphaGo que nos ocupa está basado en redes neuronales. A la vista de la evolución de los últimos años y de los resultados obtenidos con el juego de Go, parece que en los próximos años las investigaciones sobre la inteligencia artificial avanzarán hacia un aprendizaje automático.

 

...y más allá!

El interés por el aprendizaje automático y las redes neuronales se ha resurgido porque los potentes ordenadores actuales han permitido estructuras de datos o redes neuronales más complejas. En concreto, en el caso de las redes neuronales, ahora las neuronas artificiales pueden dividirse en múltiples capas, utilizar muchos más datos para entrenar o aprender y dar solución a problemas complejos.Se llaman Deep neural network o redes neuronales profundas, y AlphaGo utiliza una de estas características.

Pero una red de neuronas de estas características para el juego Go, a pesar de entrenar con 30 millones de jugadores humanos, no consiguieron tan buenos resultados. Otra técnica utilizada fue la reinforcement learning. En este método, el sistema obtenido se ponía a jugar contra sí mismo, muchos partidos, y posteriormente se utilizaban los movimientos de esos partidos para entrenar y mejorar el sistema mediante el aprendizaje automático. Y una vez hecho esto, consiguieron construir AlphaGo.

Eso significa que para hacer un jugador artificial se ha utilizado un sistema de aprendizaje automático, pero no para aprender de los humanos, sino para aprender de sí mismo! Los estudios iniciales se han realizado a partir de partidas humanas. ¿Pero funcionaría sin ellos? Es decir, si con una máquina de partida muy naif o aleatoria y jugando partidos consigo misma, nos pusiéramos a aprender y a mejorar constantemente, ¿el resultado sería el mismo? De ser así, las consecuencias serían enormes.

En cualquier caso, en octubre, el jugador que fue derrotado por el sistema AlphaGo, Fan Hui, es un jugador profesional de 2 d??s a pesar de ser campeón de Europa. A mediados de marzo, el sistema AlphaGo se enfrentará a Lee Se-dol, uno de los mejores jugadores de la historia y con un ranking de 9 dans (máximo existente) en el partido público que se celebrará en Corea del Sur. El seguimiento del partido será sin duda de gran interés.

Babesleak
Eusko Jaurlaritzako Industria, Merkataritza eta Turismo Saila