gpt4 book ai didi

algorithm - 带约束的二部图中的最大权重匹配

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:38:25 26 4
gpt4 key购买 nike

假设我们有两个集合: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 的元素必须恰好与集合 B 的一个元素匹配。
  • 集合 B 的元素允许具有零个或多个匹配项 (0,1,2...),尽管 B 的元素存在对权重总和 C_i 的约束。也就是说,如果我们选择连接 a_1到b_1,a_2到b_1,权重之和F(a_1,b_1)+F(a_2,b_1)应该小于等于C_1。此约束适用于 B 的所有元素。

我搜索了一些想法,并研究了分配问题和匈牙利算法。另外一点是,这些都没有考虑我的第二个约束。您对如何解决这个问题有什么想法吗?

谢谢

最佳答案

它是 NP 难的。

取子集和实例 {x1, x2, ..., xn},其中 x i> 0 和一个数字 k。创建一个二部图,其中左顶点是 {a1, ..., an},右顶点是 {b1,b< sub>2},以及:

F(ai, b1) = xi

F(ai, b2) = 0

C1 = k

C2 = 0

所以你可以通过连接 ai 和 b1 来得到数字 xi,并通过连接 b 来离开它2 。显然存在一个权重 k 匹配当且仅当子集和实例有解。

关于algorithm - 带约束的二部图中的最大权重匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11023281/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com