Quntum Computer
一、量子计算机导入
这是一双手,这是大自然送给你最神奇的礼物,你用它来写字、吃饭、打游戏,除此之外,它还有一个妙不可言的功能,计算。是的,手是你人生中的第一个计算器,到小时候,你妈妈问你 3 + 6 等于多少手,迅速帮你找到了答案,但接下来妈妈的问题可能迅速的击快了你的自信 5 + 6 呢。
好在你迅速升级了你的计算设备,把脚趾头也一起用上了,你会发现随着我们要解决的计算问题越复杂,我们就越需要更高级的计算工具。于是我们发明了算盘、计算、尺差分机以及迄今为止最强大的计算工具电子计算机。自从有了电子计算机,我们处理信息的能力直线上升,我们不仅可以计算数学难题,甚至可以逼真的模拟核爆炸的过程。但是随着人类所面临的问题越来越复杂,电子计算机最终也开始力不从心了,现在是量子计算机登场的时候了。
二、什么是量子计算机
那么量子计算机到底是什么?要了解量子计算机,我们首先要了解什么是量子。我们可以简单粗暴地认为,量子计微观。在微观的世界里有很多我们看起来很鬼魅的现象,量子力学就是研究这些现象的,而其中和量子计算最相关的一个特性叫做量子叠加。为了解释量子叠加,我们先来举一个生动但是却不太精确的比喻。想象你有一颗硬币,它有两个面,一个正面,一个反面。现在如果我们把这枚硬币旋转起来,那么它到底是哪一面朝上呢?是的,量子,就有点像这枚旋转的硬币,在量子的世界里,一颗电子可能既是上旋又是下旋,一颗光子可能同时穿过两条光缝。这种同时拥有两种特性的奇怪现象,我们称之为量子的叠加肽。当然,旋转的硬币的比喻其实不太恰当,它可能会让你觉得叠加肽没什么大不了的,但叠加肽的实质其实是两种状态同时存在,同时发生作用。所以它其实不是旋转的硬币,更像是一枚硬币,既是正面朝上,又是反面朝上。
在宏观的世界里,你没有办法找到这样一枚硬币量子的叠加态很神奇,却不可观测,但因为当我们试图观测的时候,它的叠加态就会消失,就如同硬币本来一直在自己转,但是我们看了他一眼,他就马上停下来,倒在地上,成为一面正面朝上或者反面朝上的硬币。这个叠加太因观测而消失的现象叫做瘫缩。是的,这听起来像变傻小子呢。一颗硬币,如果我们不去看它,它就会一直旋转,但我们看了它一眼,它就会倒在地上。难道硬币知道我们看了他一眼。
事实也未在其中多看了你一眼。
但量子这东西就是这么傲娇,你不许看我,我就探索给你看。我知道你肯定会觉得量子力学的这些说法有点像胡编乱造,不光你不信,就连爱因斯坦都不信。其实量子力学的科学家们也觉得自己的这些解释有点敷衍,但是这些发现过去了有 100 年了,不管你信不信,事实就是如此,量子的叠加态无法观测,带有一个概率。就像我们知道一枚旋转的硬币停下来时有 50% 的概率会正面朝上, 50% 的概率会反面朝上一样,每一个量子探索的概率都可能是不一样的。而更妙的事情在于我们可以使用某一些方法在叠加态下改变这个概率,这就够了,利用这些奇妙的特性,我们就可以制造出吊打电子计算机的量子计算机了。
计算机源头及其弊端
为什么会这样呢?我们还要转过头从电子计算机的计算员里说起,电子计算机虽然带着电子二字,但实现计算的功能和电子没有一毛钱的关系。考虑到半导体的原理,可能的确有一毛钱的关系吧。真正起作用的是电路,我们知道所有电路都可以有开和关这两个状态,就像灯泡,比如我现在给你一个灯泡,让你表示两个数字,你怎么表示呢?聪明的你可能马上就想到了,把灯泡关了表示0,灯泡打开表示一同理。如果给你两个灯泡,你就可以表示 4 个数字,全面表示零,一关一开表示1,一开一关表示2,全开表示3,同理下去, 3 个灯泡能表示 8 个数字, 4 个灯泡能表示 16 个数字, n 个灯泡能表示 2 的 n 次方的数字。现在我们把灯泡的量和面换成一和0,你发现了什么?这就是二进制,电子计算机的存储和计算就是以二进制为基础的。从上面我们已经知道二进制可以表示所有的数字,而如果我们在规定某一个特定的数字代表某一个特定的字母,只需要 26 个数字,我们就可以表示所有的英文文字了。什么?你说汉字?没问题,多加半百个数字就差不多了。除了数字和文字,我们还可以把声音、图像、视频通通的用数字表示声音,就是不同数字代表的音高。图像就是把不同颜色的像素用数字来表示,比如 50 度灰,不对不对,这段掐掉。而视频就是把图像连起来,看到了吗?只要你的灯泡足够多,你就能记录整个世界。虽然在实际的存储器里,存储单元并不是灯泡,但原理本质上是一样的。
说完了存储,我们再说一下计算,一旦用到二进制,你就会发现整个计算规则都变得非常简单,因为只有 0 和一,所以计算规则也只有 3 个, 0 + 0 = 01, + 0 = 11 + 1 = 0,同时向高位进一只需要两个手指头。不对,是只需要设计非常简单的电路就能实现这些规则。比如并联电路,两个电路全关就没有电流,这就是 0 + 0 = 0。两个电路开一个就有电流,这就是 1 + 0 = 1,看了吗?几个简单的电路实现几种不同的逻辑门,我们就可以搞定加法运算了。那其他的运算形式无非就是加法运算的升级版,搞定了加法就搞定了一切计算,这就是电子计算机的存储和计算的本质。但是因为一个比特在某一个时间里只能存储一个数据,要么是0,要么是一,这就导致了一个问题。
电子计算机的运算本质上是一维的,或者叫一根筋,只能算完了一个再算下一个。比如现在我们把 0- 15 这 16 个数字打乱顺序,要计算机在这里面找到10。对于这个问题我们人作为三维生物看一眼就能搞定,但电子计算机这种一根筋的机器是怎么解决的呢?那只能一个一个来了,先把第一个数字取出来。你是 10 吗?噢,不是,回去吧。第二个数字你是 10 吗?噢,你不是,回去吧?直到找到 10 为止。如果这台计算机比较倒霉,他可能需要找 16 次才能找到10,平均也需要 8 次。好在电子计算机信奉天下武功,唯快不破,一般的计算都能瞬间完成,所以你也觉不出什么。
但是一段数字很大,电子计算机就要疯掉了。比如在 27 六次方种可能性中找到一个正确数字。这个问题对于量子计算机来说就是SOEASY,与电子计算机只是控制电路来进行运算,不同,量子计算机那可是直接利用量子来进行计算的,听着就不明觉厉,是不是通过利用量子的神秘特性,我们可以实现很多量子门,这些量子门不仅可以模拟经典计算中的几种逻辑门,还可以有更多的其他转换功能。
量子计算机特异功能
这意味着量子计算不仅能够包办电子计算机的传统异能,而且拥有了更多开挂的机会。比如 x 门可以将量子状态翻转, h 门可以将经典态转为量子态。所以量子计算超出经典计算的其实不是存储能力更强,计算的速度更快,而是基于量子特性的量子门提供了更高的计算维度,这是只有一维的经典计算机完全无法想象的。
看到这里你可能真的不明觉厉了,所以我们回到刚才的例子,看看量子计算机如何解决。首先我们回忆一下刚才提到的量子叠加。因为量子具有叠加态,因此一个量子比特可以同时存储两种状态,一个代表零,一个代表一,所以 4 个量子比特就可以存储 16 个数字。首先把 4 个量子比特传入,通过 h 门变成叠加态,然后我们通过一个特别设计的比较器识别出正确答案。但不幸的是,此时量子比特处于叠加态,我们无法知道比较器标中了哪一个数据。如果我们想知道答案,就必须进行观测。如果我们进行观测,量子就探索给你看,但是此时 16 个数字的探缩概率完全相同,也就是说只有 1/ 16 的概率会探缩成正确答案,咱这演示咋,咋这么不配合呢?所以我们只能邀请大名鼎鼎的 Grover 算法登场了,这个算法的具体细节就不说了,大家知道这个算法可以通过一定的设计把某一个概率放大就可以了。
是的,经过四次放大,最后探索成正确答案的概率就会达到96%,这个时候我们进行观测,有 96% 的可能性我们会看到要找的正确答案。那如果万一我们遇到了那 4% 怎么办呢?那就再来一次呗。 one more chance,没有什么是一次烤串,不一次火锅,不是一次量子计算解决不了的。在这个过程中,我们看到所有的量子比特是携带着所有的可能性并行通过比较器的。因此所有的状态其实只需要一次运算就可以得到结果,就像我们人丑一眼就能找到 11 样。只不过正确的答案隐藏在平均概率里,我们无法观测识别。为了能够识别它,我们必须使用 Grover 算法将正确的答案的概率放大,以确保在观测时正确答案能大概率的出现。我们的几次计算其实都只是为了放大概率,如果到这里你还觉得难以理解,那么我们不妨举一个生动的例子。
假如你有一个特殊的骰子,这个骰子有 16 个面,每个面上都有一个数字,但是这个数字被遮住了,你需要找到写着石的那个面。电子计算机和量子计算机如何解决这个问题呢?电子计算机这位浓眉大眼的憨憨直接把骰子拿过来,找到一个面,揭下贴纸看不是10,再翻下一个面,再揭下贴纸看不是10,直到看到 10 为止。而量子计算机就是赌圣,它有特异功能,能够在数字被遮住的情况下,同时感应到 16 个面,迅速的找到石,还能让贴着石的那面变得非常重,然后他把色子扔到桌上, 96% 的概率贴着石的那一面会朝下,然后他拿过骰子把朝下的那一面揭下来,答案揭晓。
是的,这就是量子搜索的神奇计算过程,并行计算识别将正确答案的概率放大,观测,一切就跃然纸上,很像答案自己投案自首的感觉。说完量子搜索再说量子模拟,在前沿科学研究中经常需要做到量子模拟,就像我们前面提到的,每个量子态坍缩都是一定的概率,一个量子有两种可能,两个量子就会出现 4 种可能,随着量子数的增多,可能性以 2 的 n 次方增长。除此之外,量子之间还有相互的作用,所以对量子模型的模拟,量子数一多就要了电子计算机的命了。比如高斯波色取样问题,用来新最快的超级计算机,复月也需要计算6亿年。但这事情对量子计算机是问题吗?老子本身就是量子,你让我模拟量子,不就是自己模拟自己吗?不过这个模拟是在特定的初始条件下,按照特定的控制条件来进行的而已。这其实就是让量子按照特定的剧本去本色演出,所以 9 张量子计算机只用了 200 秒就完成了复月需要6亿年才能搞定的高斯玻色采样计算。
除此之外,比如生物制药领域,目前经典计算机需要模拟大分子的相互作用,从而研究药理药效是非常耗时耗力的。但是有了量子计算机,这一切就变得很简单了,这可能会大大的加快新药研发的速度并降低成本。再比如说对大脑的模拟,要模拟大脑 1, 000 亿个神经元的活动,电子计算机是要算到生无可恋的,但是量子计算机可能很容易就能完成。再比如对经济活动的模拟,对天气的模拟等等,甚至未来在超大规模的量子计算机上,我们也许真的可以模拟出一个宇宙。当然,理想很丰满,现实却很骨感。直到目前为止,我们对量子计算的研究大多还停留在理论层面。我们构建了很多的数学模型,但是要在物理世界里通过各种精心设计的元件来实现这些模型,以至于构建出大型的通用量子计算机还非常遥远。目前成果显著的反而是在量子模拟领域。是的,九章和前几天发布的组冲支号其实都还只是量子模拟计算机,即通过特殊的硬件架构来实现某一个具体的模拟功能。如果非要用经典计算机来类比的话,可能还处于第一台计算机安尼亚克发明前的前计算机时代。但即使是这样,我们在量子领域也可以说是达到了国际先进水平。
未来展望
因为就像前面所说的,量子计算的关键不仅在于理论构建和算法实现,如何在物理世界中实现对量子的精确控制和读取也是非常重要的。这就像核聚变的原理,谁都知道,可是集全球之力,我们也需要几十年时间才能实现它。因此不管外界对这两个计算机的质疑如何,我们都应该相信我们的征途是星辰大海,但不积跬步,无以至千里。不管如何,我们都已经在量子计算领域迈出了与我们国力相当的坚实一步,于蓝星最牛的国家站在了同一条起跑线上。
ps
我希望这篇文章,能够让你对即将到来的量子计算时代多那么一点点了解,对国事无双的各位科学家们多一次敬仰和支持。如果你喜欢我的文章,也希望你能够通过点赞、收藏多多支持我。当然最重要的是欢迎关注我,因为后面还会有更多精彩的文章会和大家见面,让我们共同来理解和见证这个宛如魔法的时代。