[英]Maximum weight matching in bipartite graphs with constraints
假设我们有两个集合:A =(a_1,a_2,...,a_m)和B =(b_1,b_2,...,a_n)(不一定大小相同)。 函数F为从集合A到集合B的每个链接分配权重:F:A * B-> R。 因此,例如,F(a_1,b_1)= 2意味着a_1和b_1之间的链接的权重为2。问题是将集合A的元素连接到集合B的元素,以最大程度地增加集合A的元素。满足以下约束的链接权重:
我已经搜索了一些想法,并研究了赋值问题和匈牙利算法。 另一件事是这些都不考虑我的第二个约束。 您对如何解决这个问题有任何想法吗?
谢谢
这是NP难题。
取一个子集和实例{x 1 ,x 2 ,...,x n },其中x i > 0和一个数字k。 创建一个二部图,其中左顶点为{a 1 ,...,a n },右顶点为{b 1 ,b 2 },并且:
F(a i ,b 1 )= x i
F(a i ,b 2 )= 0
C 1 = k
C 2 = 0
因此,您可以通过将i与b 1连接来获取x i的值,而通过与b 2连接来保留数字x i 。 显然,如果子集和实例具有解,则权重k匹配。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.