Java normal distribution

JavaRandomNormal Distribution

Java Problem Overview


I'm trying to simulate the arrival of fans to a stadium. The system itself, I believe it won't be a problem, but, the arrival of the fans follows a normal distribution.

My problem is:

I have a certain time for the arrival like 100 minutes and 1000 fans, and I need to generate arrivals of Fans at a time following that distribution like -> fan x arrived at 25 minutes, fan y arrived at 54 minutes, and so on.

How can I generate these random numbers following a normal distribution?

I'm doing this in Java and found the nextGaussian() method in the Random class, but I'm not sure how to use this in my situation.

Can someone please enlighten me?

Java Solutions


Solution 1 - Java

nextGaussian() will draw samples from a normal distribution with mean 0 and std-deviation 1, so if you want mean 1 hour and std-deviation 15 minutes you'll need to call it as nextGaussian()*15+60.

From the docs for Random.nextGaussian():

> Returns:
> the next pseudorandom, Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0 from this random number generator's sequence

Solution 2 - Java

I suggest you to use apache math: http://commons.apache.org/math/ , look here for more information: http://commons.apache.org/math/userguide/stat.html

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionHenrique GonçalvesView Question on Stackoverflow
Solution 1 - Javaratchet freakView Answer on Stackoverflow
Solution 2 - JavaPihView Answer on Stackoverflow