AlphaZero: la IA de Google conquista ajedrez y Go en 24 horas
Los juegos de tablero (como el ajedrez) son un campo ampliamente estudiado en la historia de la inteligencia artificial. Pioneros como Turing, Babbage, von Neumann y Shannon desarrollaron teorías, algoritmos y hardware para analizar y jugar al ajedrez. Y en los últimos años, hemos visto programas similares que superan a humanos en juegos mucho más complejos como Go y Shogi (ajedrez japonés).
DeepMind de Google tiene un historial fenomenal cuando se trata de vencer a humanos en juegos de tablero. En 2015, su proyecto AlphaGo se convirtió en el primer programa de Go en vencer a un humano (un jugador profesional de Go). Y ahora han desarrollado un programa AlphaGo que puede aprender el juego de ajedrez por sí mismo y vencer a humanos o cualquier otro programa informático (incluyendo Stockfish y Deep Blue) en casi 4 horas.
Los programas de IA convencionales (de juegos de tablero) están altamente optimizados para su dominio y no pueden generalizarse a otros problemas sin intervención humana. El programa AlphaZero, por otro lado, puede lograr un rendimiento superhumano en varios dominios desafiantes. Sin conocimiento previo excepto las reglas del juego y partiendo de juego aleatorio, AlphaZero alcanzó un nivel de juego superhumano en 24 horas en los juegos de Ajedrez, Shogi y Go, y derrotó al mejor programa del mundo en cada caso. ¿Cómo lo han hecho y cuáles son los resultados exactos? Averigüémoslo.
Metodología
En octubre de 2017, DeepMind anunció que su algoritmo AlphaGo Zero había logrado un rendimiento superhumano usando una red neuronal convolucional profunda y entrenado únicamente por aprendizaje por refuerzo. Los ingenieros usaron el mismo enfoque para construir un algoritmo genérico, llamado AlphaZero, que reemplaza las aumentaciones específicas del dominio y el conocimiento artesanal usado en algoritmos convencionales de juego por redes neuronales profundas y un algoritmo de aprendizaje por refuerzo tabula rasa.
AlphaZero usa el algoritmo de propósito general MCTS (Búsqueda de Árbol Monte Carlo) en lugar de búsqueda alfa-beta. Aprende estimaciones de valor y probabilidades de movimiento jugando contra sí mismo, y luego usa la información aprendida para guiar su búsqueda.
Cómo se diferencia del algoritmo AlphaGo Zero
El algoritmo AlphaGo Zero estima y optimiza la probabilidad de ganar, teniendo en cuenta resultados binarios de victoria o derrota. AlphaZero, por otro lado, estima y optimiza el resultado esperado, considerando empates u otros resultados potenciales.
Las reglas del Go son invariantes a reflexión y rotación. Este hecho se utiliza muy bien tanto en AlphaGo como en su versión avanzada AlphaGo Zero de 2 maneras:
- Aumentar datos de entrenamiento creando 8 simetrías para cada posición.
- Transformar la posición mediante una reflexión o rotación seleccionada aleatoriamente antes de ser computada por la red neuronal, en el algoritmo MCTS, para que el cálculo promedie sobre diferentes sesgos.
En el caso del ajedrez y shogi, las reglas son asimétricas y no se pueden asumir simetrías en general. En AlphaZero, los datos de entrenamiento no se aumentan y la posición del tablero no se transforma durante MCTS.
AlphaGo Zero usa el mejor jugador de iteraciones previas para generar partidas de auto-juego. Tras la finalización de cada iteración, el rendimiento del nuevo jugador se evalúa contra el mejor jugador. Si gana con un margen del 55%, el mejor jugador es reemplazado y las partidas de auto-juego se generanさらに por el nuevo jugador. Sin embargo, AlphaZero mantiene una única red neuronal (actualizada continuamente) en lugar de pausar hasta que una iteración se complete.
Optimización y entrenamiento de AlphaZero
AlphaZero usa hiperparámetros para todos los juegos sin optimización específica de cada juego. Para asegurar la exploración, se integra un factor de ruido, que se escala proporcionalmente al número de movimientos legítimos para ese tipo de juego.
Como AlphaGo Zero, el estado del tablero se codifica mediante planos espaciales y las acciones se codifican mediante planos espaciales o un vector plano, según las reglas básicas de cada juego.
Los desarrolladores aplicaron AlphaZero a ajedrez, shogi y Go. La misma arquitectura de red, hiperparámetros y configuraciones se usaron para los 3 juegos. Una instancia individual del algoritmo se entrena para cada juego. Partiendo de parámetros inicializados aleatoriamente, el entrenamiento se realizó durante 700.000 pasos, usando 5.000 TPUs de primera generación para construir partidas de auto-juego y 64 TPUs de segunda generación para entrenar las redes neuronales.
Referencia: arxiv.org
Resultados
Como se ve en la figura, AlphaZero superó a Stockfish después de 300.000 pasos (tras 4 horas) en ajedrez; superó a Elmo en 110.000 pasos (en 2 horas); y superó a AlphaGo Lee en 165.000 pasos (tras 8 horas).
Las instancias completamente entrenadas (entrenadas durante 3 días) de AlphaZero se probaron contra AlphaGo Zero, Elmo y Stockfish, jugando 100 partidas a un ritmo de 1 minuto por movimiento. Los resultados fueron bastante impresionantes (mencionados en la tabla a continuación).
AlphaGo Zero y AlphaZero usaron una sola máquina con 4 Unidades de Procesamiento Tensorial, Elmo y Stockfish rindieron al máximo usando 64 hilos y 1 GB de tamaño de hash. AlphaZero los derrotó a todos, perdiendo 8 partidas contra Elmo y ninguna contra Stockfish.
Los desarrolladores de Google también examinaron el rendimiento de la búsqueda MCTS en AlphaZero. Busca 40.000 posiciones por segundo en shogi y 80.000 en ajedrez, comparado con 35.000.000 para Elmo y 70.000.000 para Stockfish. AlphaZero usa su red neuronal profunda para enfocarse selectivamente en las opciones más prometedoras, o se puede decir un enfoque más humano.
Leer: 15 mejores motores de ajedrez basados en sus ratings
Aunque AlphaZero aún está en su infancia, constituye un paso importante hacia su objetivo. Si enfoques similares pueden aplicarse a otros problemas estructurados, como plegamiento de proteínas, descubrimiento de nuevos materiales o reducción del consumo energético, los resultados tienen el potencial de impactar nuestro futuro de manera positiva.
Tecnología Industrial
- Guía Definitiva de Sistemas, Dispositivos y Unidades de Protección Eléctrica
- Construyendo cadenas de suministro resilientes de petróleo y gas: Una hoja de ruta estratégica para la estabilidad post-crisis
- Soldadura por Haz de Electrones: Proceso, Ventajas y Aplicaciones Industriales
- Estrategias Esenciales para Acelerar los Plazos de Entrega en Fabricación Metálica
- Prevención de defectos estéticos en el moldeo por inyección: Consejos de expertos
- Infografía: Desafíos de ingeniería en 2022 — Puntos críticos y soluciones
- Armónicos en Sistemas Polifásicos: Causas, Efectos y Estrategias de Mitigación
- Transistores BJT: piedra angular del diseño electrónico compacto y eficiente
- 7 Principios Esenciales para Rendimiento Óptimo en Mecanizado
- Transformar la cultura corporativa: Guía para líderes manufactureros
- Garantizando calidad en producción de fundición: prácticas probadas de trazabilidad