【问题标题】:Prove NP-Completeness clique + independent set graph证明 NP-Completeness clique + 独立集图
【发布时间】:2011-05-08 20:09:56
【问题描述】:

"证明确定给定的输入 G 和 k 是 NP 完全的strong>当且仅当 G 具有这两个子集。”

在我的算法课程中,我们遇到了这个问题,很多学生都想不通。这是我们目前所拥有的......

我们知道团和独立集问题本身都是 NP 完全的。我们也知道这个问题的验证,给定一些“证书”在 NP 中。

问题是以某种方式将上述问题(包含独立集和派系)简化为完全由派系或独立集组成的问题(至少这是我们认为需要做的)。我们不知道如何在不丢失将还原还原到其原始形式所需的信息的情况下执行此还原。

【问题讨论】:

标签: algorithm computer-science np-complete clique-problem


【解决方案1】:

感谢“Moron”和“Rafal Dowgird”的提示!基于此,我认为我有一个解决方案。如有错误请指正:

由于我们已经知道团和独立集问题是 NP 完全的,我们可以以此为基础来证明我们的问题。让我们将我们的问题称为组合集团独立集问题(CCIS)。

假设给定一个图 G,它有一个大小为 k 的团 C。我们可以通过将 k 个顶点附加到 C 中的每个顶点,将这个图简化为一个图 G'(读作:G 素数),它具有大小为 k' 的团 C' 和大小为 k' 的独立集 I。这种减少发生在多项式时间,因为添加顶点需要 O(n*k) 时间(图中的 n 个顶点和连接到每个节点的 k 个顶点)。

注意 C=C' 和 k=k'。

现在假设给定一个图 G',它有一个大小为 k' 的团 C' 和大小为 k' 的独立集 I,它被确定为真。对 clique 问题的简化是微不足道的,因为我们根本不需要修改图来只找到一个 clique。

【讨论】:

  • 从 Clique 到 CCIS 的一个更简单的简化方法是获取 Clique 的输入图并向其中添加 k 个孤立顶点。 (严格来说,如果 k 以二进制形式出现在输入中,则添加 k 个额外顶点是相对于输入长度的指数工作量。因此,您应该检查 k 最多是图中的顶点数:如果k 大于那个值,产生任何小的“no”实例,例如,单个顶点上的图。)
【解决方案2】:

提示:通过添加一些顶点将 CLIQUE 简化为这个问题。

【讨论】:

  • 或者:通过添加一些顶点和边来减少 INDEPENDENT-SET 到这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-06
  • 1970-01-01
  • 1970-01-01
  • 2011-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多