2011-05-15 37 views
23

Estoy tratando de simular la llegada de los fanáticos a un estadio. El sistema en sí, creo que no será un problema, pero la llegada de los fanáticos sigue una distribución normal.Java distribución normal

Mi problema es:

tengo un cierto tiempo para la llegada como 100 minutos y 1000 fans, y que necesito para generar llegadas de aficionados a la vez después de que la distribución como -> ventilador x llegó a los 25 minutos , el fan y llegó a los 54 minutos, y así sucesivamente.

¿Cómo puedo generar estos números aleatorios siguiendo una distribución normal?

Estoy haciendo esto en Java y encontré el método nextGaussian() en el Random class, pero no estoy seguro de cómo usar esto en mi situación.

¿Alguien puede por favor aclararme?

+5

reloj fuera. ¿Estás seguro de que quieres una distribución normal? Normalmente esperarías que los tiempos interarrivales tuvieran una distribución * exponencial * ... –

+1

En este caso se cree que es una distribución normal, y me dijeron que hiciera este estudio de esa manera. Gracias de cualquier manera –

Respuesta

49

nextGaussian() le tomará muestras de una distribución normal con media 0 y std-desviación 1, por lo que si quieren significar 1 hora y std-deviation 15 minutos necesitará llamarlo como nextGaussian()*15+60.

De los docs for Random.nextGaussian():

Devuelve:
la siguiente pseudoaleatorio, Gaussian ("normalmente") distribuye valor doble con media 0.0 y desviación estándar 1.0 de la secuencia de este generador de números aleatorios

Cuestiones relacionadas