Un algoritmo aprende a jugar Go (Parte I)

/AFP

Gabriel Ortiz van Meerbeke

Especial para El Nuevo Siglo

La oleada de procesos de automatización que está alterando profundamente la economía actual y el mundo del arte parecieran ser dos universos opuestos. Por un lado, están los cálculos precisos, fríos y despiadados de la optimización, y por el otro, procesos que suelen describirse como inefables, caóticos, incluso divinos, pero jamás mecánicos. Sin embargo, la inteligencia artificial está lentamente incursionando en un ámbito que hasta hace poco considerábamos exclusivo de la humanidad: la creatividad.

Antes de exponer algunas de las prácticas artísticas que están utilizando las nuevas tecnologías para cuestionar y expandir lo que creíamos posible en la música, la pintura y la literatura, es necesario entender algunos conceptos como machine learning, redes neuronales y algoritmos inteligentes. La historia de la inteligencia artificial puede trazarse desde que la matemática Ada Lovelace desarrolló el primer algoritmo para que fuera resuelto por la máquina analítica (que muchos consideran como el prototipo de los computadores actuales) del científico Charles Babbage. En pocas palabras, un algoritmo es una serie de instrucciones claras y no-ambiguas que permiten resolver un problema, y que normalmente tiene la forma de una serie de “si p, entonces q”, para alcanzar un objetivo específico.

Los algoritmos tradicionales existen desde Euclides, y en la actualidad hay uno que rige nuestra vida. El buscador de Google es un algoritmo relativamente sencillo que lo único que hace es catalogar la relevancia de una página web. Las primeras páginas que arroja este buscador son las más direccionadas por otras páginas web y el valor de cada una de estas, a su vez, está determinado por el número de vínculos que lleven a ellas. Ahora bien, este algoritmo, o por lo menos su versión inicial, (constantemente lo están refinando) fue el producto genial de Larry Page y Sergey Brin, pero nunca podrá tener resultados que vayan más allá de lo que está inscrito en su código.



Por muchos años se ha mantenido el mantra de que un algoritmo solo puede ser tan bueno como sus programadores. Pero desde hace unos diez años esta creencia se ha ido desmantelando por lo que podríamos llamar algoritmos inteligentes que logran aprender de sus errores. Los algoritmos tradicionales son deductivos (o como se les conoce en inglés top down) porque siguen una serie de reglas para llegar a una conclusión, no obstante, esta nueva generación son inductivos (o bottom up), ya que recurren a una serie de preguntas para llegar a respuestas altamente probables. La diferencia es que los primeros arrojan respuestas inequívocas pero alguien tiene que escribir las reglas para llegar a las conclusiones deseadas y estos códigos pueden volverse cada vez más complejos. En cambio, los segundos se van mejorando a sí mismos a medida que analizan más información y sus respuestas se vuelven progresivamente más precisas.

Un tipo de estos algoritmos inteligentes es conocido como redes neuronales, porque imitan el funcionamiento de un cerebro humano. La teoría detrás de estas fue propuesta por primera vez en 1943 por los científicos norteamericanos Warren S. McCulloch y Walter Pitts. El propósito de estas redes neuronales era crear programas que fueran capaces de aprender por sí mismos, del mismo modo que un bebé nace sin conocimiento, pero en la medida en que crece su cerebro va entendiendo el mundo que lo rodea. El problema es que esta variedad necesitan dos premisas que solo se han podido suplir recientemente: mucha data y capacidad computacional. El internet, con su explosión de contenidos, resolvió la primera parte de esta ecuación y los avances tecnológicos, como los microprocesadores, garantizaron que estos sistemas pudieran operar en campos tan diversos como juegos de mesa, reconocimiento de imágenes o las recomendaciones que Netflix hace a sus usuarios.

Otro gran ejemplo, documentado en un fascinante artículo del New York Times, muestra cómo el traductor de Google mejoró radicalmente en el instante que cambió de un sistema de inteligencia artificial que seguía reglas específicas a otro basado en una red neuronal.

Hoy este tipo de sistemas son muy comunes en el campo de la informática pero en realidad implicaron todo un cambio paradigmático. DeepBlue, el computador de IBM que logró vencer al ajedrecista Gari Kasparov, era un sistema top down, es decir, estaba diseñado exclusivamente para jugar ajedrez. Esto ocurrió al final de la década de los noventas y se convirtió en una prueba de la superioridad de este tipo de inteligencia artificial. Los proponentes de las redes neuronales, que por mucho tiempo fueron considerados unos excéntricos ligeramente locos, tuvieron su reivindicación variadas décadas después con el Go.

El Go es el juego de mesa más antiguo de la humanidad y a pesar de que cada jugador solo tiene un tipo de ficha (una piedra negra o blanca) es significativamente más complejo que el ajedrez. El propósito del Go es controlar la mayor cantidad de territorio en un tablero de 19x19 en donde cada jugador intenta rodear las piedras de su contrincante. Otra diferencia importante es que se va volviendo más complejo a medida que se avanza en la partida, lo opuesto del ajedrez, que a medida que se van comiendo las fichas se reducen las jugadas posibles. De acuerdo con el matemático Marcus du Sautoy, autor del libro El Código de la Creatividad, mientras el total de partidas posibles en el ajedrez es de un número con 120 dígitos, en el Go ese número tiene más de 300 dígitos. Por este motivo, siempre se consideró este juego milenario como el santo grial de la inteligencia artificial ya que exige un alto grado de creatividad para intuir cuál es la estrategia ganadora.



Aquí es donde entra a jugar el último elemento importante de la inteligencia artificial: el machine learning o aprendizaje automático. DeepMind es una compañía británica de inteligencia artificial que fue comprada en 2014 por Google. Se dieron a conocer por ser los creadores de AlphaGo, el programa de computador que logró vencer al campeón mundial de Go utilizando esta nueva tecnología. Sus creadores decidieron desechar la estrategia de DeepBlue y, en lugar de crear ellos mismos un código que pudiera resolver el Go, decidieron hacer un programa que aprendiera a jugarlo. Para ello, alimentaron una red neuronal con millones de partidas de Go en línea, para que se formara en detectar patrones dentro del juego. Lo más interesante no fue que AlphaGo hubiera derrotado a Lee Sedol, el campeón mundial en 2016, con cinco contundentes partidas contra una del coreano, sino, que en un juego en particular utilizó una estrategia que muchos comentaristas humanos pensaron que era ridícula pero que terminó siendo magistral. Es decir, AlphaGo le enseñó a la humanidad algo nuevo en un juego que llevamos más de 3.000 años jugando. Si a esto lo podemos llamar un acto creativo o no, será materia para la siguiente columna, pero no deja de ser fascinante.

El machine learning logra detectar patrones que los humanos no podríamos llegar a soñar. Tanto así que la siguiente versión de DeepMind, AlphaZero, no aprendió a jugar Go viendo partidas de humanos sino que lo programaron para jugar contra sí mismo y en tres días, después de 4.9 millones de partidas, derrotó cien veces seguidas a AlphaGo. Su superioridad radica en buena parte que no está viciada por la manera cómo juegan los humanos.

Ese mismo sistema aprendió a jugar ajedrez en ocho horas y derrotó fácilmente a los mejores programas que existían en el momento. La posibilidad de descubrir patrones ocultos dentro de la data es lo que permite que las redes neuronales y el machine learning sean tan versátiles. De hecho, DeepMind está usando el sistema de inteligencia artificial para otros usos más allá de juegos de mesa como mejorar las recomendaciones de la tienda de aplicaciones de Google, optimizar el uso de energía de diferentes aparatos móviles y desarrollar aplicaciones para el sistema de salud británico.

Estos sistemas todavía tienen sus limitaciones, principalmente por los prejuicios inscritos en los bancos de datos con los que se alimentan. Uno de los ejemplos más famosos es el de un sistema de reconocimiento facial que era incapaz de reconocer a Joy Boulamwini, a una científica del MIT, porque fue entrenado con caras masculinas caucásicas y ella es de Ghana. Otro gran problema es que el machine learning no es simplemente una caja negra que mágicamente convierte datos en patrones o predicciones, ya que no dejan de ser programas que alguien tiene que codificar para que sean capaces de aprender y arrojarnos los resultados que queremos obtener. Lo que sí es cierto es que cada vez se están volviendo mejores en resolver problemas de maneras que nunca antes habíamos considerado.

Volviendo al terreno del arte, hay una pregunta aún más fundamental expresada de manera magistral por Simon Colton, el creador de The Painting Fool, un algoritmo que pinta retratos dependiendo de su estado de ánimo:

Como personas, no resolvemos el problema de componer una sonata, o pintar un cuadro, o escribir un poema. En cambio, mantenemos en nuestra mente una idea general, y por más que en el camino resolvamos problemas, la resolución de problemas no es nuestra intención”[1]

La cuestión entonces se vuelve cómo usar una tecnología diseñada para resolver problemas para crear obras de arte que son ante todo invenciones creativas. Este será el tema del siguiente artículo, pero como adelanto basta decir que la inteligencia artificial fácilmente puede escribir un poema o componer una sinfonía, aunque no ha sido capaz de crear una buena novela, todavía.