Simulación Monte Carlo para procesos: qué puede hacer y cuándo miente
La simulación Monte Carlo hace ejecutar el mismo proceso cientos de veces con duraciones y cantidades extraídas aleatoriamente y evalúa la distribución de resultados. En lugar de un tiempo de recorrido de «6,4 días» se obtiene una banda (por ejemplo P10 4,1 hasta P90 11,8 días) y con ello una afirmación que se mantiene en la operación. Engaña si se calculan demasiado pocas ejecuciones, si se elige una distribución simétrica para duraciones claramente sesgadas, si se ignoran dependencias entre entradas o si se incluye en el análisis la fase de calentamiento.
Inhaltsverzeichnis
«Monte-Carlo» suena a más de lo que es, y eso es bueno, porque el método es agradablemente sencillo. Es tirar los dados con sistema.
El método en cuatro frases
Usted no indica que un paso dura 10 minutos, sino que dura de 5 a 20 minutos, normalmente 8. El ordenador hace ahora pasar una instancia por el proceso y saca al azar en cada paso una duración de ese intervalo. Lo repite con todo un día lleno de instancias, cientos de veces. Al final no tiene una sola duración de proceso, sino cientos, y a partir de ellas una distribución.
Eso es todo. No hay un modelo del universo, ni inteligencia artificial. Solo la negativa a fingir que el mundo es exacto.
Por qué los procesos necesitan esto
La objeción obvia es: si conozco las medias, ¿por qué no me basta el cálculo con medias?
Porque los procesos son no lineales. Dos ejemplos que lo aclaran de inmediato:
Colas. Un paso con 85 % de utilización genera tiempo de espera equivalente a 5,7 veces su tiempo de procesamiento; con 95 % es 19 veces. Si su utilización varía durante el día entre 70 % y 100 %, la media de estos tiempos de espera no es el tiempo de espera a la utilización media. Es considerablemente mayor. (El procedimiento de cálculo está en Engpass berechnen.)
El camino más largo gana. Si dos subcaminos se ejecutan en paralelo y ambos deben terminar, la duración total es el máximo de ambos, y el valor esperado de un máximo es mayor que el máximo de los valores esperados. Un plan de proyecto que calcula con medias es por tanto sistemáticamente demasiado optimista.
Ambos juntos son la desigualdad de Jensen, conocida popularmente como «Flaw of Averages». Monte Carlo la evita porque no promedia desde el principio, sino que calcula y luego analiza.
Qué debe introducir usted
| Dato | Por qué se necesita | Si falta |
|---|---|---|
| Tasa de llegada y distribución | genera la carga | las colas no existen nunca o siempre |
| Duración por paso como rango | motor del tiempo de espera | resultado sistemáticamente favorable |
| Capacidad por rol o pool | genera el límite | sin utilización, sin cola |
| Porcentajes de ramificación | distribuye la cantidad | cantidades incorrectas en los pasos siguientes |
| Calendario y turnos | hace realista el tiempo de espera | tiempos de espera hasta 3 veces más bajos |
La laguna más frecuente es la última. Sin calendario, una instancia que llega el viernes a las 16:50 espera diez minutos. Con calendario espera hasta el lunes.
¿Cuántas ejecuciones?
La pregunta siempre aparece, y la respuesta es insatisfactoria: tantas hasta que el resultado deja de moverse.
Prácticamente comprobado:
- 100 ejecuciones bastan para ver qué paso es el cuello de botella. El orden es estable mucho antes de que los números lo sean.
- 500 a 1000 ejecuciones se necesitan para percentiles fiables, en particular P90, que por su naturaleza depende de eventos raros.
- Más de 5000 casi nunca aporta conocimiento adicional en procesos de este tamaño, solo tiempo de cálculo.
Puede comprobarlo usted mismo: ejecute el mismo modelo dos veces con diferente semilla. Si los resultados difieren notablemente, fueron pocas ejecuciones.
¿Qué distribución?
Aquí la mayoría comete el segundo error. Los tiempos de procesamiento casi nunca son simétricos: una instancia no puede ser más rápida que «muy rápida», pero sí arbitrariamente más lenta. La distribución tiene por tanto una larga cola hacia la derecha.
- Distribución triangular (mínimo, valor más probable, máximo) es para la mayoría de procesos administrativos totalmente suficiente y tiene la ventaja de que los tres valores se pueden obtener en un taller.
- Distribución lognormal refleja mejor la cola larga y es la elección correcta cuando los valores atípicos dominan el proceso.
- Distribución normal casi siempre es errónea. Es simétrica y permite duraciones negativas.
Regla práctica: si no está seguro, elija una distribución triangular y muestre el resultado como un intervalo. La elección de la distribución desplaza percentiles. Casi nunca desplaza qué paso es el cuello de botella.
Los cuatro errores que hacen inútil el resultado
1. Demasiadas pocas ejecuciones. Se reconoce porque dos ejecuciones dan respuestas distintas. Comprobable en dos minutos.
2. Distribución simétrica para duraciones sesgadas. Conduce a que P90 resulte claramente demasiado baja. Justo el valor con el que debería planificar.
3. Dependencias ignoradas. Si un caso complejo tarda más en cada paso, las duraciones están correlacionadas. Un modelo que extrae cada duración de forma independiente promedia este efecto y subestima la dispersión. Solución: separar tipos de instancia y modelarlos por separado, en lugar de usar una distribución amplia para todo.
4. Incluir la fase de calentamiento en el análisis. Al inicio de una ejecución el sistema está vacío, no hay colas y los tiempos de proceso son cortos. Quien cuenta esta fase diluye su resultado con un estado que en la operación no existe.
Cómo leer el resultado
Un análisis Monte Carlo no da un número, sino al menos tres:
- P10: el caso favorable. Así de bien irá aproximadamente en uno de cada diez periodos.
- P50: la mediana. La mitad de los casos está por debajo.
- P90: el caso desfavorable. Con esto dimensiona usted la capacidad, no con la media.
Quien convierta eso de nuevo en una sola cifra para una oferta ha hecho el trabajo en vano. El intervalo es el resultado. Cómo leerlo y por qué P50 engaña está en P10, P50, P90 richtig lesen.
Lo que Monte Carlo no hace
No mejora entradas malas. Si sus cantidades son conjeturas, los resultados son conjeturas. Solo que con decimales. Ese es el verdadero peligro del método: genera confianza que la base de datos no justifica.
Por eso toda evaluación debe incluir tres indicaciones en el documento: qué entradas están medidas y cuáles estimadas, cuántas ejecuciones se calcularon y con qué semilla. Si falta eso, el resultado no es reproducible. Y un resultado no reproducible no tiene lugar en una decisión.
FlowVisual calcula exactamente así e imprime la semilla y el número de ejecuciones en el manual. No por pedantería, sino porque un número que no se puede reproducir no debe aparecer en una plantilla de decisión.
Preguntas frecuentes
¿Cuántas ejecuciones Monte Carlo necesita un modelo de proceso?
Para la pregunta de qué paso es el cuello de botella bastan unas 100 ejecuciones. El orden de prioridad se estabiliza pronto. Para percentiles fiables, especialmente P90, deberían ser entre 500 y 1000. Si fueron suficientes, lo comprueba ejecutando el mismo modelo otra vez con otra semilla: si los resultados difieren apreciablemente, fueron pocas.
¿Qué distribución conviene para duraciones de procesamiento?
En la mayoría de procesos administrativos, la distribución triangular a partir de mínimo, valor más probable y máximo. Esos tres valores se pueden obtener en el taller. Cuando los valores atípicos modelan el proceso, la lognormal es mejor. La normal casi siempre es incorrecta, porque es simétrica y permite duraciones negativas.
¿Es Monte Carlo lo mismo que simulación de eventos discretos?
No, se complementan. La simulación de eventos discretos hace que transcurra una sola ejecución: llegadas, espera, servicio. Monte Carlo significa repetir esa ejecución muchas veces con valores aleatorios renovados y analizar la distribución de resultados.
¿Por qué debe documentarse una semilla?
Porque un resultado que no puede reproducirse no tiene lugar en un expediente de decisión. Con la misma semilla y el mismo número de ejecuciones cualquiera obtiene los mismos números y puede comprobar si una desviación se debe a supuestos cambiados o solo al azar.
Cálculelo con su propio proceso
FlowVisual convierte los números de este artículo en un modelo que se ejecuta, con sus volúmenes, sus capacidades, su margen.
Guide: seven steps to the number- Método
Leer P10, P50, P90 correctamente: donde el promedio le engaña
Los percentiles no son vanidad de estadístico, sino la única forma honesta de dar un resultado que fluctúa. Tres números, tres propósitos. Y tres errores de lectura que aparecen regularmente en expedientes de decisión.
Lectura - Método
Simulación discreta por eventos para procesos de negocio
La simulación discreta por eventos salta de evento a evento en lugar de en pasos de tiempo. Quien entiende por qué, toma bien las tres decisiones en las que fallan la mayoría de los modelos: distribución, fase de calentamiento, número de corridas.
Lectura - Método
Simular procesos de negocio: la guía práctica
La simulación en la empresa no es un proyecto estadístico, sino una herramienta de decisión. Esta guía dice qué procesos valen la pena, qué aparece al final en el papel, cómo es un primer proyecto y cuáles son los cuatro errores que cuestan a la mayoría de los proyectos.
Lectura