Field · 5 models
Monte Carlo Simulations
A Monte Carlo method turns a quantity you want — an area, an integral, an expected payoff — into the average of a random experiment, then runs the experiment many times. The models here start with the classic dartboard estimate of π and end with Markov chain Monte Carlo.
Models in this field
- OS-001Monte Carlo πEstimate π from random points in a unit square and watch the error shrink like 1/√n.
- OS-002Monte Carlo integrationEstimate an integral as the average of f at random points, with an error bar you can compute.
- OS-003Buffon's needleDrop needles on a lined floor; the share that cross a line is 2ℓ/(πt), which gives an estimate of π.
- OS-004Monte Carlo option pricingPrice a European option as a discounted average payoff and check it against Black–Scholes.
- OS-005Metropolis–HastingsA Markov chain that samples any density known up to a constant; tune the step size and watch it mix.
What every model here has in common
Each estimator is an average of independent (or, for MCMC, dependent) samples, so each comes with a standard error that shrinks like 1/√n. The pages report that error next to the estimate. A Monte Carlo number without an error estimate is only half a result; how accurate a Monte Carlo estimate is explains how the error is computed and why halving it costs four times the work.
Where to start
- Monte Carlo π is the smallest complete example: one probability, one estimator, one error formula.
- Buffon’s needle is the 18th-century version of the same idea, with a geometric probability instead of an area.
- Monte Carlo integration generalizes both: any integral is an expected value.
- Option pricing applies the integral view to a financial payoff and adds variance reduction.
- Metropolis–Hastings samples from a distribution you can only evaluate up to a constant, at the price of correlated samples.
Monte Carlo is not the same as “simulation”
Any simulation that uses random numbers tends to get called a Monte Carlo simulation. Strictly, the Monte Carlo method is the estimation step: using random samples to approximate a number. A queue simulation uses random numbers to generate behavior over time; averaging many runs of it to estimate a mean waiting time is the Monte Carlo part. The distinction matters when you report results: behavior needs a model you trust, estimates need an error bar.
All sampling on this site uses one seeded generator, identical in JavaScript and Python, so any run can be reproduced — see pseudo-random numbers and seeds.