# Odds of each hand size in a game of Go Fish

A game of GoFish is played with a deck of 52 cards (4 suits, 13 ranks in each suit).

2 to 6 players play. With 2 players each player is dealt 7 cards. With 3 or more players each player is dealt 5 cards.

Players take turns asking each other for a rank. If the asked player has cards of that rank they give them all to the asking player. If not, the asking player draws a single card from the deck.

Whenever a player has 4 cards of the same rank, those cards are discarded.

The turn proceeds to the next player in clockwise order. The game ends when one a players hand is empty or the deck is depleted.

For simplicity purposes you could just assume a single player, drawing from the deck one at a time, whenever getting 4 cards of the same rank, discarding them.

Given either the normal rules or the simple version, what are the odds of having X number of cards in your hand?

For example what are the odds of reaching a hand of 30 cards? 31 cards? 32 cards?

-
Even for the simple version, it looks difficult. One can presumably get useful information from simulations. –  André Nicolas Feb 15 '12 at 15:06

This is for the one player game and a initial hand of five cards. I will consider that you have a hand with $k$ cards if after throwing away all groups of four cards of the same value, you have $k$ cards in your hand. For instance, if your initial hand is $\{2,3,3,3,3\}$ I will consider it a one card hand, not a five card hand.

Let $P(k)$ be the probability that at some moment in the game you have a $k$ card hand. The following values are easy: $P(0)=1$ (at the end of the game you have no cards in your hand) and $P(40)=P(41)=\dots=P(52)=0$ (if you have $40$ cards, there must be a group of four cards of the same value). A little thought gives $$P(39)=\frac{4^{13}}{\dbinom{52}{13}}=0.000105681$$

For the rest of the values I have run a simulation in Mathematica of $10^7$ games. These are the results:

 k      H(k)
0       483
1     25839
2    596131
3  10000000
4    230004
5  10000000
6  10000000
7  10000000
8  10000000
9  10000000
10  10000000
11  10000000
12  10000000
13  10000000
14  10000000
14   9999996
16   9999945
17   9999720
18   9998600
19   9994328
20   9980514
21   9942513
22   9854106
23   9675123
24   9348731
25   8822787
26   8068444
27   7080395
28   5919525
29   4675434
30   3458156
31   2381202
32   1514558
33    876208
34    458693
35    213203
36     84852
37     28160
38      7216
39      1067


For each $k$, $H(k)$ is the number of games in which a hand of $k$ cards has been held before reaching the end of the deck. Observe that the value of $H(39)$ is in accordance with the exact value of $P(39)$. A graph of the results:

It is surprising (at least to me) that for certain values of $k$, like $k=5$, a hand of $k$ cards was held in all $10^7$ games, even if a deck like

1,1,1,1,2,2,2,2,3,3,3,3,...


will give only hands of $1$, $2$, $3$ and $4$ cards.

-
@Sembiance: You will reach 5 unless each rank is grouped in fours as you show. This happens in $\frac {13!(4!)^{13}}{52!}\approx 6.7E-41$ of the deals. Not too surprising you didn't find one. –  Ross Millikan Apr 24 '12 at 14:04

I ended up writing a Go Fish simulation and ran 10,000 games with 2, 3, 4, 5 and 6 players.

The simulation players were a basic AI to try and imitate how humans would play.

Here are the results: http://telparia.com/gofish_sim_results.html

-