首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NP问题有必要成为决策问题吗?

NP问题有必要成为决策问题吗?
EN

Stack Overflow用户
提问于 2013-02-10 23:11:41
回答 3查看 1K关注 0票数 1

斯坦福大学的蒂姆·拉夫加登教授在教授MOOC时说,NP类问题的解决方案必须是多项式长度的。但wikipedia article表示,NP问题是决策问题。那么什么类型的问题基本上属于NP类呢?有必要说这类问题的解决方案具有多项式长度输出(因为决策问题必须输出0或1)吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-11 01:18:22

他可能说的是目击者和验证者。

对于NP中的每个问题,都有一个验证器-读取算法/图灵机-它可以在多项式时间内验证“是”-claims。

这个想法是,在时间有限的情况下,你有某种信息-证人-来帮助你做到这一点。

例如,在旅行推销员问题中:

代码语言:javascript
运行
复制
TSP = {(G, k) if G has a hamiltonian cycle of cost <= k}

对于给定的输入(G,k),您只需要确定问题实例是否在TSP中。这是一个是/否的答案。

现在,如果有人走过来说:这个问题实例在TSP中,您将要求提供证明。然后另一个人可能会给你一系列的城市。然后,您可以简单地检查该顺序中的城市是否形成哈密顿循环,以及该循环的总成本是否为≤k。

您可以在多项式时间内执行此过程-假设见证的长度是多项式的。

使用这个城市序列,您就能够正确地确定问题实例确实在TSP中。

这就是验证器的想法:他们采用长度为多项式的证明对象/见证,在多项式时间内检查某个问题实例是否存在于语言中。

票数 4
EN

Stack Overflow用户

发布于 2013-02-10 23:41:45

NP的标准定义是它只是一类决策问题。决策问题总是产生一个是/否的答案,因此具有固定大小的输出。

票数 2
EN

Stack Overflow用户

发布于 2013-02-11 00:18:37

我没有看视频/课程,但我猜他说的是证书/验证,而不是解决方案。差别很大。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14799144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档