我正在寻找一种评分算法,但我真的找不到我想要的东西。
让我们假设一个应用程序,用户可以在其中发布评论,可以对文章进行投票或创建评论,喜欢或不喜欢评论/文章。目标是根据用户的活动对用户进行排名。
系统本身可能会像新的对数或其他东西一样增长,所以你获得的积分越多,获得更多积分就越困难。此外,新手必须对经验丰富的用户发表意见,但他的声音不那么重要。
我正在考虑:
每个动作都有一个基础值。
用户有一定数量的积分,这决定了他的体重。 他的积分数决定了他的水平,以及他可以执行的一系列行动。
当用户执行动作时,他的体重会影响动作的基础值,并且他的分数也增加了他的体重。
这听起来不错吗?你知道一些算法/代码实现这种事情的例子吗?感谢
PS:我还意味着我应该采取哪些功能?答案 0 :(得分:0)
这样的事情怎么样:
每个动作的基值至少为100分(但不超过1000分)。
用户以100分开始
如果总计 X 点的用户执行基础值 Y 的操作,则会给予10 * Y / log2(log2(X))
加分。
因此,在执行100基值的连续操作后,用户将重新开始:
360 points (460 total points)
317 points (777 total points)
306 points (1083 total points)
and so on