(Math notation is generally the same as
that used in Microsoft's Excel. The
MathNotation link
will also give examples of the notation as used here.)
The key to calculating Bingo statistics is the Single
Board Cumulative Probability of getting Bingo on or before the "Nth"
number is called. These are the numbers that appear in Column 3 of the
statistics table.
First, we will show
how to calculate the other columns once you have the Column 3 data.
For any number of boards (1, 50, or other), the
probability of getting a Bingo when the Nth number is called is the
difference between the cumulative probability for the Nth number and
the (N-1)th number.
Example - single board (refer to the table): The
probability of getting a Bingo when the 20th number is called is the
cumulative probability for 20 numbers (0.022874) minus the cumulative
probability for 19 numbers (0.017993). The result of 0.022874 minus
0.017993 is the 0.004881 probability that appears in the table.
Example - 50 boards (again refer to the table): The
probability that (at least) one of the 50 boards will get a Bingo when
the 20th number is called is the cumulative probability for 20 numbers
(0.685574) minus the cumulative probability for 19 numbers (0.596608).
The result of 0.685574 minus 0.596608 is the 0.088966 probability that
appears in the table.
How to calculate
the Column 5 data
The Cumulative Probability column for any number of
boards can be calculated once the Cumulative Probability for a single
board is known. If we let "K" equal the number of boards, and let Cp[N]
equal the single board Cumulative Probability after N numbers have been
called, then the "K" boards Cumulative Probability after N numbers have
been called is:
1 - ((1 -
Cp[N])^K) (^ is the power
function e.g. 2^3 = 8)
For example: If we have the Single Board Probability after 25 numbers
have been called (look up 0.063961 in the table), the 50 board
Cumulative Probability after 25 numbers is:
1 -((1 - 0.063961)^50) =
1 -(0.936039^50)
=
1 -
0.036703
= 0.963297 (You can cross check this
with the table.)
Note: A precision error will be noticeable when using smaller vales of
"N")
Calculating the single
board cumulative probability values
Up to now we have been making easy calculations using the
single board Cumulative Probabilities. So where do these numbers come
from? Unfortunately this will require some serious computer number
crunching. The Single Board Cumulative Probability that at least one
Bingo exists given that "N" numbers have been called is the sum of the
probabilities for the following conditions:
Of the N numbers called, 4 have been matched on the card, and these 4
have formed a Bingo,
Of the N numbers called, 5 have been matched on the card, and these 5
have formed a Bingo,
Of the N numbers called, 6 have been matched on the card, and these 6
have formed a Bingo, etc.
Of the N numbers called, K have been matched on the card, and these K
have formed a Bingo, etc.
There will be two parts to the calculations. For each of
the above lines, we need to know the probability of having K matches
out of the N numbers that have been called. We also need to know the
probability of having at least one Bingo given that K numbers have hit
the board.
Part 1. Calculating the probability of having at least
1 Bingo
given that you have "K" hits on the Bingo Card
(Warning: If you don't like to play with the bits in "C" or "C++"
programs, you aren't going to like this.)
There are 25 cells on a Bingo card that are organized into
a 5 x 5 square. The center space is free which leaves 24 spaces that
may or may not have been matched in the course of a game. This leaves
2^24 = 16,777,216 different patterns that may or may not have at least
1 Bingo. Each of these is an equally likely pattern. For each of the
16,777,216 of these patterns, we are going to have to count how many
spaces are occupied and if the pattern contains a Bingo. For example:
there are COMBIN(24,10) = 1,961,256 different ways we can hit 10
different spaces on the Bingo Board. We will have to count how many of
these 1,961,256 have at least one Bingo. Then we can divide this count
by 1,961,256, which will give us the probability of having a Bingo.
The general algorithm we will use will
look like:
For each of the 16,777,216 patterns
Count the number of Bingo board spaces that have hits (Min
= 0 Max = 24)
Check this pattern to see if it has at least one bingo
If "Yes" then add one to the count for this number of
board hits
Repeat the loop for the next pattern.
There's a little catch in here. How do you tell a computer
how to recognize a "Bingo"? (And you better find an efficient way since
we will be doing it 16,777,216 times.)
Let's number the spaces on a Bingo card as follows:
4 3 2 1 0
9
8 7 6 5
13 12
* 11 10
18 17
16 15 14
23 22
21 20 19
We have 24 spaces numbered from 0 to 23. We also note that integer
numbers in a computer are expressed as binary numbers. The table below
compares the first few decimal numbers with their binary
equivalents.
Decimal
Binary
0
0
1
1
2
10
3
11
16,777,215 11111111111111111111111
(There are 23 1's)
Thus, if a computer counts from 0 to 16,777,215 the 0's
and 1's in the binary numbers will generate all possible patterns for
the bingo card. (Let "1" represent a "Called space" and "0" a not
called space). If we use this same rule of applying a "1" for a hit and
"0" for no hit, then we could express a Bingo for the first row by
using "11111" for 5 hits across the row. Similarly the second row forms
a Bingo if we have a pattern of "11111xxxxx". Here, the 1's are
positions in 5-9 (We count positions from right to left starting with
"0") while the x's occupy whatever garbage might be in the first
row. We can continue this process for all 12 possible Bingo patterns.
When we run our computer program, we just compare the 12 patterns with
each of the 16,777,215 numbers. If all the 1's in any of the 12 tests
have corresponding 1's in the binary number, then we have a Bingo. (In
patterns that use the central free space, only four 1's are in the
Bingo pattern). The actual computer instruction uses a bitwise "AND"
test for the test.
Finally, we can write the computer code.
for (i =
16777215; i; i--) {
/* Count from 2^24-1 to
1
*/
NbrBits =
0;
/* Will count the
number of 1's */
j =
i;
/* Get a work version of the
number */
do
{
/* Will rotate the
number to the right */
NbrBits +=
(j & 1);
/* Will add 1 each time a
"1" is found */
j >>=
1;
/* Shift everything for the next test. */
}
while(j);
/*
Repeat until nothing left to look at */
for (j = 12; j; j--) {
/* Now check the 12 Bingo
patterns */
if ((i &
Bingos[j]) == Bingos[j]) { /* If one of the patterns
matches */
NbrBingos[NbrBits]++;
/* then
increment the count for this */
break;
/* number of hits.
*/
/* (Don't have to search further)
*/
}
}
/* Else check next bingo
pattern */
}
/* Repeat all 16777215 possible patterns. */
We can output the results here and show the probability of having a
Bingo given you have "N" hits on your bingo card.
Number of
Nbr. of hits
Comb.with
Total
Probability there is at
on the card a
Bingo
Combinations least 1
Bingo(Col.2 / Col.3)
---------------------------------------------------------------
0
0 COMBIN(24, 0) =
1
0.000000
1
0 COMBIN(24, 1) =
24
0.000000
2
0 COMBIN(24, 2) =
276 0.000000
3
0 COMBIN(24, 3) =
2,024 0.000000
4
4 COMBIN(24, 4) =
10,626 0.000376
5
88 COMBIN(24, 5) =
42,504 0.002070
6
912 COMBIN(24, 6) =
134,596 0.006776
7
5,928 COMBIN(24, 7) =
346,104 0.017128
8
27,102 COMBIN(24, 8) =
735,471 0.036850
9
92,520 COMBIN(24, 9) =
1,307,504 0.071526
10 244,092
COMBIN(24,10) = 1,961,256 0.124457
11 507,696
COMBIN(24,11) = 2,496,144 0.203392
12 841,100
COMBIN(24,12) = 2,704,156 0.311040
13 1,113,360
COMBIN(24,13) = 2,496,144 0.446032
14 1,174,620
COMBIN(24,14) = 1,961,256 0.598912
15 981,424
COMBIN(24,15) = 1,307,504 0.750609
16 644,445
COMBIN(24,16) = 735,471 0.876234
17 331,056
COMBIN(24,17) = 346,104 0.959522
18 133,428
COMBIN(24,18) = 134,596 0.991322
19
42,480 COMBIN(24,19) =
42,504 0.999435
20
10,626 COMBIN(24,20) =
10,626 1.000000
21
2,024 COMBIN(24,21) =
2,024 1.000000
22
276 COMBIN(24,22) =
276 1.000000
23
24 COMBIN(24,23) =
24
1.000000
24
1 COMBIN(24,24) =
1
1.000000
From here it gets "easier". If we want to find the
cumulative probability that we have a Bingo after 10 numbers have been
called, we just sum the following:
The probability that 4 of the 10 numbers are on the card
times the probability that these 4 hits form a Bingo, plus the
probability that 5 of the 10 numbers are on the card times the
probability that these 5 hits form a Bingo, etc. through all 10 numbers
are on the card. This comes out to:
COMBIN(24, 4) * COMBIN(51, 6) / COMBIN(75,10) * 0.000376 = 0.000087
COMBIN(24, 5) * COMBIN(51, 5) / COMBIN(75,10) * 0.002070 = 0.000249
COMBIN(24, 6) * COMBIN(51, 4) / COMBIN(75,10) * 0.006776 = 0.000275
COMBIN(24, 7) * COMBIN(51, 3) / COMBIN(75,10) * 0.017128 = 0.000149
COMBIN(24, 8) * COMBIN(51, 2) / COMBIN(75,10) * 0.036850 = 0.000042
COMBIN(24, 9) * COMBIN(51, 1) / COMBIN(75,10) * 0.071526 = 0.000006
COMBIN(24,10)* COMBIN(51, 0) / COMBIN(75,10) * 0.124457 = 0.000000
Total
= 0.000808
(Which is the value shown for the single board cumulative probability
after 10 numbers have been called. Calculations for all the other
single board cumulative probabilities are similar.)
Return to the Bingo
main page
Web page generated via
KompoZer