stringtranslate.com

Generación de variables aleatorias no uniformes

La generación de variables aleatorias no uniformes o muestreo de números pseudoaleatorios es la práctica numérica de generar números pseudoaleatorios (PRN) que siguen una distribución de probabilidad dada . Los métodos se basan típicamente en la disponibilidad de un generador de PRN distribuido uniformemente . Luego se utilizan algoritmos computacionales para manipular una única variable aleatoria , X , o a menudo varias de estas variables, en una nueva variable aleatoria Y de modo que estos valores tengan la distribución requerida. Los primeros métodos fueron desarrollados para simulaciones de Montecarlo en el proyecto Manhattan , [ cita requerida ] publicado por John von Neumann a principios de la década de 1950. [1]

Distribuciones discretas finitas

Para una distribución de probabilidad discreta con un número finito n de índices en los que la función de masa de probabilidad f toma valores distintos de cero, el algoritmo de muestreo básico es sencillo. El intervalo [0, 1) se divide en n intervalos [0,  f (1)), [ f (1),  f (1) +  f (2)), ... El ancho del intervalo i es igual a la probabilidad  f ( i ). Se extrae un número pseudoaleatorio distribuido uniformemente X y se busca el índice i del intervalo correspondiente. El i así determinado tendrá la distribución  f ( i ).

Formalizar esta idea se hace más fácil utilizando la función de distribución acumulativa

Es conveniente establecer F (0) = 0. Los intervalos n son entonces simplemente [ F (0),  F (1)), [ F (1),  F (2)), ..., [ F ( n  − 1),  F ( n )). La principal tarea computacional es entonces determinar i para el cual F ( i  − 1) ≤  X  <  F ( i ).

Esto se puede hacer mediante diferentes algoritmos:

Distribuciones continuas

Métodos genéricos para generar muestras independientes :

Métodos genéricos para generar muestras correlacionadas (a menudo necesarias para distribuciones de formas inusuales o de alta dimensión):

Para generar una distribución normal :

Para generar una distribución de Poisson :

Bibliotecas de software

La Biblioteca Científica GNU tiene una sección titulada "Distribuciones de números aleatorios" con rutinas para muestrear bajo más de veinte distribuciones diferentes. [5]

Véase también

Notas al pie

  1. ^ Von Neumann, John (1951). "Varias técnicas utilizadas en relación con dígitos aleatorios" (PDF) . En Householder, AS; Forsythe, GE; Germond, HH (eds.). Métodos de Monte Carlo . Serie de Matemáticas Aplicadas de la Oficina Nacional de Normas. Vol. 12. Oficina de Imprenta del Gobierno de los EE. UU., págs. 36-38. Cualquiera que considere métodos aritméticos para producir dígitos aleatorios está, por supuesto, en un estado de pecado. También está disponible en línea un escaneo de baja calidad de la publicación original.
  2. ^ Ripley (1987) [ página necesaria ]
  3. ^ Fishman (1996) [ página necesaria ]
  4. ^ Fishman (1996) [ página necesaria ]
  5. ^ "Distribuciones de números aleatorios - Documentación de GSL 2.7". El sistema operativo GNU y el movimiento del software libre . Consultado el 18 de agosto de 2022 .

Literatura