hornta
hornta

Reputation: 165

Ranking items amongst each other

I'm making a website much like face mash where people can rate a duel between two items how much an items is "better" than the other item. It's essentially just a choice based on some item information that isn't relevant to the algorithm, it's purely based on what a user "believes" is the winner.

A user choice is to select one of these between two random items:

Item 1 much better than item 2. # item 1 win

Item 1 slightly better than item 2. # item 1 win

Item 1 equally good as item 2. # draw

Item 2 slightly better than item 1. # item 2 win

Item 2 much better than item 1. # item 2 win

I would like the grade scale value to be dynamic so if I want I could add another level like "item 1 is superior to item 2" which is a greater win than "much better".

I'm not at all a master of algorithm but I think I would've nailed it if it was just as simple as "item1 win/item2 loss" or "item2 win / item1 loss" win but I really need to grade a win, if it's a BIG win or a small win. I've looked for ranking algorithm for soccer matches but that goal is just to make predictions which isn't what I'm out for.

The goal is to create a ranking amongst ALL items in my set.

Upvotes: 0

Views: 192

Answers (1)

mingaleg
mingaleg

Reputation: 2087

AFAIK, implementing something similar to Elo rating system is the most common approach for maintaining the kind of objects' rating you want.

The difference to naively updating the ratings with constant steps is that the Elo system takes into account the current difference between ratings to calculate how they are supposed to be updated.

That is, if A already had a much higher rating than B, and a human votes for A, the rating of A would be increased for only a tiny bit (and the rating of B would be decreased for only a tiny bit), as since A was already known to be much better than B, it was already expected a human would probably rate A over B. On the other hand, if a human votes for B, changes in A and B ratings would be much more severe, as a human contradicts the current rating, so it needs to be adjusted more.

And if ratings for A and B are similar, the ratings would be only adjusted mildly, according to human's decision.

Upvotes: 1

Related Questions