1

Lets say we have a two players game, where one player always wins (there can't be draw).

The question is: How to divide n players into k divisions if we don't know anything about their skills? Each division should consist of the same number of players, and the best players players should be in first division, worst players in last division, and so on. There is additional constraint - player can't play more than p games (p is greater than k).

PS: This question is inspired by starcraft battle.net.

madth3
  • 7,275
  • 12
  • 50
  • 74
Tomek Tarczynski
  • 2,785
  • 8
  • 37
  • 43
  • Will they play home/away format or single leg? – Shamim Hafiz - MSFT Sep 17 '10 at 10:17
  • 2
    If you don't know anything about the skills, how can we possibly create a division with the 'best' players? Perhaps you would care to clarify what exactly it is that you are seeking to do? I suppose you want the divisions _before_ any games are played. –  Sep 17 '10 at 16:34

2 Answers2

1

The best thing you can do is use a swiss-like preliminary round to sort them out, and then you know their skills so you can divide them into divisions accordingly.

I'm doing that and it works great.

o0'.
  • 11,739
  • 19
  • 60
  • 87
  • 1
    Under one interpretation of the OP's question, the n players will each play p games, and then be divided into the k divisions based on the results. A p-round Swiss tournament sounds like an ideal way to do this. – Tom Anderson Sep 18 '10 at 14:59
0

Can you do any observations about the players before you divide them into divisions? If not, you have no information and so can only do a random assignment, then adjust what division they're in after a number of games. If we know absolutely nothing about the players, just assign player n to division n mod k.

The "after one round of games" (this may be the p games you mention), there's probably going to be an internal ranking within each division. Since each division is (essentially) random, people who placed well in one (random) division will probably belong in a "higher" division than those who placed badly. So, after an initial round, sort each player according to "wins so far", then assign the n/k first to the first division, then next n/k to the second division and so on.

Vatine
  • 20,782
  • 4
  • 54
  • 70