你可能想要考虑Hall's marriage theorem和/或assignment problem的概括。
的理念,为这个范式是建立一个二分图,其中节点是人民和谷物,以人p
和谷类c
之间的边缘,如果p
投票c
。我们的目标是选择3种谷物,使得从删除所有其它谷类得到的曲线图是
连接(大家会吃所选谷物中的至少一种),和
最大化的最小/平均每个人的程度(最大化最小/平均快乐)
你可以改为考虑这个为Maximum Coverage Problem。在这种情况下,您已经设置了C1,C2,...,Cm
其中Ci
是一组喜欢谷类i
的人。对于你举例来说,以谷类和人民在表中列出的顺序,你有
C1 = {1,5}
C2 = {2}
C3 = {1,4,5}
C4 = {3,5}
让n
是人的数量,从而使Ci
是{1,2,...,n}
一个子集。目标是找到k
集合,使联合的基数最大化。如果存在多种解决方案,请选择最小化交叉点基数的方法(最小化一个人主导的数量)或最大化最不频繁元素重复的次数(使最不快乐的人的幸福最大化)。
对于此示例,其中涵盖所有元素的最小的k
是k=3
并且它给出了唯一的解决方案C2,C3,C4
。
然而,你看它,你有一个NP问题,但有已知的算法来解决它们(检查维基百科文章的参考)。
要记住的一件事是,所描述的问题为选择较少选择的人提供了更多的权力。如果我对他们中的任何人都感到满意,但是特别喜欢他们,我可以声称这是我喜欢的唯一一个,并且实际上'迫使'你选择它,因为我没有提供任何替代品。 – 2011-12-14 22:58:10
@NickJohnson也许就是这样,因为在那种情况下,你说如果你不能拥有X,那么你对其他人没有偏好。如果问题不能解决,我们不保证您会选择一个约束。 – PengOne 2011-12-14 23:18:02
@PengOne没有保证,不,但是你的偏好比另一个更诚实的选民更有可能受到尊重。如果要求您按照偏好顺序对项目进行排名,则这一点更为明显。如果我诚实并且从1到3排列我最喜欢的3,我不太可能得到我想要的结果,而不是我仅排名我最喜欢的结果,并且没有给别人带来任何价值。 – 2011-12-14 23:32:03