Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 众包排名的最佳匹配算法?_Algorithm_Sorting_Crowdsourcing - Fatal编程技术网

Algorithm 众包排名的最佳匹配算法?

Algorithm 众包排名的最佳匹配算法?,algorithm,sorting,crowdsourcing,Algorithm,Sorting,Crowdsourcing,我想建立一个系统,从20-2000个项目的集合中众选最好的10个项目(前十名的排名并不重要)。有一篇优秀的stackoverflow文章,介绍了在服务器上进行实际排序的算法 . 我倾向于在两个项目之间询问用户最喜欢哪一个,然后使用算法 我的问题是,我正在使用类似于TrueSkill的东西,决定向用户显示哪些项目对以进行评分的最佳算法是什么?我将有有限的机会询问人们最喜欢哪些项目,因此,重要的是,所呈现的配对将为系统提供最有价值的信息,以确定前10名。同样,我最感兴趣的是找到前十名,而不是其他项

我想建立一个系统,从20-2000个项目的集合中众选最好的10个项目(前十名的排名并不重要)。有一篇优秀的stackoverflow文章,介绍了在服务器上进行实际排序的算法 . 我倾向于在两个项目之间询问用户最喜欢哪一个,然后使用算法


我的问题是,我正在使用类似于TrueSkill的东西,决定向用户显示哪些项目对以进行评分的最佳算法是什么?我将有有限的机会询问人们最喜欢哪些项目,因此,重要的是,所呈现的配对将为系统提供最有价值的信息,以确定前10名。同样,我最感兴趣的是找到前十名,而不是其他项目之间的排名,甚至前十名之间的排名。

这个问题非常类似于组织一场淘汰赛,在这场比赛中,球员的技能并不广为人知,球员的数量也非常多(想想学校级别的网球比赛)。由于循环赛(O(n^2)比赛)非常昂贵,但简单的淘汰赛过于简单,通常的选择是采用k淘汰制。基本上,每个球员(在您的上下文中)都是一个项目在输掉k场比赛后被淘汰。请看双淘汰结构:


也许您可以对其进行充分修改以满足您的需要。

另一个著名的算法是用来计算围棋或国际象棋比赛中的排名。您可以查看同时计算此类配对和排名的算法。应该可以截断此算法,使其只生成一组10最好的东西

你可以在中找到更多细节,他在那里描述了实际的优化算法(不幸的是,论文是用德语写的)