Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How would rating system be done for users in a web application?

I am implementing a web application that has many users and I would give the users rating based on their activities and based on other users liking their activities. How would I implement such an algorithm for that? I am looking for elegant and smart algorithm that could help.

like image 983
turbonerdo Avatar asked Dec 02 '10 05:12

turbonerdo


2 Answers

You are basically looking for Scoring Algos. These articles might help -

How not to sort by average rating

Rank hotness with Newtons law of Cooling

How Reddit Ranking Algorithms work

Hope this helps.

like image 58
Srikar Appalaraju Avatar answered Oct 04 '22 01:10

Srikar Appalaraju


Maybe your answer is staring right at you next to your username on this site :-) Stackoverflow.com's scoring system and badges are here to promote certain behaviors on the site. The algorithm is simple and the feedback is immediate so that everybody can see the consequences of certain actions.

What are the ratings used for? If you want to use the ratings as incentives for you users to encourage a specific behavior, then I believe you need to look at disciplines like behavioral psychology to figure out what behaviors you want to measure and reward.

If you already have a user base that reflects the typical user base you're trying to address, you might want to try with simple trial and error. Pick some actions, like e.g. receiving a like on a post and add points to the user's score whenever that happens. Watch the user community's reaction when you introduce the scoring system and see it it helps motivate the behavior you want. If not, try to change some other parameters and repeat.

Depending on your system, some users might try to game the system, so you could find yourself locked into an eternal cat and mouse game once you introduce a rating system (example: Google page ranking).

like image 26
Kim Burgaard Avatar answered Oct 04 '22 03:10

Kim Burgaard