Phase 16 - Lesson 20

MARL — MADDPG, QMIX, MAPPO

La herencia del aprendizaje por refuerzo multiagente (MARL), que sigue fundamentando los sistemas de agentes de LLM en 2026. MADDPG (Lowe et al., NeurIPS 2017, arXiv:1706.02275) introdujo el patrón de Entrenamiento Centralizado, Ejecución Descentralizada (CTDE): cada crítico ve los estados y acciones de todos los agentes durante el entrenamiento; en tiempo de ejecución, solo se ejecutan los actores locales. Funciona para entornos cooperativos, competitivos y mixtos. QMIX (Rashid et al., ICML 2018, arXiv:1803.11485) realiza la descomposición de valor con una red de mezcla monótona; los Qs individuales de los agentes se combinan en un Q conjunto de modo que el argmax se distribuye limpiamente —dominante en StarCraft Multi-Agent Challenge (SMAC). MAPPO (Yu et al., NeurIPS 2022, arXiv:2103.01955) es PPO con una función de valor centralizada; resultó ser "sorprendentemente efectivo" en Particle World, SMAC, Google Research Football y Hanabi con un ajuste mínimo. Estos algoritmos fundamentan el entrenamiento de políticas para equipos de agentes que deben actuar de forma descentralizada. MAPPO es la baseline predeterminada de MARL cooperativo en 2026. Esta lección construye cada uno a partir de un juguete simple de cuadrícula (grid-world), fijando estas tres ideas en la memoria muscular antes de pasar al entrenamiento de agentes de LLM.

Tipo: Learn Lenguajes: Python (stdlib, pequeñas implementaciones sin NumPy) Prerrequisitos: Fase 09 (Aprendizaje por Refuerzo), Fase 16 · 09 (Redes Paralelas de Enjambre) Tiempo: ~90 minutos

El Problema

Los sistemas de agentes de LLM entrenan cada vez más políticas para la coordinación entre agentes: cuándo delegar, cuándo actuar, a qué par llamar. La literatura que describe cómo entrenar tales políticas es el Aprendizaje por Refuerzo Multiagente (MARL), que antecede a la ola de LLMs y posee un pequeño conjunto de algoritmos dominantes.

Leer artículos de MARL sin el vocabulario de patrones es difícil. El entrenamiento centralizado con ejecución descentralizada (CTDE), la descomposición de valor y los críticos centralizados no son palabras de moda vacías: son respuestas específicas a problemas específicos:

  • El RL Independiente (cada agente aprende solo) es no estacionario desde la perspectiva de cada agente individual. Malo.
  • El RL Centralizado (un único agente controla a todos) no escala y viola las restricciones de ejecución.
  • El CTDE ofrece lo mejor de ambos mundos: entrena con información global e implementa con políticas locales.

Concepto

Tres entornos utilizados en los artículos

  • Particle World (multi-agent particle env). Física simple en 2D con tareas cooperativas/competitivas. El banco de pruebas original de MADDPG.
  • StarCraft Multi-Agent Challenge (SMAC). Microgestión cooperativa con observación parcial. El banco de pruebas de QMIX. Acciones discretas, estados continuos.
  • Google Research Football, Hanabi, MPE. Baselines de MAPPO.

Los diferentes entornos tienen diferentes tipos de acciones y observaciones. Los algoritmos se eligen en consecuencia.

MADDPG (2017) — el patrón CTDE

Cada agente i tiene un actor mu_i(o_i) que mapea su propia observación a una acción. Cada agente también tiene un crítico Q_i(x, a_1, ..., a_n) que ve todas las observaciones y todas las acciones durante el entrenamiento. El actor se actualiza mediante gradiente de política contra la evaluación del crítico.

actor update:    grad_theta_i J = E[grad_theta mu_i(o_i) * grad_a_i Q_i(x, a_1..n) at a_i=mu_i(o_i)]
critic update:   TD on Q_i(x, a_1..n) given next-state joint estimate

Por qué usar CTDE: en el momento del entrenamiento, conocemos las acciones de todos; usamos eso para reducir la varianza en el crítico de cada agente. En el momento del despliegue, cada agente ve solo o_i y llama a mu_i(o_i).

Modo de fallo: los críticos crecen con el número N de agentes (la entrada incluye todas las acciones). No escala más allá de ~10 agentes sin aproximaciones.

QMIX (2018) — descomposición de valor

Exclusivo para entornos cooperativos. La recompensa global es la suma de una función monótona de los valores Q individuales:

Q_tot(tau, a) = f(Q_1(tau_1, a_1), ..., Q_n(tau_n, a_n)),   df/dQ_i >= 0

La monotonicidad garantiza que el argmax_a Q_tot se pueda calcular mediante la elección independiente de argmax_{a_i} Q_i por parte de cada agente. Esta es exactamente la propiedad de ejecución descentralizada que necesitas. Durante el entrenamiento, una red de mezcla produce Q_tot a partir de los Qs de cada agente.

Por qué QMIX gana en SMAC: la microgestión cooperativa en StarCraft tiene agentes homogéneos, observaciones locales y recompensa global; encaja perfectamente con la descomposición de valor.

Modo de fallo: la restricción de monotonicidad es restrictiva; algunas tareas tienen estructuras de recompensa que no son descomponibles de forma monótona (un agente se sacrifica por el equipo). Variaciones como QTRAN y QPLEX relajan esta condición.

MAPPO (2022) — el patrón ignorado

PPO Multiagente: PPO con una función de valor centralizada. Cada agente tiene su propia política; todos los agentes comparten (o tienen individualmente) funciones de valor que ven el estado completo. Yu et al. 2022 compararon MAPPO con MADDPG, QMIX y sus extensiones en cinco benchmarks y descubrieron:

  • MAPPO iguala o supera a los métodos de MARL off-policy en Particle World, SMAC, Google Research Football, Hanabi y MPE.
  • Requiere un ajuste mínimo de hiperparámetros.
  • Entrenamiento estable; reproducible en diferentes semillas.

La comunidad subestimó el MARL on-policy hasta la publicación de este artículo. En 2026, MAPPO es la baseline predeterminada para MARL cooperativo; cualquier método nuevo debe superarlo.

Por qué debería importarles a los ingenieros de agentes de LLM

Tres aplicaciones directas:

  1. Entrenamiento de enrutadores. Un metaagente elige qué subagente maneja una tarea. Este es un problema de MARL con N subagentes descentralizados y un enrutador centralizado. MAPPO encaja perfectamente aquí.
  2. Emergencia de roles. En simulaciones de agentes generativos, entrenar a los agentes para que adopten roles complementarios a lo largo del tiempo es un problema de MARL encubierto. La descomposición de valor al estilo QMIX fuerza la complementariedad por diseño.
  3. Uso multiagente de herramientas. Cuando los agentes comparten herramientas y compiten por el presupuesto, entrenarlos a través de CTDE produce políticas locales desplegables que respetan las restricciones de recursos.

Advertencia práctica: en 2026, la mayoría de los sistemas de agentes de LLM en producción ajustan sus políticas mediante prompts (prompting) en lugar de entrenarlas. El MARL entra en juego cuando tienes (a) abundantes datos de interacción, (b) una señal de recompensa clara y (c) la disposición a invertir en infraestructura de entrenamiento.

CTDE como patrón de diseño más allá del RL

Incluso sin entrenamiento, el CTDE es un patrón arquitectónico útil:

  • Durante el diseño, asume visibilidad completa del equipo.
  • En tiempo de ejecución, fuerza la ejecución descentralizada: cada agente ve solo o_i.

El patrón te obliga a mantener explícito el estado de cada agente y a pensar en la observabilidad parcial desde el principio. Muchos sistemas multiagente en producción asumen silenciosamente un estado compartido en todas partes; la disciplina de CTDE evita esto.

El problema de la no estacionariedad

Cuando varios agentes aprenden simultáneamente, el entorno de cada agente (que incluye las políticas de los demás) se vuelve no estacionario. Las demostraciones clásicas de RL para un solo agente fallan. Los algoritmos de MARL en esta lección resuelven esto de la siguiente manera:

  • MADDPG: el crítico global ve todas las acciones, por lo que su estimación de valor es estacionaria.
  • QMIX: la descomposición de valor traslada el aprendizaje a un espacio de Q conjunto donde la optimización está bien definida.
  • MAPPO: la función de valor centralizada atenúa la varianza de los cambios en las políticas de los demás.

En los sistemas de agentes de LLM, la no estacionariedad se manifiesta como: "mi agente funcionaba el mes pasado; ahora que ese otro agente upstream cambió, el mío se comporta mal". Entrenar MARL con CTDE es la corrección teórica adecuada; las correcciones a nivel de prompt son más rápidas pero menos duraderas.

Lo que esta lección NO cubre

El entrenamiento de redes reales es un tema de la Fase 09. Esta lección crea versiones de políticas preprogramadas que demuestran los patrones CTDE, descomposición de valor y valor centralizado sin actualizaciones de gradientes. El objetivo es internalizar los patrones antes de utilizar una biblioteca completa de MARL (PyMARL, MARLlib, RLlib multi-agent).

Build It

code/main.py implementa tres demostraciones de patrones, todas en un juguete cooperativo simple de cuadrícula de 2 agentes:

  • Entorno: 2 agentes en una cuadrícula de 4x4, una pastilla de recompensa. Recompensa = 1 si cualquier agente llega a la pastilla; la tarea termina.
  • IndependentAgents: cada agente trata a los demás como parte del entorno. Baseline.
  • MADDPGStyle: el crítico centralizado calcula un valor conjunto; las políticas de los actores se actualizan a partir de él. Mejora de política preprogramada.
  • QMIXStyle: descomposición de valor con un mezclador monótono.
  • MAPPOStyle: función de valor centralizada; las políticas se mudan en relación con la línea base compartida.

Los cuatro ejecutan los mismos episodios y reportan el promedio de pasos hacia el objetivo. Las variantes de CTDE convergen en caminos más cortos que la línea base independiente.

Ejecución:

python3 code/main.py

Salida esperada: los agentes independientes tardan ~6 pasos en promedio; las variantes de CTDE convergen hacia ~3.5 pasos (el óptimo para la cuadrícula de 4x4 es 3). La diferencia de patrón se muestra incluso con políticas preprogramadas.

Use It

outputs/skill-marl-picker.md es una habilidad que elige un algoritmo de MARL para una tarea multiagente determinada: cooperativa frente a competitiva, homogénea frente a heterogénea, tipo de espacio de acción, escala, señal de recompensa.

Ship It

El uso de MARL en producción es poco común. Cuando decidas utilizarlo:

  • Comienza con MAPPO. El artículo de 2022 estableció esto como línea de base; reproducirlo primero te ahorrará semanas de perseguir métodos más complejos.
  • Registra el flujo de observaciones y acciones de cada agente. Depurar MARL sin registros por agente es imposible.
  • Separa el código de entrenamiento del código de ejecución. El CTDE es una disciplina; haz que la ruta de ejecución realmente vea solo o_i.
  • Advertencia sobre el modelado de recompensas (reward shaping). El MARL es extremadamente sensible al diseño de recompensas. Un solo fallo de coordinación en el diseño y los agentes aprenderán a explotarlo. Realiza pruebas adversarias.
  • Para agentes de LLM, considera primero las políticas a nivel de prompt. Solo invierte en entrenamiento de MARL cuando los datos de interacción + señal de recompensa + infraestructura estén todos presentes.

Ejercicios

  1. Ejecuta code/main.py. Mide la brecha de pasos hacia el objetivo entre los agentes independientes y los de estilo MAPPO. ¿La brecha crece o disminuye en una cuadrícula de 6x6?
  2. Implementa una variante competitiva: dos agentes, una pastilla, solo el primero en llegar recibe la recompensa. ¿Qué patrón maneja la competencia de forma limpia? El MADDPG históricamente.
  3. Lee MADDPG (arXiv:1706.02275) Sección 3. Implementa la regla de actualización del crítico exactamente en pseudocódigo en tus propias palabras.
  4. Lee MAPPO (arXiv:2103.01955). ¿Por qué los autores argumentan que la función de valor centralizada + PPO supera a los métodos de MARL off-policy en sus benchmarks? Enumera las tres afirmaciones más fuertes.
  5. Aplica CTDE como patrón de diseño a un sistema hipotético de agentes de LLM (por ejemplo, agente de investigación + sintetizador + codificador). ¿Cuál es la información conjunta disponible en el momento del diseño que no está disponible en el momento de la ejecución?

Términos Clave

Término Lo que la gente dice Lo que realmente significa
MARL "RL Multiagente" Aprendizaje por refuerzo para sistemas multiagente.
CTDE "Entrenamiento Centralizado, Ejecución Descentralizada" Entrenar con información global; desplegar con políticas locales.
MADDPG "DDPG Multiagente" CTDE con crítico por agente que ve todas las observaciones + acciones.
QMIX "Decomposición de valor" Mezcla monótona de los Qs por agente. Cooperativo.
MAPPO "PPO Multiagente" PPO con función de valor centralizada. Baseline predeterminada en 2026.
Descomposición de valor "Suma de Qs individuales" Q conjunto representado como una función monótona de los Qs por agente.
No estacionariedad "Objetivos móviles" El entorno de cada agente cambia a medida que los demás aprenden. El problema central del MARL.
On-policy / off-policy "Aprende de la política actual / replay" PPO es on-policy (MAPPO); DDPG y Q-learning son off-policy.
SMAC "StarCraft Multi-Agent Challenge" Benchmark de microgestión cooperativo; el terreno de juego nativo de QMIX.

Lecturas Adicionales

0 lifetime access. Curriculum based on AI Engineering from Scratch by Rohit Ghumare (MIT, used under attribution).