强大的量子计算机可以破解加密并解决经典机器无法解决的问题。虽然目前还没有人成功制造出这样的设备,但最近我们看到了进步的步伐——那么,会是新的一年吗?目前,努力集中在一个被称为量子霸权的重要里程碑上:在合理的时间范围内,量子计算机能够完成经典计算机无法完成的计算。
谷歌在年首次使用具有54个量子位(常规计算位的量子等价物)的设备来执行称为随机抽样计算的基本上无用的计算,从而实现了这一目标。年,中国科学技术大学的一个团队使用56个量子比特解决了一个更复杂的采样问题,后来又用60个量子比特将其推得更远。
但IBM的BobSutor表示,这种跨越式游戏是一项尚未产生真正影响的学术成就。只有当量子计算机明显优于经典计算机并且能够解决不同问题时,才能实现真正的霸权,而不是目前用作基准的随机抽样计算。
他说,IBM正在努力实现“量子商业优势”——在这一点上,量子计算机可以比传统计算机更快地为研究人员或公司解决真正有用的问题。Sutor说,这还没有到来,也不会在新的一年到来,但可以预期在十年内。
量子软件公司Classiq的联合创始人NirMinerbi则更为乐观。他认为,新的一年将在一个有用的问题中展示量子霸权。
还记得第一辆电动汽车问世的时候吗?它们对于开车去杂货店很有用,但也许不适合开车公里送孩子上大学。就像电动汽车一样,量子计算机会随着时间的推移变得越来越好,使其在更广泛的应用中发挥作用。
解决实际问题存在许多障碍。首先是设备需要数千个量子比特才能做到这一点,而且这些量子比特也必须比现有的更稳定和可靠。研究人员很可能需要将它们分组在一起,以作为单个“逻辑量子比特”工作。这有助于提高保真度,但会削弱规模的改进:数千个逻辑量子位可能需要数百万个物理量子位。
随着时间的推移,量子计算机会变得更好,在一系列应用中变得有用
研究人员还致力于量子纠错,以在出现故障时对其进行修复。谷歌在年7月宣布,其Sycamore处理器能够检测并修复其超导量子比特中的错误,但执行此操作所需的额外硬件引入的错误多于修复的错误。马里兰州联合量子研究所的研究人员后来设法用他们捕获的离子量子比特通过了这个关键的收支平衡阈值。
即便如此,现在还为时过早。如果通用量子计算机在新的一年解决了一个有用的问题,那将是“相当令人震惊的”。在任意时间内保护单个编码的量子位,更不用说对数千或数百万个编码的量子位进行计算了。
量子计算机需要多大才能破解比特币加密或模拟分子?
预计量子计算机将具有颠覆性,并可能影响许多行业领域。因此,英国和荷兰的研究人员决定探索两个截然不同的量子问题:破解比特币(一种数字货币)的加密以及模拟负责生物固氮的分子。研究人员描述了他们创建的一种工具,用于确定解决此类问题需要多大的量子计算机以及需要多长时间。
这一领域的大部分现有工作都集中在特定的硬件平台、超导设备上,就像IBM和谷歌正在努力开发的那样。不同的硬件平台在关键硬件规格上会有很大差异,例如运算速率和对量子比特(量子比特)的控制质量。许多最有前途的量子优势用例将需要纠错量子计算机。纠错可以通过补偿量子计算机内部的固有错误来运行更长的算法,但它是以更多物理量子比特为代价的。从空气中提取氮来制造用于肥料的氨是非常耗能的,改进这一过程可能会影响世界粮食短缺和气候危机。相关分子的模拟目前甚至超出了世界上最快的超级计算机的能力,但应该在下一代量子计算机的范围内。
我们的工具根据关键硬件规格自动计算纠错开销。为了让量子算法运行得更快,我们可以通过添加更多物理量子位来并行执行更多操作。我们根据需要引入额外的量子位以达到所需的运行时间,这严重依赖于物理硬件级别的操作速率。大多数量子计算硬件平台都是有限的,因为只有彼此相邻的量子位才能直接交互。在其他平台中,例如一些捕获离子设计,量子位不在固定位置,而是可以物理移动——这意味着每个量子位可以直接与大量其他量子位相互作用。
我们探索了如何最好地利用这种连接遥远量子位的能力,目的是用更少的量子位在更短的时间内解决问题。我们必须继续调整纠错策略以利用底层硬件的优势,这可能使我们能够使用比以前假设的更小的量子计算机来解决影响深远的问题。
量子计算机在破解许多加密技术方面比经典计算机更强大。世界上大多数安全通信都使用RSA加密。RSA加密和比特币使用的一种(椭圆曲线数字签名算法)有一天会容易受到量子计算攻击,但今天,即使是最大的超级计算机也永远不会构成严重威胁。研究人员估计,一台量子计算机需要的大小才能在它实际上会构成威胁的一小段时间内破解比特币网络的加密——在它宣布和集成到区块链之间。交易支付的费用越高,这个窗口就越短,但可能从几分钟到几小时不等。
当今最先进的量子计算机只有50-个量子比特。“我们估计需要30[百万]到3亿物理量子比特,这表明比特币目前应该被认为是安全的,不会受到量子攻击,但这种尺寸的设备通常被认为是可以实现的,未来的进步可能会进一步降低要求。比特币网络可以对量子安全加密技术执行‘硬分叉’,但这可能会由于内存需求增加而导致网络扩展问题。
研究人员强调了量子算法和纠错协议的改进速度。四年前,我们估计捕获离子设备需要10亿个物理量子比特才能破解RSA加密,这需要一个面积为x平方米的设备。现在,随着全面改进,这可能会显着减少到仅2.5x2.5平方米的面积。大规模纠错量子计算机应该能够解决经典计算机无法解决的重要问题。模拟分子可应用于能源效率、电池、改进的催化剂、新材料和新药的开发。进一步的应用程序全面存在——包括金融、大数据分析、飞机设计的流体流动和物流优化。
什么是量子启示录?
想象一个加密的秘密文件突然被破解的世界——这就是所谓的“量子启示录”。简而言之,量子计算机的工作方式与上个世纪开发的计算机完全不同。从理论上讲,它们最终可能会比今天的机器快很多很多倍。这意味着面对一个极其复杂和耗时的问题——比如试图解密数据——其中有数十亿的多个排列,如果有的话,一台普通的计算机需要很多年才能破解这些加密。但理论上,未来的量子计算机可以在几秒钟内完成这项工作。这样的计算机可以为人类解决各种问题。英国政府正在牛津郡哈威尔投资国家量子计算中心,希望彻底改变该领域的研究。
一种用于量子计算的新语言
Twist是麻省理工学院开发的一种编程语言,可以描述和验证哪些数据被纠缠在一起,以防止量子程序中的错误。时间结晶、微波炉、钻石,这三个不同的东西有什么共同点?量子计算。与使用比特的传统计算机不同,量子计算机使用量子比特将信息编码为0或1,或两者同时编码。再加上来自量子物理学的各种力量,这些冰箱大小的机器可以处理大量信息——但它们远非完美无缺。就像我们的普通计算机一样,我们需要有正确的编程语言才能在量子计算机上正确计算。
对量子计算机进行编程需要了解一种叫做“纠缠”的东西,这是一种用于各种量子比特的计算乘数,它可以转化为强大的能量。当两个量子位纠缠在一起时,一个量子位上的动作可以改变另一个量子位的值,即使它们在物理上是分开的,这引起了爱因斯坦对“远距离幽灵动作”的描述。但这种效力同样是弱点的来源。在编程时,丢弃一个量子位而不注意它与另一个量子位的纠缠会破坏另一个量子位中存储的数据,从而危及程序的正确性。
麻省理工学院计算机科学与人工智能(CSAIL)的科学家旨在通过创建自己的量子计算编程语言Twist来解开谜团。Twist可以通过经典程序员可以理解的语言来描述和验证量子程序中纠缠了哪些数据。该语言使用一个称为纯度的概念,它强制不存在纠缠并产生更直观的程序,理想情况下错误更少。例如,程序员可以使用Twist表示程序作为垃圾生成的临时数据不会与程序的答案纠缠在一起,从而可以安全地丢弃。
虽然新兴领域可能会让人感觉有点浮华和未来感,但脑海中浮现出巨大的金属机器的图像,但量子计算机具有在经典无法解决的任务中实现计算突破的潜力,例如密码学和通信协议、搜索以及计算物理和化学。计算科学的主要挑战之一是处理问题的复杂性和所需的计算量。经典的数字计算机需要非常大的指数位数才能处理这样的模拟,而量子计算机可能会使用非常少量的量子位来做到这一点——如果那里有正确的程序。“我们的语言Twist允许开发人员通过明确说明何时不得与另一个量子位纠缠来编写更安全的量子程序,”麻省理工学院电气工程和计算机科学博士生、有关Twist的新论文的主要作者CharlesYuan说.“因为理解量子程序需要理解纠缠,我们希望Twist为开发语言铺平道路,让程序员更容易应对量子计算的独特挑战。”
解开量子纠缠
想象一个木箱,它的一侧伸出一千根电缆。您可以将任何电缆从包装盒中拉出,也可以将其完全推入。
在你这样做一段时间后,电缆会形成一个位模式——零和一——取决于它们是在里面还是在外面。这个盒子代表了经典计算机的内存。该计算机的程序是关于何时以及如何拉电缆的一系列指令。
现在想象第二个外观相同的盒子。这一次,你拉一根电缆,看到它出现时,其他几根电缆被拉回了里面。显然,在盒子内部,这些电缆不知何故相互缠绕。
第二个框是量子计算机的类比,理解量子程序的含义需要理解其数据中存在的纠缠。但是检测纠缠并不简单。你看不到木箱,所以你能做的最好的就是尝试拉动电缆并仔细推理哪些是纠缠的。同样,今天的量子程序员不得不用手推理纠缠。这就是Twist的设计有助于按摩其中一些交错的部分。
科学家们设计的Twist具有足够的表现力,可以为著名的量子算法编写程序并识别其实现中的错误。为了评估Twist的设计,他们对程序进行了修改,以引入某种对于人类程序员来说相对不易察觉的错误,并表明Twist可以自动识别错误并拒绝程序。
他们还测量了程序在运行时方面的实际执行情况,与现有的量子编程技术相比,它的开销不到4%。
对于那些担心量子在破解加密系统方面的“肮脏”名声的人来说,Yuan表示,目前还不清楚量子计算机在实践中能够在多大程度上实现其性能承诺。“在后量子密码学方面正在进行大量研究,这些研究之所以存在,是因为即使是量子计算也不是万能的。到目前为止,有一组非常具体的应用程序,人们在这些应用程序中开发了量子计算机可以超越经典计算机的算法和技术。”
重要的下一步是使用Twist创建更高级别的量子编程语言。今天的大多数量子编程语言仍然类似于汇编语言,将低级操作串在一起,没有注意数据类型和函数等东西,以及经典软件工程中的典型内容。
量子计算机容易出错且难以编程。通过引入和推理程序代码的“纯度”,Twist通过保证一段纯代码中的量子位不会被不在该代码中的位更改,朝着简化量子编程迈出了一大步。这项工作得到了麻省理工学院-IBM沃森人工智能实验室、国家科学基金会和海军研究办公室的部分支持。
量子计算机是一种直接利用量子力学现象(如叠加和纠缠)对数据进行运算的计算设备。量子计算背后的基本原理是量子属性可以用来表示数据并对这些数据执行操作。
尽管量子计算仍处于起步阶段,但已经进行了一些实验,在这些实验中,量子计算操作是在非常少量的量子比特(量子二进制数字)上执行的。实践和理论研究都在继续进行,许多国家政府和军事资助机构支持量子计算研究,以开发用于民用和国家安全目的的量子计算机,例如密码分析。
如果可以建造大规模的量子计算机,它们将能够比我们目前的任何经典计算机(例如Shor算法)更快地解决某些问题。量子计算机不同于DNA计算机和基于晶体管的传统计算机等其他计算机。一些计算架构(例如光学计算机)可能会使用经典的电磁波叠加。如果没有一些特定的量子力学资源,例如纠缠,推测不可能超过经典计算机的指数优势。