当前位置:

首页 > 业界资讯 > 如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

P/NP问题是计算复杂度领域至今未解决的一个问题。人们一直试图找到一个问题的答案:「我们能否在合理时间内有效解决所有的计算问题?」什么是合理的时间?实际上在宇宙终结之前能够解决的问题都算在合理时间内。然而许多问题似乎都难以在合理的时间内解决,这需要用数学来证明这些问题的难度。2021年的一项研究解答了上述问题,该研究证实:很大一部分问题都很难有效解决。华盛顿大学的PaulBeame评价这项研究称:「就像攀登山峰一样,这项研究是计算理论研究路上的一个落脚点。」该研究的三位研究者:计算机科学家Sr

本文目录

    P/NP 问题是计算复杂度领域至今未解决的一个问题。人们一直试图找到一个问题的答案:「我们能否在合理时间内有效解决所有的计算问题?」

    什么是合理的时间?实际上在宇宙终结之前能够解决的问题都算在合理时间内。然而许多问题似乎都难以在合理的时间内解决,这需要用数学来证明这些问题的难度。

    2021 年的一项研究解答了上述问题,该研究证实:很大一部分问题都很难有效解决。

    华盛顿大学的 Paul Beame 评价这项研究称:「就像攀登山峰一样,这项研究是计算理论研究路上的一个落脚点。」

    如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

    该研究的三位研究者:计算机科学家 Srikanth Srinivasan(左)、Nutan Limaye(右上)和 Sébastien Tavenas。

    该研究考虑的问题只涉及加法和乘法,但当这些问题仅限于以特定方式(加法和乘法的某种交替模式)解决时,它们就变得非常困难。

    令人惊讶的是,该研究没有使用新的框架或工具,相反,作者设法绕过了由普林斯顿高等研究院数学学院教授 Wigderson 与耶路撒冷希伯来大学 Noam Nisan 合作数十年的工作中描述的数学障碍。

    研究者之一、丹麦奥胡斯大学的 Srikanth Srinivasan 说:「我们意识到有一种非常简单的方法可以绕过这个障碍。并且,如果用这么简单的方法就能做到我们认为不可能的事情,那么肯定能找到更好的方法。」

    重要的问题

    计算机出现之后,科学家们发现计算机算法可以解决许多问题,但有时这些算法花费的时间太长——比实际计算时间更长。

    他们开始怀疑有些问题是本质上难度太大,无论问题的规模是大是小都难以解决。例如在图中,一个重要的问题是确定是否存在一条哈密顿路径,即存在一条路径通过且仅通过每个顶点一次。增加点(和边)的数量应需要更长的时间来确定是否存在这样的路径,但即便是最好的算法,随着图规模的增加,花费的时间也会呈指数增长,这使得解决这个问题变得不切实际。

    如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

    计算机科学家试图证明,任何能够以某种方式有效解决某类问题中一个难题的算法,都可以转化为对其他类似困难问题的解决方法,他们称这一类问题为 NP 问题。

    当然,也有很多看起来不难的问题,不需要花费太多时间来解决。这些问题中的很多在某种意义上也是等价的,这类问题被称为 P 问题。他们认为 NP 问题确实比 P 问题更难,并且 NP 问题永远无法有效解决。但如果没有证据,这种想法就可能是错误的。

    因此,计算机科学家们开始寻找方法来证明 NP 问题确实更难,这需要证明 NP 问题必须要指数级的时间才能解决,但证明这一点并不容易。

    多难才算「困难(hard)」?

    设想一组只需要加法和乘法的特定问题。例如,给定一组点,可以仅通过加法和乘法,用关于点的数据来计算所有可能的哈密顿路径(如果存在的话)。

    随着问题规模的增加,一些算术问题(如计算哈密顿路径)需要更多的时间。1979 年,哈佛大学的 Leslie Valiant 证明许多算术问题在「难度」上是等价的,而其他的则在「没有难度」上是等价的。计算机科学家后来以他的名字命名这两类问题——分别是 VNP 和 VP。

    和 P 与 NP 问题一样,我们无法证明 VNP 问题的难度,我们只知道 VNP 问题比 NP 问题更难,因为它建立在后者的基础之上,例如计算路径首先需要确定路径是否存在。

    「这比 NP 难,因此证明这很困难应该更容易」,Shpilka 说道。

    在随后的几十年中,计算机科学家在 VP 与 VNP 问题上取得的进展比他们在 P 与 NP 问题上取得的进展要大得多,但其中大部分仅限于 Valiant 创建的称为代数复杂性的子领域。在 Limaye、Srinivasan 和 Tavenas 最近的工作之前,他们仍然很难判断是否存在一般意义上的算术问题。

    调整多项式

    这项新工作有助于探究计算机科学家思考加法和乘法问题的方式。从数学上讲,这些问题完全可以写作多项式的形式(例如 x^2 + 5y + 6),这些多项式由相加和相乘的变量组成。

    对于任何特定问题,例如计算哈密顿路径,你可以构建一个表示它的多项式。例如你可以用一个变量来表示每个点和边,这样当添加更多点和边时,就可以向多项式添加更多变量。

    为了证明计算哈密顿路径这样的算术问题很困难,就需要证明当添加更多点和边时,相应的多项式需要以指数时间解决更多操作。例如,x^2 需要一次操作(x * x),而 x^2 + y 需要两次操作(x * x 然后加上 y)。操作的数量称为多项式的大小。

    但是多项式的大小很难确定。例如多项式 x^2 + 2x + 1。它的大小似乎为 4(两次乘法和两次加法),但是该多项式可以重写为两个和的乘积,(x + 1)(x + 1),它的操作数更少——两次加法,一次乘法。通常,随着问题的规模扩大和将更多变量添加到多项式中,数学变换可以帮助简化和缩小其规模。

    在 Valiant 的研究几年之后,计算机科学家找到了一种方法,可以使问题的大小更易于分析。为此,他们提出了一个称为「深度(depth)」的属性,它指定多项式在和与乘积之间切换或交替的次数。例如,多项式 x^2 + 2x + 1 的深度为 2,因为它是乘积之和(如 x^2 和 2x)。相比之下,表达式 (x + 1)(x + 1) 的深度为 3,因为它的深度与 0 + (x + 1)(x + 1) 相同,按照乘积之和计算。

    如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

    为了简化多项式,计算机科学家将它们限制为一种固定形式,并具有称为「恒定深度」的属性,其中和、乘积的模式不会随着问题的增长而改变。这使得它们的大小更加固定,多项式的大小会随着其深度的增加而减小。某个恒定深度的表达式称为公式。恒定深度让多项式的研究取得了更多进展。

    神奇的「深度」

    1996 年, Nisan 和 Wigderson 的一篇论文专注于解决矩阵乘法的问题,他们用两种方式简化了这个问题。首先,他们用恒定深度的公式来表示它——深度为 3。其次,他们只考虑了具有某种简单结构的公式,其中每个变量的最大指数为 1,这使得原问题成为「多线性」问题。

    计算机科学家已经发现,某些问题可以转换为相对简单的集合多线性(set-multilinear)结构,代价是多项式的大小呈次指数增长(与指数增长的增长率相当)。

    Nisan 和 Wigderson 随后表明了随着矩阵的扩大,矩阵乘法问题需要指数级的时间来解决。换句话说,他们证明了一个重要的问题是困难的,为证明一类问题都是困难的做出了努力。然而,他们的结果只适用于具有简单的、集合多线性结构的公式。

    如何证明一个问题是VNP问题?计算机科学家找到了一种简单方法

    Leslie Valiant

    增加多项式的深度往往会导致其大小减小。随着时间的推移,计算机科学家使这两个属性之间的权衡变得更精确。他们表明,将两个深度级别添加到深度 3、集合多线性多项式可以平衡其集合多线性结构的大小增益。如果深度 5 的结构化公式需要指数时间,那么具有一般、非结构化性质的深度 3 公式也是如此。

    Srikanth Srinivasan 等人的新工作表明,矩阵乘法问题的深度 5 集合多线性公式确实以与指数级速度增长。这意味着一般的深度 3 公式也需要指数时间。随后他们证明类似的规律适用于所有深度(不止是 3 和 5)。有了这种关系,他们就证明了对于同一个问题,任何深度的一般公式的大小都会随着问题的规模而以指数速度增长。

    他们还表明用一个恒定深度的公式表示矩阵乘法是很难的,无论该深度是多少。

    该研究的结果首次提供了对于算术问题何时是「困难」的一般理解——当它不能用恒定深度的公式表示时即为困难。矩阵乘法的具体问题已知是 VP 问题。并且已知 VP 问题在不限于恒定深度时相对容易,因此结果得出恒定深度为问题「困难」的来源。

    VNP 问题是否比 VP 问题更难?新结果并没有直接说明这一点,他们只表明恒定深度公式很难。但这仍然是证明 VNP 问题不能等价于 VP 问题的重要里程碑。

    对于更大的 P 与 NP 问题,我们现在可以对有一天能找到答案更加乐观了。毕竟为了解决困难的问题,我们首先需要知道哪些方向是无望的。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    业界资讯
    相关文章 更多
    首款,成功研制!我国“太极计划”获重要进展
    首款,成功研制!我国“太极计划”获重要进展

    我国空间引力波探测的“太极计划”,最近迎来一个关键节点的突破。根据中国科学院力学研究所5月9日发布的消息,该计划核心测量系统的首款全功能干涉仪光学平台已成功研制,并顺利通过地面性能测试。这意味着,这项雄心勃勃的太空探测计划,其最精密的“尺子”已经从纸上蓝图,迈入了实实在在的工程制造阶段。相关研究成果

    中国科研人员利用LAMOST望远镜发现两颗新的共生星
    中国科研人员利用LAMOST望远镜发现两颗新的共生星

    7月25日消息 天文学界最近有一项挺有意思的发现。根据中国科学院发布的信息,由南京天文光学技术研究所研究员王靓团队,联合国家天文台研究员罗阿理等人,利用LAMOST望远镜第十次公开的海量光谱数据,再结合多种测光数据,成功揪出了两颗全新的共生星,同时还锁定了12颗“仅吸积共生星”的候选体。这成果可不只

    京东积存金手续费是多少?怎么算?
    京东积存金手续费是多少?怎么算?

    随着黄金价格持续攀升,越来越多的人开始关注黄金投资,京东积存金成为不少人的选择之一,甚至还能兑换实物黄金。但很多人对京东积存金的手续费问题还不太清楚,具体怎么计算呢?京东积存金手续费是多少目前的手续费是0.3%,不过据消息称未来可能会进一步上调。之前一直在京东购买黄金产品,手续费一路涨上来,前几天买了10克,平台赚了30块,我自己才赚3块,感觉像是在给平台打工。京东积存金手续费如何计算京东积存金的特点是买入免手续费,卖出则收取0.4%的手续费(自4月调整后)。相比之下,如果长期持有,成本会更可控一些。此前

    PHP编程中2的幂次方如何计算?
    PHP编程中2的幂次方如何计算?

    PHP是一种常用的服务器端脚本语言,广泛应用于Web开发领域。在PHP编程中,计算2的幂次方是一种常见的操作,可以通过简单的代码实现。接下来我们将详细介绍如何在PHP中计算2的幂次方,并提供具体的代码示例。在PHP中计算2的幂次方,可以利用位运算来实现,位运算是一种对二进制数值进行操作的方法。对于2的幂次方来说,可以通过位移运算来得到结果。具体的代码示例如下

    ​excel怎么快速计算表格数据?​excel表格常用函数公式分享
    ​excel怎么快速计算表格数据?​excel表格常用函数公式分享

      在工作中,不少朋友经常会使用Excel表格记录一些数据,这款电子表格软件提供了许多强大的函数公式,可以帮助我们更高效地进行计算,数据量少的时候还没什么感觉,如果是处理大量的数据,那么就会感觉非常有用。这里给朋友们介绍15个常用的Excel函数公式,希望对你有帮助。  1、求和:SUM函数SUM函数用于对一列或一组单元格中的数字进行求和。它可以简单地将所有数字相加,也可以根据指定的条件进行求和。例如:=SUM(A1:J10),这个公式将会计算A1到J10单元格范围内所有数字的总和。  2、平均值:AVE

    Linux上如何统计一个目录中的文件数量
    Linux上如何统计一个目录中的文件数量

    如果您使用的是操作系统,则必须计算目录中可用文件的数量,因为它提供了内容的简要概述。它允许您限制存储空间,并获取不必要的大文件的详细信息。此外,作为Bash脚本用户,您可以计算文件的数量,以自动执行特定任务并限制其中的数量。然而,很多初学者都想了解如何检查文件的数量。因此,我们在博客中提供了多个命令,可以帮助他们快速计算目录中可用文件的数量。如何在Linux上计算目录中的文件数让我们将本指南分成多个部分,其中我们将解释计算Linux中文件数的不同命令。1.Wc命令您可以使用”wc”

    word文档怎么计算加减乘除
    word文档怎么计算加减乘除

    WORD是一个强大的文字处理器,我们可以利用word进行各种文字的编辑,在Excel表格当中,我们已经熟练掌握了加减乘数的运算方法,那么如果需要在Word表格里,计算数值的加减乘数,该如何操作呢,难道只能用计算器计算吗?答案当然是否定的,WORD也同样可以完成。今天小编就来教大家如何在Word文档的表格当中,运用公式计算加减乘除等基本运算,一起来学习一下吧。那么,今天就让小编具体演示一下,WORD文档怎么计算加减乘除?第一步:打开一个WORD,单击工具栏【插入】下的【表格】,在下拉菜单当中插入一个表格,如

    PHP如何计算2的幂次方?
    PHP如何计算2的幂次方?

    PHP是一种功能强大的编程语言,它提供了丰富的数学函数来帮助开发者进行各种数学计算。在PHP中,计算2的幂次方是一个常见的需求,本文将介绍如何在PHP中计算2的幂次方并给出具体的代码示例。在PHP中计算2的幂次方,最简单直接的方法就是使用指数运算符。指数运算符用两个乘号表示,它的作用是计算一个数的幂次方。对于2的幂次方,只需要将指数运算符与底数2和指数n结合

    蚂蚁新村每日一题1.22:诞生于中国的算盘除了加减乘除还能计算什么
    蚂蚁新村每日一题1.22:诞生于中国的算盘除了加减乘除还能计算什么

    蚂蚁新村每日一题1.22:今日问题:诞生于中国的算盘除了加减乘除,还能计算什么?很多小伙伴不知道诞生于中国的算盘除了加减乘除还能计算什么,接下来就是小编为用户带来的1.22蚂蚁新村每日一题答案分享,感兴趣的用户快来一起看看吧!蚂蚁新村今日答案最新更新蚂蚁新村每日一题1.22:诞生于中国的算盘除了加减乘除,还能计算什么问题:诞生于中国的算盘除了加减乘除,还能计算什么?答案:开方内容解析:1、开方(英文rooting),指求一个数的方根的运算,为乘方的逆运算(参见“方根”词条);2、在中国古代也指求二次及高次

    用Golang开发操作系统的研究与分析
    用Golang开发操作系统的研究与分析

    标题:能否用Golang开发操作系统?研究与分析随着Golang(Go语言)在软件开发领域的日益流行,人们开始探讨是否可以用Golang来开发操作系统。传统上,操作系统一般是用C或者汇编语言来编写的,这两种语言具有较高的性能和底层控制能力,适合操作系统这种需要高效运行的领域。那么,Golang是否也具备这样的能力呢?在本文中,我们将对能否用Golang开发操

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。