【问题标题】:Verification algorithm for minimum vertex cover?最小顶点覆盖的验证算法?
【发布时间】:2013-04-18 22:07:19
【问题描述】:

我们知道最小顶点覆盖是NP完全的,这意味着它在可以在多项式时间内验证的问题集中。

据我了解,验证过程需要以下内容:

  1. 验证解完全是顶点覆盖
  2. 验证解决方案是满足条件 #1 的源图的最小可能子集

我发现很难确定第 2 步可以在多项式时间内完成。谁能解释一下是怎么回事?

【问题讨论】:

    标签: algorithm graph vertex np-complete


    【解决方案1】:

    最小顶点覆盖是 NP-hard。只有restated as a decision problem是NP完全的,可以在多项式时间内验证。

    最小顶点覆盖问题是在给定图中找到最小顶点覆盖的优化问题。

    • 实例:图G
    • 输出:最小数 k 使得 G 具有大小为 k 的顶点覆盖。

    如果问题表述为decision problem,则称为顶点覆盖问题:

    • 实例:图 G 和正整数 k
    • 问题:G 是否有一个最大为 k 大小的顶点覆盖?

    将问题重述为决策问题是使问题 NP 完全的常用方法。基本上,您将“找到最小解决方案 k”形式的开放式问题变成是/否问题,“对于给定的 k,是否存在解决方案? "

    例如,对于travelling salesman problem,验证提议的解决方案是否所有城市之间的最短路径是NP-hard。但是,如果问题被重申为只需要找到一个小于 k 总距离的解决方案对于某些 k,那么验证解决方案很容易。您只需找到建议解决方案的长度并检查它是否小于 k

    决策问题公式可以很容易地用于解决一般公式。要找到最短路径,您只需降低 k 的值,直到找不到解决方案。

    【讨论】:

    • 但是,如果某件事很简单,并不意味着它解决起来也很快? Np问题需要很长时间,这就是问题所在。
    • @Phpdna finding 解决方案(即 NP)和 verifying 解决方案(即 P)之间有一个关键的区别。NP 完全问题是一种可以“轻松”(在多项式时间内)验证解决方案的方法。我不知道如何找到在 500 英里内到达五个城市的方法,但如果有人给我一个解决方案,我可以很容易地检查他们的路线是否短于 500 英里。
    • 仍然没有说明解决方案。发现某事(决策)问题真的那么难理解吗?毕竟它甚至不是一门真正的科学?
    猜你喜欢
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 2010-10-29
    • 2013-09-04
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多