Men who stare at needles

December 29, 2012

(This article was first published on progRamming for the fun of it , and kindly contributed to R-bloggers)

Buffon’s needle problem is a question first posed in the 18th century by Georges-Louis Leclerc, Comte de Buffon:

What is the probability that a needle thrown at a lined sheet of paper will cross a line?

This problem can be used to estimate π. If we set the nail size and the line distance = 1, the estimator can be calculated by:
$$\widehat{\pi}=\frac{2\cdot throws}{hits}$$
Because throwing 80.000 needles can be annoying, I created an implementation in R. The result took over two hours to render an is attached to this post. It was generated by saving multiple GIF files and combining them to a movie. Red needles are hits, the heading represents the current approximation of π.

After loading the function you can start a simulation by typing:

 buffon([number of simulations], [number of needles], )

The following command will create one simulation with 100 needles: And here’s the function:

For more information on R and what to do with it visit:

To leave a comment for the author, please follow the link and comment on their blog: progRamming for the fun of it . offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)