不再神秘的量子计算,用Python就能实现(视频+代码)

说到量子和量子计算,你会想到什么?薛定谔那只可能死了也可能没死的神秘的猫?(^._.^)ノhmmm...

今天的小视频从我们为什么要用到量子计算机谈起,不仅仅讲背景,还会首次带我们用Python实现一个简单的量子算法,还非常贴心地附有代码哟

万万没有想到吧,Python也可以进入量子计算的神秘世界!(仿佛打开了新世界的大门)


点击观看视频

时长9分钟

带有中文字幕

不再神秘的量子计算,用Python就能实现(视频+代码)

我们知道,普通计算机是靠电力运行的,它通过电线发送电流脉冲,向其他地方传送信息。计算机使用的晶体管有导通和不导通这两种状态,可以用1或0来表示,这就是“比特”的概念,每个比特代表0或者1,就像灯的开关一样。当这些1和0组合在一起,通过二进制编码规则可以表示任何数字或字母。

不再神秘的量子计算,用Python就能实现(视频+代码)

hmm...可是为什么看起来像一只鸭子?

1965年,Intel公司的创办人Gordon Moore预测说每平方英寸的集成电路上的晶体管的数目会每隔约18个月翻一倍,这就是摩尔定律

不再神秘的量子计算,用Python就能实现(视频+代码)

但是,摩尔定律是有“尽头”的:物理定律会约束我们没法把芯片做得更小。

这就是为什么大家如此关注量子计算。

量子这个词在物理中代表着相互作用中物理实体的最小单位,例如,一个光子是光的最小单位。量子物理学家研究原子世界以及其中的亚原子粒子。

不再神秘的量子计算,用Python就能实现(视频+代码)

正如费曼先生所言,物体在极微小的尺度下表现出的特性,与你直接接触过或者你见过的任何事物都不同。▼

不再神秘的量子计算,用Python就能实现(视频+代码)

像电子和光子一样的微小粒子能同时处于不同的态,但是在大一点的尺度下,它们表现出互斥性。它们可能同时出现在多个地方,或者同时展现出两种极性。我们无法观测到两种不同状态的叠加,因为一旦人们尝试去测量,叠加态就消失了。

量子计算机使用在接近绝对零度时具有磁悬特性的粒子,称为Q比特,除了能表示0或1,Q比特还可以同时表示两种状态。wow~⊙o⊙

除了状态叠加,还有纠缠的概念。如果系统中有不止一个Q比特,这些粒子之间并不是相互独立的,而是纠缠在一起。比特粒子可以相互影响,即使他们在空间中距离很远。

爱因斯坦称纠缠为远距离的幽灵行为。▼

不再神秘的量子计算,用Python就能实现(视频+代码)

没人知道这是如何发生的,但是我们依然可以利用这一叠加的概念将计算机从二进制表示中解放出来。一台运行在这些Q比特上的计算机,性能将超越传统计算机。

不再神秘的量子计算,用Python就能实现(视频+代码)

视频的最后,展示了一个用Python连接IBM量子API实现的量子算法——Deutsch-Jozsa算法。具体代码可以看这里:

https://github.com/llSourcell/quantum_computing

每次想到所谓“遥远的相似性”,都能感觉到自己和宇宙万物的微妙关联。在远方我们所不知道的角落里,也许会有一个粒子在和我们的粒子相纠缠,自己这边发生变化,对方也随之改变。

如果我们能看到那个微观世界,距离遥远的粒子在无言地交流,那将是怎样的诗意与恢弘?只可惜,一旦被干涉,纠缠态将不复存在。

如果能看到粒子的世界,你会对那样的景象厌倦吗?


原文发布时间为:2018-01-06

本文作者:文摘菌

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“大数据文摘”微信公众号

上一篇:甲骨文得理不饶人 谷歌侵权 Java 案升级


下一篇:图解 Promise 实现原理(一)—— 基础实现