How to calculate the probability of rolling matching dice?
Hello!
I'm trying to design a new dice system for a table-top roleplaying game. I think that a multinomial distribution or some sort of simulation (probably 100,000 simulations of rolling 10-sided dice) might be the right way to go, but I need some help with the statistics and coding up a solution in python.
In the game, the player will roll a number of ten-sided dice. Every dice that matches the value of at least one other dice will count as a "match". If a player rolls 8 dice with values {1, 2, 3, 3, 3, 4, 4, 5}, they will have 5 total "matches" because there are three 3s and two 4s. I've been able to intuit that if the player rolls only 2 dice, they would expect to have a 90% chance of no matches, and a 10% chance of 2 matches (one pair of matching dice).
At some point I expect more dice to mean a lower chance of getting "n" matches -- for example, if you rolled 12 dice it would be impossible to get less than 3 matches {1,2,3,4,5,6,7,8,9,10,1,1}.
I'd like to be able to generate probabilities of getting "n" matches with a specified number of same-sided dice (i.e. rolling a number of 8-sided dice, a number of 10-sided dice, or a number of 12-sided dice). I'd like to be able to specify the # of matches I want a probability for, the # of dice to be rolled, and the # of sides on the dice rolled (all dice rolled can have the same # of sides).
Thank you!
Answer
- The questioner was satisfied with and accepted the answer, or
- The answer was evaluated as being 100% correct by the judge.

-
Thank you! I'll give this a try soon.
- answered
- 1279 views
- $10.00
Related Questions
- Statistics and Probability
- A miner trapped in a mine
- Borell-Cantelli Lemma application
- [Combinatorics] Selections, Distributions, and Arrangements with Multiple Restrictions
- Probability - Expectation calculation for a function.
- Probability question
- Normal distribution & Probability
- Suppose that X is a random variable uniform in (0, 1), and define $M = 2 \max\{X, 1− X\} − 1$. Determine the distribution function of M.
We could solve this but I suggest increasing the bounty to $25