我想開發一個簡單的遊戲,其中一組用戶可以來玩遊戲。根據用戶的表現,他們得到正面評分或負面評分。用戶排名模型
我想要考慮用戶的weight
(他玩過的比賽數量和他在這些比賽中的表現)他的instantaneous skill sets
兩個參數。這兩個組合爲每個用戶,並與其他用戶的比分相比,可能會給他在當前比賽中的得分。
然後結合分數和以前的評分,我們可能會到達用戶的新評級。
我不想重新發明輪子。我嘗試過,並提出了這個,但這看起來很天真,我不知道如何在現實世界的情況下的表現。
Pos[i] and Neg[i] are the positive and negative score of the users in a match.
Step1: Calculate the average score of n people `for i in range(1, N): sum = sum + Pos[i] Average = sum/N` do the same for negative score.
Step2: Calculate the Standard Deviation (SD)
Step3: Calculate the weight of the user as follows say the user has played M matches, his weight W will be Mxabs((sum(POS[i])/N1 - (sum(NEG[i])/N2))
(where N1 is the number of times he has scored positive scores and N2 the number of times he scored negative result)
Step4: Current Score = (POSi - SD)xW
Step5: His New Rating = Old Rating + Current Score
請提出一些標準。
謝謝!