Randomness buys accuracy at a terrible exchange rate
Ten times the samples buys about three times the accuracy. Not ten. That exchange rate is fixed, and no cleverness renegotiates it.
Throwing darts at a square to measure π is the standard first demonstration of Monte Carlo methods. Count the fraction that land inside the quarter circle, multiply by four, and you have an estimate.
What the demonstration usually leaves out is how badly it works.
Three presets, and what they cost
Monte Carlo π ships three sample sizes: 200, 2000 and 20000. They run on a fixed seed, so these are not anecdotes, they are the same three numbers every time anyone opens the page.
- 200 points give 3.040000, off by 1.02 × 10⁻¹
- 2000 points give 3.122000, off by 1.96 × 10⁻²
- 20000 points give 3.127800, off by 1.38 × 10⁻²
A hundred times the work between the first and last row, and the answer is still wrong in the second decimal place. It has not yet earned the "3.14" that every schoolchild can recite.
The rate is one over the square root
Each dart is an independent yes-or-no trial, and the standard error of a proportion measured from n trials falls as 1/√n. For this particular estimator the typical error works out at 0.116 for 200 samples, 0.0367 for 2000, and 0.0116 for 20000.
So ten times the samples buys about 3.16 times the accuracy, because 3.16 is the square root of ten. To gain one decimal digit, a factor of ten in accuracy, you need a factor of one hundred in samples. To go from the 2000-sample error of about 0.037 down to 0.0037, you need 200,000 darts.
This is worth holding onto because it is not a property of π, or of darts, or of this implementation. It is the central limit theorem doing its work: the error of an average of independent things shrinks as the square root of how many you averaged, whatever they were. The same arithmetic governs opinion polls, particle physics event counts and every simulation anyone runs.
What one seed cannot tell you
Now look again at those three preset errors, because they do not behave the way the rule just promised. Going 200 to 2000 the error shrank by 5.19 times. Going 2000 to 20000 it shrank by only 1.42 times. Neither is 3.16.
Nothing is broken. The square-root law describes the typical error, the width of the distribution the estimate is drawn from, and a single run is one draw from that distribution. The 2000-point run happened to land closer than its typical error, at about half a standard deviation. The 20000-point run happened to land further out. Their ratio says almost nothing.
This is the most common misreading of a simulation. A run that came out well is not evidence of a good method, and a run that came out badly is not evidence of a bad one. You cannot see the rate from one seed; you can only see it by repeating and looking at the spread, which is what Normal Distribution is describing when it draws that spread as a curve.
Why anyone puts up with it
A method that needs a hundredfold increase in work per digit sounds indefensible, and for one-dimensional problems it is. Ordinary numerical integration on a grid will beat it easily.
The reason Monte Carlo dominates real computing is that 1/√n contains no mention of dimension. Put a grid on a problem in 20 dimensions with 10 points per axis and you need 10²⁰ evaluations. The random method still needs whatever 1/√n demands for the accuracy you want, and it does not care that there are 20 axes.
So the exchange rate is terrible and it is also flat. In low dimensions you should refuse it. In high dimensions it is frequently the only offer on the table, which is why physics, finance and rendering all pay it.
Poisson is the same arithmetic seen from the counting end: when you count rare events, the variance equals the mean, so the relative error again falls as one over the square root of the count. Doubling the confidence in a rate always means quadrupling the observation.