- #1
Jademonkey
- 11
- 0
I was playing a pencil and paper role playing game with some friends, and some questions came up about the what is most important to increase to get better at a skill. There are two values for each skill- the basic value and your training value. The basic value ranges from 1-7 and determines how many six sided dice you can add to your ability check. The training value must be less than or equal to your basic value and let's your roll extra dice, allowing you to keep the (basic value) highest.
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.
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.