人類想造一台牛逼的機器(2)--菜市場大媽也能看懂的量子力學科普
現在想像你面前十米處是一片大海。我問你,我想去海里,我該去哪兒?
「往前走,走十米就是了。」你回答。
「那走十一米行不行啊?」我問。
「也行啊,那兒也是海」你說。
「那到底是十米還是十一米?你不能確定嗎」我問。
「滾!」你說。
大海這個玩意,要是沒有大地這個壁壘在那兒擋著,它能彌散在整個地球表面。要是沒有地球這玩意吸著,它能彌散到火星上去。那麼這個時候,「海的位置」這個問題是毫無意義的。但是顯然,這個結論並不是針對海,所有的東西,你這個人,你戴的眼鏡,你吃的驢肉火燒,羊肉串,煎餅果子,雞蛋灌餅,你穿的2016夏季新款韓版修身顯瘦OL格子連衣裙女大碼印花短袖連衣裙女潮,好像都不能說位置在哪,畢竟他們都有個體積。你要是說他在某個地方,那一般他也在旁邊一點兒那個地方。這對更微觀的東西一樣成立,電子,質子,中子,談論它們所謂的「位置」也一樣都沒啥意義。這個結論聽上去合理,但是卻有個不那麼合理的推論:一個的東西可以同時佔據不同的地方。為什麼會這樣呢?因為量子力學很神奇!
量子力學告訴我們,你沒法同時確定位置和動量。現在至少你知道了位置是沒法確定的了。因為就像流動的大海一樣,一個微觀的粒子,也像是流體一樣,彌散在空間之中。你可以說這個粒子總的說來在這一帶,但是不可能說它在某個點上。因為量子力學最重要的一點就是它用波函數來描述物體,這個函數基本上說的是這個東西在多大程度上出現在了某一個地方。一個東西的狀態是怎麼變化的,這個可以用薛定諤方程算出來。一般來說哪怕你強行規定這個粒子某一時刻體積為零,只能出現在某個點,那麼經過演化它也會很快的彌散出來,鋪滿這個空間。
還有更牛逼的事。一個東西並不僅僅在位置上有這種同時處於很多地方的能力,它可以更廣義的處在很多不同的狀態上。比如說,一個電子其實就是一個小指南針,有南極和北極。這個它本身攜帶的磁性叫做「自旋」。而這個牛逼之處就在於它可以既指向南,又指著北,或者既指著上,又指著下。我們可以用這樣的方式表示:
這個就表示了它同時處在上和下。(事實上,這個其實相當於指著左邊。但是我偏不告訴你為啥。)
這基本上就是人類想要製造的這個牛逼機器的理論基礎了。一個東西可以處在很多不同的狀態,那我們就選取幾個離散的狀態,給它們編上碼,比如說上面那個上和下,我們可以說:
你要是上,你就是1;你要是下,你就是0
然後我們的二進位就來了。一個電子就是一個計算機的基本單位比特,bit。不過在這裡,因為它可以同時是1和0,我們管它叫qubit。qu是quantum,量子的意思。
qubit這東西,牛逼就牛逼在它天然就可以拿來做並行計算。試想你要是有個同時是0和1的qubit,對它做個「非」運算,那你就同時對0和1做了運算了。你要是有兩個qubit,他們同時處於00,01,10,11這個狀態,你就能同時對四個狀態做運算了。你要是有三個qubit,你就能同時對000,001,010,011,100,101,110,111這麼多狀態做運算了。。。你要是有很多qubit,你就能一下子對很多狀態做邏輯運算!
量子計算的牛逼之處已經很顯然了。可是這僅僅是看起來--量子物理規定了,你的邏輯運算必須是可逆的(unitary的)。此外,即使你完成了一個邏輯運算,你也必須把這個運算結果讀出來,而量子力學有個叫「塌縮」的假設。這個假設告訴我們,你在讀取結果的時候,一次只能讀一個結果。儘管你做了牛逼的並行計算,你卻不能把所有的計算結果都取出來,這些限制大大的降低了我們使用量子計算代替傳統計算機的可能性。所以,有一幫專門的計算機科學家在研究新的量子計算的演算法。這些演算法能夠讓計算這一過程既滿足了量子物理的約束,又能夠擁有對特定的問題以遠遠超過傳統演算法的效率。
推薦閱讀:
※大白課|童話里的美人魚究竟怎麼來的?是人還是魚?
※連比爾蓋茨都看好的行波堆,到底行不行?
※如何給沒學過量子場論的人科普量子場論這樣的知識?