【问题标题】:Reduction from / to clique problem to prove problem is NP Complete从/到集团问题的减少以证明问题是 NP 完全的
【发布时间】:2018-12-05 22:17:37
【问题描述】:

我有以下问题: 给定一组男性和一组女性,任意两个人之间的排名等于 0 或 1。选择这样的人的子集:

  • 我想最大化被喜欢的人的数量(子集中任意两个人之间所有等级的总和)超过子集中的总人数。

  • 在选定的人群中,男性和女性的数量必须相等。

我的问题是:为了显示这个问题的 np 完整性,我知道可以使用 clique 问题减少......有没有人可以提供一个关于如何进行这种减少的例子?我需要减少 FROM 或 TO 集团问题吗? 非常感谢

【问题讨论】:

    标签: graph reduction np-complete clique clique-problem


    【解决方案1】:

    要回答您的问题,您需要将 FROM clique 问题简化为您当前正在处理的问题,因为 clique 是一个已知的 NP 完全问题。

    至于您对转换过程的提示(从已知的 Clique 问题到您的 Ranking 问题),考虑这一点的一个好方法是如何将 Clique 的场景减少到您的问题。在您的问题中,我假设 1 表示“关联的人”,而 0 表示“不喜欢的人”。

    将每个人作为我们在图 G 中的顶点(假设在集团问题中给定图)。为了区分男性和女性,我们将男性组标记为 A1,A2,A3...Am,将女性组标记为 B1,B2,B3...Bf。现在我们可以为他们之间排名为 1 的每一对人(喜欢的人)绘制边缘。假设在图完成后形成 N(N>=1) 个团。

    现在,我们删除每个 clique 中使 clique 具有不相等数量的 As 和 Bs 的顶点(以提供两个性别的相同数量的顶点)。现在,编号为 K 的最大派系就是您要寻找的派系。

    这种转换应该在多项式时间内完成,因为我们正在做的是完全重建我们的团图并标记它们(并删除它们)。执行这种转换需要 O(V+E)。

    稍后,如果您想证明您的问题是 NP 完全的,您将需要证明您的问题答案和集团问题答案之间的答案都有效。

    【讨论】:

      【解决方案2】:

      我不会为您写出实际的证明,但我希望以下关于如何构建证明的大纲有助于回答您的问题。

      使用归约证明问题是 NP 完全的第一步是实际证明问题在 NP 中。也就是说,问题可以在多项式时间内得到验证。

      你是怎么做到的? 您的问题能否转化为决策问题(例如,是/否问题) 这个决策问题可以被证明吗?您的决策问题是否有答案/解决方案? 你能验证决策问题的证书可以在多项式时间内完成吗? 如果是,那么你已经证明你的问题出在 NP 上。

      既然您知道问题在 NP 中,您可以使用归约来证明问题是 NP-complete 或 NP-hard。 (如果问题在 NP 中,那么进行归约步骤绝对没有用,因为如果问题不在 NP 中,问题就不可能是 NP 完全的。)

      为了减少,您应该将集团问题转换为您的问题。 你是怎么做到的? 好吧,想想集团问题的哪些元素可以转化为你的问题的元素。您的问题中有男性/女性,但集团问题中有节点/顶点。在您的问题中存在等于 0(不喜欢)或 1(喜欢)的连接,但在 clique 问题中存在加权(或未加权边)。您试图找到他们之间点赞数最多的人的子集,但在 clique 问题中,您正在最大化 clique 中的顶点数。在大多数情况下,它几乎看起来像是一对一的转换。你的问题的棘手部分是必须有偶数的男性和女性。为此,您需要更有创意,并找到改变集团问题的方法。

      一旦您将问题从集团转化为您的问题,您就可以简单地证明集团问题的答案就是您的问题的答案,反之亦然。

      这是证明问题是 NP-hard 的结构。 最难的部分是转型过程。但是,关键是,如果你想得足够深入,可以操纵集团问题,从而将其转化为你的问题。

      希望有帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-09-23
        • 1970-01-01
        • 1970-01-01
        • 2013-04-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多