Simulación montecarlo, riesgo e incertidumbre
11.2 Simulación montecarlo, riesgo e incertidumbre
La simulación de Montecarlo es una técnica estadística avanzada que permite modelar la incertidumbre inherente a sistemas complejos como la gestión de almacén. En contraste con los cálculos determinísticos que hemos realizado hasta ahora (donde la demanda se asume como promedio fijo), Montecarlo considera la variabilidad real de la demanda, plazos de entrega y otros factores. Esta aproximación probabilística es especialmente valiosa en la planificación de stock porque permite cuantificar el riesgo de roturas y evaluar qué niveles de inventario son necesarios para alcanzar objetivos específicos de disponibilidad en escenarios de incertidumbre.
El método recibe su nombre de la famosa ciudad de Montecarlo, símbolo de la probabilidad y el azar, porque simula miles de escenarios potenciales usando números aleatorios. Para gestión de stocks, Montecarlo ayuda a responder preguntas imposibles de resolver matemáticamente de forma cerrada: ¿Cuál es la probabilidad real de ruptura si establecemos stock mínimo de 100 unidades? ¿Qué stock máximo garantiza disponibilidad del 99% considerando variabilidad en demanda y plazos?
Fundamentos probabilísticos
La demanda real no sigue un patrón determinístico (X unidades exactamente cada día), sino que exhibe variabilidad aleatoria. Esta variabilidad se modela mediante distribuciones de probabilidad: la distribución normal es común para productos con demanda continua, mientras que distribuciones de Poisson se usan para demanda discreta o productos lentos. El plazo de entrega también es aleatorio: un proveedor puede entregar en 5, 6 o 7 días con probabilidades diferentes.
Una distribución de probabilidad se caracteriza por parámetros como media (valor esperado) y desviación típica (variabilidad). Si la demanda diaria promedio es 100 unidades con desviación típica 15, esto significa que 68% de los días la demanda estará entre 85 y 115 unidades (1 desviación típica), y 95% entre 70 y 130 unidades (2 desviaciones típicas). Comprender esta estructura probabilística es prerequisito para Montecarlo.
Proceso de simulación Montecarlo
El procedimiento consta de pasos secuenciales: (1) Definir variables inciertas (demanda, plazo de entrega) y sus distribuciones. (2) Establecer parámetros de stock a evaluar (stock mínimo, punto de pedido, cantidad de compra). (3) Generar miles de escenarios aleatorios usando números pseudoaleatorios. (4) Para cada escenario, simular operación del almacén durante un período (año típicamente) registrando roturas, inventario y costes. (5) Analizar resultados para determinar probabilidades, percentiles y estadísticas de interés.
Una simulación típica ejecuta 10.000 a 100.000 iteraciones. Cada iteración representa un posible curso de eventos durante el período de planificación. Después de ejecutar todas las iteraciones, el analista tiene una distribución de probabilidad de resultados: por ejemplo, "con stock mínimo de 80 unidades, la probabilidad de ruptura es 5.2%; con stock mínimo de 120 unidades, desciende a 0.8%".
Aplicación a gestión de stocks: riesgo de ruptura
Supóngase una empresa con demanda diaria que sigue distribución normal: media 200 unidades, desviación típica 40 unidades. Plazo de entrega: 10 días (fijo o también variable). Si se establece stock mínimo (de seguridad) de 100 unidades, ¿cuál es el riesgo de ruptura durante el plazo de entrega?
Sin Montecarlo, el cálculo analítico es complejo porque requiere convolucionar la distribución de demanda durante el plazo de entrega. Con Montecarlo, simplemente se simula: genera demanda aleatoria para los 10 días de plazo, suma las demandas (que pueden totalizar entre 1.600 y 2.400 unidades según variabilidad), y verifica si la demanda acumulada supera el stock mínimo de 100 unidades. Repitiendo 10.000 veces, si ocurren 450 roturas, la probabilidad estimada es 4,5%.
Cuantificación de riesgo y análisis de percentiles
Un resultado importante de Montecarlo es el análisis de percentiles. Si se simula el inventario final anual bajo diferentes políticas de stock, se obtiene una distribución de resultados. El percentil 5 indica el valor que será superado solo el 5% del tiempo; el percentil 95 indica el valor que será superado el 95% del tiempo. Para minimizar riesgo de ruptura, se selecciona stock mínimo en torno al percentil 90-95 de demanda durante el plazo.
Alternativamente, se puede ejecutar Montecarlo para diferentes niveles de stock mínimo y graficar la relación entre stock mínimo (eje X) y probabilidad de ruptura (eje Y). Generalmente esta relación es exponencial: aumentar de 50 a 100 unidades reduce ruptura significativamente, pero aumentar de 200 a 250 tiene efecto marginal. El gráfico revela el stock óptimo considerando trade-off entre coste de almacenamiento y riesgo.
Incertidumbre en múltiples variables
Muchas simulaciones asumen demanda y plazo de entrega independientes. En realidad, pueden estar correlacionados (plazos más largos en verano) o depender de factores externos (promociones, economía). Montecarlo avanzado captura estas correlaciones usando matrices de varianza-covarianza. También permite modelar eventos discretos (rotura de proveedor, cierre por mantenimiento, cambios de precio) que ocurren con probabilidades específicas.
Un ejemplo realista: una empresa evalúa cambio de proveedor. El proveedor actual (nacional) entrega en 5 días con variabilidad baja (desviación 0,5 días). El nuevo proveedor (importación) promete 20 días pero con variabilidad alta (desviación 4 días) y riesgo de retrasos del 5% (entregas 45 días). Montecarlo simula ambos escenarios durante un año operativo, permitiendo comparar riesgo total e impacto en stock requerido.
Implementación práctica: herramientas informáticas
Aunque Montecarlo puede implementarse en Excel usando funciones como ALEATORIO(), las simulaciones de 10.000+ iteraciones son tedias manualmente. Software especializado como Crystal Ball (Oracle), @Risk (Palisade), Arena (Rockwell) o herramientas de código abierto como Python con librerías NumPy/SciPy hacen esto eficiente. En contexto de formación, Excel con Visual Basic o Python permite entender la mecánica sin inversión en licencias costosas.
Un ejemplo en Python: importar librerías de distribución (scipy.stats), definir demanda como distribución normal, generar 10.000 vectores de demanda diaria durante 365 días, simular sistema de reposición, registrar roturas y costes, y analizar estadísticas resultado. El código es compacto pero potente.
Caso práctico integrado: distribuidor de piezas de reemplazo
Una distribuidora de piezas automotrices gestiona un producto crítico (filtro de aceite universal). Datos históricos (3 años): demanda diaria promedio 450 unidades, desviación típica 75 unidades. Proveedor: plazo 7 días (fijo), entrega lotes de 3.000 unidades. Coste de almacenamiento: 0,35 euros/unidad/año. Coste de ruptura (pérdida de venta + penalización): 2 euros/unidad.
Se evaluarán tres políticas: (A) Stock mínimo 400 (bajo riesgo, alto almacenamiento). (B) Stock mínimo 300 (medio). (C) Stock mínimo 200 (bajo almacenamiento, alto riesgo ruptura). Simulación Montecarlo de 52 semanas (año típico) con 10.000 iteraciones.
Resultados esperados: Política A: 2-3 roturas anuales (probabilidad ~0,5%), coste almacenamiento ~140.000 euros. Política B: 15-20 roturas (probabilidad ~3%), coste almacenamiento ~105.000 euros. Política C: 60-80 roturas (probabilidad ~12%), coste almacenamiento ~70.000 euros. Incluyendo costes de ruptura: Política A ≈140.000 euros, Política B ≈117.000 euros, Política C ≈190.000 euros. Política B es óptima.
Ventajas y limitaciones de Montecarlo
Ventajas: (1) Captura incertidumbre real, no solo promedios. (2) Evaluación de múltiples escenarios simultáneamente. (3) Cuantificación explícita de riesgo (probabilidades, percentiles). (4) Identificación de parámetros sensibles (análisis de sensibilidad). Limitaciones: (1) Requiere datos históricos de calidad para calibrar distribuciones. (2) Cálculo intensivo (aunque moderno). (3) Resultados son probabilísticos, no determinísticos (±margen de error). (4) Suposición de estacionariedad (distribuciones no cambian en tiempo).
Ideas clave
- Simulación de Montecarlo modela incertidumbre real en demanda y plazos mediante generación de miles de escenarios aleatorios, no asumiendo valores promedios fijos
- La técnica cuantifica riesgo de ruptura como probabilidad y permite evaluar trade-offs entre coste de almacenamiento e incertidumbre de disponibilidad
- Análisis de percentiles (p5, p50, p95) de inventario simulado revela stock óptimo considerando tolerancia organizacional al riesgo
- Montecarlo captura correlaciones y eventos discretos (cambios de proveedor, retrasos, promociones) que cálculos determinísticos ignoran
- Implementación práctica requiere software (Excel avanzado, Python, o herramientas especializadas) y datos históricos de calidad sobre demanda y plazos
- Los resultados son probabilísticos; Montecarlo identifica políticas óptimas pero con margen de error inherente a métodos estadísticos