# Does Monte Carlo == apply a random process?

I never had a formal statistics course but due to my line of research I'm constantly coming across articles which apply several statistical concepts.

Often I'll see a description of a Monte Carlo process applied to a given situation, and for what I can gather 9 out of 10 times it comes down to a simple random generation of a population, and its subsequent study.

My question: in the statistical world, is Monte Carlo a sort of code word for any algorithm involving a random generation of points/population/etc or is there something more to it?

I think I should first give you the simple answer, which is "YES, almost always."

This was boring, so let's get into more interesting stuff, complications so to speak.

Monte Carlo methods are often applied to absolutely non-stochastic problems. For instance, check out Monte Carlo integration. This is to take definite integrals, which are non-random at all. This was about the nature of the problems to which MC is applied, to Maarten's point.

Another, aspect of Monte Carlo methods is that they usually do not employ random numbers, I'd even say almost never. MC methods most commonly use pseudo-random number generators. These are not random numbers at all. Think of this: if you set the seed, then every number in the generated sequence is absolutely defined by the seed. They look and smell like random numbers so we use them.

Google for MC examples, you'll find infinite number of examples like this. This particular example has all these equations with probabilities etc., but then it goes on to use the function rgamma(.) in R. This function generates the sequence of psudo-random numbers, which looks awfully a lot like random numbers from Gamma distribution.

Having said that, there are true random number sequences. Surprisingly small number of statisticians use them, and or even are aware of them. The reason is that psudo-random generators are so much more convenient and fast. True random numbers are expensive, you have to buy them or the hardware number generators (TRNG). They are used a lot in gambling applications. They are generated from physical sources usually, such as radioactive decay and noise in radio waves, heat etc. Thanks to @scruss for pointing out that recently TRNG became much more accessible.

Finally, there's a family of methods called Quasi Monte Carlo. These use sequences of numbers which don't even pretend to look like random numbers, e.g. Sobol sequences of so called low-discrepancy numbers.

• As I understand the original question the "randomness" that the OP wants to know is an attribute of the algorithm not an attribut of the problem that the algorithm solves. The title may be a bit misleading in that respect. So the problem solved by Monte Carlo integration may be non-random, but the algorithm definately involves random numbers. Feb 2, 2015 at 14:46
• @MaartenBuis that's precisely what I meant, sorry if I wasn't more clear. What should I modify to make this clearer? Feb 2, 2015 at 14:47