物理不好,如何给量子计算机编程?

量子计算是如今发展最快的科技之一。许多公司和研究实验室都在尽可能快地向市场发布功能强大的量子硬件。在该领域取得的每一点进步都意义重大。当前还没有绝对完美的量子计算机有能力运行可靠的算法,例如Shor算法和Grover算法等。然而,现在的量子机器正在迅速的进步。IBM公司表明,在下一个十…

量子计算是如今发展最快的科技之一。许多公司和研究实验室都在尽可能快地向市场发布功能强大的量子硬件。在该领域取得的每一点进步都意义重大。

当前还没有绝对完美的量子计算机有能力运行可靠的算法,例如 Shor 算法和 Grover 算法等。然而,现在的量子机器正在迅速的进步。IBM 公司表明,在下一个十年,量子计算机将具备不可否认的优势,足以解决很多传统计算机无法解决的问题。

在 2019 年,IBM 提出了一种度量标准,叫做 Quantum Volume(QV)。该标准是从硬件的角度去衡量一个量子计算机的能力和有效性。QV 是一个基于不同因子计算所得的数值,例如计算机中量子位的数值、它们的连接性以及错误率的度量等。如果我们需要在实际的硬件上运行真实世界规模的算法,我们就需要一个很大的 QV 值。到目前为止,IBM 公司拥有 QV 值最大(32)的设备。

从软件的角度来说,一些研究人员预测,未来十年市场对于量子编程人员的需求将会呈指数级增长。例如 Google、IBM 和 Microsoft 等公司将会投入大量的财力和巨大的努力去培养下一代的量子研究人员和编程人员。

事实上,为了建立一个量子计算机,你不需要在物理和数学领域具备很高的学位。在我看来,你只需要具备很好的想象力即可。

传统编程 vs. 量子编程

图片来自作者(使用 Canva 绘制)

和传统计算机相比,量子计算机的运行基于一种完全不同的模式。用一种简单的思路来理解就是:在传统计算机中,我们使用的是 0 和 1 两个数字。而在量子计算机中,在原有 0 和 1 的基础上,还增加了一个”可能为 0 或者 1“的状态,也被称作”叠加态”(superposition)。所有的量子算法都是利用了这种“可能”的状态来表现量子计算机的强大能力。如今,量子计算机的编程有点像 1950 年代时我们对传统计算机的编程——虽然采用了类似于汇编语言的风格,但是具有更好的语法。

汇编语言并不简单,所以这似乎听上去很有挑战性。但实际情况是,当你了解了基本 ( https://towardsdatascience.com/take-your-first-step-into-the-quantum-realm-a13e99fab886 ) 的定义,以及量子位和叠加态的意义 ( https://medium.com/digital-diplomacy/the-three-pillars-of-quantum-computing-d80ff5f50ec7 ) 后,你就可以开始为量子计算机编程了。这也就是说,实际量子代码的编写并不需要对于物理有很深层次的掌握。

图片来自作者(使用 Canva 绘制)

为量子计算机编程的方法有哪些

无论是公司还是研究实验室都在致力于开发一种高级的量子编程语言,使程序员可以不需要非常熟悉量子物理学和量子力学就能够使用。事实上,现如今存在的量子编程语言和在传统编程语言基础上建立的量子编程库的数量可能比你想象的还要多。

因此,你的选择要么是在量子汇编的级别上编程,要么是使用一个基于传统编程语言的、用于量子计算的库,或者也可以使用一个纯粹的量子编程语言。我在下图中列举了在每一个类别中最广为人知和使用最广的选择。

图片来自作者(使用 Canva 绘制)

汇编级别的量子编程

  • QX Simulator( http://quantum-studio.net/#quick_start ):该模拟器用于模拟一般量子计算机的行为。它允许程序员去设计和模拟运行他们的量子算法。为了用 QX Simulator 实现一个算法,程序员需要从量子汇编语言(quantum assembly language, QASM, https://arxiv.org/pdf/1707.03429.pdf )的角度描述算法的流程。

具有量子编程库的传统编程语言

使用传统编程语言去写量子代码已经有很多的选择。我将会按照受欢迎的程度进行排序。

  • Qiskit( https://qiskit.org/ ):Qiskit (Quantum Information Science Kit) 是一个诞生于 2017 年的 Python 库,由 IBM Research 负责开发和维护。它也是最受欢迎和使用最广泛的量子编程库。Qiskit 很受欢迎的其中一个原因是它具有非常活跃和繁荣的社区。并且你还可以在 IBM 的真实的量子计算机上运行你用 Python 写的代码。
  • Cirq( https://github.com/quantumlib/Cirq ):这是一个由 Google 的开发者们开发的非官方的 Python 库,用于在 Google 的量子计算机上编写和运行测试。你可以使用 Cirq 来编写和模拟运行量子算法。不过 Google 并不允许任何人在他们的设备上运行代码。
  • Pyquil( https://github.com/rigetti/pyquil ):这是一个由 Rigetti 编写的 Python 库,可以在使用量子指令语言 Quil(同样由 Rigetti 开发, https://arxiv.org/abs/1608.03355 )的 Rigetti 机器上编写和实现量子算法。Quil 在语法上类似于 QASM。
  • Scaffold( https://www.cs.princeton.edu/research/techreps/TR-934-12 ):Scaffold 是一个从 Python 迁移到 C++ 的库,可以用于在传统机器上编写和运行量子算法。
  • Strange( https://github.com/redfx-quantum/strange ):这是一个可以用于编写和运行量子算法的 Java API。通过使用传统的 Java 分布式渠道使得 Strange 可以是分布式的,并且通过利用 Maven 或者 Gradle 可以使得它用起来非常简单。

事实上还有一些其他的基于传统编程语言的量子编程库存在,但是他们中的大多数已经过时或者在某一时刻已经停止了开发,这里就不再赘述。

量子编程语言

为了摒弃传统编程语言并建立独立的量子编程语言,研究人员已经开发出了在语法上和著名的传统语言相类似的量子编程语言。这也简化了从传统编程到量子编程的转换过程。这些语言包括:

  • Q#( https://docs.microsoft.com/en-us/quantum/overview/what-is-qsharp-and-qdk?view=qsharp-preview ):这是一个由 Microsoft 开发的用于编写和执行量子代码的量子编程语言。它是 Microsoft’s Quantum Development Kit(QDK) 的一部分。QDK 包括一个分离的模拟器和电路优化器。
  • Quipper( https://www.mathstat.dal.ca/~selinger/quipper/ ):这是一个支持函数式量子编程的嵌入式量子编程语言,同时允许程序员采用比汇编语言更高级的方式去描述他们的算法。Quipper 也包括七个已经实现的、基于当前理论研究的量子算法。
  • Sliq( https://silq.ethz.ch/ ):这是最新的量子编程语言,由 ETH Zürich 的研究员们开发并于今年早些时候发布。Sliq 可以提供量子算法的更高级别表征,且其在语法上类似 Python 和 C++。

如何开始

有了这么多选择,你可能会对于应该选择从哪开始你的量子旅程感到不知所措。我的建议是:从一个基于你曾经使用过的传统编程语言编写的量子编程库着手,慢慢适应了量子逻辑和思考方法后,再转到一个纯粹的量子编程语言上。

只有在我想深入了解量子计算机的工作原理和门之间的动态关系时,我才会考虑使用一个低级别的语言(例如 QX Simulator)。

我是从 Qiskit 入手的,而且今天仍然用得很多——不仅因为它是用 Python 写的,还因为我可以在一个真实的量子计算机上运行我的代码。虽然目前为止结果依然很糟,但可以在真实的量子计算机上运行你的代码仍然是非常有趣的事。

为了方便说明,我们使用之前提到的九种方法来实现相同的量子代码。你可以分析实现一个电路的不同方法,来选择你觉得有趣的那一个入手。

在当前的很多量子编程里,你需要搭建一个使用量子门(等同于经典门)的电路来应用你的算法。让我们来尝试实现一个可以在两个量子位之间创造叠加态的量子回路。为了完成这个任务,你需要了解用于创建叠加态的“魔法门”,称为 Hadamard Gate。输入 0 或者 1,它将会返回一个 0 和 1 的对等叠加态。

  1. 使用 QX Simulator:

图片来自作者(使用 Canva 绘制)

  1. 使用基于传统编程语言的库

图片来自作者(使用 Canva 绘制)

  1. 使用纯粹的量子编程语言:

图片来自作者(使用 Canva 绘制)

结论

我是一个喜欢学习和探索新事物的人,但我同时也明白,我们需要在一个时间点把自身的能量专注学习一件事才能表现得更好。

这也是我建议你可以从基于传统编程语言的量子编程库着手的原因。这样,你只需要关注量子的思维方式,而不需要同时学习一种特定的编程语言。当你适应了量子编程的逻辑后,再去关注一个量子编程语言,就会容易得多。在这之后,如果你还想进一步拓展你的知识,就可以继续往下走去探索 QASM 了。

版权声明:本文内容由网友提供,该文观点仅代表作者本人。本站(http://www.cangchou.com/)仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 3933150@qq.com 举报,一经查实,本站将立刻删除。

本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至907991599@qq.com 举报,一经查实,本站立即删除。本文作者:小斋,如若转载,请注明出处:http://www.diehen.com/160303.html
(0)
小斋的头像小斋
上一篇 2023年11月11日
下一篇 2023年11月11日

相关推荐

  • 玻璃胶怎么洗掉 五个小妙招帮你忙

    如果在装修房子的过程中使用了玻璃胶,那么要在房子装修完毕后去除它。玻璃胶是一种粘性很强的粘合剂,南方有时候称它为水玻璃,正因为它粘性强,经常会黏到衣服、物体上,去除它往往给人带来很…

    2024年8月11日
  • 音序是什么?(什么叫音序)

    音序是什么?(什么叫音序)  音序,顾名思义,就是以汉语拼音为顺序。在汉语拼音中,音节第一个字母的大写通常被叫做音序,音序通常用于字典上的字词排列,或者名字的排列。音序的顺序为:A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z。其中v不是音序,因…

    投稿 2023年12月4日
  • 武汉地铁优惠活动有哪些,2022武汉地铁乘车优惠最新活动

    这周武汉乘地铁出行有优惠了,最低1分钱可乘车,优惠活动方案多多,支付宝,云闪付等平台都有,下面小编就带来2022武汉地铁乘车优惠最新活动。2022武汉地铁乘车优惠最新活动支付宝活动对象使用支付宝乘车码在武汉地铁扫码过闸的用户注意注意:需将支付宝版本升级为10.2.64及以…

    投稿 2023年12月16日
  • 上课说话检讨书1000字 上课说话检讨书1000字高中

    摘要1、上课说话检讨书尊敬的老师:好好学习,遵守校纪校规是我们每个学生应该做的,也是中华民族的优良传统美德,可是我作为当代的学生却没有好好的把它延续下来。你在找上课说话检讨书1000字吗?这里小编给你整理好了一些,接下来我们一起来看看吧。1、上课说话检讨书尊敬的老师:好好学习,…

    投稿 2023年11月30日
  • 千万不要用空气炸锅做鸡蛋,会引起热油的飞溅烫伤的危险优质

      空气炸锅的工作原理是通过高速循环的热风来烹饪食物,而鸡蛋在煮熟的过程中会产生蒸汽。当蒸汽无法及时释放时,压力会逐渐增加,最终导致鸡蛋爆炸。空气炸锅内部的密封性相对较好,无法迅速…

    2023年11月4日
  • gic珠宝鉴定证书,如何获取及其重要性

    本文目录一览如何获取GIC珠宝鉴定证书?GIC珠宝鉴定证书的重要性总结GIC珠宝鉴定证书是一种由国际珠宝鉴定机构(GIC)颁发的证书,用于确认珠宝的真实性、品质和价值。它是一种权威的证明,可以帮助消费者辨别珠宝的真伪,保护消费者的权益。如何获取GIC珠宝鉴定…

    投稿 2023年10月20日
  • 周记500字 周记500字周末趣事

    摘要1、周记作文你是否想象过这样的美妙场景:清晨时分,窗外的几缕阳光透过玻璃,洒满了整个房间,一切都充盈着鲜活的生命力:树儿青翠欲滴,鸟儿也唱出婉转的曲调你在找周记500字吗?这里小编给你整理好了一些,接下来我们一起来看看吧。1、周记作文你是否想象过这样的美妙场景:清晨时分,窗…

    投稿 2023年11月30日
  • 37.4度算发烧吗大人(成人37.4算发烧吗)

    37.4度算发烧吗大人(成人37.4算发烧吗) 正常体温在不同人群中可能有些许变化,但通常认为成年人的正常体温范围为36.1摄氏度(97.0华氏度)到37.2摄氏度(98.9华氏度…

    投稿 2024年3月14日
  • 旭信防爆智能手机(防爆手机的工作原理)

    旭信防爆智能手机(防爆手机的工作原理)旭信防爆智能手机价格和购买渠道!防爆手机的工作原理!一、防爆手机工作原理防爆手机的工作原理是通过采用多种技术手段来确保手机在使用时的安全性和稳定性,从而有效避免爆炸等危险情况的发生。具体来说,防爆手机通常采用以下技术:特殊材料:防爆手机通常使用防爆塑…

    投稿 2023年12月4日
  • 艺考费用大概多少钱啊(考艺校要多少钱)

    小伙伴们,你们好,若是你对艺考费用大概多少钱啊,以及艺考播音费用是多少钱不是很清楚,今天小编给大家科普一下具体的知识。希望可以帮助到各位,下面就来解答关于艺考费用大概多少钱啊的问题,下面我们就来开始吧!文章目录1、艺考费用大概是多少2、艺考费用大概多少啊3、高中艺考费用4、艺…

    2023年12月17日

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注