0

I'll use the MobA games to illustrate what I'm asking since it's easier to explain even tho I want to apply that algorithm to time series.

In a MobA game you have more than 100 characters and every game involves 5v5 with 10 different characters. So it's 10 choose 100 meaning there are 17,310,309,456,440 possibilities.

What I would like to do is use a database with millions of games and work out probabilities for 10-characters setups to come up. Since players will often choose the same characters the high combinatorics won't stop multiple games from having the same setup in a pool of let's say 1 million games.

However given the high combinatorics I can't just make a table with all possibilities and put every new game setup to a case. How should I proceed?

I've been thinking to maybe create a case with first game checked, and then for each new game either higher the count of that first case or create a new case if it's doesn't correspond and so on. Is that the most efficient way to proceed?

3
  • See: sampling a random combination (en.wikipedia.org), question on math.stackexchange.com, and reservoir sampling (en.wikipedia.org). As for preventing duplicates, you will have to maintain a whole list of all "game setup" you have chosen. See also orthogonal array testing (en.wikipedia.org).
    – rwong
    Commented Nov 1, 2015 at 18:25
  • Perhaps someone could write a better answer if you provide more details, especially whether you are only interested in generating completely random (with equal probability) samplings, or some application-specific preference that is not equal-probability.
    – rwong
    Commented Nov 2, 2015 at 4:53
  • 1
    @rwong I think i've said it but maybe it's unclear, I want to read the historical database of already played games that contains let's say 1million games and see what setups of 5v5 people effectively choosed. So it's gonna be a non-equal-probability, the goal being to see what are the most choosen compositions. I'm not generating anything just reading and sorting.
    – Wicelo
    Commented Nov 2, 2015 at 5:07

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.