The Buffon Needle Problem and a Computer Simulation

One can calculate the value of PI by dropping a needle of length k
onto a grid of parallel lines whose length is greater than k.
The value is determined as the probability of hits (the needle crosses
a grid line) to the total number of tosses. This value is

PI = ( 2 * k * total-tosses) / number-of-hits

This calculation was simulated with a computer program.

The program was run on several platforms and processors.
I ran the simulation for 10 million tosses and a needle length of .8.
I assumed the grid lines to be one unit apart.
The results are given below.

Results of Buffon Needle Simulation

Pentium 133mhz

486DX 120mhz

Sparc Ultra I

486DX 66mhz

DOS

Linux

Solaris 2.5

DOS

Solaris 2.5.1

Linux

Time (seconds)

57

32

123

110

47

145

Value of PI

3.163097

3.141706

3.161965

3.163097

3.161965

3.141706

Note the relatively poor values of PI for the DOS and Solaris OSes. Since
the simulation relies on a random number generator - the results reflect
a possible shortcoming (bug ?) in the generators. Hmmmm. Well boys and girls
we'll have to investigate further.
Any Comments?

And for you linux supporters - it appears that linux on 133 pentium
beat out a Sun Sparc Ultra I (at least for this simulation which gets
the cosine of an angle for each toss of the needle).

For your amusement I have a new simulator - java applet to calculate PI
(I lost the original executable file)

Value of PI (to 20k places) is HERE
- Next week there will be a test - to see if you have memorized the value.