Ties don't work D:
BotB Academy Bug Reports and Feature Requests
 
 
40307
Level 26 Mixist
Xaser
 
 
 
post #40307 :: 2014.03.23 9:35am
  
  raphaelgoulart liēkd this
A super-rare occurrence, but a couple of folks just got the same score on an OHB, which resulted in one getting first and the other second, somewhat arbitrarily:
http://battleofthebits.com/arena/OHC/1817/

I guess there's a couple of possibilities here:
1) Ties are "handled" by sorting some sort of alternate criteria (username?), i.e. they're not supported. Should probably change if this is the case.
2) The scores are stored internally with more than 3 digits of decimal precision (as shown on the site), so it's not technically a tie. This is confusing from a UI perspective, though, and it seems to make more sense to round the ranking algorithm to 3 decimal places and handle ties properly so what's seen on the front page is accurate. Or show more decimal points, I guess. :P

Probably a really rare edge case and maybe a nitpick, but since this month's BotB theme is usability, I figure it's relevant. :P
 
 
40308
Level 23 Chipist
MKSTAR26
 
 
 
post #40308 :: 2014.03.23 9:39am
  
  goluigi and raphaelgoulart liēkd this
Solution: if their scores are the same to within three decimal places, give them both the same award (e.g. first and second tie, both get first)
 
 
40313
Level 25 Chipist
Fearofdark
 
 
 
post #40313 :: 2014.03.23 11:10am :: edit 2014.03.23 11:11am
  
  goluigi and Slimeball hæitd this
  
  Grumskiz, brightentayle, Jangler and Chip Champion liēkd this
(logged in purely to write this comment)

It's definitely scenario number 2.

This happened to me in a previous ohc. kfaraday won, but both of us had the same score when rounded to 3 decimal places: http://battleofthebits.com/arena/OHC/1377/

If two entries have the exact same score, then they will both get the same medal (ie. if two entries tie EXACTLY for first, then they will both get a gold medal. This happened in a lot of early ohcs). I saw one or two people suggest this - it's already implemented, technically.

I don't feel like a change is necessary. Even if scores between 2 entries are less than 0.001 apart, there should only be one winner.. it's just an insanely close contest and that's the way things go sometimes :P There should be a disclaimer though.
 
 
40322
Level 26 Mixist
Xaser
 
 
 
post #40322 :: 2014.03.23 1:12pm
Chatted a bit with Puke7 on this on IRC and he confirmed FoD's statement. Score is stored as a proper float in the database and PHP is formatting the number with 3 decimal places. The number we're seeing is not entirely accurate, but that's minorcakes since it looks like things are actually working properly.

It satisfies me enough to know how things actually work, so a "fix" for anything prolly isn't necessary after all. Thanks for the info!
 
 
40324
Level 22 Chipist
brightentayle
 
 
 
post #40324 :: 2014.03.23 2:57pm
Nah, I'd still love to have exact ties :v
 
 
40325
Level 22 Chipist
brightentayle
 
 
 
post #40325 :: 2014.03.23 3:00pm
  
  Modus Ponens and trough liēkd this
Oooooh wait, I get it - plumbers don't work with ties!

That's why we don't have this fixed, appearantly.
 
 
40326
Level 28 Renderist
Slimeball
 
 
 
post #40326 :: 2014.03.23 3:14pm :: edit 2014.03.23 3:15pm
  
  Jangler, raphaelgoulart, MKSTAR26 and goluigi liēkd this
I disagree with some of the things being said here~

"If two entries have the exact same score, then they will both get the same medal (ie. if two entries tie EXACTLY for first, then they will both get a gold medal. This happened in a lot of early ohcs)"

This is not true, here's a recent example --- http://battleofthebits.com/arena/OHC/1117/

"It's definitely scenario number 2."

On the contrary.

I considered scenario 2, but to be absolutely sure I calculated the actual score by dividing the sum of (vote*INF) by sum(7*INF) and multiplying by 35, which leads to the following scores:

(46.8/52.92)*35 = 30.95238095 points
(36.4/41.16)*35 = 30.95238095 points

They're exactly the same score! Here's why:

46.8*(7/9)=36.4
52.92*(7/9)=41.16

Since the scores are the same mathematically, it IS an exact tie, and they should be exactly the same number in the database as well, unless.............some very unfortunate floating point rounding/truncation accidents happened.

Now I want to see the scores in full precision. ;3
 
 
40327
Level 25 Chipist
rainwarrior
 
 
 
post #40327 :: 2014.03.23 3:55pm :: edit 2014.03.23 3:57pm
  
  raphaelgoulart and goluigi liēkd this
Ties are more common than you'd expect. There are lots of cases where people really do get the exact same score, i.e. everyone votes 6 on both entries, for example.
 
 
40330
Level 28 Chipist
Jangler
 
 
 
post #40330 :: 2014.03.23 6:28pm
  
  raphaelgoulart, goluigi and Tilde liēkd this
wouldn't be surprised if ties aren't happening sometimes just because of the nature of floating-point arithmetic. computing what "should" be the same result two different ways can yield two subtly different results
 
 
40331
Level 25 Chipist
rainwarrior
 
 
 
post #40331 :: 2014.03.23 9:19pm :: edit 2014.03.23 9:23pm
  
  raphaelgoulart, goluigi, Slimeball and Jangler liēkd this
Yes, which is why the concept of an "epsilon" is usually important when doing floating point comparisons, i.e. if the absolute difference between two values is less than the epsilon value they should be considered equal.

In this case 10-3 seems like an appropriate epsilon.


Alternatively, if you want there to be an infallible relationship between the displayed score and the ranking, instead of using an epsilon we should just string-compare the displayed scores for equality. (This is probably a better solution.)
 
 
40332
Level 24 Chipist
Tilde
 
 
 
post #40332 :: 2014.03.23 9:38pm
  
  raphaelgoulart, goluigi and Slimeball liēkd this
I would be totally for string-compared "close enough" ties. It's fun to say sometimes, hey, we're both just as good! :D
 
 
40355
Level 25 Chipist
rainwarrior
 
 
 
post #40355 :: 2014.03.24 1:00pm
  
  raphaelgoulart liēkd this
A "close enough" tie with only five digits of precision is a pretty rare thing, anyway. The vast majority of ties are ones that actually should be equal, but may differ in the insignificant bits because of an inherent lack of precision used in the calculations.
 
 

LOGIN or REGISTER to add your own comments!