为什么说01背包问题是NP完全问题,以及NPCNPH的区分。

tangcat123 2014-04-03 11:45:55
首先我对NP的概念比较模糊
百度了下,好像是说不能在多项式的时间内求解
我的理解是时间复杂度为O(N^2)之类的都不能算作NP,而O(2^N)是NP问题。
背包的复杂度最优不是O(N*V)么,这应该看做是在多项式内求解的吧,为何他是个NP问题 还是个NPC问题,那他是NPH问题不?
再说NPC问题
(1) 问题W是NP问题;
(2) 任何一个其他的NP问题都可以在多项式时间内转换为问题W。
这个2是啥意思啊,啥叫其他的NP问题,没看懂,能否举个例子说明下。
NPH:说围棋的必胜走法是一个NPH问题,为何?那么它是一个NPC问题么?又是为何?
迷惑ing。。。。。
...全文
4629 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
CZWin32768 2016-06-27
  • 打赏
  • 举报
回复
V非常大呢 你还觉得复杂度小么
qq_34152812 2016-03-03
  • 打赏
  • 举报
回复
时间复杂度为O(N^2)是多项式时间啊,那不就是NP问题吗?
那闯 2014-04-04
  • 打赏
  • 举报
回复
引用 10 楼 FancyMouse 的回复:
[quote=引用 9 楼 edwardvsnc 的回复:] P=NP 不是还没有证明出来吗? 我看迷糊了。 NP问题:是“不确定多項式”时间复杂度吧? 来自wiki: (注意缩写NP代表“Non-deterministic(非确定性)Polynomial(多项式)”而不是代表“Non-Polynomial(非多项式)。) 请指教。 谢谢。
>P=NP 不是还没有证明出来吗? 我看迷糊了。 对,所以我之前那句话是针对两种情况分别讨论。如果P!=NP一个答案,如果P=NP另一个答案。 >NP问题:是“不确定多項式”时间复杂度吧? 是。但是你如果存在一个多项式验证算法,那么我可以构造一个non-deterministic图灵机,non-deterministically猜测解,然后对于每一个猜测的解应用这个多项式验证算法。这就NP了。[/quote] 是我没看明白, 谢谢。
FancyMouse 2014-04-04
  • 打赏
  • 举报
回复
引用 9 楼 edwardvsnc 的回复:
P=NP 不是还没有证明出来吗? 我看迷糊了。 NP问题:是“不确定多項式”时间复杂度吧? 来自wiki: (注意缩写NP代表“Non-deterministic(非确定性)Polynomial(多项式)”而不是代表“Non-Polynomial(非多项式)。) 请指教。 谢谢。
>P=NP 不是还没有证明出来吗? 我看迷糊了。 对,所以我之前那句话是针对两种情况分别讨论。如果P!=NP一个答案,如果P=NP另一个答案。 >NP问题:是“不确定多項式”时间复杂度吧? 是。但是你如果存在一个多项式验证算法,那么我可以构造一个non-deterministic图灵机,non-deterministically猜测解,然后对于每一个猜测的解应用这个多项式验证算法。这就NP了。
tangcat123 2014-04-03
  • 打赏
  • 举报
回复
引用 2 楼 FancyMouse 的回复:
>NPH:说围棋的必胜走法是一个NPH问题,为何?那么它是一个NPC问题么?又是为何? 这怎么是NPH。如果是正式的围棋的话,棋盘大小固定19*19,顶多3^(19*19)个状态,复杂度上依然是O(1)。
你可不能这么说,,,,我对这个的理解是你走的步数是n,这n步的变化数是n的指数。
FancyMouse 2014-04-03
  • 打赏
  • 举报
回复
>NPH:说围棋的必胜走法是一个NPH问题,为何?那么它是一个NPC问题么?又是为何? 这怎么是NPH。如果是正式的围棋的话,棋盘大小固定19*19,顶多3^(19*19)个状态,复杂度上依然是O(1)。
FancyMouse 2014-04-03
  • 打赏
  • 举报
回复
>背包的复杂度最优不是O(N*V)么,这应该看做是在多项式内求解的吧 但是输入数据的大小(bit数)至多是O(N*logV)。所以复杂度里有一个V的话,对于输入数据的长度来说还是指数。 >还是个NPC问题,那他是NPH问题不? NP+NPH=NPC >这个2是啥意思啊,啥叫其他的NP问题,没看懂,能否举个例子说明下。 就是,任何其他NP问题都可以用问题W的算法来解决。也就是说W是某种意义上“最难”的,因为只要W能解了,其他的NP就能解出来了。在计算理论里的严格定义要用到规约(reduction),这是有严格定义的,去翻教科书。
那闯 2014-04-03
  • 打赏
  • 举报
回复
引用 8 楼 FancyMouse 的回复:
[quote=引用 5 楼 tangcat123 的回复:] 还有 能不能举个例子 他是NP问题但是他不是NPC和NPH问题。
注意P一定是NP。所以随便找个简单的P问题就可以了。如果P!=NP的话那所有的P都不是NPC(于是也不是NPH)。如果P=NP的话那得小心点挑。[/quote] P=NP 不是还没有证明出来吗? 我看迷糊了。
引用 4 楼 tangcat123 的回复:
[quote=引用 1 楼 FancyMouse 的回复:] >背包的复杂度最优不是O(N*V)么,这应该看做是在多项式内求解的吧 但是输入数据的大小(bit数)至多是O(N*logV)。所以复杂度里有一个V的话,对于输入数据的长度来说还是指数。 >还是个NPC问题,那他是NPH问题不? NP+NPH=NPC >这个2是啥意思啊,啥叫其他的NP问题,没看懂,能否举个例子说明下。 就是,任何其他NP问题都可以用问题W的算法来解决。也就是说W是某种意义上“最难”的,因为只要W能解了,其他的NP就能解出来了。在计算理论里的严格定义要用到规约(reduction),这是有严格定义的,去翻教科书。
NP的定义中,要求多项式时间内可以对该问题进行验证。对背包问题的验证是如何验证,时间复杂度为何看成多项式级的[/quote] NP问题:是“不确定多項式”时间复杂度吧? 来自wiki: (注意缩写NP代表“Non-deterministic(非确定性)Polynomial(多项式)”而不是代表“Non-Polynomial(非多项式)。) 请指教。 谢谢。
FancyMouse 2014-04-03
  • 打赏
  • 举报
回复
引用 5 楼 tangcat123 的回复:
还有 能不能举个例子 他是NP问题但是他不是NPC和NPH问题。
注意P一定是NP。所以随便找个简单的P问题就可以了。如果P!=NP的话那所有的P都不是NPC(于是也不是NPH)。如果P=NP的话那得小心点挑。
FancyMouse 2014-04-03
  • 打赏
  • 举报
回复
引用 4 楼 tangcat123 的回复:
[quote=引用 1 楼 FancyMouse 的回复:] >背包的复杂度最优不是O(N*V)么,这应该看做是在多项式内求解的吧 但是输入数据的大小(bit数)至多是O(N*logV)。所以复杂度里有一个V的话,对于输入数据的长度来说还是指数。 >还是个NPC问题,那他是NPH问题不? NP+NPH=NPC >这个2是啥意思啊,啥叫其他的NP问题,没看懂,能否举个例子说明下。 就是,任何其他NP问题都可以用问题W的算法来解决。也就是说W是某种意义上“最难”的,因为只要W能解了,其他的NP就能解出来了。在计算理论里的严格定义要用到规约(reduction),这是有严格定义的,去翻教科书。
NP的定义中,要求多项式时间内可以对该问题进行验证。对背包问题的验证是如何验证,时间复杂度为何看成多项式级的[/quote] 背包的判定版本是是否存在有>=k的解。那么对应的验证版本就是给定k也给定一个解。当有一个解的时候,直接加起来看它是不是>=k就能验证了。
FancyMouse 2014-04-03
  • 打赏
  • 举报
回复
引用 3 楼 tangcat123 的回复:
[quote=引用 2 楼 FancyMouse 的回复:] >NPH:说围棋的必胜走法是一个NPH问题,为何?那么它是一个NPC问题么?又是为何? 这怎么是NPH。如果是正式的围棋的话,棋盘大小固定19*19,顶多3^(19*19)个状态,复杂度上依然是O(1)。
你可不能这么说,,,,我对这个的理解是你走的步数是n,这n步的变化数是n的指数。[/quote] 为什么不能?顶多再加上劫的规则再多个维度状态。总状态数一定是常数。除非棋盘大小是n*n,这个n可变。
tangcat123 2014-04-03
  • 打赏
  • 举报
回复
还有 能不能举个例子 他是NP问题但是他不是NPC和NPH问题。
tangcat123 2014-04-03
  • 打赏
  • 举报
回复
引用 1 楼 FancyMouse 的回复:
>背包的复杂度最优不是O(N*V)么,这应该看做是在多项式内求解的吧 但是输入数据的大小(bit数)至多是O(N*logV)。所以复杂度里有一个V的话,对于输入数据的长度来说还是指数。 >还是个NPC问题,那他是NPH问题不? NP+NPH=NPC >这个2是啥意思啊,啥叫其他的NP问题,没看懂,能否举个例子说明下。 就是,任何其他NP问题都可以用问题W的算法来解决。也就是说W是某种意义上“最难”的,因为只要W能解了,其他的NP就能解出来了。在计算理论里的严格定义要用到规约(reduction),这是有严格定义的,去翻教科书。
NP的定义中,要求多项式时间内可以对该问题进行验证。对背包问题的验证是如何验证,时间复杂度为何看成多项式级的
内容概要:本文系统研究了并网虚拟同步发电机(VSG)的自适应惯量阻尼调控策略及其对频率动态响应稳定性的影响,聚焦于VSG在并网工况下的惯量与阻尼协同自适应控制机制。通过构建Simulink仿真模型并结合Matlab代码实现,深入分析VSG的动态特性、有功/无功功率响应及电网频率稳定性,采用根轨迹法评估不同调节系数对系统稳定性的敏感性,揭示其支撑电网频率稳定的能力。研究进一步拓展至微电网黑启动、预同步控制、虚拟阻抗技术以及双机VSG间的功率精确分配等关键应用场景,旨在应对高比例新能源接入带来的系统惯量下降与频率稳定挑战,提升电力系统的韧性与可靠运行水平。; 适合人群:具备电力系统分析、自动控制理论及新能源并网技术背景,熟练掌握Matlab/Simulink仿真工具,从事电气工程、能源互联网、微电网控制等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①深入探究VSG在并网模式下惯量与阻尼参数的自适应协同调控原理与实现方法;②系统分析VSG控制策略对电网频率动态响应过程的影响规律与稳定边界;③通过仿真实践掌握VSG关键控制参数(如虚拟惯量、阻尼系数)的设计、整定及其对系统性能影响的量化评估;④为微电网的自主黑启动、无缝并网及高渗透率可再生能源系统的频率稳定控制提供先进的技术方案与决策依据。; 阅读建议:建议读者结合文中提供的完整Matlab代码与Simulink模型进行动手仿真实验,重点关注控制策略的模块化设计逻辑、参数动态调整过程与系统整体性能之间的关联,务必结合电力系统小信号稳定性分析理论,深入理解根轨迹、特征值等分析结果所蕴含的物理意义,从而实现从理论到实践的贯通。

33,025

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧