在外行人看来,IBM的在线量子体验工具所构建的线路,有点像是计算机科学入门课程。计算的基石——逻辑门,被排列在数字画布上,将输入转化为输出。

但因为这是量子线路,所以这些门修改的不是通常的二进制0或1位,而是量子计算的基本单位——量子比特。与二进制位不同,量子比特可以作为0和1的叠加态存在,只有在测量时,才会确定究竟是0还是1。

除此之外,量子计算还利用“纠缠”特性,一个量子比特状态的改变,也会为另一个量子比特的状态带来转换,即便这两个量子比特相距甚远。

《Nature》|  如何开始量子计算-量子客
图1|态叠加原理(来源:AI Magazine)

这些特性使得量子计算机能够比经典计算机更快地解决特定问题。例如,化学家们可以利用量子计算机进行模拟,加速鉴定新催化剂。

然而,这种前景依旧遥远。即使是今天最快的量子计算机也只有不到100个量子比特,而且还会发生随机错误。

2019年,谷歌展示了其54量子比特量子计算机可以在几分钟内解决经典计算机1万年才能解决的问题,但这种“量子优势”应用极其狭隘。加拿大达尔豪斯大学的数学家和量子计算专家Peter Selinger估计,量子计算机需要数千个量子比特,才能有效地模拟化学系统

日本东京庆应义塾大学的量子计算研究人员Sara Metwalli表示:“现阶段的量子计算机就如同1980年代末的经典计算一样作为参考,IBM公司在1981年推出了世界上首台个人电脑),而现阶段所做的大部分工作,也是为了证明量子在未来可能会解决一些问题。”

 

1. 快速发展的领域

尽管如此,进展还是很快。IBM希望在2023年之前造出一台1000量子比特的计算机,而量子计算的拥趸也认为该领域的发展已经成熟。对于好奇却又无从下手的人们来说,越来越多在线教程、编程语言和模拟器的出现,使得现在涉足量子计算比之前容易许多。

众所周知经典计算机背后的数字逻辑:例如,1^0=0。但量子计算机更为灵活,研究人员需掌握如何用数学方式来表达量子比特的状态,以便理解它们的行为。微软雷德蒙德研究院的量子计算部门主管Krysta Svore表示:“量子计算本质上就是矩阵向量乘法(matrix vector multiplication),它是引擎盖下的线性代数。

一些在线教程会从基础知识开始梳理。位于旧金山的物理学家Michael Nielsen和软件工程师Andy Matuschak制作了一个名为“好奇者的量子计算”(Quantum Computing for the Very Curious)的导览资源[2]。而IBM也为其量子语言Qiskit开发了一款交互式工具包[3],可以在计算笔记本Jupyter Notebook上运行。

《Nature》|  如何开始量子计算-量子客
图2|好奇者的量子计算(来源:Quantum Country)

IBM爱曼登研究中心的量子应用、算法与理论团队高级经理Jeannette Garcia表示,科学家们还需要理解量子线路,这些线路看起来像五线谱,从左到右运行,直观地展示了量子比特在被测量以揭示其状态之前,是如何通过逻辑门转换的。

IBM允许用户在浏览器中,拖拽逻辑门来创造自己的专属线路,并在真正的量子计算机上远程运行该线路。

 

2. 量子语言

在这之后,研究人员可以通过专用软件框架和编程语言来模拟、执行并探索他们自己设计的量子线路。其中,不再赘述量子编程语言,2020年11月16日《自然》杂志中的一篇文章中罗列了几种较为常见的语言[4],感兴趣可以延伸阅读。

微软、IBM和谷歌分别开发了Q#、Qiskit和Cirq,这些工具大量借鉴了Python编程语言,并构建了一个用户友好的开发环境,有充足的文档帮助程序员入门。例如,微软创建了一个完整的量子开发包(QDK),其中包含代码库、调试器和资源评估工具,资源评估工具可以估计在量子计算机上运行一个算法需要多少量子比特。

参与其中的不仅仅是科技巨头,位于美国加州伯克利的Rigetti计算公司有一台31量子比特的量子计算机,他们还发布了量子软件开发包工具Forest[5],其中包括一个名为pyQuil的Python库。而位于英国的剑桥量子计算公司也发布了tket,以及相关的pytket库[6]。你还可以选择Silq[7],一款苏黎世联邦理工学院(ETH)的研究小组于去年发布的语言。

《Nature》|  如何开始量子计算-量子客
图3|Rigetti的量子计算机(来源:Towards Data Science)

真正的量子计算机主要掌握在私人技术公司手中,基于条款即可获得其硬件使用权。IBM免费提供一台5量子比特量子计算的使用权,但想要使用更强大的设备,研究机构需要成为其量子网络(IBM Quantum Network)的合作方[8]。IBM量子网络是一个由财富美国500强企业、学术机构、初创公司和国家研究实验室与IBM合作推动量子计算发展的社区。

IBM量子应用、算法与理论团队高级经理Jeannette Garcia表示,尽管IBM没有公开定价,但它为那些很有研究想法并想付诸实践的研究人员提供了“使用/通行奖”(Access Awards)。比如在2020年11月,一组来自芝加哥大学的研究人员,利用53个量子比特的IBM Hummingbird量子处理器,制造出了一种称为激子凝聚(exciton condensate)的量子材料[10]。

微软则是通过其Azure量子平台[11]提供对其他公司量子计算机的访问。微软雷德蒙德研究院的量子计算部门主管Krysta Svore表示,平台目前正处于免费的“有限预览”阶段,研究机构可以申请成为优先使用者。

谷歌并不售卖其量子计算机的使用权限,但负责其量子计算合作伙伴关系和项目团队的Markus Hoffmann表示,欢迎任何对可以部署在谷歌硬件上的实验有强烈建议的科学家与谷歌取得联系,根据该领域的研究影响力,谷歌会找到实现这一实验的途径。

英国布里斯托大学的量子计算研究人员Ashley Montanaro,通过亚马逊云服务(AWS)运行了他的量子计算程序,亚马逊云服务平台也可以接入其他公司的量子设备。但他补充说,测试一个量子线路的成本约为1美元,而由于研究人员往往需要测试数千个量子线路,所以成本可能会很大。

 

3. 从模拟入手

研究人员还可以用模拟器在经典计算机上模拟量子计算机从而进行相关实验。例如,微软的量子开发包中有一个内置的模拟器,可以在笔记本电脑上模拟30个量子比特的设备。

谷歌量子人工智能研究团队的欧洲量子算法及应用负责人Thomas O’Brien说:“我建议所有人都从模拟器上开始量子计算。模拟器的可预测性要高得多,能让使用者真正体验到量子态。而测量一台真正量子计算机的状态只会导致它坍缩,要想排除故障却十分困难。且杂散的噪声或磁场很容易将量子比特击溃。

《Nature》|  如何开始量子计算-量子客
图4|量子模拟器示例(来源:Algorithmic Assertions)

英国布里斯托大学的量子计算研究人员Ashley Montanaro建议,如果可能的话,科学家们还是应在真正的量子计算机上运行他们的程序,以适应它们嘈杂的、容易出错的行为。因为这种环境是模拟器无法模拟的。

随着研究的进展以及量子设备的改进,这种麻烦将会减少。但即便如此,量子计算机也不太可能取代经典计算机。相反,将把它们嵌入到一个更大的经典架构中,发挥其优势。

研究人员仍需找出这些问题的症结所在,与此同时,研究从未停止。于2019年出版的《量子计算机编程》(Programming Quantum Computers)一书的合著者Eric Johnston表示:“问题的确需要解决,而解决方式就是不断探索。如果你是一个了解一些经典计算的科学家,那么量子计算领域的未知将使你趋之若鹜。

 

 

参考链接:

[1]https://www.nature.com/articles/d41586-021-00533-x

[2]https://quantum.country/qcvc

[3]https://qiskit.org/textbook/what-is-quantum.html

[4]https://www.nature.com/articles/s42254-020-00245-7

[5]https://pyquil-docs.rigetti.com/en/stable/

[6]https://cqcl.github.io/pytket/build/html/index.html

[7]https://silq.ethz.ch/

[8]https://www.ibm.com/quantum-computing/ibm-q-network

[9]https://www.ibm.com/quantum-computing/researchers-program/

[10]https://journals.aps.org/prresearch/abstract/10.1103/PhysRevResearch.2.043205

[11]https://azure.microsoft.com/en-us/services/quantum/

 

声明:此文出于传递高质量信息之目的,若来源标注错误或侵权,请作者持权属证明与我们联系,我们将及时更正、删除,所有图片的版权归属所引用组织机构,此处仅引用,原创文章转载需授权。

|编  辑:王嘉雯      |审  校:丁 艳