解决该问题的大多数幼稚方法都有一些严重的问题。最糟糕的是bash.org 和qdb.us如何显示报价-用户可以对报价进行向上(+1)或向下(-1)投票,而最佳报价列表则按总净得分排序。这有一个可怕的时间偏差-旧的报价通过简单的寿命就积累了大量的正面投票,即使它们只是些许幽默。如果笑话随着年龄的增长变得越来越有趣,则此算法可能有意义,但是-相信我-他们没有。
解决此问题的方法有很多种,包括查看每个时间段的正面票数,对最近的票数加权,对较旧的票实施衰减系统,计算正面票与负面票的比率等。大多数情况都存在其他缺陷。
我认为,最好的解决方案是网站最有趣 ,最可爱,最美丽,最好的东西使用的一种解决方案-改良的Condorcet投票系统:
该系统根据所面临的情况,通常击败每个人的百分比为每个人提供一个数字。因此,每个人都会得到百分比分数NumberOfThingsIBeat /(NumberOfThingsIBeat + NumberOfThingsThatBeatMe)。同样,将事物从顶部列表中禁止,直到将它们与集合的合理百分比进行比较。
如果集合中有Condocont赢家,则此方法将找到它。由于这不太可能,考虑到统计性质,它会找到最接近Condorcet赢家的人。
有关实施此类系统的更多信息,排名对的Wikipedia页面应该会有所帮助。
该算法要求人们比较两个对象(您的Pick-A-or-B选项),但是坦率地说,这是一件好事。我相信决策理论已被人们很好地接受,人类比两个对象在抽象排名上要好得多。数百万年的演变使我们善于从树上摘下最好的苹果,但在决定我们摘苹果与真正柏拉图式苹果味的接近程度方面却很糟糕。(顺便说一下,这就是为什么分析层次结构流程如此精巧的原因……但这有点离题了。)
最后一点是,SO使用一种算法来找到最佳答案,这与bash.org的算法中找到最佳报价非常相似。它在这里运作良好,但在那儿却无法正常工作-很大程度上是因为这里可能编辑了旧的,评级很高但现在已经过时的答案。bash.org不允许进行编辑,而且即使您可以,也不清楚如何编辑有关当今互联网模因的数十年历史的笑话。无论如何,我的观点是,正确的算法通常取决于您的问题的细节。:-)