Hace 6 años | Por --48454-- a youtube.com
Publicado hace 6 años por --48454-- a youtube.com

Entrevista al Dr. Juanjo del Coz: Hace tan sólo una semana se hacía público el ya famoso match entre el módulo de referencia en ajedrez Stockfish y la nueva IA de Google AlphaZero y desde entonces no se ha venido hablando de otro casa en el mundo del ajedrez. ¿Es esta máquina tan fuerte como se dice? ¿Se ha alcanzado la perfección en el juego? ¿Qué es exactamente una "Inteligencia Artificial" y en qué se diferencia de otros programas de ajedrez. Para responder a estos y otros interrogantes contamos hoy con la presencia del Dr. Juanjo del Coz.

Comentarios

S

No me ha llamado mucho la atención el video. Aporta algunos detalles interesantes como que solo se daba 1 minuto por jugada y que la cantidad de RAM estaba limitada a 1GB. Apunta que quizás la prueba estaba cocinada para AlphaZero y que habra que esperar a ver si sale una prueba más exahustiva.

Me llamo mucho la atención que el "experto", profesor universitario, se tire a la piscina asegurando que Stockfish es también una IA. En la wikipedia no dice nada de eso.

AsVHEn

#2 Me llamo mucho la atención que el "experto", profesor universitario, se tire a la piscina asegurando que Stockfish es también una IA. En la wikipedia no dice nada de eso.

¿Cómo en la Wikipedia no lo pone ya es un experto entre comillas?
Lo explica en el video, pero si crees más a la wikipedia también lo explica en la entrada de inteligencia artificial:

Coloquialmente, el término inteligencia artificial se aplica cuando una máquina imita las funciones «cognitivas» que los humanos asocian con otras mentes humanas, como por ejemplo: "aprender" y "resolver problemas". 5 A medida que las máquinas se vuelven cada vez más capaces, tecnología que alguna vez se pensó que requería de inteligencia se elimina de la definición. Por ejemplo, el reconocimiento óptico de caracteres ya no se percibe como un ejemplo de la "inteligencia artificial" habiéndose convertido en una tecnología común.6 Avances tecnológicos todavía clasificados como inteligencia artificial son los sistemas capaces de jugar ajedrez, GO y manejar por si mismos.

S

#3 Lo pongo entre comillas porque aún recuerdo a muchos profesores universitarios que saben lo justo (Tuve uno que daba clases de C siendo Licenciado en Química) y que esa es la impresión que me da ese hombre. Aparte de que de sus palabras no me da la impresión de saber más que yo y yo no me considero a mi mismo un experto. Yo si no estoy seguro de algo, no me tiro a la piscina.

Una IA es una maquina que aprende. Cuando AlphaZero juega una partida, después se autoevalua y decide si la estrategia que ha seguido es buena o no. Por eso es una IA.
Pero Stockfish por ningún lado dice que es una IA. La gran diferencia es que digamos que descubres un bug en Stockfish y le logras dar mate en 3 jugadas. A Stockfish le podrías seguir haciendo ese mate repetidas veces, porque se supone que es no una IA, pero AlphaZero se daria cuenta a la primera de que ha metido la pata y ya no le podrías hacer ese mate.

Una maquina que juegue a ajedrez no es una IA, puede serlo, pero eso depende de como ha sido programada. Yo jugue al ajedrez en un Spectrum y desde luego no era una IA porque para que ello fuera asi, después de cada partida tendría que haber guardado en cinta su evaluación de la partida para poder aprender en la siguiente partida.

AsVHEn

#4 Una IA es una maquina que aprende.
Si eso formase parte de la definición sería cierto, pero no es así (si es que hubiese una única definición). Stockfish es una IA como muchos otros programas porque si le pones por ejemplo en el tablero 11 caballos y el rey, puede jugar con ellos aunque sea una configuración imposible en el ajedrez. Tiene un algoritmo que usa para analizar cualquier posición e intentar hacer movimientos buenos.
De hecho si yo hago un programa de ajedrez que sea de la forma:
- Si no tengo una partida con una posición igual hago un movimiento aleatorio.
- Si tengo partidas iguales hago el movimiento que más veces lleve a otra posición ganadora.
- Guardo la partida al acabar.
Sería un programa que aprende, y de hecho cada partida juega mejor, pero no se podría decir que es una IA. No tiene capacidad de enfrentarse a situaciones nuevas.

S

#5 ejemplo en el tablero 11 caballos y el rey, puede jugar con ellos aunque sea una configuración imposible en el ajedrez.

Muchos juegos de ajedrez viejunos, por ejemplo, en el Chessmaster del Spectrum, permite "configurar tablero" y colocar las piezas sobre el tablero. No sé si permitira 11 caballos, pero seguro que permite colocar todos los peones como Reinas.

http://www.worldofspectrum.org/infoseekid.cgi?id=0000922

Pero yo no lo llamaría una IA. Un algoritmo para determinar la mejor jugada no es una IA. (Un algoritmo para elegir que es mejor comer, si una torre o un caballo es lo más simple del mundo.) Un programa con un libro de aperturas no es una IA. Pero un programa que si que guarde las partidas jugadas anteriormente y pueda elegir una de ellas, si que es una IA.

De hecho si yo hago un programa de ajedrez que sea de la forma:

Para mí si que sería una IA, pues "aprende" de las partidas anteriores. Primitivas, pero IA.

AsVHEn

#6 Pues es un problema de definición porque un algoritmo de ese tipo, como los algoritmos de procesamiento de imágenes o lectura de texto, son considerados mayoritariamente IAs (y estos últimos no todos aprenden).
Además por otro lado, yo no tengo claro que los dos programas hayan usado o no memoria en las partidas.
Lo digo por el cambio de CPU de AlphaZero del aprendizaje al juego (para evitar bugs sería algo normal "congelar" el software), y por las variaciones en las partidas de Stockfish (en las 10 partidas que han sacado, hay 2 o 3 que comparten inicio los primeros 20 movimientos).
Yo es lo que haría para probarlo, pero claro, sin que saquen más información esto no es nada más que pajas mentales :).

D

¿Ha llegado a perder AlphaZero un pequeño número de partidas de ajedrez contra Stockfish? En la entrevista, el Dr. Juanjo del Coz da a entender que del artículo técnico publicado se podría deducir que sí, aunque hay matices que habría que comentar. En el vídeo, finalmente, no volvieron a ese tema, pero en los comentarios algún usuario negaba que AlphaZero hubiera perdido ninguna partida, basándose en los artículos publicados en la prensa. Voy a copiar la respuesta del profesor Juanjo del Coz, pues es interesante. Tengamos en cuenta que el entrevistado (Juanjo del Coz es Profesor del Area de Ciencias de la Computación e Inteligencia Artificial de la Universidad de Oviedo) basa sus opiniones en el artículo técnico publicado por los creadores del experimento, el cual no da todos los detalles pero ofrece mucha más información que la que se ha publicado en los medios periodísticos.

Al parecer, la prensa solo se ha hecho eco del informe promocional del evento, pensado para causar el mayor impacto. Por eso informaron solamente del resultado del match de 100 partidas en el que AlphaZero resultó imbatido. Pero además de ese match, jugaron 1200 partidas más (12 matchs adicionales, cada uno de 100 partidas, sin especificar detalles excepto los resultados), y como podemos ver en lo que comenta Juanjo del Coz en lo que copio más abajo, AlphaZero ganó todos esos matchs a 100 partidas, pero perdió un pequeño número de partidas (perdió 5 partidas con blancas, y 19 con negras). Pero veamos el comentario de Juanjo del Coz:

Varios de los usuarios han dicho que cometimos un error al decir que Alphazero había perdido alguna partida. Como bien dices, lo que hay que hacer es leer con detalle el artículo que publicaron los creadores de Alphazero y no opinar simplemente en base a lo que se ha publicado en muchos medios de comunicación.

El artículo detalla los famosos resultados del "match" 28-0, 72 tablas, (Tabla 1, página 5), pero por otro lado en la Tabla 2, página 6, muestra otro experimento en el que Alphazero compitió contra Stockfish jugando 100 partidas con las 12 aperturas más populares. En esas 1200 partidas sí perdió algunas partidas, en concreto 25 en total, aunque por supuesto ganó muchas más, 290. Resultado: Total games: w 242/353/5, b 48/533/19

Explicación de la Tabla 2: "We also report the win/draw/loss results of 100 game AlphaZero vs. Stockfish matches starting from each opening, as either white (w) or black (b), from AlphaZero’s perspective".

Lo que no queda del todo claro es cómo se jugaron estas 1200 partidas ya que los autores no dan ningún detalle. Habría que saber: cómo se logró por ejemplo que se jugaran exactamente 100 partidas con cada apertura, en qué nivel de aprendizaje estaba ya Alphazero cuando se disputaron (si estaba ya totalmente entrenado o todavía en fase de entrenamiento), en qué condiciones compitió Stockfish, etc. Al artículo le falta cierto rigor en este sentido ya que en un artículo científico se debe explicar claramente cómo se efectuaron los diversos experimentos. Podemos suponer, dado que no se dice nada adicional, que esas partidas se disputaron en la mismas condiciones que el torneo final de 100 partidas, pero como digo es simplemente una suposición.


Fuente de donde he copiado el comentario: