【问题标题】:How to create a scoring system using two variables如何使用两个变量创建评分系统
【发布时间】:2015-11-14 08:39:06
【问题描述】:

我正在创建一个应用程序(Node/Angular),我试图根据两个指标的整体性能对用户进行排名。以下是用于跟踪我们正在使用的用户的两个指标:

  1. 生产的单位(范围在 0 - 6000 之间)
  2. 生产率 = [ 生产单位 ] / [ 工时 ](范围在 0 - 100 之间)

但是,根据这些变量中的任何一个明确地对用户进行排名是没有意义的,因为它会产生一些奇怪的激励/行为。

例如,可以有非常高的生产率,但在短时间内通过非常努力的工作生产的总单位数量却非常少。或者,您可以生产非常多的单位,但这可能是因为他们加班,因此能够生产比其他任何人更多的单位,只是因为他们工作的时间更长,并且他们的生产率可能很低。

有人有设计这类评分系统的经验吗?你是怎么处理的?

【问题讨论】:

  • 这不是角度或节点特定的问题。请在以后为这些类型的问题使用其他标签。
  • @ggilberth 我很乐意 - 有什么建议吗?我找不到合适的标签...
  • 算法我觉得会很好。
  • 完成!感谢您的建议

标签: algorithm math theory


【解决方案1】:

我做了一些非常相似的事情,我发现将它们分成联赛或等级很有价值,例如使用生产的单位作为基础。

  • 新手 = 生产 100 个单位
  • 初学者 = 生产了 500 个单位
  • 高级 = 生产了 2000 个单位
  • 专家 = 生产了 4000 个单位

把它放到一个可用的对象中

var levels = [
    {id: 1, name: "Novice", minUnits: 100, maxUnits: 599 },
    {id: 2, name: "Beginner", minUnits: 500, maxUnits: 1999 },
    {id: 3, name: "Advanced", minUnits: 2000, maxUnits: 3999 },
    {id: 4, name: "Expert", minUnits: 4000, maxUnits: 6000 }
]

然后您可以使用您的Rate of production 乘以级别内的加权值,您可以确定这是什么。您可以根据需要使用这些值来使其变得困难或简单。

【讨论】:

  • 有趣的想法 - 但是我认为这允许漏洞通过用数量来补偿低效的工作模式来获得排名。只有按单位总数对层级进行排序,人们才能通过延长工作时间来弥补低效的工作模式。如果我按小时向人们付款,我希望他们不要工作更长时间 - 我希望他们也能有效率。
【解决方案2】:

首先,我建议将它们放在相同的规模上。例如。将生产的单位除以 60。

那么,如果你对相同的权重没问题,有三个常见的简单选择:

  1. 添加分数

  2. 将分数相乘(等于每个分数相加)

  3. 取两个分数中的最小值

哪个是最好的,取决于您希望它在多大程度上衡量综合的好结果。在您的情况下,我建议您乘以并在结果产品上放一个比例。

如果您想更复杂一点,并权衡或玩弄多少奖励单独得分和联合得分,您可以使用以下公式:

V = alpha * log_b[Units Produced / 60] + (1-alpha) * log_b[Rate of Production],

其中 alpha 决定了一个与另一个的权重,而对数函数的底决定了联合成功的奖励程度。

【讨论】:

  • 我喜欢你添加每个日志的想法!我一直在将两者相乘作为试验,但得到的一些结果仍然感觉不太对劲,因为其中一个因素仍然极大地影响了整体结果。但是,鉴于您在此处的解释,看来我需要对这两个数字进行归一化以使它们的权重相等。感谢您的帮助 - 我会试一试!
  • 乘法不是一个好主意,因为一个已经是另一个的倍数了。
  • 这有什么关系?
【解决方案3】:

你可以做一个组合

SCORE = 200/( K_1/x_1 + K_2/x_2 )

// x_1 : Score 1
// x_2 : Score 2
// K_1 : Maximum of Score 1
// K_2 : Maximum of Score 2

除以零时当然要小心。如果x_1x_2 为零,则SCORE=0。如果x_1=K_1x_2=K_2SCORE=100(最大值)

否则分数介于两者之间。如果x_1/K_1 = x_2/K_2 = z 那么SCORE = 100*z

这对较低的分数进行加权,以便您在提高两个分数中的一个时获得奖励(与两个场景中的最小值不同),但不如同时提高两个分数。

【讨论】:

    猜你喜欢
    • 2023-04-04
    • 2023-03-10
    • 2014-07-12
    • 1970-01-01
    • 2014-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多