我有15个城市的名单。我从15 * 14/2 = 105对城市中随机抽取了70对。对于70对中的每一对,我要求我的参与者决定城市A是否大于城市B. 重要的是,有时参与者会犯“错误”并给出与之前答案不相符的答案。 (即,它违反了传递性)。
我需要一种方法来根据每个参与者的反应对我的城市进行排序,从而最大限度地减少违反传递性的审判数量。
我不需要城市的实际订单,因为可能没有唯一的解决方案。我只需要计算每个参与者给出的(最小)不及物回答的数量。
除了使用详尽的搜索外,我怎么能这样做?
编辑:举个例子,选择城市A,B,C,D和E.参与者Jon Doe认为城市的正确顺序(从最小到最大)是ABCDE。我不在乎他是否真的是对的,我只关心他的反应 - 下面列出的 - 与他的信念相符。
在三次独立的试验中,Jon回答了以下问题:
试验1:A<乙 试验2:B< C(+) 试验3:C< D 试验4:D< E(+) 试验5:E> B(*)因此,试验5(*)中的答案与试验2和4中的答案不一致。一次试验(第5次)与Jon的信念不一致,或者2次试验(第2次和第4次)没有。我不想弄清楚Jon的信念(ABCDE),我只需要知道Jon Doe的“最小不及时答案数”是1.
答案 0 :(得分:2)
所以......问题可能很有趣,但目前尚不清楚你想要什么。你需要对你的城市进行排序但是你不需要他们的订单吗?
尽量减少违反传染性的审判次数......你是怎么做到的?不及格就是你得到的答案,而不是你用它们做的任何事情。
计算每个参与者给出的不及物回答的数量......如果你有每个主题的所有答案,则不一致是直接图中的一个循环,其中节点是城市,节点指向另一个节点。参与者称其城市比其他城市更大。有算法,请参阅this问题。
当然,边缘可能是多个循环的一部分,在这种情况下,我们可以尝试找到我们必须删除的最小边数以使其非周期性。不幸的是,问题is NP complete;所以你找不到快速的答案。但是,由于您的数字相当低,您可能会设法找到一个快速的解决方案。
希望这会有所帮助。