A principios de diciembre leí una noticia que me impactó bastante. La leí en El País, en las páginas deportivas correspondientes a los deportes minoritarios, firmada por Leontxo García, el magnífico corresponsal especialista de El País en ajedrez, que mantiene una interesantísima sección denominada “La Pasión del Ajedrez”.[1] El titular del artículo era nada menos que «Jaque mate del “Messi de los chips”»… a algún genio se le debió ocurrir que utilizando a modo de reclamo el nombre del futbolista argentino igual conseguía más clics en la noticia. En realidad el titular correcto debería haber sido algo como “Prepárense: la singularidad tecnológica, más cerca”, sólo que entonces, sin ese “Messi” en el título, seguro que no hubiera clicado casi nadie… En fin. El caso es que, aunque ha tenido mucha repercusión entre los jugadores de ajedrez y que bastantes medios tradicionales han publicado artículos contando con más o menos detalle la noticia, estoy seguro de que habrá pasado bastante inadvertida para el público en general entre el marasmo diario de información que nos llega cada día por diferentes medios.
El resumen del artículo en un único párrafo podría ser algo como: “AlphaZero, una IA creada y entrenada por DeepMind, la división de Inteligencia Artificial de Google, ha derrotado en un match a Stockfish, considerado el mejor programa actual de ajedrez”.
O sea, un nuevo programa que juega al ajedrez ha derrotado al vigente campeón… ¡Menuda novedad! Es lo que lleva pasando los últimos 40 ó 50 años: que cada programa es más rápido, más potente y juega mejor que el anterior. En definitiva, poca cosa, ¿no?
Pues no. En mi opinión, esta vez no.
En este largo artículo intentaré convenceros de que esta noticia trasciende con mucho del especializado mundo del ajedrez, que esta vez es muy diferente y que esa derrota de Stockfish por parte de un “novato” como es AlphaZero es bastante significativa de que las cosas que tienen que ver con la inteligencia artificial, esta vez sí, están cambiando. Y no sé si es para bien o… o no.
Si eres jugador de ajedrez seguramente este artículo te sobre, porque conocerás todo lo que viene a continuación y mucho más. El artículo está destinado a quienes no tengan demasiada idea de ajedrez ni sigan el estado del arte de los programas de ajedrez, y pretende explicar las implicaciones últimas que tiene este evento extraordinario.
Eso sí: para contar bien el porqué de mi sorpresa no me queda más remedio, por ser fiel a mi dicharachero estilo, que comenzar por el principio e ir paso a paso… Tarde o temprano llegaré al meollo de lo que quiero contaros, pero me parece muy importante aquí fijar bien las bases históricas y tecnológicas para que se comprenda bien todo el asunto. Paciencia, pues.
BREVE HISTORIA DEL JUEGO DEL AJEDREZ
El ajedrez es un juego de estrategia para dos personas, que van jugando alternativamente moviendo sus piezas, blancas las de un jugador y negras las del otro, por un tablero de 8×8 escaques.[2] Originario inicialmente de India, se conoce en su forma actual desde hace al menos quinientos o seiscientos años: a mediados del siglo XV se fijaron las reglas del juego tal y como las conocemos ahora y desde entonces se ha jugado ininterrumpidamente hasta nuestras fechas. Y cada día más.
Siendo como es un juego de información completa[3] y con un elevadísimo número de partidas posibles, desde casi el principio de su expansión los jugadores vieron la necesidad de estudiar la teoría del juego para mejorar sus posibilidades de victoria. Y así comenzó el estudio sistemático de las aperturas, el de los finales, las diferentes estrategias del juego medio, etc. En los tres o cuatro párrafos que siguen voy a citar nombres de aperturas o de posiciones concretas con la jerga típica del ajedrez, pero sin describirlas en absoluto. Si no conocéis bien el juego, de todos modos leed estos párrafos aunque no sepáis a qué me refiero con lo de “apertura siciliana”, “peón pasado”, etc, porque lo importante de todo esto, que desarrollaré a continuación, tiene bastante que ver con todo este inmenso corpus de conocimiento sobre el juego que se ha ido acumulando a través de los siglos.
Efectivamente, multitud de jugadores de todos los tiempos han utilizado ingentes cantidades de esfuerzo y tiempo en analizar hasta el más mínimo detalle los intríngulis de las diferentes aperturas:[4] la Española,[5] la Siciliana, la Francesa, el Gambito de Dama, las Defensas Indias de Rey o Dama… Hay varias docenas de aperturas diferentes que se juegan con regularidad, todas ellas muy bien estudiadas. Y se escribieron tratados y compendios que estudiaban estas aperturas, tratados que con el tiempo quedaban obsoletos y eran sustituidos por otros nuevos… Lo poco que yo sé sobre aperturas lo aprendí estudiando el monumental trabajo del gran maestro internacional checo Ludek Pachman: cuatro volúmenes publicados a finales de los años 60 del siglo pasado que compendiaron todo el saber ajedrecístico del momento sobre los diferentes tipos de aperturas en el ajedrez.
El mismo trabajo se hizo con los finales: son perfectamente conocidas las técnicas a usar cuando en el tablero quedan muy pocas piezas, y todo jugador decente sabe cómo dar mate sólo con torre, o con dos alfiles, o con alfil y caballo, etc, así como la forma coronar un peón o, en su caso, evitar la coronación cuando sólo hay peones y reyes en el tablero, etc.
Y el mismo esfuerzo y tiempo, o incluso más, se ha usado secularmente en comprender las características deseables de las posiciones de ajedrez (además de las obvias: diferencia de material –piezas– entre uno y otro jugador, amenazas concretas al rey, la dama, etc), por ejemplo la existencia de peones pasados, de columnas abiertas o semiabiertas, la posición del rey (en el centro o enrocado), la obtención de la calidad o la importancia de mantener la pareja de alfiles, entre muchos otros detalles más o menos procelosos que, sin embargo, los jugadores tienen en cuenta para evaluar una posición.
El ajedrez está considerado como el juego de estrategia entre dos jugadores por antonomasia (con permiso del Go que, aunque es de complejidad similar o incluso mayor, no cuenta ni de lejos con el enorme número de aficionados que juegan regularmente al ajedrez). Los jugadores dedicaban, y dedican, horas y más horas al entrenamiento, a conocer cada variante de cada apertura, a encontrar los puntos fuertes y débiles de cada posición, a analizar con el máximo detalle cada partida, cada variante, cada jugada, todo en aras de mejorar su juego y vencer al rival.
Y entonces… llegaron los ordenadores.
LOS ORDENADORES Y EL AJEDREZ
Los primeros ordenadores eran mamotretos enormes, carísimos y con poquísima capacidad, incluso para la época. Y se usaban para Cosas-Verdaderamente-Importantes, como derrotar a la Alemania nazi en la Segunda Guerra Mundial,[6] o calcular los parámetros necesarios para que estallaran las bombas nucleares,[7] o poner un cacharro en el espacio, incluso con habitantes dentro… Pero pronto los incipientes ingenieros e informáticos volvieron su atención al ajedrez, con el ánimo de programar un software que fuera capaz de jugar lo mejor posible. El motivo es claro: el ajedrez es un juego con reglas precisas y no demasiado complicadas, pero que son capaces de generar tantas partidas diferentes como átomos tiene el universo,[8] y es de información completa, así que resulta idóneo para su programación en ordenadores, y además está bien estudiado en cuanto a técnicas poderosas de juego que facilitan la elección de la próxima jugada en la esperanza de que sea la mejor.
En una palabra, el ajedrez es perfecto para investigar nuevas técnicas de evaluación y decisión que luego pudieran ser extrapoladas a otros campos más interesantes y productivos.[9]
Tan pronto como en 1976 o 1977 tuve yo una asignatura en mi ya olvidada carrera que trataba, entre otros temas absolutamente novedosos en la época, sobre cómo atacar la programación de un software que jugara al ajedrez de manera… digamos que algo más sofisticada que un principiante. Por ejemplo, un serio problema de entonces era la representación del tablero en la memoria del ordenador: era vital poder codificar la posición de las piezas en el tablero de forma que la información fuera completa pero que ocupara el mínimo espacio posible… ¡los ordenadores de la época tenían 8, 16 o, en el mejor de los casos, 32 Kb de memoria![10] y había que ahorrar cada byte. Todo programa que juega al ajedrez en primer lugar genera todas las jugadas que sean posibles en la posición, las evalúa de una u otra forma y luego procede a calcular de la misma manera las posibles respuestas del contrincante para cada una de ellas, posiblemente no de todas, sino sólo de las seleccionadas… y este proceso se repite algunas veces, tantas como niveles de análisis alcance el juego. En cuanto se analizan así tres o cuatro niveles (claramente insuficientes para jugar decentemente), se genera un árbol con un número de tableros representados que crece de forma exponencial, y si no hay memoria para almacenarlos y compararlos entre sí… mala cosa.
Una vez determinada la representación más idónea (y compacta), hay que evaluar la posición resultante… y no una sola, claro, sino todas ellas, para determinar mediante un valor numérico si es buena o mala para las blancas o las negras. Por ejemplo, valores positivos dan ventaja a las blancas y negativos, a las negras. Y aquí es donde de verdad los ingenieros se toparon con un problema. Un problema serio, en apariencia irresoluble: ¿cómo valorar una determinada posición de las piezas en el tablero? Existían, ya lo dije, libros, muchos libros sobre estrategia ajedrecística en las diferentes fases de la partida, pero esas normas y reglas generales tenían montañas de excepciones, cuando no eran directamente contradictorias. Algo muy difícil de compilar en un programa, máxime con las limitadas capacidades de aquellos cacharros antediluvianos. No obstante, se fueron haciendo los primeros pinitos.
Los primeros programas jugaban muy mal. Quizás podían ganar a un principiante que acabara de aprender las reglas, pero no a un jugador aficionado ni mucho menos a un maestro. La principal limitación estribaba, obviamente, en la incapacidad de analizar muchos niveles de juego, como hace un maestro habitualmente cuando analiza una posición, debido a la escasa capacidad de cálculo. El método de evaluación iba paulatinamente mejorando, pero la falta de potencia de los ordenadores impedía jugar una partida decente en tiempo razonable. Se implementaron algoritmos de podado del árbol, el más conocido el llamado “alpha-beta”, que elimina para su análisis posterior todos aquellos nodos (jugadas) que son aparentemente malas… y entiéndase aparentemente malas en base a la imperfecta valoración que de las posiciones se efectuaban por entonces. Pero, claro, con los años los ordenadores fueron mejorando en prestaciones y bajando de precio. Y aquellos toscos programas fueron a su vez mejorando, y los ingenieros y programadores, aprendiendo por el camino.
A finales de los ochenta ya había máquinas comerciales que jugaban aceptablemente a nivel aficionado. En 1988 yo me compré, pagando una auténtica fortuna, una máquina Novag Constellation Forte con la que he pasado muchos momentos placenteros… ¡y eso que casi siempre me ganaba! Vale, sí, a mí me ganaba (y me sigue ganando, conste), pero a un maestro no le resistiría ni un asalto.[11] Pues bien, ésa era la impresión general de la época: por muy bien que llegue a jugar un ordenador, pasarán muchas décadas antes de que sea capaz de ganar a un maestro, y no digamos a un Gran Maestro… ¡o al Campeón del Mundo! Y había incluso quien decía que nunca jamás se produciría tal evento.
Pues bien, exactamente eso pasó el día 10 de febrero de 1996, cuando Deep Blue derrotó a Gary Kasparov, el entonces invencible campeón del mundo en lo más excelso de su juego. Deep Blue era un superordenador IBM RS/6000 con 30 procesadores P2SC de 120 Mhz ampliados con 480 procesadores VLSI y un software específicamente diseñado para jugar al ajedrez. Lo basó todo en la fuerza bruta: con sus centenares de procesadores trabajando en paralelo calculaba unos cien millones de posiciones por segundo, un logro espectacular en esa fecha. Kasparov ganó de todos modos ese duelo a seis partidas por 4-2, a pesar de perder una de ellas,[12] pero al año siguiente el sucesor de Deep Blue (denominado, en un alarde de imaginación, Deeper Blue) derrotó finalmente a Kasparov en otro match a seis partidas por 3,5 a 2,5, ganando dos partidas, perdiendo una y haciendo tres veces tablas.
Estos dos duelos fueron el pistoletazo de salida para la imparable progresión de los programas que juegan al ajedrez. Vinieron Arasan, Rebel 3D, Chessmaster, Fritz… cada uno con más potencia y capacidad que el anterior. Se aprovechaban no sólo del increíble salto de potencia de los ordenadores, sino del cada vez mayor y mejor uso de técnicas de evaluación de las posiciones. Tanto era así que los jugadores humanos crearon estrategias nuevas para competir con las nuevas generaciones de programas ajedrecísticos, haciendo movimientos muy conservadores a largo plazo, o bien entregando un peón “gratis” a cambio de un mejor desarrollo, etc. Pero estas nuevas tácticas tampoco duraron mucho. Los programas de ajedrez fueron mejorando, incorporando nuevas habilidades o recursos, aprovechando la creciente potencia del hardware… Ahora ya no hay un humano que sea capaz de ganar consistentemente a las máquinas jugando al ajedrez. Ya no, hace años que no.
La forma de clasificar a los jugadores de ajedrez es mediante un sistema llamado “Sistema de puntuación ELO”,[13] que va quitando o poniendo puntos a los jugadores en función de los resultados de sus partidas con otros jugadores. Básicamente, se comparan los ELO’s previos de ambos jugadores y en función del resultado real de la partida se trasvasan puntos de uno a otro jugador. Pues bien, en el momento de juntar estas letras, el jugador con ELO más alto es precisamente el campeón mundial, el noruego Magnus Carlsen, con un valor de ELO de entre 2.833 y 2.986 dependiendo de si son partidas tradicionales (o sea, largas), cortas o relámpago. Y seguramente ese 2.986 en partidas blitz -o sea, las rapidísimas: 5 minutos para 40 movimientos- sea el valor más alto jamás alcanzado por un jugador en la historia, o estará muy cerca.
Pues bien, el campeón mundial de programas de ajedrez es Stockfish, con otros como Houdini, Komodo o Rybka muy cerca de él. Se trata de un programa de código abierto, es decir, gratuito, que tiene reconocido un ELO de… ¡3.400 puntos![14] Es decir, entre 550 y 600 puntos más que Carlsen, el actual campeón mundial que es, posiblemente, el jugador más fuerte de la historia.[15] En un duelo entre Carlsen y Stockfish, o cualquier otro programa de potencia similar, no cabe la menor duda de quién obtendría la victoria. Y no sería Carlsen, precisamente.
Son, en definitiva, programas muy sofisticados, que incorporan siglos de conocimiento del juego, que se apoyan en: a) completísimos libros de aperturas que compilan prácticamente todas las aperturas conocidas; b) exhaustivas bases de datos de finales, que muestran el camino exacto, la mejor jugada posible para conseguir la victoria en posiciones del final de partida, con pocas piezas en juego; c) elaborados mecanismos de evaluación de las posiciones atendiendo a centenares de parámetros posicionales y tácticos refinados durante muchos años de experiencia analítica; y d) poderosos y muy eficientes algoritmos de poda de los árboles resultantes, para elegir las jugadas más prometedoras en las que profundizar el análisis. Y todo ello con un potente hardware que les permite analizar decenas de millones de movimientos por segundo.
En una palabra: estos programas para jugar al ajedrez son el resultado de millones de horas de análisis, investigación y estudio tanto de jugadores y analistas de ajedrez como de ingenieros e informáticos. Son el culmen del desarrollo humano para jugar a este juego tan especial. Son… perfectos.
¿Perfectos?
CUANDO TODOS ERAN FELICES… ENTONCES LLEGO ALPHAZERO
Como hemos visto, Stockfish, Houdini y otros programas han sido desarrollados paso a paso con los algoritmos específicos más avanzados para comprender el juego del ajedrez y la experiencia acumulada a lo largo de los años. Representan lo que podríamos llamar “la aproximación del ingeniero” para resolver un problema. Sin embargo, hay otra aproximación diferente para aprender a jugar al ajedrez, que es básicamente la que utiliza un niño al que se le enseñan las reglas básicas: el ensayo-error. El niño recién enseñado de momento no sabe nada de la apertura española, ni de las ventajas de clavar las piezas, ni de la forma de dar mate con sólo una torre: lo que hace es comenzar a jugar partidas moviendo las piezas según se le va ocurriendo y aprender del resultado.[16] Aprende que sacar a pasear la dama a las primeras de cambio no suele ser una buena elección, a evitar el mate pastor y que una torre vale más que un caballo. Con el tiempo, poco a poco, empieza a dominar los aspectos de la táctica y la estrategia… y entonces quedará irremisiblemente atrancado, hasta que algún vecino amable le regale un libro de aperturas o sobre táctica y descubra que todo lo que ha aprendido a golpe de partidas perdidas se puede aprender en los libros que han escrito otros que, a su vez, han aprendido en libros que han escrito otros más, que a su vez… Y comenzará a usar programas que mejoren su juego y su análisis, y a contrastar su sapiencia en torneos con la del resto de jugadores que, básicamente, han aprendido como él mismo. Eventualmente, si te llamas Magnus Carlsen y eres un superdotado para este juego llegarás a ganar el campeonato mundial. Varias veces.
Lo que parece evidente es que el aprendizaje por ensayo y error está limitado: llegará un momento en que será casi imposible mejorar a base de jugar partidas sin saber nada de aperturas, ni de finales, ni de bla, bla, bla… ¿no?
Pues parece que no. Porque así, precisamente así es como AlphaZero ha aprendido lo que sabe. Y sabe mucho.
Desde hace mediados de los 70 se conocen diversas técnicas de lo que se llama “Inteligencia Artificial”. En los años 90, los que molaban eran los “Sistemas Expertos”, que iban aprendiendo el comportamiento del mundo según se lo explicaban expertos humanos que les enseñaban qué decisiones tomarían ellos ante una cierta situación. Aquello cayó finalmente en el olvido, o casi, debido a la dificultad de que los expertos humanos pudieran coherentemente razonar el porqué de sus decisiones, y entonces se pensó que lo idóneo era que las IAs aprendieran solitas. En consecuencia se inventaron las “redes neuronales” y el “aprendizaje automático” (machine learning). Se basan en crear una suerte de “neuronas” virtuales organizadas en diferentes capas, a las que se entregan unos ciertos datos de entrada y una salida esperada, para que aprendan de estos datos reales. Por ejemplo, se les entregan miles o millones de letras “a” manuscritas (que un humano ha determinado previamente que son, efectivamente, aes), y la red se va automodificando (modifica los pesos que aplica en cada capa a cada característica básica) para ir comprendiendo la estructura íntima de lo que los humanos llamamos “a”. Si todo va bien, al final la red será capaz de identificar qué es una “a” manuscrita, posiblemente mejor incluso que los propios humanos.
Pues bien, AlphaZero, creada por DeepMind, la división de IA de Google, es una red neuronal. Con suficientes capas y un algoritmo de aprendizaje general que, en principio, sirve para casi todo, lo que normalmente quiere decir para bastante poco; ya se sabe el antiguo dicho: aprendiz de mucho, maestro de nada. Es decir, no está especializada en ajedrez. No tiene un gigantesco libro de aperturas que le guíe por los intrincados comienzos de las partidas. No conoce los valores teóricos de cada pieza, afinados tras siglos de análisis. No tiene una completa tabla de finales que indique la forma correcta de jugar estas posiciones. No sabe nada de la estrategia del juego medio, ni de los trucos tácticos ni de cómo valorar las interioridades de ciertas posiciones. A AlphaZero únicamente se le han enseñado las reglas del juego: cómo mueven las fichas, cómo se comen, cómo promocionan los peones al llegar a la octava fila y, por supuesto, cuál es el objetivo de la partida, que es zamparse al rey enemigo.[17] En una palabra, Alphazero no tiene ni idea de todos aquellos sibilinos detalles que hacen realmente fuertes a los programas especializados y, por ende, a los jugadores humanos. Es únicamente una red neuronal profunda y un algoritmo tipo tabula rasa para reforzar el aprendizaje. No usa el algoritmo “alpha-beta”, ni tampoco el “minimax”, los habituales en programas de ajedrez, sino uno mucho más genérico: un algoritmo de tipo MonteCarlo para optimizar la selección de valores. Nada más.
A Alphazero, tras enseñarle las reglas, le han puesto a entrenarse jugando contra sí mismo, es decir, a entrenar su red neuronal por ensayo-error: hago un movimiento más o menos aleatorio tras otro, primero con blancas, luego con negras y, al final, uno de los dos bandos da mate. Y eso es bueno, luego los movimientos que hizo ese jugador deben ser mejores que los del que perdió. Con esta información se retroalimenta la red. Y repetimos el proceso usando los nuevos pesos de la red. Una y otra vez. Hasta hace no mucho diríamos que necesitaría muchos millones de repeticiones para jugar a nivel de jugador de club… y lo de llegar a jugar a nivel de maestro es ya otro cantar que difícilmente se puede alcanzar trabajando exclusivamente de esta forma.
Sin embargo, algo en el horizonte intuía que esto podría cambiar: una versión anterior de esta red, llamada AlphaGo, entrenada básicamente de la misma forma, había vencido en 2016 a Lee Sedol, jugador de Go coreano que es el campeón mundial del juego. Para la posteridad quedó la cara de absoluta incredulidad del pobre Lee ante una cierta jugada de AlphaGo que le desarboló completamente: más de veinte segundos con la boca abierta y ojos como platos antes de exclamar vaya Vd. a saber qué en coreano. Ya dije que el Go es un juego de estrategia si cabe más complicado que el ajedrez. Y siendo como es este AlphaZero un heredero de AlphaGo…
LOS HECHOS
Según el paper publicado por DeepMind, entrenaron AlphaZero durante 24 horas.[18] En unas 300.000 iteraciones, unas cuatro horas de autojuego, ya había alcanzado el nivel de Stockfish. Al acabar el entrenamiento se programó un duelo con Stockfish versión 8, un match de 100 partidas, 50 con cada color. Stockfish fue configurado con su nivel más fuerte, usando 64 hilos y un Gigabyte para la tabla hash donde evalúa las posiciones. Con esa configuración evalúa unos 70 millones de movimientos por segundo. Es decir, Stockfish jugaba a su máxima potencia posible. El match se jugó. Y el resultado fue…………… . . . . . . .
¡ 28 a 0 !
O, si queréis, 64 a 36: AlphaZero ganó a Stockfish 28 partidas y las 72 restantes fueron tablas. No perdió ni una. De las 28 partidas ganadas, 25 fueron con blancas[19] y 3 con negras. Y encima, para conseguir tal hazaña sólo necesitó calcular 80.000 movimientos por segundo. No 80 millones: sólo 80.000, casi mil veces menos que Stockfish. Algunos comentaristas inciden en que parece que las condiciones del match, con un minuto de evaluación por movimiento, no son los más adecuados para Stockfish versión 8, la utilizada en el match, y parece que tampoco se le dejó usar su base de datos de finales. Da igual: en el paper publicado se han mostrado como ejemplo 10 partidas de las 100 que jugaron, y en muchos casos AlphaZero ha realizado jugadas que, por decirlo de algún modo, están simplemente fuera de la comprensión actual del ajedrez. Tanto de humanos como de máquinas.
Por ejemplo, hay maestros que aseguran que la jugada 21 de la sexta partida publicada, Ag5, es la mejor jugada del año. O de la década, o del siglo, quién sabe. Un movimiento imposible de ver, incomprensible para humanos, incluso para el propio Stockfish, que ni tan siquiera lo considera en sus análisis por estúpido y perdedor, pero que una vez jugado deja la partida vista para sentencia. Si os interesa, esa partida concreta está maravillosamente comentada por el Gran Maestro Pepe Cuenca en este video. En el mes escaso que Alphazero lleva en el candelero, las 10 partidas publicadas han sido destripadas, analizadas y comentadas muchas veces por una legión de analistas asombrados. El propio Leontxo García, en el comentario a esa misma partida en El País, asegura que “si existe alguna civilización superior a la humana en otro planeta quizá juegue así de bien…”.
No sé cómo calificar estos datos, teniendo en cuenta el fortísimo nivel del rival… y no quiero pensar qué hubiera pasado de haber jugado con un humano, con cualquier humano. Es como si un partido de fútbol de la Champions acabara 35 a 0, o como si de pronto un corredor de maratón hiciera una marca de una hora y cuarto. Es impensable, es increíble. Es una paliza en toda regla, una enmienda a la totalidad al modo en que tradicionalmente los informáticos hemos atacado los problemas…
…Y también algo que nos debe preocupar seriamente. Al menos a mí me preocupa. Porque para AlphaZero y sus creadores el ajedrez es simplemente un medio, una mera anécdota.
LAS IMPLICACIONES
Lo de menos es que AlphaZero juegue bien al ajedrez. O al Go, o al Shogi, una especie de ajedrez japonés.[20] De paso, AlphaZero encontró por el camino, y sin ayuda, todas las aperturas más jugadas y analizadas a lo largo de los siglos, las usó frecuentemente y fue capaz de batir a Stockfish y su ingente base de datos una y otra vez, sin perder una sola partida. Reproduzco, en fin, un párrafo lapidario del propio paper:[21]
“The game of chess represented the pinnacle of AI research over several decades. State-of-the-art programs are based on powerful engines that search many millions of positions, leveraging handcrafted domain expertise and sophisticated domain adaptations. AlphaZero is a generic reinforcement learning algorithm – originally devised for the game of Go – that achieved superior results within a few hours, searching a thousand times fewer positions, given no domain knowledge except the rules of chess. Furthermore, the same algorithm was applied without modification to the more challenging game of shogi, again outperforming the state of the art within a few hours”.
Sí, todo lo anterior es lo de menos. Lo de verdad impactante de la noticia es que una red neuronal sin grandes conocimientos de un tema concreto y altamente especializado sea capaz, en tan sólo 24 horas de entrenamiento (o las que sean) jugando contra sí misma, de alcanzar un dominio del juego muy superior al preexistente, con una comprensión de las posiciones lejos del alcance de cualquier otro organismo, esté basado en el carbono o en el silicio. En unas pocas horas de entrenamiento ha aprendido de ajedrez más que todos los humanos y programas juntos durante siglos. Ha encontrado todos los trucos y estrategias que tanto ha costado encontrar a los especialistas, obviamente también alguna nueva desconocida, y todo sin siquiera jugar contra un rival ni enseñanza teórica alguna.
No quiero pensar lo que podría hacer un programa como éste si lo pusieran a analizar Otras-Cosas-Más-Importantes. Relaciones internacionales. Comercio, importación y exportación. Obtención de nuevos medicamentos. Fabricación y logística. Marketing y publicidad. Conducción automática. Gestión energética. Control de Armas. Gestión de conflictos. Reconocimiento de patrones, de caras, de objetos. Y mil cosas más que no se me ocurren, pero que a alguien se le ocurrirán. Cosas que, con toda seguridad, van a analizar. DeepMind es una división de Google, no lo olvidemos, y, que yo sepa, Google es una empresa con ánimo de lucro (como todas, claro), y no una ONG. Y, desde luego, no están solos: hay otras empresas e investigadores punteros trabajando en Inteligencia Artificial. Muchos.
Como antes recalqué, el ajedrez es perfecto para investigar nuevas técnicas de evaluación y decisión que luego pudieran ser extrapoladas a otros campos más interesantes y productivos. La duda es: interesantes y productivos… ¿para quién?
¿Estará Skynet más cerca de lo que pensamos?
¡Suerte!
Disfrutad la vida, mientras podáis. Y esta vez va en serio.
- En otros tiempos yo jugué al ajedrez a nivel de aficionado, bastante mal, por cierto. Ahora me gusta seguir de vez en cuando partidas de maestros, aunque reconozco que a duras penas las entiendo. [↩]
- Escaque es cada una de las casillas blancas y negras (o al menos claras y oscuras) del tablero. [↩]
- Ambos jugadores poseen una información perfecta tanto de la situación de las piezas propias y del contrincante como de las reglas; no hay información oculta de ningún tipo. [↩]
- Apertura: Formas distintas de comenzar el juego. Suele comprender los primeros doce o quince movimientos de cada jugador. [↩]
- Así nombrada en honor a Ruy López de Segura, clérigo español que la popularizó en el siglo XVI, y que sigue siendo posiblemente la apertura más jugada en la actualidad. [↩]
- Esto hizo Colossus, el primer auténtico ordenador creado en Bletchley Park, Inglaterra, para descifrar el código Enigma usado por los alemanes. [↩]
- Richard Feynman, por ejemplo, cuenta su trabajo dentro del Proyecto Manhattan en el Laboratorio de Los Álamos calculando precisamente esto. [↩]
- Vale, a lo mejor exagero, pero en cualquier caso el número de partidas posibles es de un uno y un montón de ceros detrás. [↩]
- Pongo esta frase en negrita porque es el quid de todo el asunto. Recordadla para dentro de un rato. [↩]
- Kb: Kilobyte, o sea, 1.024 bytes cada uno. Un ordenador de la época tenía 16.384 octetos o, en el mejor de los casos, 32.768. Es decir, uno o dos millones de veces menos que esa minúscula tarjeta de memoria que tienes en tu cámara de fotos o en tu teléfono móvil… [↩]
- Las características de la Novag eran impresionantes para una máquina de ajedrez de la época: procesador con 5 Mhz de velocidad de reloj, 64 Kb de memoria ROM y nada menos que 4 Kb de memoria RAM. Sí, Kb, no Gb, ni siquiera Mb. [↩]
- De las cinco restantes partidas, Kasparov ganó 3 y empató las otras dos. [↩]
- Curiosamente, ELO no es un acrónimo, sino el apellido del inventor del sistema, el húngaro Arpad Elo. [↩]
- ¡Y hasta de 3.650 en partidas rápidas! [↩]
- Los jugadores actuales –el propio Carlsen, Kariakin, Caruana, Aronian, Nakamura, etc– tienen la ventaja de tener a su disposición todos estos programas para poder entrenarse con ellos, lo que les permite ir mucho más allá en su estudio del juego de lo que nunca pudieron ir genios como Capablanca, Alekhine, Tal, Bobby Fischer o el propio Kasparov. Por ello es opinión generalizada que son más fuertes que cualquier otro jugador de la historia, por genial que éste fuera. [↩]
- Así aprendieron Capablanca o Bobby Fischer, por citar sólo a dos genios del ajedrez. [↩]
- En realidad nadie se come al rey: se anuncia jaque-mate, es decir, que a la próxima el rey será indefectiblemente comido, y se termina la partida sin darse el real festín, aunque en la práctica magistral es raro que se dé mate: el jugador abandona antes de eso, cuando ve que tiene la partida perdida. [↩]
- No queda muy claro si el entrenamiento fue de 4 horas, de 8 o de 24… en cualquier caso es una nimiedad; poco importa si fueron 8 o 24: en cualquier caso son muy, muy pocas. [↩]
- Las blancas son siempre las que inician el juego y, por tanto, deciden el tipo general de apertura. [↩]
- Incidentalmente, DeepMind usó la misma red neuronal y los mismos algoritmos para entrenar a AlphaZero a jugar al Go y al Shogi, con tiempos de entrenamiento similares. Podéis imaginar el resultado de los duelos contra los programas campeones del mundo de Go, el propio AlphaGo antes mencionado, y Elmo, en Shogi. Palizas de dimensiones bíblicas, igual que en ajedrez. [↩]
- Que no voy a traducir, es bastante sencillo de comprender. [↩]
The AlphaZero: Un avance muy significativo de la Inteligencia Artificial by , unless otherwise expressly stated, is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 2.5 Spain License.
{ 25 } Comentarios
Grandísimo artículo, pero, aunque no afecte al fondo ni a las conclusiones, quisiera apuntar algún detalle: - Lee Sedol no era campeón mundial mundial de go. Ese título no existe. Lee es un extraordinario jugador, que dominó el panorama entre 2007-2011, además con un estilo muy creativo y agresivo (un “Mijail Tal”, para entendernos), pero que ya no estaba entre los 5 primeros del ranking cuando jugó con AlphaGo (quizá el 6 o 7). Posteriormente, una nueva versión de AlphaGo sí derrotó 3-0 al n°1 actual, el fenómeno chino de 20 años Ke Jie, el “Carlsen” del go. - Aunque no tenga mucha importancia, las listas Elo de la FIDE y las de las máquinas se calculan de formas distintas y, si somos puristas, no serían directamente trasladables en diferencia de puntos entre Carlsen y Stockfish. - Lo de las horas de entrenamiento es relativo. El hardware usado por AlphaZero (sobre todo en el entrenamiento de la red, más que en el match) es realmente monstruoso. Son detalles, pero el artículo es realmente excelente. Saludos.
A mí no me sorprende el resultado, porque cuando estudié estas cosas en la carrera ya me pareció que esta forma de aprendizaje era el futuro de la IA (aunque luego mi camino profesional no ha ido por ahí). Lo que sí me sorprende es que haya llegado tan pronto y que no haya sido a base de pequeños saltos incrementales, sino avasallando al hasta entonces campeón.
Perdón, ¿hay algún problema que impida la publicación de mi anterior comentario?
Sólo pretendía puntualizar un par de errores muy habituales (lo de Lee Sedol como campeón del mundo y el “Elo” -bayesiano- de los de los módulos de ajedrez).
Saludos.
Acabo de leer este artículo, explicando los resultados en síntesis de voz del mismo grupo DeepMind de Google: https://www.xataka.com/robotica-e-ia/la-voz-sintetica-de-google-generada-por-inteligencia-artificial-es-increiblemente-parecida-a-la-humana
@Torvic:
No, no ocurre nada con tus comentarios. Simplemente, que deben ser moderados y no he podido entrar antes a hacerlo.
Gracias por el aporte; de lo de Lee Sedol y compañía, sólo sé lo que he leído en prensa, porque de go no tengo ni idea, así que gracias por la corrección.
Y en cuanto a entrenamiento, es obvio que han utilizado los monstruosos recursos de Google para entrenar a AlphaZero, pero si lo hubieran hecho con un hardware menos potente habrían tardado en entrenarla… ¿quizás un semana, un mes? Sigue siendo poquísimo tiempo. Está claro que aquí la clave no es tanto el hardware, que ayuda, sino el algortimo de aprendizaje y construcción de la red, que son, evidentemente, muchísimo más eficaces de lo que jamás hemos tenido.
Como J apunta en un comentario, usando una técnica similar han conseguido sintetizar una voz humana que lee textos de forma indistinguible a la de una persona; después (bueno, no, ya están en ello) vendrá la conduccion automática, la gestión logística, el marketing y publicidad dirigida, y tantas cosas más. Y por si fuera poco, en Google ya han diseñado una IA que diseña y crea otras IAs. ¡¡¡IAs autorreplicantes, por favor!! ¿A quién se le ocurre?
Y nosotros tan felices, discutiendo acaloradamente de nuestras cositas insignificantes.
Espero que pase mucho tiempo hasta que a algún iluminado se le ocurra enganchar el sistema de defensa de algún país importante a una IA, con la excusa de que “se eliminan los errores humanos y se da respuesta con mayor rapidez a las amenazas“. Porque es inevitable que ocurra: tarde o temprano vendrá el primo del cuñado del jerarca de turno y pensará que así se ahorra una pasta en personal y poder gastársela en cambio en otras cosas más gratificantes…
Sí: estoy un poco acojonado, qué le voy a hacer.
En mi viejuna opinión el problema de la IA no es tanto que pueda llegar a ser muy “lista” sino que el ser humano, en su mayoría superlativísima, es cada vez más tonto, de inteligencia fácilmente superable y manejable por los listillos de turno. Mientras tanto, para disfrutar de la vida, podéis leer/releer BEGIN (en Libros de El Cedazo). Feliz 2018.
“La división de Inteligencia Artificial de Facebook creó un sistema dedicado a las negociaciones. Días después, se dieron cuenta de que dos robots dejaron de hablar inglés Y comenzaron a comunicarse en su propio idioma”. ¿estamos hablando de lo mismo ?
Gael: Obviamente, sí.
El asunto es que la capacidad de los algoritmos de software en que se basan las IAs actuales (deep learning, fundamentalemente) son “evolutivos”, por decirlo de algún modo. Es lo que ha hecho Alphazero, evolucionar en su mundo de caballos y alfiles virtuales hasta dominar el juego. Si las ponemos a evolucionar en otros ambientes (como el de la noticia que citas de Facebook, que yo también había leído)… pues tomarán decisiones que nos sorprenderán (como el movimiento Ag5 que cito en el artículo), que no esperábamos. Buscarán la forma más eficaz de comunicarse o de resolver el problema que tienen como objetivo, y encontrarán soluciones. Como ponerse a hablar en un ceros y unos en vez de en inglés, por ejemplo. O, llegado al caso, decidir que los humanos somos un desastre negociando y que se puede prescindir de nosotros.
Sí, eso mismo es lo que me preocupa.
Solo puntualizar que código abierto no es lo mismo que gratuito.
Cierto, Laertes, bien puntualizado.
En este caso es cierto que Stockfish, además de ser de código abierto, es gratuito, pero no tenía por qué ser así. De hecho, hay una serie de páginas de ajedrez que usan Stockfish para analizar las jugadas (“el módulo”, dicen eufemísticamente todos, porque podría ser otro programa diferente, pero tanto Houdini como Komodo, etc, son comerciales y se usan mucho menos).
Por ejemplo, en chess24 [https://chess24.com/es/watch/live-tournaments/alphazero-vs-stockfish/1/1/1 y siguientes] se pueden seguir las diez partidas publicadas, analizadas por el propio “módulo”, Stockfish en este caso.
Gracias por tu comentario.
Faltó el Elo de alphazero , si es que es posible considerarlo en este sistema de puntuación .
Dino: No es que falte, es que no se conoce todavía. Sólo se han publicado esas 10 de las 100 partidas jugadas, por lo que no hay datos suficientes para calificar a Alphazero con su ELO.
Sí que he leído en algún sitio que debería andar por encima de los 4.000, pero son especulaciones por el momento.
No se sabe siquiera si DeepMind va a liberar a Alphazero para su uso como programa de ajedrez comercial o no, como es el caso de Stockfish, Houdini y demás, o todo se va a quedar en un ensayo de laboratorio. Habrá que estar atento.
Muy interesante sin duda, casi me ha despertado mas ganas en conocer mas sobre IA’s.
No comparto mucho el sentimiento catastrofista o el sindrome “skynet”, sobre todo por que creo que las vacas tienen justificado tener miedo a los humanos, pero no tienen mucho sentido en el otro sentido. Ademas recuerdo haber leido un articulo de la national geographic en el que se planteaba que una especie extraterreste podria bastante razonablemente considerar que los cereales son la especie dominante del planeta tierra y que disponen de una especie de hominidos esclavizada para su expansion y dominio, eso sin entrar en el conflicto entre ellas para su expansion. En mi experiencia, limitada por la escasa diferencia en inteligencia que se da entre personas, yo diria que mas inteligencia se corresponde con menos violencia y mas generosidad, no al reves. Asi que me cuesta imaginar una IA suprainteligente considerando una amenaza a un monton de monos que apenas han dado un paso de tirarse piedras a la cabeza y mucho menos considerar una amenaza futura su posible evolucion, siendo esta infinitesimal considerada con la suya, bien podria sentirse amenazada por las vacas o los cereales. A mi me asusta mas el hecho de que los que tengan control sobre los sistemas de defensas sean seres tan idiotas y egoistas como los seres humanos, pero bueno, ahi estan todas las catastrofes humanitarias presentes y pasadas para demostrarnos las bondades del control humano. Yo me inclino mas por imaginarme el riesgo de las IA a un escenario similar al final de “Yo Robot” mas que al de “Terminator”.
De todas formas, el ajedrez, es un juego bastante limitado en cuanto a estrategia comparandolo con la miriada de juegos de estrategia disponibles en videojuegos (yo ya ni lo toco, por que me parece horriblemente aburrido) y la verdad es que la “IA” en esos juegos siempre es bastante limitada sino completamente inutil cuando el objetivo del juego no es simplemente comerse al rey contrario, sino otro tipo de parametros, como orden o belleza bastante mas dificil de cuantificar, cuanto menos armonia. Claro que no creo que haya habido mucha dedicacion ni aplicacion de autenticas IA a esos juegos, pero a ver si se prueba y nos dan mas diversion.
Lo más lógico es poner a prueba a ésta inteligencia y darle la oportunidad de demostrar que tan buena es en situaciones de mayor complejidad y obviamente con un beneficio para la humanidad.
Me alegra, Sergio, comprobar tu optimismo. Pero la cosa no es tan sencilla.
Hablaré brevemente de un ejemplo real: la previsión de generación de energía eléctrica en los países occidentales. En España ese trabajo lo hace Red Eléctrica, y consiste en determinar qué demanda de electricidad va a haber en los próximos días y planificar qué centrales deben funcionar y cuáles no.
Como sabéis, los diferentes tipos de electricidad tienen diferentes precios. Los kilovatios más baratos son los procedentes de energías renovables (hidráulica, eólica o fotovoltaica); los siguientes más baratos son los nucleares, luego los del carbón y por último las centrales de gas, o de ciclo combinado, que son las que producen el kilovatio más caro. Y luego está la posibilidad de importar o exportar electricidad a países vecinos, Francia, sobre todo.
Cada una tiene sus características propias: en las renovables influye el clima: si está nublado se produce mucho menos energía fotovoltaica, que además de noche no funcionan, obviamente; si no hace viento (o hace demasiado), los que no producen son los molinillos, y si hay sequía, las hidroeléctricas no pueden generar nada; las nucleares no paran nunca ni de noche ni de día, salvo paradas programadas o averías; las de carbón contaminan mucho y las de ciclo combinado consumen sobre todo gas, que es muy caro.
Pues bien, teniendo en cuenta todos estos condicionantes, desde hace años las compañías eléctricas tienen complicadísimos algoritmos (sistemas expertos, redes neuronales o lo que sea) para, teniendo en cuenta las predicciones del tiempo en las localizaciones precisas de cada planta eólica o fotovoltaica, las necesidades conocidas de demanda eléctrica, las averías de unas u otras centrales, el precio del kilovatio en los diferentes canales y mil cosas más, conseguir el mejor mix posible al precio más barato… o maximizar los beneficios de las compañías, o vaya Vd. a saber qué.
El resultado es un planning de qué centrales deben funcionar y cuales no, y en base a eso se establecen los precios del kilovatio hora a hora.
Visto lo visto, éste es un problema típico para una red neuronal como Alphazero que, debidamente entrenada, acertará mucho mejor que los humanos en sus previsiones y en los resultados obtenidos. No se olvidaría nada, ningún aspecto y generaría siempre la mejor solución. Ahora bien, la pregunta es: la mejor solución… ¿para quién? ¿Para la sociedad en su conjunto, para el medio ambiente, para la compañía o compañías…? Dependiendo de cómo se entrene y qué objetivos prioritarios se le propongan (comerse al rey contrario, en caso del ajedrez) tomará unos u otros caminos. Y podrán ser sorprendentes.
Quizás decida que para bajar el consumo hay que cerrar ciertas centrales, o que hay que dar más prioridad a algunas sobre otras, o qué se yo. Mientras sólo emita órdenes en un papel y luego sean los humanos quienes den las órdenes físicas, todavía hay control, pero si además le conectamos directamente las centrales para que las encienda o apague a su gusto…
Si pensamos en otros asuntos más graves, como todo lo que tenga que ver con armamento, igual la IA decide comenzar una guerra por su cuenta porque así consigue con mayor rapidez los objetivos que se le han dado en su entrenamiento (derrotar al enemigo y cosas así). Etc, etc.
Alphazero sólo juega al ajedrez. Pero… ¿y sus descendientes, a qué más van a jugar? ¿Recordáis “Juegos de Guerra”, la peli de John Badham de los años 80 que nos puso la carne de gallina? Todos pensamos que, vaya, eso es una peli solamente y lo que allí pasa no llegará a ocurrir en la realidad…
…¿Seguro?
Saludos Macluskey,
A ver si lo he entendido bien. El nivel de decision que consideras yo diria que ya esta en manos de ordenadores de hecho. Una electrica no se gasta el dinero que se gasta en un ordenador para que le calcule el mix electrico que mas beneficio le produce a ella (ademas beneficio monetario inmediato, me imagino yo), para luego no hacerle caso, de hecho me imagino que habra cierto grado de automatizacion actualmente y la funcion humana se reduce a supervisar, eso sin contar con los “supervisores” analogicos, que suelen ser los que en verdad se aseguran de que no vaya todo realmente mal (corta circuitos, los molinos se apagan solos si hay mucho viento, por mucho que le digas (tienen un embrague mecanico controlado por un velocimetro, si mal no recuerdo), volantes de inercia que evita saltos innecesarios en la corriente, etc, etc). Quiero decir, que el hombre es un animal perezoso y olvidadizo, en el momento en que use un tiempo una calculadora, aunque luego escriba el los resultados, llegara el momento que si la calculadora le dice que dos mas dos son cinco eso sera lo que el escriba como resultado por que ya ni se acuerda de sumar, notara algo raro si le dice que dos mas dos son ciento cientocincuenta, pero eso lo puede notar un controlador analogico de todas formas.
Yo es que no he visto esa pelicula, por eso no se muy bien si acierto, pero si alphazero controla todos los armamentos y alguien lo activa con el objetivo de destruir al enemigo, poca culpa sera del ordenador. Que tenga que haber una serie de ocho despistes hasta que realmente se active o que solo tenga que haber un despiste a mi no me parece que sea lo que seria el punto si hablamos de la singularidad tecnologica, la cuestion seria si estuviera en manos del ordenador elegir exactamente cual es la mejor solucion, incluyendo el para quien. Si seguimos en las electricas, si consideramos las opciones que has dicho, para la sociedad en su conjunto, para el medio ambiente o para la compania (consideremos solo estos tres), la realidad es que estan conectados y a lo mejor un ordenador fuera capaz de entender que el mayor beneficio para la compania se dara en el caso de que no destruya el planeta y se maximice el crecimiento de la sociedad de la que recibe sus beneficios o vete tu a saber. El salto cualitativo sera cuando pongamos efectivamente en control de ordenadores las decisiones de alto nivel, que nosotros nisiquiera controlamos claramente, a la vista del lamentable estado de las cosas. Es decir, si hubiese estado en manos de una persona el propagar o no la peste negra a lo mejor no lo hubiese hecho y seguiriamos viviendo en la edad media en un estado permanente de cuasi-innanicion, a lo mejor una guerra nuclear seria una mejor alternativa al crecimiento descontrolado y un calentamiento global desquiciado que pueda convertir la tierra en venus y los humanos supervivientes en colonias lunares dentro de dos siglos lamenten amargamente que nadie pulsase el bendito boton rojo o a lo mejor los humanos florecientes en colonias por todo el sistema solar celebren la perdida de la tierra como un mal menor que alumbro la edad espacial, quien sabe.
En mi opinion si un ordenador como alphazero se programa simplemente para hacer algo de acuerdo a los valores del ser humano, que ya aprendera el por su cuenta, mucho mejor de lo que le pueda ensenar un ser humano (que tiende a considerarse mejor o peor de lo que es y dificilmente acierta a comprenderse) y a controlar algun aspecto de nuestras sociedad de acuerdo a ello, me imagino que tomara decisiones sorprendentes (y, o sorpresa, como ser humano que soy, estoy convencido de que son las que yo creo que se deberian tomar por que pienso que el resto de la humanidad es idiota) pero estoy seguro de que maximizara los beneficios de casi todos y minimizara las perdidas de algunos (que es lo que suele hacer todo ser humano, alterado por el esfuerzo que pone en ser de lo “casi todos”, generalmente produciendo una perdida neta para si mismo, que no beneficiando su beneficio) mucho mejor de lo que un ser humano pueda hacer y que si no lo hace mejor, sera por el elemento humano que quede por el camino, aunque quiza decida que el ser humano es mejor misero si es por su propia mano que en la gloria si es gracias a los ordenadores, quien sabe los seres logicos son complicados (yo no lo creo en absoluto, lo digo por reconocimiento, casi nadie es misero o prospero hoy en dia por su propia mano y lo llevamos bastante bien), pero lo que veo una posibilidad muy remota es que se sienta amenazado y decida destruirnos llevandose lo que sea por delante, por que eso no tiene nada de inteligente, y tambien veo bastante remota la posibilidad de que pueda ser enganada en el proceso por un ser humano, por que lo seres mas inteligentes no se dejan enganar por seres menos inteligentes y menos por casualidad (me he leido la entrada de la wikipedia de la pelicula).
Incluso dando el siguiente paso, que al final un ordenador del tipo alphazero desarrolle su propio set de valores, no considero que estos tengan que ser no beneficiosos para nosotros, por lo que dije antes, que me parece que la bondad es inteligente y la maldad estupida. Claro que a lo mejor lo digo desde un punto evolutivo, si la aplicacion de la inteligencia no reportara beneficios para la especie, supongo que los que se habrian extinguido serian los hominidos mas inteligentes y no sus contemporaneos mas estupidos y eso sin duda influye en lo que consideramos bueno o malo y puede no ser valido para la inteligencia de per se, pero dado que no tengo ninguna otra clase de inteligencia que la humana para considerar no creo que se pueda ir mucho mas alla. Claro que tambien se puede mirar la tendencia, cuanto menos nos preocupamos de nuestra supervivencia nuestras decisiones tienden a ser mas benevolas con otras especies, asi que habiendo cada vez mas vegetarianos entre los humanos, es dificil de imaginar a las IA siendo carnivoras, si es solo fruto de una inteligencia superior. Claro que eso depende mucho de la proyeccion que hacemos de nosotros mismos en otros animales, como el dolor, lo que me lleva a pensar, si definimos la inteligencia como la obtencion de soluciones, eso solo tiene sentido si existen diferencia en los resultados y es eso posible para una IA? Si no tienen dolor, ni hambre, ni instintos que las deformen, que sentido tendria desarrollar un set de valores? No se crean los valores acaso para controlar lo que no podemos abarcar con la inteligencia? No seria una inteligencia pura incapaz de desarrollar valores propios por que no tendria necesidad de ellos? Claro que no son mas que dudas que surgen por tener solo un tipo de inteligencia que considerar, asi que no tienen mucho sentido. Asi que quiza la cosa no sea sencilla, pero el optimismo es mi opcion al comprobar que racionalmente es dificil asumir ninguna posicion y dados a dar un salto de fe, bien puede darse en la direccion que uno quiera.
yo creo que debe ser muy acotado el poder que se entregue a la IA , ya que en unos años de aplicados sus cálculos todo puede ir muy bien , pero proyectado a largo plazo con más de una sorpresa negativa nos podemos encontrar – no creo que maneje todas las variables , eso sólo la naturaleza lo puede hacer – además es posible que en el caso de la energía , que se usa como ejemplo , todo vaya muy bien , ¿pero el medio ambiente? ; ¿como sabemos que no será afectado ? . el punto es que todo está relacionado , sin ir más lejos , se me viene a la mente lo que sucede cuando algunas especies vegetales o animales son llevados con fines específicos a otros lugares donde no existían ; provocando grandes alteraciones ecológicas jamás imaginadas .
Sergio: Has puesto el dedo en la llaga.
Efectivamente, los humanos somos así: creamos un programa que hace nuestro trabajo, lo diseñamos para que lo haga bien y rápido, y llega un momento que nosotros, directamente, no sabemos cómo hacer el trabajo que antes hacíamos y ahora hace una máquina. Y eso lleva a no cuestionar ninguna de las propuestas o acciones que lleva a cabo la IA, y con el tiempo, la IA se convierte poco menos que en un dios, o ale menos en su oráculo.
Si además tenemos una IA autodidacta que está diseñada para aprender de forma no supervisada… ¿quién sabrá cómo está evolucionando? Esperemos, como es tu postura, que dicha evolución sea siempre manteniendo los valores mínimos y que todo sea para bien.
Lo que pasa es que en mis mucho años de informático he visto de todo, y sobre todo cómo las Leyes de Murphy se cumplen siempre de forma inexorable. Tardarán más o menos, pero se cumplen siempre. Para los que no las conozcan, son:
1) Todo lo que puede ir mal, irá mal.
2) Aquello que no puede ir mal, irá mal, no obstante.
3) Cuando todo parece ir bien, Vd. ha olvidado algo.
Feliz Año 2018!!
[Alerta sanitaria mental: ladrillo incoming]
Hola a todos
Desde el máximo respeto que se merece Macluskey y los demás, permitidme la libertad de creer del todo incorrectas casi todas vuestras conclusiones y comentarios. Es más, aseguro tal cosa aún teniendo la certeza que mis conocimientos de informática y ajedrez son bastante inferiores a los suyos (ahí, chorreando litros de chulería aún sin ser de Madrid).
Partamos de lo esencial: las máquinas no pueden ser inteligentes tal como se entiende esa palabra, punto. La mal llamada “inteligencia artificial” es una invención surgida por la necesidad de llamar la atención por parte de quienes trabajan en computación avanzada. Es el mismo motivo que tu mismo explicas sobre el titular del artículo del señor Leontxo García. El recurso más escaso de las personas es su tiempo y si pretendemos “robarle” una parte de éste debemos usar un buen cebo, sobre todo en esta época saturada de continuos estímulos. Quien no actúe así verá como su trabajo, por bueno que sea, cae en el pozo negro de la irrelevancia y el olvido. No es casualidad que a ese tipo de titulares los llamen “clickbait”.
Pero hay más efectos derivados de llamar “inteligencia artificial” a los avances en esos campos. Por motivos culturales asociamos las menciones a esa tecnología a la infinidad de obras de ciencia ficción en donde aparecen “IAs” con unas capacidades tremendas. Esas obras tienen mucho más de ficción que de ciencia, pero librarse de ese paralelismo inconsciente es complicado. Así pues, lo habitual es que al leer sobre “inteligencia artificial” estemos más predispuestos a asombrarnos y a dejar volar la imaginación.
Hay que recordar también que la mayoría de avances en este campo se están dando en empresas que invierten cifras astronómicas y por lo tanto esperarán un rédito, aunque sólo sea mejorando su imagen para que suban las acciones. Por lo tanto los comunicados de los resultados obtenidos están llenos de un cierto auto-bombo y exagerado optimismo. Añadamos al cóctel la infinidad de gurús de medio pelo dispuestos a arrodillarse ante cualquier cosa que parezca tecnología punta y que llenan Internet de ruido mediático amarillista (el PC iba a hacer desaparecer el papel, los portátiles al PC, las tablets a los portátiles y la IA a los humanos).
Todo esto provoca lo que, en mi opinión, es una disminución colectiva de la objetividad y análisis crítico con el que se afrontan estos temas; incluso en gente con conocimientos y la cabeza bien amueblada. Luego, para evitar ese estado de “embriaguez tecnológica”, yo propongo llamar las cosas por un nombre más adecuado: análisis artificial profundo. Eso es lo que hacen todos esos algoritmos: Analizar una situación dada con una profundidad que hasta ahora no se lograba con ordenadores y que, por limitaciones puñeteras del Mundo Real®, los humanos no podemos lograr por nuestra cuenta.
Vayamos ahora al meollo del asunto y aquí sí que hay algo en lo que coincido bastante con Macluskey: El resultado de AlphaZero es un rapapolvo a la forma de programar hasta ahora en muchos campos. Pero no porque hayan descubierto un modo mejor como cree él, sino porque han demostrado que existen alternativas. Hay campos en computación en donde la gente se había vuelto muy acomodaticia e indolente. Eso es algo muy malo para el desarrollo de la ciencia pues hace que se estanque en terrenos ya trillados. AlphaZero ha sido como una bofetada en la cara que te despierta del suelo en donde te crees el rey del mambo. Pero no nos equivoquemos, AlphaZero NO es mejor jugando al Ajedrez que Stockfish, juega distinto que no es lo mismo. Y por ese mismo motivo creo que donde un humano no puede ganar a Stockfish, sí que podría ganar a AlphaZero.
¿Por qué creo esto? Pues porque AlphaZero sólo sabe jugar en la medida que previamente haya ido encontrándose con situaciones de las que recuerda como sacar ventaja. Si un jugador humano le sale con un movimiento que no se espera y no conoce, no podrá evaluarlo correctamente (de hecho, es mucho peor evaluando nuevas opciones que no Stockfish) y puede perder estrepitosamente. De hecho, si se diese ese caso, sucedería exactamente lo mismo que AlphaZero le hizo a Stockfish en esa jugada tan comentada que has mencionado (y con la que también hubiese hecho morder el polvo a un Gran Maestro)
¿Al fin y al cabo, cómo jugaban hasta ahora los mejores ordenadores? Pues cogían el conocimiento que teníamos los humanos y le aplicaban una velocidad de cálculo que un humano no puede llegar ni a acercarse; por eso no podíamos batirlos ya. Existían análisis de apertura y de finales, con un límite de jugadas porque si no la cantidad de posibilidades es tan monstruosa que resultaba inabarcable. Así que en medio de esos dos extremos, los programas hasta ahora jugaban basándose en algoritmos de toma de decisiones, que eran la traducción del conocimiento humano. Pero eso nunca ha significado que la nuestra fuese la mejor forma de jugar, sólo la mejor de las conocidas.
¿Qué ha sucedido con AlphaZero? Pues que por primera vez, a un sistema informático de tan TREMENDA potencia, se le ha dicho literalmente “juega como te dé la puñetera gana”. El resultado era de esperar, ha encontrado opciones de juego desconocidas hasta ahora porque requerían de un análisis en profundidad que ni un humano (por limitaciones naturales) ni otras máquinas (por estar atados a cadenas de toma de decisión) no podían lograr. Macluskey cree que el Stockfish estaba algo limitado por el asunto del tiempo y en cambio la ausencia de tablas de finales no fue tan relevante. Yo creo todo lo contrario, que lo de las tablas de finales fue echo expreso para evitar el punto débil de AlphaZero (y así tener una victoria más rotunda que diese más bombo al asunto). Estoy seguro que cuando se analicen el centenar de partidas aparecerán victorias de AlphaZero conseguidas con finales sub-óptimos que hubiesen sido derrotas de lo contrario (por ser finales sobradamente conocidos y estudiados). Pero a falta de esos finales pre-programados, los algoritmos de Stockfish fueron aún peores que los del AlphaZero porque ya venían confundidos de muchas jugadas atrás.
Si ponemos a dos Stockfish a enfrentarse entre sí, lo más probable es que salgan tablas una tras otra en la mayoría de casos porque su forma de jugar está prefijada. Si hiciésemos lo mismo con dos AlphaZero independientes (cada cual realizando su “aprendizaje” por separado), nos encontraríamos muchas tablas, pero también un porcentaje significativo de victorias para cada una. Cuando una de las dos máquinas saliese con una jugada que la otra no hubiese desarrollado dentro del azar de su “aprendizaje” previo, sería una ventaja enorme. Por ese mismo motivo creo que un humano puede ganar a AlphaZero. Y un humano que empiece a aprender de las nuevas jugadas “poco ortodoxas” que salgan de AlphaZero será capaz de partirle los bits a cualquier Stockfish hasta que nuevas versiones de éste no incluyan algoritmos para evaluar adecuadamente estas nuevas formas de desarrollar el juego.
Pero lo que ha demostrado AlphaZero no es inteligencia. Lo que ha demostrado es que existen otras soluciones de juego hasta ahora no descubiertas (que no es poco eh, tiene su señor mérito). También nos ha demostrado una vez más que es malo obcecarse en solucionar un problema desde un único punto de vista; que hay que estar abierto siempre a alternativas que partan desde cero o casi. Pero AlphaZero (ni ningún algoritmo de ese tipo) no es capaz de encontrar una respuesta que no estuviese ahí delante de nuestras narices, no será capaz de comprender lo que encuentre si no se le ha codificado previamente. Por ejemplo, estos algoritmos son muy buenos encontrando correlaciones entre montones ingentes de datos. Pero sólo un humano sabrá decirle si ahí existe causalidad.
Habéis mencionado un ejemplo hipotético en donde un programa “inteligente” buscaba el MEJOR desempeño de una compañía eléctrica. Dijisteis que el resultado dependería de si se le priorizaba la compañía, la sociedad, el medio ambiente… Incorrecto todo ello: el resultado dependería de cómo le describiésemos al programa el concepto “mejor”. A partir de ahí, lo único que haría el programa sería aplicar potencia bruta de cálculo pero con una estrategia distinta a las usadas hasta ahora. Eso no es inteligencia, lo sería si la máquina plantease todos los escenarios posibles y encontrase por si sola los que resultasen “mejor”. Y eso que el concepto “mejor” es algo que en muchos casos se podrá cuantificar y por lo tanto interpretar por la máquina. Como nos metamos en el pantano de los conceptos abstractos como las emociones, a esa IA o cualquier otra le saltan los plomos.
Pongamos otro ejemplo: la conducción autónoma. Te puedes permitir que un programa se tire dos meses aprendiendo a jugar a ajedrez, como mucho pagarás un buen sablazo de factura de la luz. ¿Pero te puedes permitir el lujo de tener dos meses aprendiendo a conducir a una máquina equivalente a AlphaZero? Antes no hubiese aprendido a salir del aparcamiento ya habría atropellado a alguien y enviado al chatarrero multitud de coches. Inviable totalmente, las “IA” de los coches autónomos requieren unas reglas fijas de comportamiento, luego no son inteligentes en absoluto. Pero las situaciones que nos podamos encontrar en carretera son infinitas (basta ver los vídeos de dashcam rusos en Youtube), eso NO se puede pre-programar y muchos sucesos son tan poco frecuentes que no podemos asegurar que un “deep learning” se hayan enfrentado a ellos durante su “aprendizaje”. Por eso ya ha habido incidentes y accidentes con coches autónomos; y más que habrá.
Las máquinas pueden ayudarnos en situaciones concretas para mejorar nuestra conducción (asistentes de frenado de emergencia, de estabilidad…); realizando tareas con una velocidad o una precisión que el conductor humano a menudo no podrá igualar. Pero no existe (ni existirá con los conocimientos actuales y a medio plazo) ninguna máquina que pueda substituir el razonamiento libre de un humano al mando. Otra cosa es que las máquinas no muestren los comportamientos nocivos que muchas personas tienen al volante, pero eso no las convierte ni en inteligentes ni en mejores (sólo en menos trogloditas que algunos conductores). Una máquina sólo te puede quitar la faena en dos supuestos: o bien es un trabajo repetitivo, monótono y previsible que se puede definir con reglas claras y sencillas o bien no estás haciendo tu trabajo (pensar) sino limitándote a aplicar las soluciones que otros ya encontraron antes.
Saludos a todos los que hayáis sobrevivido hasta el final de mi ladrillo y feliz año nuevo.
Gracias, Steven Seagal (alias Jefe Ryback) por el ladrillo. Ahí va otro ladrillo, faltaría más.
Tu opinión, completamente válida y bien argumentada, por supuesto, es la por así llamarla “opinión conservadora”, sin ningún significado despectivo. Me recuerda muchísimo a la opinión mayoritaria, casi unánime que se respiraba en el mundillo ajedrecístico-informático a principios de los noventa, tal como dije en el artículo:
“por muy bien que llegue a jugar un ordenador, pasarán muchas décadas antes de que sea capaz de ganar a un maestro, y no digamos a un Gran Maestro… ¡o al Campeón del Mundo! Y había incluso quien decía que nunca jamás se produciría tal evento…“.
Luego la realidad mostró que en unos pocos años las máquinas sí que ganaron a los grandes maestros. A todos. Hace muchos años que ningún maestro está dispuesto a jugar un match con una máquina, ni aunque le den un par de peones de ventaja.
Lo que quiero decir con esto es que la tecnología basada en el deep-learning está avanzando a una velocidad inimaginable hace unos años. Por ejemplo, el reconocimiento facial está llegando a unos niveles en los que será perfectamente posible lo que se veía en la película “Minority Report”: que vayas por la calle, en el autobús o donde sea y cada vez que pases delante de una cámara te diga “Hola, señor Ryback, tengo una oferta personalizada para Vd…”. La tecnología ya lo permite, de hecho, si no lo hacen ya es porque aún no han almacenado suficientes caras, pero si seguimos subiendo fotos a Picasa o a Facebook o a donde sea, o usando nuestra cara para desbloquear el móvil, en unos mese o años lo veremos.
No tengo yo nada claro que una IA (o, si quieres, un programa de ordenador bien programado y entrenado) no sea capaz de analizar situaciones nuevas para ella y tomar una decisión válida basada en su experiencia y situaciones similares. Eso es lo que hace un humano cada día, por supuesto. De hecho, eso ha pasado en las partidas de Alphazero y Stockfish; dudo mucho que en el entrenamiento se haya encontrado con esas posiciones concretas que se han dado en ellas. Lo que ha hecho es ver las cosas con la mentalidad de un gran maestro humano, buscando situaciones en las que a largo plazo obtiene ventaja. Pero encontrando soluciones concretas que todo el mundo duda mucho de que un humano las encontrara en un tiempo razonable. Y, analizando las partidas que se han publicado no he encontrado a ningún maestro que diga que Stockfish ha fallado en la elección de sus jugadas en los finales. Si le faltaba el libro de finales, se ha notado poco. Y, al contrario, la técnica que ha demostrado Alphazero en esas situaciones ha sido poco menos que perfecta, según dicen los que saben. Sin libro de finales ni gaitas.
Cierto es que sólo se conocen diez partidas de esas cien, y la única forma de poder conocer el potencial es que se libere Alphazero y el personal lo ponga a jugar con la última versión de Stockfish o con Carlsen, qué sé yo, pero lo que se sabe hasta ahora es para dejar sin habla a tipos como el analista de Carlsen, nada menos, que debe ser uno de los tipos más conocedores de ese deporte que hay en el mundo. Tras analizar las diez partidas ha declarado que es “un ajedrez de ciencia-ficción”. Lo mismo dicen Judith Polgar y otros grandísmos jugadores.
En fin, lo que yo pienso es que las IAs (o programas que aprenden solitos) están aprendiendo mucho más de lo que la mayor parte de la humanidad supone, porque… a saber qué algoritmos estarán desarrollando en la NSA, o en su equivalente china o rusa o coreana, o en cualquier gran empresa tecnológica o no, o en el garaje de un iluminado, futuro Bill Gates o Mark Zuckerberg, que estará trabajando en algo que ahora a nadie le importa y que dentro de diez años tendrá seis mil millones de usuarios, como fue el caso de Facebook, o de Whatsapp, o del iPhone. Y me da miedo. Con o sin razón, pero me lo da.
Llegará un momento (de hecho creo que ya ha llegado) en que gestionar una problemática concreta será imposible para los humanos y se dejará que sean las máquinas quienes tomen las decisiones. Esperemos que siempre las tomen bien, porque, según dónde, basta con que se equivoquen una vez para que no haya oportunidad de que lo hagan por segunda vez…
Feliz Año a todos.
hombreee , que debate se viene . si esto parecía una taza de leche ¿no? , señores antes que cualquier cosa os exijo que hagais una definición de que es para ustedes INTELIGENCIA ; porque de otra forma será ésto un diálogo de sordos – solo daré un avance – y este es nada menos que con el maravilloso acto mental denominado : Abstracción .
Jefe Ryback, una de las capacidades básicas de las redes neuronales es precisamente la de trabajar con “situaciones” nuevas, inexistentes en el conjunto de situaciones que se ha usado para entrenarlas. Hay una diferencia esencial entre la “inteligencia artificial” de Stockfish y la de Aphazero ( o cualquier red neuronal en general) : en el caso de Stockfish se intenta “crear” un comportamiento “inteligente” a partir de una formalización explícita de reglas de razonamiento, en el caso de las redes neuronales no hay reglas explícitas ni formalización de algoritmos ad-hoc de toma de decisions. Las redes neuronales son de hecho muy buenas manejando conceptos abstractos ( la”lectura” de texto escrito a mano, o el reconocimiento de voz son buenos ejemplos ). Y no necesitan mucha potencia bruta de cálculo para “funcionar” una vez que han sido entrenadas. El entrenamiento sí require de una gran potencia de cálculo, de la misma forma que la “formación” de un maestro de ajedrez require tiempo y dedicación de un cerebro humano (que tiene una “potencia de cálculo” desmesuradamente mayor que cualquier ordenador actual)
Imagino que la aplicación masiva de este tipo de programas en sectores como el financiero (Macluskey, creo que te será conocido) podrá ser motivo para preocuparse. Podemos encontrarnos con una crisis financiera bestial sin saber de donde vienen los palos.
Los programas de trading automático ya causaron algún que otro disguto en el pasado al sincronizarse en las ordenes y provocar bajadas expextaculares en cotizaciones de bolsa.
Actualmente no solo se ha refinado más los programas sino que se están llegado a perrerias de instalar el software (los bots, en denitiva) en instalciones y servidores virtuales lo más proximos posible al ordenador de la bolsa correspondiente para reducir el tiempo de latencia y arañar unas millonesismas de segundo al competidor y parece que en bancos y financieras contratan más a ingenieros y matemáticos que a economistas y abogados.
Por eso habra que tentarse la ropa si de pronto un Alpha-Finances empieza a montar un pollo de narices. La anécdota de la jugada “inutil” que tanto ha sorprendido a los expertos y que después se mostró crucial puede quedar en nada si lo comparamos a lo que puede hacer en el mundo real ¿y si la compra de acciones de tal empresa puede ser una tonteria para el analista y meses más tarde empieza a subir como la espuma porque sus presumibles competidores caen inexplicablemente?.
Por otra parte si dejamos la amenaza de Skynet para pasado mañana, la verdadera amenaza de estos sistemas es la eliminación de miles de puestos de trabajos que los expertos llaman “empleo de calidad”. Ya no se iran a la calle los empleos de “cuello azul” sino muchos de los del “cuello blanco”. El coche será montado por robots que ajustan muy bien los tornillos y los cordones de soldadura, sino que tambien será diseñado por un software que en cuestión de dias te dá varias variantes de un modelo para el mandamás elija y de paso te hace gratis las pruebas de aerodinámica.
¿Tendria Tony Stark un programa llamado Alphan-desing al que con solo decirle cuatro paramétros y el color te diseña y fabrica en cuestión de horas un chulo traje de Ironman?
Pues sí, Daryl, sí.
Hace tiempo que las compañías del tipo HFT (High Frequency Trading) se están haciendo de oro simplemente por ser capaces de detectar una orden “legítima” (sea enviada por un operador humano o cibernético), por ejemplo de comprar chorrocientos millones de acciones de Industrias ACME (bip, bip), y simplemente ellos la ejecutan una centésima de segundo antes que el operador legítimo, a quien le revenden las acciones un centimillo más caras. Como no publican datos no se sabe muy bien cuánta pasta ganan estas compañías HFT, pero se sospecha que mucho miles de millones.
Hace ya un par de años que Paul Krugman comentaba que se había construido un túnel de no sé cuántos kilómetros, a un precio exorbitante, para conectar con un cable de fibra óptica creo que Chicago con Nueva York, y así arañar unas décimas de segundo a la conexión entre ambos centros financieros. No hubo el menor problema para hallar financiación para esta obra, así que puedes imaginar cómo van a amortizarla.
De todos modos, siempre ha habido intentos de maipular le mercado, con o sin AlphaFinances. Aquí en España hace dos o tres años hubo una intervención masiva de órdenes de venta justo un minuto antes del cierre del mercado, provocando una baja de más de dos puntos del Ibex 35 en ese corto espacio de tiempo. Resulta que ese día vencía una garantía de un fondo referenciado al Ibex, que por ese par de puntitos se ahorró un pastón tremendo en compensaciones. Y lo bueno es que de los millones de acciones puestas a la venta de golpe no se llegaron a vender casi ninguna, pues no había contrapartida, por lo que la operación le salió, a quien fuera, casi gratis. El día siguiente se retiraron las órdenes y todo volvió a la normalidad. Por cierto, se investigó durante meses y meses… y no se sancionó a nadie, a pesar de que era bastante evidente quién había sido el originario del asunto.
Por otra parte, en mi opinión es muuuuy sencillo evitar todo esto, al menos en el sector financiero: retrasar la ejecución de las órdenes simplemente un minutillo de nada. La orden se lanza y se queda esperando un minutito en el limbo hasta que se casa y se ejecuta. Y se acabaron los listos y los HFTs y toda la parafernalia, o al menos se les complicaría muchísimo el trabajo. Pero, claro, a ver quién es el guapo que toma tal medida…
En realidad a mí me preocupan mucho más otro tipo de IAs: las que controlan sistemas críticos en tiempo real: controladores aéreos, semáforos, radares, sonares, energía, etc. Con el tiempo se demostrará que son mucho más eficientes que los humanos gestionando los sistemas, y algún capullo decidirá ahorrarse algunos sueldos dándoles el control total de su ámbito. Y a partir de ahí… a rezar por que nunca se equivoquen.
Eso es lo que me da miedo, porque todo informático de pro sabe que “Si algo puede ir mal, irá mal”, y además, “Si algo no puede nunca ir mal, irá mal de todos modos”. Eso es lo que me preocupa.
Eso.
Gracias por tu acertado comentario.
Vaya, mira por dónde, un artículo de hoy mismo que, no por que cuente cosas nuevas, reafirma mi posición:
https://retina.elpais.com/retina/2018/01/10/tendencias/1515589047_263668.html
Las armas autónomas no sólo existen ya, sino que, como bien dice el artículo, son mucho más baratas, fáciles de entrenar, fiables y eficaces que un batallón de marines o de SEALs o de lo que sea. Todo el mundo en la pomada dice que “no hay que preocuparse, puesto que la decisión la toma en último término un humano”, se supone que informado y ético. Ya, sí, pero… ¿hasta cuando?
{ 1 } Trackback
[...] AlfhaZero un avance muy significativo de la inteligencia artificial [...]
Escribe un comentario