- #1

- 11

- 0

For example, if you have a basic value of 5 and a training value of 3, you roll 8 dice and take the sum of the 5 highest.

I'm interested in determining how the mean (and maybe median) change as you add more basic and training dice.

I initially started to brute for the problem using java, but quickly realized that I'm working on a O(6^n) problem that way. So I decided to think about it a little more, and I'm probably going to use mathematica to implement something along these lines:

Let's say I'm using 7 basic and 7 training, for simplicity.

I view the problem as a question of combinations and permutations on a multiset, in essence.

We only need to worry about the highest 7 rolls, since we know that the other seven must be less than or equal to the lowest of the first seven.

Thus, for the lowest seven, there are always (lowest roll of the first 7)^7 possible permutations.

Then I'll use the multinomial theorem to find the number of permutations for each highest 7 dice combination. Since we are looking at the number of 7-combinations of 6 objects, there are only 792 (6+7-1 choose 7) to go through. Easy with a computer.

So, to find the mean, for each highest 7 dice outcome, I sum the dice, mutliply by the multinomial coefficient, and multiply by the number of permutations of the remaining seven dice with the restriction previously mentioned in mind. Then, I'll add all of these sums to together and divide by 6^14- the number of possible permutations on 14 dice.

I think the median would be fairly simple from here, since there are only 35 possible sums (7-42, all ones to all sixes), and I can easily figure out how many of each sum are possible then choose the middle based on that.

Is my logic here sound? Are there better ways to go about this? Is there a viable way of doing this without computer aid?

Thanks in advance!

PS: Sorry for the potentially superfluous back story and long post. I didn't want anyone to think I was trying to cheat on an assignment lol.