PDA

View Full Version : How To Sample Random Numbers


Watts
Sep5-05, 09:25 PM
I had a Monte Carlo class many moons ago. I was wondering if some one could jog my memory on how to sample random numbers from a normal distribution. I could do it but the normal distributions CDF is a non elementary integral. I cant get past that part.

EnumaElish
Sep5-05, 11:31 PM
Let U1 and U2 be two independent uniforrm random variables over the unit square. Then two independent standard normal random variables can be generated as N_1 = \sqrt{-2 \log (U_1)} \sin (2\pi U_2) and N_2 = \sqrt{-2 \log (U_1)} \cos (2\pi U_2).

P.S. Any software with an intrinsic normal distribution function will also do the trick.

Watts
Sep6-05, 09:03 AM
Explain intrinsic normal distribution function(the intrinsic part).

lurflurf
Sep6-05, 09:44 AM
I had a Monte Carlo class many moons ago. I was wondering if some one could jog my memory on how to sample random numbers from a normal distribution. I could do it but the normal distributions CDF is a non elementary integral. I cant get past that part.
The obvious method would be to generate uniform ramdon numbers on [0,1] then invert the normal CDF, but that is not computationally practical. What is often done is using the law of large numbers. The average of a large number of nonpathological random variables will be normal. Uniform randoms on [0,1] work well and are often the basis for other distributions. Also as was mentioned one could use a program/library that includes a random normal generator.

HallsofIvy
Sep6-05, 09:47 AM
Explain intrinsic normal distribution function(the intrinsic part).

"Intrinsic" here just means that the software has a built in function that will calculate the normal distribution for you.