小猫领养问题的复杂性


14

这是在我尝试回答有关最小化接线长度的问题时提出的 。我本来将其称为“一夫多妻制婚姻”问题,但互联网却是如此。好极了!

假设我们有需要由采用小猫ñ人,中号> ñ。对于每只小猫,我和每个人j都有一个成本c i j。我们希望将收养所有小猫的总成本降到最低。还有一组约束条件:每个人j的收养能力不超过uMNM>Nijcijj小猫。uj

没有约束,问题就很容易解决。每个小猫去与人Ĵ为其Ç 我Ĵ是最小的。有了这些约束,是否有一个针对该问题的有效算法?ijcij

Answers:


5

这是最小成本最大流量问题。

考虑的曲线图,其中阿是该组的小猫,乙是该组的人。G=(A∪B∪{s,t},E)AB

令为边的容量,c :E → R +为边的成本。我们确保C:E→R+c:E→R+

  1. 有之间的边缘,其中一个我 ∈ 甲和b Ĵ ∈ 乙,和Ç (一个我,b Ĵ)= 1,Ç (ai,bjai∈Abj∈BC(ai,bj)=1。c(ai,bj)=ci,j
  2. 有之间的边缘和一个我 ∈ 甲,和Ç (小号,一个我)= 1,Ç (小号,一个我)= 0sai∈AC(s,ai)=1c(s,ai)=0。
  3. 有之间的边缘和吨,和Ç (b Ĵ,吨)= Ü Ĵ,Ç (b Ĵ,吨)= 0。bj∈BtC(bj,t)=ujc(bj,t)=0

如果最大流量为,那么我们知道存在一个解决方案。您可以从最小成本最大流构建最小成本解决方案。M


4

这是多项式的最小权重完美匹配问题。考虑完全二部图,其中大号包含一个节点升我每个小猫我,- [R由ü Ĵ节点的副本- [R Ĵ每个人Ĵ,和边缘Ë 我Ĵ ∈ Ë之间l i和r j的每个副本,权重为c i j(L,R,E)LliiRujrjjeij∈Elirjcij。

我们知道,否则不能将所有小猫都分配给其他人。|L|≤|R|

由于完美匹配必须匹配所有节点,因此我们需要向添加虚拟节点(以获得| L | = | R |L|L|=|R|),并将权重为零的边缘连接到所有节点。R


2

可能令人感兴趣的是,有人可以将“分区”缩小为此问题的一个变体。由于是分区与元素的实例用q甚至从中我们必须选择一个子集小号⊆ { 1 ,... ,q }用| S | = q / 2,使得Σ 我∈ 小号 X 我 = Σ 我∉ 小号 X 我 = ķ{x1,…,xq}qS⊆{1,…,q}|S|=q/2∑i∈Sxi=∑i∉Sxi=K。(请注意,选择一半元素的要求不是通常的形式,但这种形式仍然是NP-hard的。)让每只小猫都成为集合中的一个元素。让两个人在一起;设权重为和c i 2 = − x i;令u 1 = u 2 = q / 2。然后,如果分区实例具有解决方案,则该小猫收养实例的最大值为0。ci1=xici2=−xiu1=u2=q/20

CCq

对于最初问题的复杂性,我不确定这是怎么说的,但是鉴于经常出现的“最小化/最大化之一是NP困难的,另一个是P形式的”组合优化问题,我将开始寻找一个高效的算法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.