Un modelo cuantitativo emula cierto comportamiento del mundo (a) representando objetos por algunas de sus propiedades numéricas y (b) combinando esos números de una manera definida para producir salidas numéricas que también representan propiedades de interés.
En este esquema, se combinan tres entradas numéricas a la izquierda para producir una salida numérica a la derecha. Las líneas numéricas indican posibles valores de las entradas y salidas; los puntos muestran valores específicos en uso. Hoy en día, las computadoras digitales suelen realizar los cálculos, pero no son esenciales: los modelos se han calculado con lápiz y papel o mediante la construcción de dispositivos "analógicos" en madera, metal y circuitos electrónicos.
Como ejemplo, quizás el modelo anterior suma sus tres entradas. R
el código para este modelo podría verse así
inputs <- c(-1.3, 1.2, 0) # Specify inputs (three numbers)
output <- sum(inputs) # Run the model
print(output) # Display the output (a number)
Su salida simplemente es un número,
-0,1
No podemos conocer el mundo a la perfección: incluso si el modelo funciona exactamente como lo hace el mundo, nuestra información es imperfecta y las cosas en el mundo varían. Las simulaciones (estocásticas) nos ayudan a comprender cómo esa incertidumbre y variación en las entradas del modelo deberían traducirse en incertidumbre y variación en las salidas. Lo hacen variando las entradas al azar, ejecutando el modelo para cada variación y resumiendo la salida colectiva.
"Aleatoriamente" no significa arbitrariamente. El modelador debe especificar (ya sea a sabiendas o no, explícita o implícitamente) las frecuencias previstas de todas las entradas. Las frecuencias de las salidas proporcionan el resumen más detallado de los resultados.
El mismo modelo, que se muestra con entradas aleatorias y la salida aleatoria resultante (calculada).
La figura muestra frecuencias con histogramas para representar distribuciones de números. Las frecuencias de entrada previstas se muestran para las entradas a la izquierda, mientras que la frecuencia de salida calculada , obtenida al ejecutar el modelo muchas veces, se muestra a la derecha.
Cada conjunto de entradas a un modelo determinista produce una salida numérica predecible. Sin embargo, cuando el modelo se usa en una simulación estocástica, la salida es una distribución (como la larga gris que se muestra a la derecha). La distribución de la distribución de salida nos dice cómo se puede esperar que varíen las salidas del modelo cuando varían sus entradas.
El ejemplo de código anterior podría modificarse así para convertirlo en una simulación:
n <- 1e5 # Number of iterations
inputs <- rbind(rgamma(n, 3, 3) - 2,
runif(n, -2, 2),
rnorm(n, 0, 1/2))
output <- apply(inputs, 2, sum)
hist(output, freq=FALSE, col="Gray")
Su salida se ha resumido con un histograma de todos los números generados iterando el modelo con estas entradas aleatorias:
Mirando detrás de escena, podemos inspeccionar algunas de las muchas entradas aleatorias que se pasaron a este modelo:
rownames(inputs) <- c("First", "Second", "Third")
print(inputs[, 1:5], digits=2)
100 , 000
[,1] [,2] [,3] [,4] [,5]
First -1.62 -0.72 -1.11 -1.57 -1.25
Second 0.52 0.67 0.92 1.54 0.24
Third -0.39 1.45 0.74 -0.48 0.33
Podría decirse que la respuesta a la segunda pregunta es que las simulaciones se pueden usar en todas partes. Como cuestión práctica, el costo esperado de ejecutar la simulación debería ser menor que el beneficio probable. ¿Cuáles son los beneficios de comprender y cuantificar la variabilidad? Hay dos áreas principales donde esto es importante:
Buscando la verdad , como en la ciencia y el derecho. Un número en sí mismo es útil, pero es mucho más útil saber qué tan exacto o seguro es ese número.
Toma de decisiones, como en los negocios y la vida cotidiana. Las decisiones equilibran riesgos y beneficios. Los riesgos dependen de la posibilidad de malos resultados. Las simulaciones estocásticas ayudan a evaluar esa posibilidad.
Los sistemas de computación se han vuelto lo suficientemente potentes como para ejecutar modelos realistas y complejos repetidamente. El software ha evolucionado para admitir la generación y el resumen de valores aleatorios de forma rápida y sencilla (como R
muestra el segundo ejemplo). Estos dos factores se han combinado en los últimos 20 años (y más) hasta el punto en que la simulación es una rutina. Lo que queda es ayudar a las personas (1) a especificar distribuciones apropiadas de entradas y (2) comprender la distribución de salidas. Ese es el dominio del pensamiento humano, donde las computadoras hasta ahora han sido de poca ayuda.