一个迟来的情人节问题:
假设我们有男人和女人,他们都是异性恋。我们有一个(MxW)矩阵A,其中A[m, w]
量化了夫妻(m, w)
如果结婚会有多快乐。
我们如何配对这对夫妻,以达到全球最大的幸福感? (即我希望生成长度为min(M, W)
的2元组数组,以确定哪些应该配对,以便sum(A[m, w] for m, w in couples)
最大化,每个m
和每个{{ 1}}仅使用一次。
注1:理想情况下,我正在寻找一个快速的实施方案,但这是找到正确算法的第二种方法。
注意2:这与Stable Marriage Problem类似,但与{{3}}不同,您可以在其中指定每个人的排名首选项而不是幸福值。
答案 0 :(得分:0)
嗯,感谢评论者指出这是Assignment Problem,并且通常用工人和工作来描述。
Scipy使用匈牙利算法a function that solves it。