🧮 Computational Mathematics

Inicio · Parte 09 — Probabilidad y procesos aleatorios

198 — Métodos Monte Carlo

universitario clase 18 de 20 4 horas demostración monte_carlo

Monte Carlo estima integrales muestreando, con error 1/√n en cualquier dimensión.

Fórmulas

E[g(X)] ≈ (1/n)·Σ g(xᵢ)
error estándar = s/√n
intervalo aproximado: estimación ± 1,96·s/√n

Desarrollo

El método de Monte Carlo resuelve un problema determinista —una integral, un área, una probabilidad— convirtiéndolo en un experimento aleatorio y promediando. Su justificación es la ley de los grandes números, y su control de error es el teorema central del límite: las dos clases anteriores existían para llegar aquí.

El ejemplo clásico estima π lanzando puntos uniformes en el cuadrado unitario y contando cuántos caen dentro del cuarto de círculo. La proporción tiende a π/4. Es un método malísimo para calcular π —hay algoritmos que dan miles de dígitos— pero perfecto para entender el mecanismo y su coste.

Ese coste es la convergencia O(1/√n), que es lenta: para un dígito decimal más hacen falta cien veces más muestras. La compensación es decisiva: esa velocidad no depende de la dimensión. Las reglas de cuadratura clásicas empeoran exponencialmente al crecer la dimensión, y por encima de unas pocas variables Monte Carlo es la única opción viable.

Dos exigencias de higiene, que la clase trata como obligatorias. Primera: fijar la semilla, porque un resultado no reproducible no es un resultado. Segunda: reportar el error estándar junto a la estimación; un número Monte Carlo sin su incertidumbre no permite saber si la diferencia observada frente a otro método es real o es ruido.

Ejemplo trabajado

Estimación de π por muestreo uniforme, con semilla fija.

semilla = 20260819

      n     estimación    error      error estándar
  1 000       3,156000    0,014407      0,0519
 10 000       3,145600    0,004007      0,0164
100 000       3,142880    0,001287      0,0052

π real = 3,141593

El error cae como 1/√n:
  n × 100  →  error estándar / 10                        ✓

Intervalo al 95 % con n = 100 000:
  3,142880 ± 1,96 × 0,0052 = [3,13268, 3,15308]
  contiene a π                                           ✓

Ganar un decimal más exigiría n ≈ 10 000 000.

Qué calcula el laboratorio

Estimar π por Monte Carlo con su error e intervalo.

python classes/part-09-probabilidad-y-procesos-aleatorios/198-metodos-monte-carlo/lab.py
compmath run 198

Salidas del laboratorio (6)

Muestra de la ejecución real

{
  "metodo": "puntos uniformes en el cuadrado unitario",
  "semilla": 20260819,
  "informe": [
    {
      "n": 1000,
      "pi_estimado": 3.156,
      "error": 0.014407,
      "error_estandar": 0.051611
    },
    {
      "n": 10000,
      "pi_estimado": 3.1268,
      "error": 0.014793,
      "error_estandar": 0.016524
    },
    {
      "n": 100000,
      "pi_estimado": 3.14036,
      "error": 0.001233,
      "error_estandar": 0.005196
    },
    {
      "n": 200000,
      "pi_estimado": 3.13754,
      "error": 0.004053,
      "error_estandar": 0.003678
    }
  ],
  "pi_real": 3.141592653589793,
  "convergencia": "O(1/√n) independientemente de la dimensión",
  "ventaja_en_alta_dimension": true
}

Errores comunes

Dónde se usa

Integración en alta dimensión, valoración de opciones, propagación de incertidumbre, dropout en inferencia y muestreo en modelos generativos.

Idea rectora de la parte

El TCL explica por qué la normal aparece incluso sin normalidad de origen.

Error a evitar

Reportar resultados Monte Carlo sin semilla ni intervalo.

Conexión con IA

Un modelo de lenguaje es una distribución condicional sobre el siguiente token; la difusión es un proceso estocástico con reverso aprendido.

Bibliografía de la clase

Archivos de la clase