你能理解、不能理解和不需要理解的量子計算
以下是嚴肅科普部分
【1】
在量子力學裡面,一個粒子在某種測量方式下的狀態可以用一組「本徵態"和每個本徵態的「幾率幅」來描述。我們可以先舉一個直觀的例子:以第一圖中的硬幣為例,它的狀態可能是(+0.8)*|正>+(-0.6)*|反>。
「本徵態」可以理解為該測量方式下可能出現的結果。比如說,我們測量一個自由質子的位置,有無窮多種可能性,因此就對應了無窮多個本徵態。如果我們要測量原子核外電子的自旋方向,只有正反兩種可能(還記得泡利不相容原理么?),因此就只有兩個本徵態。凡是兩個本徵態的粒子,都可以用來表示一個量子比特。
而「幾率幅」是每個本徵態對應的一個係數。可以是正數,負數或複數,而測量時出現對應本徵態的概率等於幾率幅的模的平方——如果你對複數這個概念不感冒,可以只考慮正數和負數的情況,然後把幾率幅理解成概率的平方根。至於具體幾率幅的符號代表什麼,可以看下面的問題。
很自然的推論是,所有本徵態的幾率幅的平方和必須是1。所以說,對剛才說的這個硬幣而言,扔出去之後64%概率會出現正面,36%概率會出現反面。
當然,你可能會問了,用這個本徵態和幾率幅的方法表達粒子狀態的話,那麼用其他測量方式來測量會發生什麼呢?比如說,剛才那個硬幣如果我們想測量它的位置,該是多少呢?想要了解這個問題,需要理解波函數的概念以及本徵態到底是什麼。不過這個問題的答案就和量子計算沒什麼關係了。
【2】
圖3中描述的這個態叫做貝爾態。對它的討論可以牽扯到量子力學的實在論闡釋,不過對理解量子計算而言我們不需要討論那麼多。重要的一點在於,對於多粒子(比如3個)的系統,到底需要多少個數字來描述?
如果3個粒子完全獨立,那麼6個幾率幅當然就可以了。但是,假設其中兩個粒子處于貝爾態:這兩個粒子狀態永遠相反,那麼你不管怎麼調整每個粒子單獨的幾率幅都沒法描述這個現象(自己試試看!)。但是,不管怎麼說扔出來以後只可能有8個狀態(000, 001, 010, ... 111),所以8個幾率幅總是可以描述所有狀態的。
這也就是為什麼說粒子數增加的時候包含的信息量會是指數上升的原因。
【3】
所有對量子比特的操作都等價於對所有幾率幅同時做改動。這是非常強大的計算能力,但是能做的操作有一定限制。量子計算的計算力非常強大,但是至今為止只有不多的幾種針對特定問題的量子演算法,這就是理由之一。當然,隨著量子計算的發展可用的量子演算法肯定越來越多。
-------------------------如果你對數學不感冒,可以跳過分割線的下面部分----------------------
對量子比特的操作僅限於對所有幾率幅的線性變換,並且變換前後幾率幅的平方和都必須是1。這在數學上被稱為酉變換。
舉個例子來說,我們想像一個量子力學裡面的單qubit邏輯門Hadamard門。它會把
|正> 變成 1/sqrt(2)*|正>+1/sqrt(2)*|反>
|反> 變成 1/sqrt(2)*|正>-1/sqrt(2)*|反>
從幾何上理解,你可以把正反兩個狀態的幾率幅作為橫坐標和縱坐標畫在一個坐標繫上。還記得說兩者平方和為1么?也就是說這個幾率幅會落在單位圓上。線性變換意味著所有操作都對應著坐標繫上的反射或旋轉。對Hadamard門來說,它等價於沿著一條22.5度斜率的直線所做的反射。
從代數上理解的話,這就意味著對任意量子態來說,你可以把幾率幅乘到變換結果上然後加起來。也就是說,
(+0.8)*|正>+(-0.6)*|反> 會變成 (+0.8)*(|正>的變換結果)+(-0.6)*(|反>的變換結果)
也就是
0.8*(1/sqrt(2)*|正>+1/sqrt(2)*|反>) + (-0.6)*(1/sqrt(2)*|正>-1/sqrt(2)*|反>)
= (0.8/sqrt(2)-0.6/sqrt(2)) * |正> + (0.8/sqrt(2)+0.6/sqrt(2))* |反>
= 0.2/sqrt(2) * |正> + 1.4/sqrt(2) * |反>。這是一個反面概率高達98%的狀態。
類似地,
(+0.8)*|正>+(+0.6)*|反>
會變成
1.4/sqrt(2) * |正> + 0.2/sqrt(2) * |反>。這是一個正面概率高達98%的狀態。
你可以看到,幾率幅的正負號會導致經過量子邏輯門之後的正負相消或正正疊加,從而導致不同本徵態的概率的增加或減少。這種變化是量子現象中特有的,也是量子計算的特殊之處。
對於多量子比特的系統有著更多樣的操作可能,不過仍然會受到上述條件限制。所有量子計算機和量子演算法歸根結底都是這類量子操作的排列組合。
-------------------------如果你對數學不感冒,可以跳過分割線的上面部分-------------------------
【4】
量子計算的結果讀取也是受到限制的。量子力學的基本原理之一就是說,測量會改變系統的狀態。當你對粒子做測量的時候,會按照概率得到所有可能的本徵態之一。與此同時,粒子的狀態會變成該本徵態的純態(該本徵態係數為1,其他係數均為0)。如果接下來再做同樣的測量,就會不斷得到相同的結果。因此量子計算的目的是讓系統變成某個本徵態概率非常接近1,其餘本徵態概率接近0的狀態。之後進行測量,得到的本徵態就對應計算結果。
由於任何觀測都會改變幾率幅的狀態,因此量子計算只能在運算結束讀取最終結果的時候測量一次,並且讀取出來的結果(很可能)是隨機的。當然了,雖然結果總免不了一定隨機性,但是可以通過重複計算增加正解率。舉個例子,如果一個演算法的正確率有99%,那麼重複執行11次,錯5次以上的概率不超過0.0000001%。考慮到一些量子演算法比傳統演算法快十個數量級(比如量子質因數分解演算法分解RSA),即使重複10次也划算。
至於這個概率是什麼意思,是有什麼其他隱藏的我們還不知道的變數還是說上帝就在擲骰子……對理解量子計算來說並不重要。
【5】
量子計算的理論到實現還是有著很大的差距。比如說,從理論上而言你可以想像任意數量的粒子處在某種糾纏態,並對這些粒子同時進行運算--目前為止需要qubit最少的實用演算法是50個左右。實際上,至今為止只能做到16個qubit的系統(IBM 5月的公告)。目前很多公司的期望是2020年達到50qubit,請大家拭目以待。
又比如除噪部分。事實上,量子系統非常容易受到擾動。任何「觀測」都會導致量子態的改變。因此,需要抗干擾系統或者除噪的手段。比如說加一些驗證用的qubit,不過這就又會回到qubit數的問題了。
看了半天還是沒有看懂怎麼辦?不懂你還是一樣可愛啊~~有什麼關係!
也感謝所有認真看完的朋友們~~愛你們!
PS:本期為平媒《課堂內外·科學Fans》約稿給量子計算機相關科技新聞的配圖插畫。專欄在此發布了該插畫,同時補充了原創的嚴肅科普部分,限於水平可能有說的不到位的地方,歡迎各位相關專業的朋友不吝指正。
PSPS:由於漫畫表現能力有限(比如幾率波就好難畫最後還是拋硬幣了……),涉及到具體的部分如果真想知道還是看嚴肅科普部分吧……順便本篇其實寫的很不成熟,算是拋磚引玉吧,歡迎大家討論,有寫錯的地方也歡迎指出來,畢竟作者並不是量子計算方向的~~
PSPSPS:如果你喜歡這個系列的漫畫,歡迎把它推薦給你的朋友,也歡迎關注公眾號TILcomic~
推薦閱讀:
※你想要一本「鉺磷釔鈀」日曆嗎?
※13、只緣身在此山中
※sym cheng 的 Live -- 量子力學的基本原理
※豆瓣9.0的好書,解讀你的性格