Recientemente, me encontré con un comentario afirmando que casi todos los investigadores que hacen los métodos de Monte Carlo lo están haciendo mal. Continuó explicando que simplemente elegir diferentes semillas para diferentes instancias de un PRNG, como el Mersenne Twister, no es suficiente para garantizar resultados imparciales ya que pueden ocurrir colisiones malas . El artículo de Wikipedia sobre el Mersenne Twister parece corroborar:
Múltiples instancias de Mersenne Twister que difieren solo en el valor de semilla (pero no en otros parámetros) generalmente no son apropiadas para las simulaciones de Monte-Carlo que requieren generadores de números aleatorios independientes, aunque existe un método para elegir múltiples conjuntos de valores de parámetros.
Tengo que admitir que soy culpable de los cargos. Pero también lo son todas las otras implementaciones de bibliotecas paralelas de Monte Carlo que he visto hasta ahora, en particular ALPS .
El artículo de Wikipedia también hace referencia a dos documentos que ofrecen remedio:
- El esquema de Creación dinámica (DC) (1998) selecciona conjuntos de parámetros para los MT en base a la hipótesis de que son independientes si los polinomios característicos correspondientes son coprimos.
- The Jump Ahead para Linear RNGs (2008). Creo que es similar al método de salto de rana para LCG.
Ambos métodos han sido creados por Matsumoto y Nishimura, los autores originales del algoritmo Mersenne Twister.
Me temo que no tengo mucho conocimiento de teoría de números o álgebra y no entiendo completamente los esquemas anteriores o las matemáticas detrás del Mersenne Twister. Mis preguntas son principalmente de naturaleza práctica:
- ¿Cuánto realmente debo preocuparme por introducir sesgo en mis simulaciones cuando no empleo un esquema de este tipo si a casi nadie le importa en la práctica (al menos en mi comunidad)?
- Si tuviera que implementar una de estas contramedidas, ¿estoy en lo cierto al suponer que la Jump-Ahead es más adecuada ya que se basa en una teoría firme y es el método más moderno?