Por @Alvy — 15 de marzo de 2016

AlphaGo, el software para jugar al go de Google ya ha vencido en el match contra el campeón humano Lee Sedol al haber ganado cuatro de las cinco partidas. Las victorias fueron por lo general bastante aplastantes y contundentes: 1-0, 2-0, 3-0… Solo cuando todo estaba ya perdido el campeón humano se relajó para lograr una victoria, el 3-1, tras lo cual todo terminó con un 4-1 global.

Aunque se consideraba que el dominio del go estaba muy lejano en el tiempo para los ordenadores actuales debido a la complejidad de su estrategia y al enorme número de posiciones a analizar, muy superiores que al ajedrez, el hecho es que el reinado humano ha terminado: AlphaGo ha ganado con todos los méritos, en partidas en un tablero completo de 19×19, jugando con limitaciones de tiempo y sin handicap. Lo cual despeja su verdadero poderío, pues hasta la fecha había habido varios casos en los que había sido capaz de ganar pero en versiones simplificadas del juego o con la ventaja de un handicap.

La tecnología de AlphaGo

AlphaGo no es simplemente un programa de «fuerza bruta» gracias a un montón de CPUs: está desarrollado con una combinación de técnicas de aprendizaje automático y árboles de búsqueda creados a partir de más de 30 millones de partidas de la historia del go, además de haber sido entrenado por expertos humanos.

El entrenamiento comienza por un proceso que resuelve un problema denominado bootstrapping y que es común a muchas redes neuronales artificiales: por muy automático que sea el proceso de aprendizaje automático… ¿Cómo comienza? ¿Cómo puede aprender solo «de la nada»? Y si se entrena a sí mismo, ¿no quedará completamente sesgado ignorando otras alternativas?

La solución es combinar una parte de entrenamiento humano, basado en la experiencia e historia (por ejemplo, alimentando el programa con las aperturas más conocidas, los primeros movimientos más comunes o las tácticas más habituales) y cuando se observa que ya juega con nivel suficiente se le hace jugar contra sí mismo. Esto último permite reforzar su aprendizaje y guardar ese conocimiento para el futuro. Algo que muchos dirían es bastante parecido al aprendizaje humano, por otro lado. Al respecto es interesante ver esta anotación de La ciencia de la Mula Francis: Las consecuencias en IA del torneo AlphaGo vs Lee Sedol.

¿Qué significa para la Inteligencia Artificial la victoria de AlphaGo contra Lee Sedol? (…) Creo que está claro que los padres fundadores de la inteligencia artificial tenían razón: las habilidades de los humanos que asociamos a la inteligencia emergen de forma espontánea de la complejidad algorítmica. Los algoritmos de caja negra (black box), en especial los bioinspirados, son el camino para lograr que la IA se acerque a los humanos y resuelva problemas complejos como lo hacen los humanos.

Para que AlphaGo funcione y derrote al campeón humano necesita un equipo informático con unas 1.200 CPUs y 180 GPUs. Algo grande y potente sobre lo que puede «correr bien», pero definitivamente un hardware que tampoco es desmesurado: en los superordenadores de hoy en día es común encontrar más de 100.000 procesadores y los hay incluso con 1, 2 o 3 millones de cores.

El desarrollo del match AlphaGo vs. Sedol

  • En la primera partida Lee Sedol intentó probar los límites del programa; encontrar lo que suponía que serían sus debilidades. Batacazo. Los críticos dijeron que Sedol «había jugado mal» y que debido a eso la la auténtica fortaleza de AlphaGo seguía siendo desconocida.
  • La segunda partida fue todo lo contrario: Sedol jugó muy sólido, pero sin demasiada agresividad, y AlphaGo le fue arañando y arañando pequeñas ventajas hasta que la diferencia fue irremontable. Los críticos dijeron que Sedol había jugado demasiado a la defensiva.
  • En la tercera partida también ganó AlphaGo. El campeón humano dijo que había sucumbido a la presión, pero los críticos opinaron que fue la mejor partida de las tres; simplemente Sedol había jugado muy bien pero AlphaGo fue superior. Algunos comentarios hablaron de lo mucho que se puede de AlphaGo porque no juega como hacemos los humanos: por poner un ejemplo, no le importa hacer movimientos «malos» a pequeña escala porque solo piensa en la probabilidad de victoria a escala global.
  • En la cuarta partida, derrotado ya y libre de la presión, Sedol salió a divertirse. A medio juego hizo un tesuji (un movimiento táctico brillante) que casi nadie entre los comentaristas había visto. (Posteriormente se supo que AlphaGo calculó en 1/10.000 la probabilidad de que hubiera hecho esa jugada). Con esto «descuajaringó» el centro que estaba construyendo AlphaGo y lo descolocó totalmente. El programa comenzó a jugar a mucho peor nivel, cometiendo errores. Una posible explicación es que el generador de jugadas de AlphaGo (un Método de Montecarlo que le permite generar millones de jugadas y posibles respuestas al azar) tiene el problema de que a veces puede «perderse», por pura cuestión probabilística. El resultado es que AlphaGo se encontró de repente con que su función de evaluación de probabilidad de victoria que le decía que ya no había probabilidades de victoria, y reaccionó como un «pato mareado» sin saber muy bien qué hacer.
  • En la quinta y última partida AlphaGo también ganó, aunque esta vez con un empate más ajustado, aunque llegó a esa situación tras haber cometido un error al principio del juego.

Un dato curioso es que la retransmisión a través de Internet de este evento alcanzó los 100.000 espectadores en inglés de audiencia media (unos dos o tres millones acumulados) pero superó los 60 millones de espectadores en su versión en chino.

AlphaGo se lleva el millón de dólares del premio –que Google ya había anunciado será donado a diversas ONG– y Sedol se lleva 170.000 dólares en total: 150.000 por participar y 20.000 por su única victoria.

Compartir en Flipboard Publicar / Tuitear Publicar