El último campeón humano de ajedrez...


El primer trimestre de 2016 a sido escenario de noticias resonantes en el campo de la inteligencia artificial. Casos de éxito que ilusionan a los expertos del campo y que al mismo tiempo plantean nuevos desafíos. Casos de fracasos (pequeños reveses o grandes tropiezos) que nos recuerdan lo inmaduro de esta tecnología. Los pasos atrás y pasos adelante coinciden siempre en una cosa: las voces que se alzan con temores y reparos en las consecuencias en los seres humanos.

Hollywod lleva años realizando películas sobre la temática de Inteligencia artificial. En el cliche la trama suele ser siempre similar: autómatas, robots o computadoras que cobran conciencia sobre si mismo y decide deshacerse de los seres humanos (o al menos de un grupo de ellos). Un listado breve de ellas: "Terminator", "Matrix", "Avengers: Age of Ultron", "2001: A Space Odyssey", "I, Robot", etc y etc. Sin duda existen también ejemplos de películas o libros mas benignos con esta temática. Sin embargo sea morbo, un temor latente u otro motivo las primeras suelen ser las mas numerosas e incluso mas taquilleras.

¿Son fundados los temores? Para responder a estas preguntas se abordará una pequeña introducción al tema y mediante ejemplos de la actualidad analizariamos la cercanía o lejanía del estado del arte a estos miedos. Desde ajedrez al Go, desde automóviles autónomos a chatbots para finalizar en la pregunta: cuanto falta para que Skynet cobre conciencia?


En 1997 el mundo entró en frenesí cuando el resultado de un enfrentamiento a 5 partidos de ajedrez entre el campeón mundial Garry Kasparov y la inteligencia artificial Deep Blue de IBM terminó en derrota del humano. Kasparov, quien llevaba años enfrentando triunfalmente diferentes programas de computadoras había perdido el año anterior el invicto con una versión menos poderosa del mismo autómata de ajedrez de IBM.

Han pasado ya casi 20 años de ese escenario. Mucho poder computacional se ha sumado en ese tiempo. En su libro "How life imitates chess" de 2008, Kasparov indicaba con ironía que los problemas actuales de los constructores de programas de computadoras se invirtieron. Hacerlos capaces de realizar suficientes jugadas erróneas para perder con los humanos.

En un artículo de 2010 titulado "The Chess Master and the Computer" el retirado en 2005 ajedrecista ruso dejó algunas declaraciones interesantes. Entre ellas una sobre la inteligencia de Deep Blue: "Fue un logro impresionante, por supuesto, y un logro humano por los miembros del equipo de IBM, pero Deep Blue fue sólo inteligente en la forma en que su reloj alarma programable es inteligente. No es que perder ante un reloj de alarma de $10 millones, hace que me sienta mejor". Obviando las enormes diferencias de complejidad entre un reloj despertador y un programa de ajedrez... a que se refiere Kasparov?

La inteligencia artificial es un campo multidisciplinario que intenta construir sistemas de computación para solucionar problemas complejos por medio de razonamientos que emulen la inteligencia humana (o incluso de ciertos otros animales). Existen diferentes aproximaciones que intentan resolver estos dilemas, entre estos, redes neuronales, algoritmos genéticos, modelos estadísticas, modelos de planificación y razonamiento lógico matemático, entre otros.

En la actualidad se suelen construir inteligencias artificiales para resolver un propósito determinado. Esos problemas contienen una complejidad tan grande que una solución algorítmica y determinística no es posible. Es decir a priori no se puede trazar una solución en forma sencilla del problema, sino que un razonamiento relativamente complejo se debe llevar a cabo. Además en muchos casos existe la posibilidad de cambios en el escenario impuesto por acciones propias y de terceros.

La programación de un reloj despertador no tiene mucha complejidad. Se puede resumir en un proceso que verifica que la hora actual sea la indicada para comenzar a sonar la alarma. Si es el caso, se dispara el proceso de prendido. No hay posibilidad de escenarios desconocidos o no esperados. El juego del tateti es un caso similar. Se puede conocer todas las posiciones de juego desde el inicio al final pudiendo ganar o empatar siempre (pero nunca perder). Por otro lado el ajedrez es un juego que encierra tantas variantes que un programa de computación no puede elegir dada una posición general la mejor solución (al menos por ahora). Por lo que la construcción de programas que intenten razonar y seleccionar la mejor jugada fue atacado con métodos de inteligencia artificial.

Se conoce como algoritmo minimax al proceso que dada una situación inicial analiza todas las jugadas posibles próximas para determinar cuál es la más conveniente.  Para eso, dada la selección de una acción mide que tanto más cerca o lejos estoy de lograr el objetivo. Siguiendo el ejemplo del tateti, cuanto me acerco o alejo de ganar. El método va generando por cada decisión una nueva situación a la que iterativamente le sigue una nueva decisión del rival. El jugador que intenta seleccionar la acción a realizar desea maximizar su ventaja. Luego, el oponente en su proximo movimiento intenta mejorar la suya (y minimizar la de la contraparte). Finalmente se llega a una situación de termino del juego favorable o desfavorable para quien inició el análisis. En el tateti y en el ajedrez los resultados son ganar, perder o empatar. La elección de la acción debe tener en cuenta a aquellas ramas que globalmente tengan más chances de llevarnos a un resultado ganador. En la imagen se ve una situación inicial y todo un árbol de posibles acciones. Se rótula con 1 aquellas situaciones de victoria, con 0 los empates y con -1 las derrotas. Se selecciona aquella rama que demuestre ser la más conveniente para ganar, en este caso la de la derecha.

Deep Blue de IBM
En un juego como ajedrez analizar todas las jugadas posibles partiendo de una situación inicial a la finalización de todas las ramas del árbol requiere un esfuerzo de procesamiento considerable que aun no está disponible. Una partida de ajedrez tiene una combinación de posibles movimientos muy variado y las partidas suelen durar 50 movimientos en promedio. Por lo tanto el algoritmo debe buscar otra alternativa para medir el beneficio de seleccionar una jugadas en particular. Para eso analiza hasta cierto nivel de profundidad todos los diferentes escenarios (todas las posibles combinaciones de movidas) y luego intenta caracterizar cada situación determinando si es beneficiosa o no. Deep Blue, asi como muchos otros programas de computación, utiliza una función heurística que retorna un valor numerico. El rango varía entre un valor positivo (beneficioso) y uno negativo (no conveniente). La función utiliza varias variables que evalúan diferentes situaciones del juego. Por ejemplo, que tan vulnerable se encuentra el rey propio y el rival, cuantas piezas y de que tipo tiene cada jugador o que calidad tiene cada pieza según su posición. Deep Blue tenía cerca de 8000 partes (o variables). Algunas reservadas a situaciones de juego determinadas.

La gran virtud de Deep Blue, por lo tanto, no solo fue tener para la época un poder de procesamiento elevado. Sino el haber construido un modelo matemático y el haber generado la forma de calcular correctamente cada una de esas variables. Más allá de eso, simplemente no podía aprender por su cuenta. La modificación de esa función se podía realizar entre partidos mediante la readecuación de los parámetros. En ese sentido es que Kasparov lo compara con un reloj despertador: un proceso que evalúa un situación y resuelve de acuerdo a una función a base de fuerza bruta y poder de cálculo. Sin sorpresas. Sin inspiración. Excepto que...

"El turco" un falso autómata de finales del siglo 18
¿Habrá en Deep Blue ayuda humana?
Durante la segunda partida entre la máquina y el campeón mundial hubo un movimiento inesperado para el humano. Kasparov quedó sorprendido y desconcertado. Él y otros indicaron que era una movida muy sofisticada para una computadora y que debía existir ayuda humana durante el partido. Ese movimiento incluso influyó en el siguiente partido donde se lo notó ansioso y desconcentrado. 15 años después, Murray Campbell, uno de los tres científicos detrás de la programación de Deep Blue indicó que lo que realmente sucedió en ese momento fue un bug. Según se narra en el libro "The Signal and the Noise: Why So Many Predictions Fail—But Some Don't" la incapacidad de seleccionar la próxima movida, disparó un procedimiento preventivo: seleccionar una movida al azar. La anécdota también es relatada en una nota del Washington Post.

¿Será un bug la inspiración? No lo podemos saber, Deep Blue fue desmantelada por IBM. De todas formas durante todos estos años nuevos programas de computación de ajedrez se crearon superiores a Deep Blue. Ganarle a una "inteligencia artificial" en ajedrez ya es cosa de otra "inteligencia artificial"

El próximo juego en la mira era el milenario oriental Go.

Leer parte 2 >>

Comentarios