Home → Técnicas y Consejos → @RISK: Preguntas Generales → Resultados diferentes con la misma semilla fija para varias distribuciones
Also available in English: Different Results with the Same Fixed Seed for various distributions
Resultados diferentes con la misma semilla fija para varias distribuciones
Problema:
Al comparar la secuencia de números aleatorios generados para cada distribución en un modelo, son diferentes cuando se simulan con estos escenarios:
Explicación:
la diferencia puede ocurrir porque las distribuciones en el modelo se definen de manera diferente. Un modelo podía tener más distribuciones o el mismo número de distribuciones, pero estas se definían en un orden diferente.
Dado que @RISK está muestreando un número diferente de distribuciones o una lista de distribuciones ordenadas de manera diferente, son modelos efectivamente distintos y no se deben esperar los mismos resultados. El mismo modelo siempre producirá los mismos resultados usando la misma semilla fija.
Por ejemplo, suponga que estoy usando una semilla fija que genera los siguientes números usando RiskUniform ( 0,1): 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7. ( Por supuesto, un patrón como este es enormemente improbable; solo se elige para que el ejemplo sea fácil de seguir).
Si uso esa misma semilla fija y ejecuto una simulación con siete iteraciones, siempre obtendré esos valores precisamente en ese orden. En otras palabras:
Valor de la iteración Valor de RiskUniform(0,1)
1 0.1
2 0.2
3 0.3
4 0.4
Una diferencia es el número de distribuciones. Entonces, si agrego otro RiskUniform ( 0,1) a la hoja de cálculo y ejecuto siete iteraciones, los resultados serán diferentes. Se genera y utiliza la misma lista de semillas, pero ahora se toman muestras de dos distribuciones. En otras palabras:
Iteración Valor del primer RiskUniform(0,1) Valor del segundo RiskUniform(0,1)
1 0.1 0.2
2 0.3 0.4
3 0.5 0.6
4 0.7 [Siguiente valor en la lista inicial]
Otra razón de la diferencia es que las distribuciones se definieron en un orden diferente. Entonces, si agrego un RiskPoisson (5) y otro RiskUniform (0,1), o primero un RiskUniform y luego un RiskPoisson y ejecuto siete iteraciones, los resultados serán diferentes. Se utiliza la misma semilla fija, pero ahora se muestrean tres distribuciones, y estos son los números generados para RiskPoisson : 2,4,7,5,1,3,6.
En otras palabras:
Iteración |
Valor del primer RiskUniform(0,1) |
Valor del segundo RiskUniform(0,1) |
Valor de RiskPoisson(5) |
1 |
0.1 |
0.2 |
7.0 |
2 |
0.4 |
0.5 |
3.0 |
3 |
0.7 |
[Siguiente valor en la lista sembrada] |
O, con un orden diferente:
Iteración |
Valor del primer RiskUniform(0,1) |
Valor de RiskPoisson(5) |
Valor del segundo RiskUniform(0,1) |
1 |
0.1 |
4.0 |
0.3 |
2 |
0.4 |
1.0 |
0.6 |
3 |
0.7 |
[Siguente valor en la lista sembrada] |
El primer modelo con una sola distribución siempre producirá los mismos resultados para la misma semilla fija.
Los otros modelos con dos o tres distribuciones siempre tendrán la misma secuencia de números aleatorios para la misma semilla fija. Pero las muestras no serán las mismas porque se asignan de manera diferente. En última instancia, todas las muestras convergen en las mismas distribuciones deseadas, es decir, las mismas estadísticas, lo que hace que sus resultados sean correctos y comparables.
Además, tenga en cuenta que si el muestreo Latin Hypercube está en vigor, ya no podemos extraer muestras puramente aleatorias, ya que debemos asegurarnos de que se extraiga una muestra aleatoria de cada contenedor Latin Hypercube. Por esta razón, puede ver que las muestras no serán idénticas después de algunas iteraciones y solo coincidirán con los últimos dígitos. Lea más sobre esto en: Latin Hypercube Versus Muestreo Monte Carlo
Si las respuestas idénticas son críticas, tal vez sea necesario otro enfoque. Estas son algunas posibles soluciones:
Última actualización: 2023-02-10