supraking777
Smash Apprentice
- Joined
- Jan 29, 2008
- Messages
- 102
Smash Brawl Rankings' Algorithm + FAQ
Hey everyone,
I though people might be interested in knowing what algorithm we're going to use, since that is a pretty frequent question. So, here's the part of the new detailed FAQ that answers that:
How will the rankings work (questions about the algorithm, etc.)?
We’ll be using a highly sophisticated and complex algorithm that aims to eliminate the drawbacks of the ELO system and prevent cheating. It is a modification of the EGenesis ranking system, which works like this:
“Each player in the system starts with a vector of 256 bits. Half of these bits, randomly selected, are set. A player’s rank is the number of bits set. We number each bit 0-255. When a match occurs between two players, A and B, a series of 32 hash values in the range 0 to 255 are computed based on the player’s names such that the same two players always yield the same 32 values. For each value, we inspect that bit in both players’ vectors. When a bit is set in the loser’s vector, and clear in the winner’s vector, we transfer that bit: clear it in the loser’s vector, and set it in the winner’s. In all other cases we do nothing. This system forces players to play a wide variety of others to boost their rank. Still, it could be possible to boost your rank by only playing beginners. To combat this, we modify the algorithm as follows: Each player starts with their bit vector clear. They also have 128 “reserve bits” which are stored simply as a count. A player’s rank is equal to the number of bits set in his vector, plus the number of bits in reserve. When a match occurs, bits are transferred as above, with the following additional rule: When one of the 32 values’ bits are clear in both the winner’s and loser’s vectors, a bit is attempted to be transferred from the winner’s reserve to a specially selected clear bit in his own vector. This specially selected bit is based on a different hash function that again incorporates both player’s names. The loser’s vector and reserve are untouched. In this way, someone who only plays beginners doesn’t affect his own rank, but may boost the beginner’s rank.” (check here for source and more details)
Thus, our ranking system requires you to branch out in who you play; you can’t become highly ranked by playing one friend over and over. You’ll also have to keep challenging player’s within or above your skill level – you’ll get no easy points from the beginners!
Hope this helps answer the questions I've been getting,
Supra
Hey everyone,
I though people might be interested in knowing what algorithm we're going to use, since that is a pretty frequent question. So, here's the part of the new detailed FAQ that answers that:
How will the rankings work (questions about the algorithm, etc.)?
We’ll be using a highly sophisticated and complex algorithm that aims to eliminate the drawbacks of the ELO system and prevent cheating. It is a modification of the EGenesis ranking system, which works like this:
“Each player in the system starts with a vector of 256 bits. Half of these bits, randomly selected, are set. A player’s rank is the number of bits set. We number each bit 0-255. When a match occurs between two players, A and B, a series of 32 hash values in the range 0 to 255 are computed based on the player’s names such that the same two players always yield the same 32 values. For each value, we inspect that bit in both players’ vectors. When a bit is set in the loser’s vector, and clear in the winner’s vector, we transfer that bit: clear it in the loser’s vector, and set it in the winner’s. In all other cases we do nothing. This system forces players to play a wide variety of others to boost their rank. Still, it could be possible to boost your rank by only playing beginners. To combat this, we modify the algorithm as follows: Each player starts with their bit vector clear. They also have 128 “reserve bits” which are stored simply as a count. A player’s rank is equal to the number of bits set in his vector, plus the number of bits in reserve. When a match occurs, bits are transferred as above, with the following additional rule: When one of the 32 values’ bits are clear in both the winner’s and loser’s vectors, a bit is attempted to be transferred from the winner’s reserve to a specially selected clear bit in his own vector. This specially selected bit is based on a different hash function that again incorporates both player’s names. The loser’s vector and reserve are untouched. In this way, someone who only plays beginners doesn’t affect his own rank, but may boost the beginner’s rank.” (check here for source and more details)
Thus, our ranking system requires you to branch out in who you play; you can’t become highly ranked by playing one friend over and over. You’ll also have to keep challenging player’s within or above your skill level – you’ll get no easy points from the beginners!
Hope this helps answer the questions I've been getting,
Supra