Advertisement
Akiak

alg

Aug 17th, 2023
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. The algorithm should be purely additive. You simply add points for attending a tournament, with exponentially smaller rewards the lower the placement.
  2.  
  3. There is no reason to deliberately implement "punishment" in the algorithm. You can allow players to 'mess around' without it hurting their rankings. This is also the best solution to player anxiety.
  4.  
  5. If you think this overly rewards attendance, this is easily adjusted for. The reward decreases exponentially the lower your placement, meaning that if you get a placement that is generally lower than what you usually get, it won't really make a meaningful difference to your rank overall.
  6.  
  7. Here is a very simple implementation of the algorithm. The only thing that needs to be figured out is how to rank the importance of a given tournament.
  8.  
  9. - 1) Assign points to players for every tournament they attend using formula P = TourneyEntrants/Placement. PlayerPoints is the sum of all the points a player has collected during the year.
  10.  
  11. - 2) For every tournament, TourneyStrength is the sum of all PlayerPoints of every attendee. TourneyPoints is equal to TourneyStrength(X) + TourneyEntrants(1-X). X defaults to 1. Lowering X lowers the emphasis on attendee strength.
  12.  
  13. - 3) Assign points to players again (from scratch) using formula P = TourneyPoints/Placement. The sum of all the points a player collects during the year is a player's final score.
  14.  
  15. This implementation uses number of attendees as the starting point for valuing the importance of a tournament. It then calculates every player's overall point tally, and then uses that to calculate the value of a tournament more precisely. Then player points are calculated again.
  16.  
  17. The value of X determines how much emphasis to put on attendee strength versus number of entrants. I recommend 1 as a starting point.
  18.  
  19. While this implementation is simple, that doesn't mean it may not be the best possible implementation of this idea. It may just be a matter of finding the best value of X.
  20.  
  21. PS: I'm not sure if people believe that looking at player-specific wins/losses is something that should be included in an algorithm. I don't believe that it is necessary or even good. What if the given player was 'having a bad day'? How much credit should the other player really get?
  22.  
  23. That is all.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement