找到最大权重子图

时间:2019-06-25 11:04:41

标签: graph graph-algorithm approximation

我的图如下:

My graph

我需要找到最大权重子图。

问题如下:

有n个Vectex群集,并且在每个Vextex群集中都有一些顶点。对于不同顶点群集中的两个顶点,存在加权边,而在同一Vextex群集中,顶点之间没有边。现在我 想要通过在每个顶点中仅找到一个顶点来找到最大权重子图 顶点簇。然后通过将选定顶点之间的所有边的权重相加来计算总权重。我添加一张图片来解释问题。现在,我知道如何通过ILP方法对该问题建模。但是,我不知道如何通过一种近似算法来解决它,以及如何获得其近似比率。

您能提供一些解决方案和建议吗?

非常感谢。如果本说明中有任何不清楚之处, 请随时问。

1 个答案:

答案 0 :(得分:0)

我认为您找不到alpha的{​​{1}}-近似值。这是因为,如果存在这样的近似值,那么还将证明unique games conjecture(UGC)是错误的。证明(或证明)UGC是一项相当大的成就:-)
(而且我实际上是UGC的信徒之一,所以我说这是不可能的:p)

减少非常简单,因为可以将任何UGC实例描述为您的问题,并且权重为alpha0

我可以看到多项式逼近是1-近似值(簇数1/k),使用最大权重完美匹配(PM)算法(我们假设簇数是偶数,如果很奇怪,只需添加一个“无用”的1个顶点,每个地方0个权重)。

首先,您需要构建一个新图。每个群集一个顶点。边缘k的权重具有u, v边缘从簇max w(e)到簇e的权重u。在此图上运行最大重量PM。

然后,您可以为每个群集选择一个顶点,该顶点对应于PM中选择的边缘。
从PM中提取的溶液的总重量至少与PM的重量一样大(因为它包含PM的边缘+其他边缘)。

然后您可以得出结论,这大约是v,因为如果存在比PM重量大1/k倍的问题的解决方案,那么PM并不是最大的。

解释很短(我会说 lapidaire ),请告诉我是否有一部分您不了解/不同意。

编辑:与UGC等效:说明了唯一的标签封面。
想想一个UGC实例。然后,UGC实例中的每个节点都将由一个群集表示,该群集中的节点与UGC实例中的颜色一样多。然后,如果权重为k的边与UGC中的边不对应,或者与“不良颜色匹配”相对应,则创建权重为0的边。如果它们符合良好的色彩匹配,则将其权重设置为1。 然后,如果找到问题实例的最佳解决方案,则表示它对应于相应的UGC实例的最佳解决方案。
因此,如果教资会成立,那就意味着要解决您的问题很困难。