Contenido del curso

- Métodos Basados en Modelo: Planificación con MCTS y Aplicación a Juegos

🧭 Métodos Basados en Modelo: Planificación con MCTS y Aplicación a Juegos

Curso: Odisea Algorítmica · De la Regresión al Aprendizaje Profundo

Bienvenido a la lección sobre métodos basados en modelo. Aquí aprenderás a construir un modelo del entorno que capture las transiciones y recompensas, y usarás ese modelo para planificar con Monte Carlo Tree Search (MCTS). Verás cómo esta técnica domina juegos de mesa complejos (Go, Ajedrez) y se combina con redes neuronales (AlphaGo, AlphaZero). Incluimos un ejemplo práctico en tres en raya y una comparación directa con métodos sin modelo.

🧩 ¿Qué son los métodos basados en modelo?

A diferencia de los métodos sin modelo (como Q-learning o policy gradient), que aprenden directamente de la experiencia, los métodos basados en modelo construyen una representación interna del entorno:

  • Modelo de transición: P(s' | s, a) – predice el siguiente estado dada una acción.
  • Modelo de recompensa: R(s, a, s') – estima la recompensa inmediata.

Una vez que tenemos el modelo, podemos planificar —simular trayectorias sin interactuar con el entorno real— algo fundamental en juegos, robótica y simulación.

🎯 Beneficio clave: los métodos basados en modelo son mucho más eficientes en términos de muestras que los sin modelo, porque pueden generar experiencia sintética. Sin embargo, requieren que el modelo sea preciso o que se actualice constantemente.

🌳 Monte Carlo Tree Search (MCTS) – Los 4 pilares

MCTS es un algoritmo de planificación que construye un árbol de búsqueda de forma asimétrica, centrándose en las ramas más prometedoras. Se divide en cuatro fases repetidas:

  1. Selección: desde la raíz, se desciende por el árbol usando una política de selección (ej. UCB1) hasta un nodo hoja.
  2. Expansión: se añade uno o más nodos hijos (movimientos legales).
  3. Simulación (rollout): desde el nuevo nodo, se juega una partida aleatoria (o guiada por política) hasta el final.
  4. Retropropagación: el resultado de la simulación se propaga hacia atrás, actualizando estadísticas (visitas, valor total) de todos los nodos en el camino.

Este ciclo se repite miles de veces. Al final, se elige la acción con mayor número de visitas (o mejor valor promedio).

📐 Fórmula de selección UCB

Para elegir qué hijo explorar, MCTS usa la fórmula Upper Confidence Bound (UCB1):

a* = argmaxa [ Q(s, a) + c · √( ln N(s) / N(s, a) ) ]

Donde:

  • Q(s, a) – valor estimado del par estado-acción (media de recompensas).
  • N(s) – número total de veces que se ha visitado el estado s.
  • N(s, a) – veces que se ha elegido la acción a desde s.
  • c – parámetro de exploración (típicamente ~√2).

♟️ MCTS en juegos de mesa complejos (Go, Ajedrez)

Antes de las redes neuronales, MCTS ya era un gran avance, pero fue la combinación con deep learning la que produjo resultados sobrehumanos en Go y Ajedrez.

  • AlphaGo (2016): usó una red de política para guiar la selección y una red de valor para evaluar posiciones sin necesidad de simulaciones largas.
  • AlphaZero (2017): generalización que aprende desde cero solo con auto-juego, combinando MCTS + red neuronal única que predice política y valor.

La red de política reduce el factor de ramificación: en lugar de considerar todos los movimientos legales, la red sugiere los más probables. La red de valor reemplaza el rollout aleatorio por una evaluación instantánea.

🧪 Ejemplo: Tres en raya (convergencia de MCTS)

Imagina un tres en raya. Sin red neuronal, MCTS puro puede encontrar la jugada óptima si se le dan suficientes simulaciones. Por ejemplo:

  • Estado inicial: tablero vacío, MCTS debe elegir entre 9 movimientos.
  • Tras 100 simulaciones, el centro suele tener mayor Q y visitas.
  • Tras 1000 simulaciones, las ramas perdedoras se descartan casi por completo.

Convergencia: si el modelo es perfecto (reglas deterministas), MCTS converge a la política óptima a medida que el número de simulaciones tiende a infinito. En juegos pequeños esto se ve claramente.

⚖️ Comparación: Métodos basados en modelo vs. sin modelo

Basado en modelo
  • Eficiencia muestral: alta (puede planificar con datos limitados).
  • Planificación: explícita, puede anticipar consecuencias.
  • Flexibilidad: reutiliza el modelo para distintas tareas.
  • Ejemplo: MCTS, AlphaZero, Dyna-Q.
  • Desventaja: el modelo puede ser sesgado o costoso de aprender.
Sin modelo
  • Eficiencia muestral: baja (necesita muchas interacciones).
  • Planificación: implícita, solo reacciona a estados.
  • Flexibilidad: cada tarea requiere nuevo entrenamiento.
  • Ejemplo: Q-learning, DQN, PPO.
  • Desventaja: no puede simular escenarios futuros sin el entorno real.

🧬 Combinación con redes neuronales (AlphaGo / AlphaZero)

El gran salto se produce cuando MCTS se guía por redes neuronales profundas:

  • Red de política (policy network): dada una posición, devuelve una distribución sobre acciones probables (reduce el árbol).
  • Red de valor (value network): estima la probabilidad de ganar desde ese estado (reemplaza las simulaciones largas).

En AlphaZero, una sola red combinada (política + valor) se entrena mediante auto-juego. MCTS usa las predicciones de la red para podar y evaluar, y los resultados del MCTS mejoran la red en el siguiente ciclo. Este bucle produce una mejora iterativa imparable.

📊 Tabla: Componentes de MCTS clásico vs. neuronal

Fase MCTS MCTS clásico MCTS + redes neuronales (AlphaZero)
Selección UCB1 (solo valor promedio) PUCT: Q + cpuct·P(s,a)·√N/(1+N) (usa prior de política)
Expansión Movimientos legales Movimientos legales + red de política
Simulación Rollout aleatorio Red de valor (sin rollout)
Retropropagación Acumula +1/-1 Acumula valor estimado por red

🧠 Conclusión: ¿cuándo usar métodos basados en modelo?

Los métodos basados en modelo (especialmente MCTS con redes) son ideales cuando:

  • El entorno es determinista o se puede modelar con precisión.
  • Se necesita eficiencia muestral (pocas interacciones reales).
  • La planificación a largo plazo es esencial (juegos, estrategia).

En cambio, si el entorno es muy complejo de modelar o la dinámica es estocástica y ruidosa, los métodos sin modelo (como DQN o PPO) pueden ser más robustos, aunque menos eficientes en muestras.

“Planificar es el puente entre el conocimiento y la acción.” En esta lección has visto cómo construir ese puente con MCTS y su sinergia con deep learning. En las próximas lecciones implementarás tu propio MCTS para un juego de tablero.

Introducción a métodos basados en modelo: construcción de un modelo del entorno (transiciones y recompensas). Algoritmo Monte Carlo Tree Search (MCTS): selección, expansión, simulación y retropropagación. Aplicación a juegos de mesa complejos (ej. Go, Ajedrez). Fórmula de selección UCB: argmax_a (Q(s,a) + c * sqrt(lnN(s)/N(s,a))). Combinación con redes neuronales (AlphaGo/AlphaZero): uso de red de política para guiar la selección y red de valor para evaluar estados. Ejemplo en un juego del tres en raya para entender la convergencia. Comparación con métodos sin modelo en términos de eficiencia muestral y capacidad de planificación.
Calificación
0 0

No hay comentarios por ahora.