MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Insoluble marbles-in-urn problem?

...I don't believe the hypergeometric distribution is any help at all...

Hi.  Just a silly side note.
I mentioned 1 - PDF(...)

I thought we could get rid of the 1-(xxx)  by using CDF only.
However, I don't believe this is the case.
The smaller population is question is 1/10th the total size.

If we reverse this logic, and think of the remaining larger population (ie 9/10th of the size)
If we pick  0,1,2,...8 from the Larger population that does not match the specific number, then this results in 2 or more remaining that do match the number.
Hense, the use CDF.
I don/t see why, but it appears we have to add in probability of 
having the specific (PDF) of NONE or 0.


612579511 / 1000000000

Using this logic, we can also add all the changes of picking 0-10 from the larger array (CDF), and subtracting the chance of having only 1.


612579511 / 1000000000

= = = = = = = = = =
HTH  : >)
Dana DeLouis
8.0 for Mac OS X x86 (64-bit) (November 6, 2010)

On Jul 3, 4:14 am, John Feth <johnf... at> wrote:
> There is a huge urn full of marbles, each marked with a single digit:
> 0, 1, 2, 3, 4, 5, 6, 7, 8, or 9.  The marked marble quantities are
> uniformly distributed between all of the digits and the marbles are
> thoroughly mixed.  You look away, choose 10 marbles, and put them in a
> black velvet bag.
> When you have some time, you look away, open the bag, and remove one
> marble.  You close the bag, look at the digit on the marble, open a
> beer perhaps, and calculate the probability that there is at least one
> more marble in the bag with the same digit.
> The answer is brute forced below is there a formal way to obtain the
> answer?  I don't believe the marbles-in-urn standby, the
> hypergeometric distribution, is any help at all.
> Copy and paste the algorithm below into Mathematica (V6 or newer) to
> find the surprising answer, estimated from a million tests in about 16
> seconds.
> Timing[rag=Table[x,{x,1,1000000}];For[i=1,i<Length[rag]+1,i+
> +,rag[[i]]=Table[RandomInteger[{0,9}],{n,1,10}]];bug=Table[x,{x,
> 1,Length[rag]}];For[i=1,i<Length[rag]+1,i+
> =
> 1,Length[rag]}];freq:=Table[Count[rag[[i]],selection[[i]]],{i,
> =
1,Length[rag]}];bull=Tally[Characters[freq]];bullsort=Sort[bull];N[(Length[ rag]-
> bullsort[[1,2]])/Length[rag],10]]
> Below are some definitions that might make the algorithm above a
> little less opaque.
> rag is a table of 10 digit random strings below
> (*rag=Table[x,{x,1,3}];For[i=1,i<Length[rag]+1,i+
> +,rag[[i]]=Table[RandomInteger[{0,9}],{n,1,10}]];rag
> {{9,6,5,3,4,9,1,7,4,3},{8,5,7,7,0,0,5,6,3,5},{1,1,8,0,9,0,4,3,4,3}}*)
> bug is a table of which digit to pick from each rag[ [ ] ] above, i.e.
> the 4th from the left in rag[[1]], the 2nd from the left in rag[[2]],
> etc.
> (*bug=Table[x,{x,1,Length[rag]}];For[i=1,i<Length[rag]+1,i+
> +,bug[[i]]=RandomInteger[{1,10}]];bug
> {4,2,5}*)
> selection is a table of the values of the digit picked above, i.e.,
> the 4th digit in rag[[1]] is a 3, the 2nd digit in rag[[2]] is a 5,
> etc.
> (*selection=Table[rag[[i,bug[[i]]]],{i,1,Length[rag]}]
> {3,5,9}*)
> freq is a table of the number selected digits in rag[[n]], i.e., there
> are two 3s in rag[[1]], three 5s in rag[[2]], one 9 in rag[[3]], etc.
> (*freq=Table[Count[rag[[i]],selection[[i]]],{i,1,Length[rag]}]
> {2,3,1}*)
> bull tallies how many times the chosen digit occurs
> (*bull=Tally[Characters[freq]]
> {{Characters[2],1},{Characters[3],1},{Characters[1],1}}*)
> bullsort tallies the number of times the chosen digit occurs; the
> chosen digit occurred once one time (9's above), twice one time (4's
> above), and once three times (5's above)
> (*bullsort=Sort[bull]
> {{Characters[1],1},{Characters[2],1},{Characters[3],1}}*)

  • Prev by Date: Re: Numerical accuracy/precision - this is a bug or a feature?
  • Next by Date: Re: How can I get better solution for this...?
  • Previous by thread: Re: Insoluble marbles-in-urn problem?
  • Next by thread: Operations on RegularExpression matches