De vez en cuando salen a la luz artículos y noticias hablando de la inteligencia artificial. Casi cualquier cosa que se encuentra en la prensa suele pecar de varios errores: el primero es siempre intencionado, el amarillismo, utilizar la cultura popular que se ha creado a través del cine de la inteligencia artificial para ganar clicks es un truco sencillo de llevar a cabo por un periodista pero muy insalubre para da información real de lo que está ocurriendo, de lo que nosotros llamamos inteligencia artificial y de dónde estamos en el punto que nos separa de skynet. Así mismo otro error que cometen es básicamente no entender las diferencias entre algoritmos programados a mano y redes neuronales capaces de "autoprogramarse".
No seré yo quien hable de esto dado que mis conocimientos son en sí superficiales, pero lo suficiente extensos como para entender que cualquier IA que nos enseñen, incluso la más avanzada, tiene unas limitaciones brutales comparadas con un ser humano y los creadores de Deepmind de google lo saben y hacen trampas.
Ahora, sobre esta reciente noticia:
Gran avance de Google DeepMind hacia una inteligencia artificial general
Primero: Según lo que dice el video, la IA tenia visión completa del mapa en todo momento, algo que está de hecho prohibido por las normas del competitivo de Starcraft dado la evidente ventaja que otorga esta visión panorámica, es cierto que la IA estaba capada a focos de atención concreta pero seguía contando con toda la información de golpe.
Segundo: La IA era incapaz de comprender sus errores pasados y actuar en consecuencia, si por una casualidad el jugador hubiera encontrado una debilidad en el programa, habría ganado partida tras partida.
Tercero: La IA sólo es capaz de jugar con 1 de las 3 razas del juego y sólo contra la misma que usa ella, por lo que en una situación de competitivo real perdería como mínimo un 66% de las partidas que jugase.
Cuarto: El jugador humano no era profesional de la raza que jugaba, por lo que además de contar con ciertas desventajas técnicas, él mismo simplemente no era un profesional de esa raza. Es como si a kasparov le hubiese ganado jugando a las damas y no al ajedrez, aunque el tablero y las normas de movimiento sean parecidas cada raza es un auténtico mundo de dificultad y jugar una que no sea la tuya es empezar muy por debajo de tu nivel
Desde luego el hecho de que domine una sóla raza del SC2 al nivel que lo hace es loable, pero es sólo capaz de ganar en 1 de 9 enfrentamientos posibles que existen dentro del juego y es incapaz de aprender de sus errores por lo que estamos ante una IA en pañales logrando algo MUY por debajo de lo que hizo en su momento deep blue o ella misma jugando al GO si lo contextualizamos al juego que tenemos delante. El bombo y el platillo que se le da incluso en el propio video de las partidas está injustificado y es una prueba falseada para decir que han logrado un hito que no ha sido tal.
Comentarios
"Según lo que dice el video, la IA tenia visión completa del mapa en todo momento, algo que está de hecho prohibido por las normas del competitivo de Starcraft dado la evidente ventaja que otorga esta visión panorámica"
Esto lo has entendido mal. La IA tenía visión como cualquier jugador, ahí donde llegaban sus unidades. La parte del vídeo que explica cómo funcionaba la IA te mostraba un "minimapa" para representar su toma de decisiones, y en este mapa solo mostraba lo mismo que estaba viendo la IA.
"La IA era incapaz de comprender sus errores pasados y actuar en consecuencia, si por una casualidad el jugador hubiera encontrado una debilidad en el programa, habría ganado partida tras partida."
Es cierto que la IA es "incapaz de comprender", ya que comprender es un concepto muy humano. Quizá la mejor frase sería "adaptarse a base de prueba y error". No olvidemos que las máquinas de Aprendizaje Profundo funcionan en base a este sistema: empiezan probando opciones al azar y a base de miles de iteraciones van perfeccionando sus algoritmos. Mana consiguió ver un patrón de comportamiento en la última partida y explotarlo para vencer a AlphaZero.
La IA sólo es capaz de jugar con 1 de las 3 razas del juego" + "El jugador humano no era profesional de la raza que jugaba"
Tienes toda la razón en que la IA todavía está limitada, y además que el jugador humano no era un profesional de la raza. Aún así, los dos jugadores humanos siguen siendo dos de los mejores jugadores a nivel mundial. Es como decir que un jugador de futbol profesional no es un corredor de fondo: Es cierto, pero es un corredor de fondo extremadamente por encima de la media.
Estoy de acuerdo en que el artículo inicial era tendencioso: No, esto no es un avance hacia una "IA general", AlphaStar no deja de ser una máquina extremadamente especializada en algo: Jugar a Starcraft con los Protoss contra Protoss. Ahora, ¿cuál es el logro? En mi opinión, como fan de Starcraft y de los torneos internacionales desde hace muchos años, es la velocidad táctica y el cambio de estrategia que hace en todo momento.
El ajedrez, a fin de cuentas, es un juego por turnos en el que cada movimiento abre un árbol exponencial de posibilidades que un ordenador especializado analiza para decidir la opción con mejores probabilidades de victoria. Eso es, sabiendo dónde está el oponente y qué está haciendo exactamente.
A diferencia de Starcraft (como te he dicho antes, entendiste mal lo de la visión de AlphaStar) en el que la mayor parte del tiempo no sabes qué está haciendo tu oponente exactamente.
En la demostración, AlphaStar jugaba 11 partidas de las cuales solo perdía una. En todas las partidas he visto movimientos que, de no saber yo que se trataba de una IA, habría creído que era un jugador semiprofesional: el asalto continuo al enemigo, el asalto a los recursos y los drones, el uso de los Adeptos para superar las defensas enemigas (con fallos, eso es cierto), o el rodear a Mana con Stalkers para hostigar a los inmortales hasta destruirlos.
No, AlphaStar no nos pone más cerca de tener una "IA de uso general". Sin embargo, en el mundo de las máquinas Deep Learning, ha sido todo un hito. A pesar de las limitaciones, ha ganado a dos jugadores profesionales diez de once veces. Por eso creo que tu comparación con Deep Blue o AlphaGo es injusta: en estos dos juegos siempre hay exactamente las mismas fichas para cada oponente. En el ajedrez se conocen y se han estudiado una serie de "posiciones" en el tablero, porque se sabe que en una partida se tiende a llegar a ciertas situaciones. Starcraft tiene muchísimas más situaciones posibles, incluso limitando el enfrentamiento a Protoss vs Protoss. Starcraft tiene una lógica muy diferente y, en ciertas circunstancias, más mucho compleja que el Ajedrez, en mi opinión.
Un saludo.
#1 Sobre lo de la cámara: Sí que tenía un hardcap en el foco de atención a la hora de dar órdenes, pero la información le llegaba de forma simultánea, un jugador profesional es capaz de imaginar lo que está ocurriendo pero la IA podía verlo (de nuevo, aunque sólo pudiese poner el foco de atención en un solo lugar a la vez) Así que aunque en Micro no tenía ventaja, sí la tenía en contexto global.
ojo, no estoy despreciando para nada lo que he visto, ha sido increíble verla jugar protoss de esa manera, pero creo que será cuando gane a un jugador profesional de una raza específica cuando se pueda decir que está al nivel de Deep Blue o de ella misma en el GO. En contexto quiero decir.
#2 No, no podía verlo. Fíjate acabo de encontrar el momento exacto que lo explican:
Si miras el mapa de arriba a la izquierda verás que AlphaStar solo ve como cualquier otro jugador, donde están sus unidades. Abajo izquierda hay un minimapa que representa cómo AlphaStar procesa lo que ha visto, y si te fijas solo sale aquello que está viendo más los edificios enemigos (supone que siguen ahí).
"no estoy despreciando para nada lo que he visto, ha sido increíble verla jugar protoss de esa manera, pero creo que será cuando gane a un jugador profesional de una raza específica cuando se pueda decir que está al nivel de Deep Blue o de ella misma en el GO. En contexto quiero decir."
Sí, sí, en contexto tienes razón. Personalmente tengo muchísimas ganas de ver a AlphaGo entrenada para jugar con Zerg . ¡Eso sí que podría ser como ver un enjambre en acción!
#2 no es que la información le llegase de forma simultánea, ya que se observa en el propio vídeo como el foco de atención va saltando de punto a punto. Lo de "ver" todo el mapa yo lo entiendo como que tenía disponible toda la información que un humano tendría que ir moviendo la cámara. La cuestión es que no la usaba, sino que trabajaba de una forma más humana.
#0 "Tercero: La IA sólo es capaz de jugar con 1 de las 3 razas del juego y sólo contra la misma que usa ella, por lo que en una situación de competitivo real perdería como mínimo un 66% de las partidas que jugase."
Diría que esa asunción no es correcta, porque no conoces el desempeño real que tendría la IA en esa situación. Decir que perdería sistemáticamente los enfrentamientos contra otra raza, teniendo en cuenta que "aprende" de sus errores, de los errores de los demás, de las situaciones tácticas, etc., es, cuando menos, atrevido.
Puedes cuestionarlo, por supuesto, pero extraer certezas de ahí, no sé yo…
cc #1
#9 No te falta razón. Ahora mismo, la IA está "entrenada" para jugar PvP. Si ahora la pusiéramos a jugar contra otras razas o con otras razas, es cierto que probablemente perdería más encuentros. Ahora, con tiempo, acabaría "aprendiendo" cómo adaptar sus tácticas a cada raza.
A@JavierB nadie le gana en el solitario.
#7 Como te he dicho antes, Starcraft tiene muchísimas más posibilidades lógicas que no el Ajedrez. Es simplemente lógico, en un primer momento, limitarlas para entrenar la IA. Tú dales tiempo.
Y no: no hicieron trampas. Trampa habría sido decir X y hacer Y. Los programadores plantearon un reto a los profesionales con unas condiciones establecidas y todos las respetaron y acataron. En estas condiciones, la IA ha arrasado, y eso es indiscutible.
Los puntos que nombras son correctos, pero el titular no. La IA NO hizo trampas y sí que ha ganado (aplastado) a dos profesionales de SC.
#4 Hasta que Mana detectó el fallo lógico en los patrones de la IA y lo explotó para ganarla. Una victoria de seis.
#4 Quienes hicieron trampas son los programadores, quiero decir. Que presentaron esta victoria de su IA como la que obtuvo en el GO, cuando lo cierto es que hay bastantes matices, entre ellos elegir como contrincante un humano que no domina la raza que está jugando o poner normas como que sólo se jugara PvP.
Cuando yo leí la noticia también le puse algunos reparos. En mi opinión todos esos reparos en realidad solo significan que todavía falta un poquito para que ganen al StarCrafts las IAs, pero lo acabarán haciendo sin mucho problema. Se ha centrado mucho la atención en sí la IA tenía visión completa o no (que ciertamente es una ventaja enorme), pero no he visto comentarios sobre otro tema que me parece fundamental: el interfaz de entrada para el jugador humano es mucho más lento. Me explico: para una persona dar una orden a una unidad implica seleccionarla (mediante ratón o teclado), mover el ratón al sitio donde queremos mandarlo y hacer click. Parece una tontería, pero eso implica también muchas desventajas frente a una IA donde todo eso lo puede hacer casi "mágicamente" y prácticamente en el mismo instante.
Si realmente estamos evaluando la calidad de la "inteligencia" debería simularse mejor la interacción y la manera de dar ordenes a los bichos: o bien se le pone a la IA un ratón y teclado de verdad y prográmate un robotito con 2 manos y cinco dedos que haga lo mismo que los humanos o bien estudias muy a fondo las velocidades de reacción de humanos expertos y "capas" la posibilidad de dar ordenes de la IA para que se ajuste a esas velocidades. No es lo mismo planificar una estrategia sabiendo que en un segundo eres capaz de dar 2, 3, 4 ordenes a tus tropas que saber que puedes dar 200 o 300 ordenes en el mismo segundo.