Let's say we have a tournament with 80000 people in it, where each rolls a 10 sided dice 9 times. The highest sum of the 9 dice rolls wins the tournament. How do we calculate the average sum of dice rolls that will win the tournament? Assume the dice are fair and that each roll is independent.
Asked
Active
Viewed 74 times
3
-
What happens in the case of a tie for top score? That is, does a tie for the top score count as a win, or do you require a win outright? – paw88789 Nov 13 '14 at 16:56
-
Tie counts as a win lets say. – Daniel Steinberg Nov 13 '14 at 19:47
1 Answers
0
Start by computing $c_{m,n}$ for all ($n\in[1,90] $ and $m\in [1,9]$) which is the number of combinations of $m$ numbers in $\{1,\ldots,10\}$ summing up to exactly $n$.
This can be done easily by recursion $$c_{m,n}=\sum_{i=1}^{10} c_{m-1,n-i}$$
With the boundary conditions:
$$\forall i\in \{1,\ldots,10\}: c_{1,i}=1$$ $$\forall i \in \{11,\ldots,90\}: c_{1,i}=0$$
The probability of some player summing at most $x$ is $$p_x = \frac{\sum_{i=1}^{x} c_{9,i}}{10^9}$$
Next, compute the actual expectation:
$$\mathbb E=\sum_{i=9}^{90} \sum_{p=1}^{80000} {80000 \choose p} i (\frac{c_{9,i}}{10^9})^p\cdot p_i^{80000-p}$$
EDIT:
I ran a short Python code to solve this. The code is here, and the result for the parameters you gave is $\approx 82.99$.
R B
- 2,426
-
Is this calculus? I'm afraid I don't know a lot of this terminology, maybe I need to learn :) – Daniel Steinberg Nov 13 '14 at 19:47
-
This is more of an algorithmic approach. It should take about 10-15 minutes to code it and get the result in whichever numeric precision you wish. Specifically, this is called dynamic programming. – R B Nov 13 '14 at 20:46
-
How would I get guidance on how to code this? I have only a small amount of experience in python – Daniel Steinberg Nov 14 '14 at 01:19
-
-
-
@DanielSteinberg - If you find it helpful, you can upvote / accept the answer :). – R B Nov 22 '14 at 19:24