当前位置: 首页 > 工具软件 > p > 使用案例 >

p=np问题

支洋
2023-12-01

帮助理解:

P类问题就是指那些计算机比较容易算出答案的问题。
NP类问题就是指那些已知答案以后计算机可以比较容易地验证答案的问题。

1. “假设你参加一个盛大的宴会,想要知道里面有没有认识的人。宴会的主人对你说,你一定认识正站在甜点桌右边角落里的女士小龙女。你立刻扫向那里,发现他说的是对的。而如果他不告诉你这些,你就需要环顾整个大厅,审视过每一个人,然后才知道有没有认识的人。宴会主人的暗示,容易找到这一步就是P,你按照他的提示发现自己认识小龙女,容易检查这一步就是NP。”
这其实就是:生成问题的一个解,通常比验证一个给定的解,要花费更多时间。比如,如果让你计算世界上所有原子个数的总和,这个问题很困难,甚至无解。但是,如果有人告诉你世界上一共有500个原子,那么你能很快验证他是错的。很容易验证,却不容易求解,这种就是NP类问题。
P类问题是可以在多项式时间内解决并验证的一类问题;NP类问题是可以多项式时间验证但是不确定能否在多项式时间内解决的一类问题。
显然,所有P类问题都属于NP类问题,但是无法确定NP是否等于P。

2.假设你正在为400名大学生组织住宿,但是空间有限只有100名学生能在宿舍里找到位置。更复杂的是还给了你一份不相容学生的名单,并要求在你的最终选择中不要出现这份名单中的任何一对。
这是计算机科学家称之为NP问题的一个例子,因为很容易检查一个同事提出的一百个学生的给定选择是否令人满意,然而从头开始生成这样一个列表的任务似乎太难了以至于完全不切实际。
事实上从400名申请者中选择100名学生的方法总数比已知宇宙中的原子数量还要多!这类其答案可以被快速检查,但是通过任何直接的程序需要不可接受长度的时间来解决,比如300年或者更多...
斯蒂芬·库克和列昂尼德·莱文在1971年独立地提出了P(即容易找到)和NP(即容易检查)问题

3.P代表了这样一类问题,计算机在解决它们的时候可以有速度非常快的方法。这个速度和计算机硬件无关,仅仅取决于这个解决方法本身的便捷性。

NP代表了另一类问题,它们有最优解,但是,其中很多问题,计算机在寻求最优解时,没有快速的方法,甚至,只能傻傻的、暴力的、尝试所有可能的组合,然后找到最优解。NP问题中,最难的一类问题,被称为NPC,也就是NP完全问题。

如果P=NP,则意味着,每一个NP问题都可以转化成P,也就是每一个难题最终可以变成一个简单命题,让计算机可以快速求解。

如果P≠NP,则意味着,很多NP问题无法简化成P, 也就是计算机只能很傻很暴力的去求解。

4.换而言之,就是,人类在解决复杂问题的时候是否有捷径?

说到这里,大家可能还没有意识到如果P=NP的威力。下面,就来给大家展示一下如果人类找到了世界的捷径,也就是找到了P=NP的方法后,世界会成为一个怎样神奇的样子!

充满捷径的神奇世界

大家熟知的证券市场,充满了各种信息,它们交互作用,让准确的结果预测变得完全不可能。这是一个典型的混沌系统,如同天气系统、海洋、足球力学系统一样。然而,如果P=NP,计算机一下子变得足够聪明,当获知了所有信息因子后,计算机竟然可以在极其短时间里,作出极其准确的预测了!从今往后,人们将可以准确预测天气、股票、球赛结果...

大家是不是已经在惧怕人工智能了?是不是已经在担心机器人将统治我们?但是,比起P=NP 的神奇世界,现在的人工智能还是很蠢的。如果P=NP,机器人将比现在聪明更多更多更多。从此以后,人工智能将可以快速的自我优化了!那时候,人类的末日可能真的就来了。

当P=NP,计算机将很容易找到一个算法,来知道艺术作品是如何直击人类心灵的,于是,计算机能为每个人订制出他最喜爱的音乐、艺术作品。什么,你认为现在的音乐推荐系统已经可以做到?不不不,在那个P=NP的时代,计算机会自我将算法进化到,钻进你的内心,成为你的私人订制作曲家。

如今,人类虽然掌握有人类基因数据库的数据,但是对其进行数据分析依然是个NP完全问题,这让科学家即便花费极大运算力气能找出致病基因,也难以个体化订制药品。然而,如果计算机科学家们能够解开P=NP,从此以后,计算机将能快速为每一位患者订制出药物,不管是癌症还是其他和基因有关的疾病。而且为你订制的药物,将不会对你产生副作用,而别人使用未必有用。这世间,再无绝症。

5.P=NP真的可能吗?

人类至今还没有找到让任何NP问题变成P问题的算法。虽然一些NP问题数学家或者计算机科学家们找到了一些比较快速并且准确率较高的算法,但是,一个能放之四海而皆准的算法依然没有被找到。

那没有被找到是不是就不存在呢?

如今,绝大部分计算机科学家认为,P≠NP, 也就是,那个能轻易解开世界所有谜题的解并不存在。

同样,人们从直觉、哲学和宗教来看,也难以相信,有解开世界上所有问题的一把简单钥匙。因为,如果这样的钥匙真的存在,它大概早已在这个宇宙中存在了。比如,人类可能早已有了万事万物看一遍就会的本领,或是某种生物一生下来就不必为了生存而抗争,因为它们的算法极其优异,可以在任何环境中以最高效的方式生存下来。

然而,既然人们直觉上相信,这样的宇宙捷径并不存在,但是证明其不存在,可不是一件简单的事情。

6.证明P≠NP

任何一个能够证明P≠NP的人,都可以得到百万美金的奖励。这么多年过去,无数的数学家和计算机科学家都努力过,每年都有数以万计的论文寄往委员会,至今,却没有人获得这笔奖金。

终其原因,正是本文开头提到的石神和汤川的讨论:提出一个猜想(也就是出题)很容易,但要判断其答案是否正确,非常难。人们猜想了P≠NP,却非常难以证明。

很多人不理解数学家为什么会非要“证明”一个猜想。“证明”一个猜想,有非常重要的意义,比如,在P≠NP这个问题上,一旦能够证明,就意味着,人们不必再花心血去寻找那个超级算法了,因为,逻辑上,它根本不可能存在!

只是,至今为止,很多试图证明P≠NP的过程都是错误的,人们最常犯的一个错误是,他们提出一些可能让P=NP成立的算法,然后证明这些算法并不可能存在,进而得出P≠NP的结论。然而,这个逻辑最大的错误在于:这些提出的可能的算法不成立,不带表别的算法不成立。其实,在日常生活中,人们也很容易犯这样的逻辑错误:自己做不到,不等于别人做不到,但人们依然经常认为自己做不到的事情别人也做不到。

7.那么,人们最终可以证明P≠NP吗?

菲菲最近在一个相关论坛看到一段很有趣的评论:每当有P≠NP的证明出来,委员会都需要用NP的时间来判断这个证明是否正确。也许,要猜想P≠NP是否能被证明,本身就是个NP问题。

不过,鉴于困扰人类几百年的费马大定理最终终于被证明了,我们依然应当对P≠NP的证明抱有希望。

另外,说不定,某天真的找到了P=NP的算法?只是,不知这到底是喜是悲呢?人们如今已经在怀念那个没有那么多数据和信息的“慢生活”时代,等宇宙捷径真的被发现了,生命和生活还能如现在这样,充满了悬念、残缺之美吗?

来源:

1.P=NP?这世界真有捷径?

2.千禧年七大难题之 P = NP_心意乱2m的博客-CSDN博客

3.出大事了?国防科大教授解决了世界级难题?但到现在没人敢说对错

4.等等

 类似资料: