最近,有趣和新/未答复帖子的平衡组合

时间:2011-09-12 15:02:31

标签: php mysql list sorting tagging

我正在搜索算法,或者一些健身评级方法。

以Stackoverflow为例。

将帖子分为不同的组
  • 评分(+, - ,0)
  • 标签(并根据其中的活动标记重要性)
  • 用户(用户评级/声誉,年龄,近期活动)
  • 关键字

我正在寻找方法,如何对它们进行排序以创建优化/平衡混合 我不想仅显示最新的OR或仅评价最高或仅重要的标签

可能名称是“多属性最优排序”或类似的东西。

任何人都可以提供建议吗? 感谢

ADD1:也许我们在讨论Fitness functionhttp://en.wikipedia.org/wiki/Fitness_function

1 个答案:

答案 0 :(得分:1)

为每个因素生成单独的子分数,然后将它们标准化,将它们加在一起,并按每个帖子的结果总数进行排序。例如,

  1. 按评分对所有帖子进行排名,然后将他们在排名中的排名映射到0.0-1.0范围(最高评分为1.0,最低为0.0)。
  2. 创建一个函数来获取帖子的标签,并仅根据标签计算类似的0.0-1.0分数。
  3. 创建另一个功能,为用户执行相同操作。
  4. 您想要的任何关键字的另一个。
  5. 如果您希望某些事物比其他事物更重要,请在将其添加到总数之前将子核心乘以一个常数因子 - 例如,如果您希望评级很重要,而其他因素不那么重要,那么您可能会{ {1}}如果四个子分数是字母。

    至于你如何将事物翻译成子分数?这是你真正必须为你的特定应用确定的东西;没有一种方法可以做到“正确”。