「深度」从硬件提升到算法迭代,正在发生的量子计算革命

简介:

本文是 Digital Trends 十周年庆 DT10 的系列文章的一篇,这个系列文章将描写过去十年的科学技术对我们生活的改变以及展望。

【编者按】本文转载自机器之心,来源:Digital Trends,译者:吴攀、李亚洲、杜夏德

本文是 Digital Trends 十周年庆 DT10 的系列文章的一篇,这个系列文章将描写过去十年的科学技术对我们生活的改变以及展望未来十年我们或将实现的技术。其涵盖的领域包括了以及将包括人工智能、医药、太空旅行、社会结构、可穿戴、人机结构、虚拟现实、生物科技、语言等许多方面,其中本文关注的量子计算。

Winfried Hensinger 喜欢《星际迷航》。“那是从我读小学开始的,”位于英格兰的苏塞克斯(Sussex)量子技术中心的这位主管说道”,“我想要成为企业号上的科学官,所以在我上五年级的时候我就决定要学习物理学了。”

而今天,他在量子力学的抽象概念上的日常工作甚至足以让史波克竖起耳朵。

“(量子计算)对年轻人有很大的吸引力,”Hensinger 说,“因为它基本上就是科学幻想。”当他刚开始涉足这一领域时,它还主要局限在理论研究阶段。而今天,最有前景的项目已经进入到了生产通用量子计算机的领域内——这种计算机在几年前还和《星际迷航》一样科幻。

“在计算机出现之前,我不得不学习在打字机上打字,”ensinger 笑着说,“当计算机出现后,生活真正发生了改变。而量子计算将会是一个类似的革命。当这个革命到来时,专注的科学家、数学家和工程师已经为此工作了数十年。但这到底是什么呢?啊,这里有一个故事。”

我们现在可以看到很多组织都在竞相实现世界第一台大型的通用量子计算机。

时代周刊在其 2014 年的封面故事《The Infinity Machine》中对量子计算进行了美丽的描绘:它有望解决人类一些最复杂的问题。它得到了亚马逊创始人兼 CEO Jeff Bezos、NASA 和 CIA 的支持。每一台造价10,000,000 美元并且在零下 459 度下运行。而且没人知道它究竟是怎样工作的。

随着量子计算机从理论走向现实,其相关的领域也即将迎来爆发。我们将看到一些之前从未有人预想过的应用出现:从只有专家理解的科学实验进展到这项技术的怪异和奇妙的应用方式,它将超乎所有人的想象力。

而这一切都要归功于一只非常著名的猫。

量子的科学

想想这个:你正用来阅读这篇文章的设备将信息存储成了二进制数字的形式,其被称为比特(或位,bit),每一个比特的值要么是 1,要么就是 0。一个标准的拉丁字母字符由 8 个比特构成,其也被称为字节(byte)。带有 8 个比特(每一个是 1 或 0)的字节可以整体用来指代任何字母数字符号。事实上,计算机所处理的一切,不管多么复杂,都可以对应成相应的比特串。

而量子计算机所处理的信息则是以量子位(qubit,也称量子比特)的形式存储的。一个量子位可以是 1 或 0 或这两个状态的任何量子叠加。这就有点复杂了。

量子叠加(quantum superposition)是科学家搏斗了几十年的“量子怪诞性(quantum weirdness)”中的一个例子。简单来说,它的意思是一个量子物体在其被观测之前可以同时占据不止一个状态——就像“薛定谔的猫”这个著名的思想实验所指出的那样。

量子计算机并不使用晶体管来追踪二进制数据值,而是使用的量子物体。这也导致量子计算机的计算能力可以轻松超越传统计算机。任何给定的量子值集合都可以表示比传统的二进制数据远远更多的数据,因为它不需要将数据表示成 0 和 1 构成的数据串。

至少在理论上是这样。尽管研究者在量子计算机可能的工作方式上已经达成了一致,但事实证明制造有效的硬件仍然令人难以置信地艰难,这方面也出现了很多分歧。

从硬件提升到算法迭代,正在发生的量子计算革命

IBM 使用格型架构(lattice architecture)的 5 量子位处理器,其可以扩展成更大更强的量子计算机

现在,研究者已经能够造出使用了少量量子位的系统了。这些计算机可以很好地用来测试硬件配置,甚至运行算法,但正如时代周刊所指出的那样:它们贵得逆天(ungodly),而且只是研究者设想的最基本的版本。只有当数百个、数千个量子位可以共存时,量子系统才能实现其真正的潜力。

现在大家都在竞相实现世界上第一台大尺度通用量子计算机。这方面有两个强大的但不同的竞争者,目前还不清楚其中哪种想法会首先成为现实。

从理论到实践

当被问到量子计算的改变时,Hensinger 说:“这曾经是一个物理问题。而现在,它是一个工程问题。”尽管在量子计算机的可能工作方式上,我们已经有了清楚的理论理解。但要把它造出来却不是一件简单的事。

困难是多方面的,而且研究者在量子计算的基础应该是怎样上还没有达成一致。但是,这方面目前有两种并列的可能性。

一被称为“超导量子位(superconducting qubits)”。这种实现方式依赖于超冷的电路,而且当芯片实现更大规模的生产时可以提供制造优势。

从硬件提升到算法迭代,正在发生的量子计算革命

被困于与中心的方形金芯片相隔 40 毫米远的 2 个铍离子构成了这个“囚禁离子”量子计算机的核心

另一种方法是“囚禁离子(trapped ions)”,这种方法对温度等环境因素的要求较少,但却存在其它挑战,比如控制真空内许多单个的带电原子。

“超导量子位和囚禁离子都是非常精华的方法,”Hensinger 说,“它们都是非常好的实现,而且它们都能实现量子计算机。”他和他在苏塞克斯大学的团队选择了囚禁离子的方向——这是一个经过了非常慎重的考虑的决定。

“我密切调查了所有不同的实现和它们的进展,”Hensinger 解释说,“我试图了解它们的前景和它们的困难。”

他的调查表明囚禁离子的方法稍稍领先。囚禁离子与可能会摧毁量子效应的环境噪声很好地隔离,Hensinger 希望这个优势能让这种技术更易于实现,以及更易于被其他人理解。

从硬件提升到算法迭代,正在发生的量子计算革命

Winfried Hensinger(右侧)是位于英格兰的苏塞克斯量子技术中心的主管

由 Hensinger 及其苏塞克斯的团队所发明的方法基于单独受控的电压,其被用于实现量子门(quantum gates),进而构成量子电路(quantum circuit)。这种方法和过去用囚禁离子实现量子门的方法(使用激光)有很大的差别,极大地简化了构造大尺度量子计算机所需的工程。因此,这种方法仍然处在已经经过验证的方法的范围内,是通过模仿已有几十年历史的传统晶体管架构,而不是完全从头开始。

“有了这个概念,打造量子计算机就变得简单多了,”Hensinger 说,“这也是我对囚禁离子非常乐观的原因之一。”

苏塞克斯量子技术中心的这个团队选择囚禁离子还有另一个更为实际的原因:它可以在室温下工作。而超导量子位不行。

另一条路径

IBM 是在新兴的量子计算机领域角逐的最大型的公司之一,而其公司的体量也为其提供了优势。首先也最重要的是资金问题,对于一家价值上千亿美元的公司来说,做成一件事会比一个资源有限的学术组织要容易得多。

但资金并不是 IBM 唯一的竞争优势。在该公司存在的这 105 年中,许多伟大的头脑都曾在这里留下过印记——而且在一些情况下,他们的专业知识仍在发挥效力。该公司的人才和资源的组合优势让其选择了超导量子位作为其研究的基础。

IBM 的一个量子计算机的物理结构由5个配置在印制电路板中的量子位处理器构成。“它被安置在我们的稀释制冷机(dilution refrigerators)的底部。”IBM 实验量子计算(Experimental Quantum Computing)团队经理(Jerry Chow)说,“如果你看过它们的照片,你就知道它们看起来非常大,就像啤酒桶。”

在这个“大冰箱”中,控制线将微波信号传递到芯片上,并且引导输出信号穿过一系列放大器和无源微波器件。这些信息可以通过经典计算机进行解读,从而让该团队可以在冰箱之外读取该系统的量子位状态。

“我认为超导量子位真的非常吸引人,因为它们是可以微型化制造的(micro-fabricatable)。”

IBM 的这套包含冰箱和所有的配套电子器件的设备占据了超过 100 多平方英尺的空间。这就是该技术的缺点。它需要非常非常冷,而制冷设备不易小型化。

但既然可以选择囚禁离子,为什么还要这么麻烦?

“IBM 选择超导量子位的原因或多或少是因为历史的原因,”Chow 说,“我们有一个可以在使用约瑟夫森结(Josephson junction)的低温经典计算上工作的程序。”具备必需的专业知识的研究者的兴趣还在继续,而当用于量子计算的超导电路的思路出现时,该公司之前在低温研究上的成果就能帮助它旗开得胜。

原因还有更多。IBM 选择的技术与其在计算机芯片开发上的专业知识非常吻合。“我认为超导量子位真的非常吸引人,因为它们是可以微型化制造的(micro-fabricatable)。”Chow 解释说,“你可以在硅晶圆的计算机芯片上制造它们,也可以使用晶体管工艺那种标准的光刻技术来制作它们的模式,因此在这个意义上存在一种简单的规模化的方法。”

从硬件提升到算法迭代,正在发生的量子计算革命

Jerry Chow在IBM的T.J. Watson研究中心的量子计算研究实验室

这些相似之处并不代表着 IBM 的量子计算机和你的桌面计算机之间的相似之处——它们的技术是非常不同的。但其制造工艺中的特定元素与今天普遍使用的技术有些类似。

IBM 和苏塞克斯大学只是竞相实现大型通用量子计算机的最终目标的许多组织中的两个。但参与到该研究中的个人并不是在寻找什么值得吹嘘的资本。他们想要创造历史。

健康的竞争

对一个一直从事量子计算研究的科学家来说,最终的成品用的是囚禁离子还是超导量子位的问题没啥好讨论的。

“因为这就好像回到了 50 年前,当计算机大要占满整栋房子时,问你想要一台 Windows 个人电脑还是一台 Mac,”Hensinger 说到。“其实我只想要台量子计算机。”

囚禁离子和超导量子位是其中两个最为领先的概念。

该领域已经见证了无数个研究团队尽管在早期看到了希望但最终还是碰了壁。既然囚禁离子和超导量子位已经取得了领先,那么大尺度量子计算机的实现就能不必依赖一个特定的解决方案,这将对所有的相关研究团队都有好处。

Hensinger 指出,“不同的团队有不同的尝试,这才是一个健康的氛围。”虽然取得重大进步会带来成就感,但是所有的研究发现都将与广泛的科学社群共享,这样这整个领域才能前进。

此时,苏塞克斯大学的团队正在将几个不同的实验融进一个功能齐全的系统中,这个系统能访问少数量子位。这个项目有望在未来三到五年内完成。之后的目标就是一台使用许多量子位的大型量子计算机,这可能需要15到20年,IBM在该项目上也有一个类似的时间计划表。

这两个研究团队会在此期间作出更多的进步。“在接下来的这几年,你将会看到相干时间提升,也会看到完全可控的量子位数量增加,”Chow 解释道。

完美的量子计算还需要几年,因此你无法知晓它能应用的所有领域。但是全世界的专家都在研究量子算法来看看量子计算的硬件可能会是什么样子,最终的结果之多可能堪比这个硬件带来的影响。

量子“软件”

Krysta Svore 跟着 Andrew Wiles 学习数学的时候第一次接触了量子计算。Svore 说道,“Wiles 说这是计算的一种模型——一种有潜力的计算机——可以真正的打破 RSA 加密。我们称之为因子分解问题。”

从硬件提升到算法迭代,正在发生的量子计算革命

Krysta Svore 管理着微软的量子架构与计算团队

她解释说,“我主修数学,所以我非常着迷有这样一台计算机解决我们认为非常难得问题。”Svore 一头扎入其中,如今她在微软研究院管理着微软的量子架构与计算团队。她的团队专注于软件,但跨越了从特定量子算法的开发到软件架构与工具箱这样的基础设施。

但什么是量子算法?它是干嘛的?

“在最高层次上,量子算法类似于传统算法,是解决问题的一种处方(recipe),而这种处方的编写总是依据数学。”

人的大脑能够理解“寻找数字X的所有因子”这样的问题,但计算机不能。即使要求计算机解决最简单的等式也需要特定的二进制输入。然而二进制编码是低效的,所以在传统计算机上程序员使用 Python 或 C 这样的计算机语言缩减之间的差距。

代码语言已经取得了极大的进步,让大部分程序员能在不接触原二进制输入与输出的情况下工作。完整的算法经常用代码写进编程语言中,所以通过输入适当的 reference 就可使用这些算法。

如今,所有的编程语言都会将指令转译成二进制的机器代码。因为这些代码不是量子计算机能使用的,所以对编程一台量子计算机而言它们是无用的。这也就是Svore和她的团队要做的事,开发出一种有效的新语言。

量子软件得到关注是不可避免的,这样该领域才不会在硬件问题得到了解决之后碰壁。

Svore 说,“我们已经为量子计算特意开发了一个编程语言,我们的语言和工具叫做 LIQUI|>,它能让我们表达这些量子算法,然后进行一系列的优化、汇编,并将语言指令重新编写进特定设备的指令。”

微软有自己的平台,但全球的研究团队都在使用类似的流程。Dorit Aharonov 是希伯来大学的教授,她对量子硬件上运行的算法的描述类似于Svore的处方类比。

她解释说,“算法是计算机运行的一系列步骤,它要是高效的,需要尽可能用少的步骤完成这些任务。重点是量子算法要能比传统算法更快的完成特定的运算,因为它们有能力以指数的方式一次性探索众多可能。”

所以,如果算法是被用于运算的一系列步骤,量子算法就是专门设计的类似的一系列指令,用来掌握量子对象的计算能力。然而,在软件与硬件之间的关系中有另外一种复杂性,没有大规模的通用量子计算机,对研究量子算法的研究员而言很难保证他们的研究方向是正确的。

如今,要关注量子软件是一件非常紧急的事,这样该领域才不会在硬件问题得到了解决之后碰壁。在很多情况下,硬件和软件研究项目是要同步的。

量子代码

广义上来讲,量子算法是量子计算机硬件的软件,但这一类比也就只到此为止,在硬件仍不稳定的情况下,量子算法的开发可以鼓舞量子计算机的开发,反之亦然。

微软研究院在与哥本哈根大学、荷兰的代尔夫特大学、悉尼大学这样的世界级团队合作,所以它的硬件位于全世界多个学术实验室。Svore 说,“我们定期拜访这些实验室,整体上我们像是一个虚拟的团队,因为一些最好的资源是遍布全球的。”

和物理硬件一样,量子结构与计算团队有权限模拟传统系统上运行的量子计算。“这使得我们能够调试量子算法,测试并设计新的量子算法、量子回路和子程序。”Svore 说,“在真正的运行之前,我们想要在模拟中测试尽可能多的设备设计与算法设计。”

这种模拟测试为该团队提供了巨大的优势。Svore 和她的合作方在需要的时候能对算法进行测试与迭代,从而使得硬件团队看到量子计算机如何在实践中可被应用。但如同你所想的那样,在传统计算机上模拟量子硬件有所缺陷,Svore的团队使用的虚拟设备大约为32 GB RAM 模拟30量子位,每增减一个量子位,内存就要翻倍。

微软并不是唯一一个通过应用来测试其量子成果的大公司。今年早些时候,我们看到了IBM 的量子体验项目,这是一个允许学者和爱好者使用 5 量子位系统的在线接口。

从硬件提升到算法迭代,正在发生的量子计算革命

IBM 的量子体验让用户能够从一个基于云的平台那里运行算法和实验

IBM 的 Chow 说,“我们想要建立一个社区,进一步发展该领域。我们认为,随着我们使得这些量子处理器变得更大更功能性,在某个时刻,每个人都会有能力在新的实验室中进行量子体验。我们想要向人们展示这些处理器与系统的质量,也使得人们能在上面进行研究,加速量子计算研究领域的创新。”据 Chow 而言,用户已经使用IBM量子体验进行基础的量子力学测试、简单的错误检测协议、相比于模拟实验观察噪声水平。该项目提供了通向有效硬件的前所未有的道路,对希望进入该领域的学生而言这也是一个巨大的福利。

Chow 也说道,“从教育角度来说,这是一件大事。我们能够让处于量子计算课程与量子力学课程之间的学生接触量子体验,让他们进行更多的思考,在一个在线系统上验证课程上学习到的内容。”了解到该工具将服务各个水平的用户,IBM 团队在尽可能的把该系统变得更受欢迎。

Chow 解释说,“我们想要一个视觉上的吸引力,视觉震撼上的体验。这也是为什么我们做了一个 Composer 工具,我们想与音乐有个类比。”该工具是用来创造量子乐谱文件,看起来就像一个音乐谱子。五线谱对应计算机的五个量子位,用户能拖放不同的门和运算。

Chow 说,“在实际运行之前,你可以视觉体验量子项目看起来怎么样。”音乐演奏与量子计算机之间的对比在该领域是很普遍的,所以召唤更多的非专业人士进入该流程这是非常合适的一种方式。“就时间意义而言,这是一个很好的类比,也很好的类比了量子运算的顺序。所以,从此看来它真的像是一个音乐谱。”

如果你觉得自己没能力用到量子计算机,不要觉得自己被排除在外了。到2016年,世界上也只有极少比例的人能接触到量子计算机。如今用过这样系统的大部分人可能都是心惊胆战的。这也是Svore这样的工程师想要改变的事。设计出的 LIQUI|> 平台为该领域的人提供了与量子硬件更直接的交互方法;IBM 的量子体验向每个人开放硬件,无论用户对底层概念很熟悉,还是只是对该技术感兴趣。

从硬件提升到算法迭代,正在发生的量子计算革命

和 1950 年代早期的计算机一样,今天的量子计算机要占据一整个实验室

在硬件向着大规模通用系统持续发展的同时,这些工作也在帮助将更多天才的头脑吸纳到这个领域内。这些早期的软件开发工作希望构建一个有兴趣且有技能的程序员受众,让他们可以直接用上量子计算。

他们将会做出怎样的应用?这里有无穷的可能性。但为了了解这个领域目前的状态和未来的趋势,我们需要了解一下最早引发对量子计算的兴趣的算法。

匹兹堡卡耐基梅隆大学计算机科学学院的 Ryan O’Donnell 说,“Shor 的算法无疑是量子计算机中最有名、最惊人的应用。真的,它是该领域的主要灵感。”

只要有计算机,无论是人的还是电子的,都会要求找到给定数字的质因数。数字较小、易管理时这还不难,但数值越大,求质因数的过程越复杂。

“如果能建立一个全尺度的量子计算机,就意味着能破译所有的密码。”

O'Donnell 说,“我说的是极其大的数字,有着数千位的数字。计算机很容易算到两位万位数字的乘积,只需要几纳秒。但我们还没有高效的算法解决逆向难题,找到一个极大数字的因数。”

高效一词很关键。有一个算法能够求解大数字的因数,但不幸的是它还不足以说是高效。它求解 1 万位数值的因素所花费的时间,宇宙能完全演化一个周期。计算机即使再快 10 倍、100 倍也毫无用处,所以我们需要全新的计算机。

O’Donnell 说,“199年,Shor 展示了一个量子计算机算法,能够高效的求解大数字的因数。”从此之后,它就成为了该领域发展的一个标尺。

2001 年,IBM 使用一台7量子位的量子计算机求解了15的因子3和5。2012年,一个研究团队求解了21的因子。然后到了2014年,一种被称为极小化算法(minimization algorithm)的前沿方法成功求解了56,153的因子。

从硬件提升到算法迭代,正在发生的量子计算革命

卡耐基梅隆的 Ryan O’Donnell 说量子计算机能解决现有的每种密码学

O’Donnell 还说道,“除了现实意义,Shor的算法在数学上也很具美感。它启发的许多人寻求超快的量子算法解决其他在常规计算机上无法解决的计算任务。”

如同你能想象的,寻找这样的任务需要一定的抽象思维,以及对相关概念的极大掌握。为仍处于积极开发阶段的计算形式寻求应用不是一件小事。

O’Donnell 说,“在量子计算机建立起来之前,有人可能想知道做这些事的意义。这让我想到了Ada Lovelace和Babbage的Analytical Engine的故事。”这是出现在19世纪50年代的通用物理计算机的假设。“Ada Lovelace 在 Babbage 的计算机上设计了解决特定数学难题的著名算法,那是在我们能造出这种计算机的 100 年前。”

应用算法

很难明白过去一个量子算法的抽象性质以及这些概念是如何被应用来解决现实世界中的问题的,尤其是如果你不懂数学。幸运的是 Shor 的算法能展示量子计算机产生的结果,或者说后果。

从硬件提升到算法迭代,正在发生的量子计算革命

NASA的512位Vesuvius处理器被冷却到20 millikelvin

想像一下 Shor的算法正在一台传统计算机上运行。就像前面提到过的,10000位数的因式分解,要花上几千年才能算出来。“即便听上去有点入让人失望,但是有一点还是令人安慰的,”O’Donnell 说。“几乎所有的网络安全和密码都依赖于计算机能在一个确切的时间内做出 10000 位数的因式分解。”

如果真的能造出实体的量子计算机,那真的很难猜测它对密码安全意味着什么。“我们有可能造出一个全面的量子计算机,这就意味着计算机几乎能破解所有的密码。”O'Donnell 补充道。

当然,以目前该领域领先的研究来看,还远不能造出一个全面的量子计算机,所以黑客集团没有攻克所有密码不是因为他们不想,而是没那个能力。但是这也揭示了量子计算机出现后能产生的影响有多么深远。“目前还很安全,”O’Donnell 说。“但是国家安全局已经建议在不远的未来每个人都应该放弃基于因式分解的加密技术,正是因为量子计算机很有可能真的出现。”

“大部分人正在从针对量子技术寻找一个经典的加密技术来研究后量子密码学(post-quantum cryptography),”Svore 说道。“现在的研究焦点是找到比RSA更强大的东西。下一代会是什么?我们知道 RSA 在量子计算机面前不再有用——那其他的呢?”

它能完全模拟任何任意的系统。那才是最重要的事情。

量子硬件的另一个直接应用是进一步研究其他领域的科学。“它能够完全模拟任何任意的系统,”Winfried Hensinger 说。“那才是最重要的事情。”

传统系统的有限计算能力意味着一个模拟模型特定元素一定达不到它的最佳精确度。“它与量子计算机之间的差别是你不必再制造这些近似值了,”Hensinger 继续说到。“你只要模拟整个系统就好。”

这可以为那些依赖模拟来收集数据的研究项目带来影响深远的优势。确实如此,我们在这类使用上看到了富有意义的进展。7月,谷歌宣布它的量子设备已成功地计算了氢分子的电子结构。


原文发布时间: 2016-09-21 15:30
本文来自云栖社区合作伙伴镁客网,了解相关信息可以关注镁客网。
相关文章
|
1月前
|
存储 缓存 算法
【数据结构与算法】【小白也能学的数据结构与算法】递归 分治 迭代 动态规划 无从下手?一文通!!!
【数据结构与算法】【小白也能学的数据结构与算法】递归 分治 迭代 动态规划 无从下手?一文通!!!
|
1月前
|
算法
递归算法和迭代算法有什么不同
递归算法和迭代算法有什么不同
10 1
|
1月前
|
存储 算法 搜索推荐
【数据结构与算法】【初学者也能学的数据结构与算法】迭代算法专题
【数据结构与算法】【初学者也能学的数据结构与算法】迭代算法专题
|
4月前
|
机器学习/深度学习 分布式计算 并行计算
【MATLAB】数据拟合第11期-基于粒子群迭代的拟合算法
【MATLAB】数据拟合第11期-基于粒子群迭代的拟合算法
66 0
|
8月前
|
存储 算法 索引
算法训练Day15|理论基础● 递归遍历 ● 迭代遍历● 统一迭代
算法训练Day15|理论基础● 递归遍历 ● 迭代遍历● 统一迭代
|
9月前
|
算法
粒子群算法的迭代寻优算法(Matlab代码实现)
粒子群算法的迭代寻优算法(Matlab代码实现)
|
9月前
|
存储 编解码 算法
使用迭代最近点算法组合多个点云以重建三维场景
使用迭代最近点算法组合多个点云以重建三维场景。
193 0
|
9月前
|
算法 C语言
【C语言】带你玩转递归,迭代算法2
【C语言】带你玩转递归,迭代算法
65 0
|
9月前
|
算法 程序员 C语言
【C语言】带你玩转递归,迭代算法1
【C语言】带你玩转递归,迭代算法
41 0
|
10月前
|
算法
数值分析算法 MATLAB 实践 线性方程组 SOR迭代法
数值分析算法 MATLAB 实践 线性方程组 SOR迭代法
54 0