徹底讀懂量子計算機背后的原理

你或許聽說過這樣一種說法,量子計算機是一種「違背常識的」機器——通過在不同的平行宇宙中「計算」來得到正確答案,通過量子計算機,人類很快就會治愈癌癥和全球變暖。
15年來,我一直在抨擊這種卡通化的觀點,并去試圖解釋真實但更迷人的真相。我把這些工作當(dāng)作一項公共服務(wù),也是我作為一個量子計算研究者的道德責(zé)任。
有時候,我也感覺這項工作有些艱辛。但多年來,隨著企業(yè)和政府投資數(shù)十億美元,以及技術(shù)發(fā)展到可編程的50量子位設(shè)備(在某些設(shè)計好的基準(zhǔn)上)或許真的可以讓世界上最大的超級計算機一展身手,關(guān)于量子計算機的令人發(fā)指的炒作只會增加。就像在加密貨幣、機器學(xué)習(xí)和其他時尚領(lǐng)域一樣,有了錢就有了騙子。
不過,在反思的時候,我明白了?,F(xiàn)實情況是,即使你去掉所有的不良動機和貪婪,仍然很難在沒有數(shù)學(xué)的情況下簡單而誠實地解釋量子計算。正如量子計算先驅(qū)理查德·費曼(Richard Feynman)在談到為他贏得諾貝爾獎的量子電動力學(xué)工作時曾經(jīng)說過,「如果能用幾句話來描述它,它就不值得獲得諾貝爾獎了!」

但這并沒有阻止人們?nèi)ミM行「營銷式」的宣傳。自從1994年彼得·肖爾發(fā)現(xiàn)量子計算機可以破解保護互聯(lián)網(wǎng)交易的大部分加密技術(shù)以來,人們對這項技術(shù)的興奮已經(jīng)不僅僅是出于知識上的好奇心。事實上,該領(lǐng)域的發(fā)展也通常被作為商業(yè)或技術(shù)故事而不是科學(xué)故事來報道。
通常媒體會說:「看,這里面有這么多深奧的量子技術(shù),但你只需要了解基本理論就可以了。物理學(xué)家即將建造更快的計算機,這將徹底改變一切。」
問題是,量子計算機不會徹底改變一切。

是的,它們有一天可能會在幾分鐘內(nèi)解決一些特定的問題,而這些問題(我們認(rèn)為)在經(jīng)典計算機上的計算時間或許比宇宙壽命還長。但這還有許多其他重要的難題,因此不少專家認(rèn)為量子計算機即使有幫助,也是微不足道的。此外,雖然谷歌和其他公司最近提出了可信的說法,他們已經(jīng)實現(xiàn)了人為的量子加速,但這只是針對某些特定的、深奧的基準(zhǔn)(我?guī)椭_發(fā)的基準(zhǔn))。一臺足夠大和可靠的量子計算機在實際應(yīng)用中超過經(jīng)典計算機,如破解密碼和模擬化學(xué),可能仍需一個漫長的時間。
但是,一個可編程的計算機怎么可能只對?「某些問題」更快?為什么會這樣?在這種情況下,「大而可靠」的量子計算機意味著什么?為了回答這些問題,我們必須進入深層次的東西。
讓我們從量子力學(xué)開始。(還有什么比這更深奧的呢?)疊加的概念是很難用日常語言表達的。因此,毫不奇怪,許多作家選擇了一個簡單的方法。他們說,疊加的意思是「同時存在」,所以量子比特,只是一個可以「同時為0和1」的比特,而一個經(jīng)典比特只能是其中之一或另一個。他們繼續(xù)說,量子計算機將通過使用量子比特在疊加態(tài)中嘗試所有可能的解決方案來提高其運算速度——也就是說,在同一時間,或「并行地」計算。
這就是我認(rèn)為的通常量子計算理論普及里的基本錯誤,也是導(dǎo)致其他所有問題的根源性錯誤。從這里開始,量子計算機通過「嘗試所有可能的答案來快速解決計算難題」。
問題是,對于一臺計算機來說,在某些時候,你需要看它并讀取一個輸出。但如果你看的是所有可能答案的平等疊加,相當(dāng)于量子力學(xué)的規(guī)則說你只會看到并讀到一個隨機的答案。如果真是如此,你完全可以自己選一個啊。
疊加的真正含義是「復(fù)數(shù)的線性組合」。這里,我們指的「復(fù)數(shù)」不是「復(fù)雜」「多個」的意思,而是指一個實數(shù)加一個虛數(shù),而「線性組合」意味著我們把不同倍數(shù)的狀態(tài)加在一起。因此,一個量子比特是一個比特,它有一個被稱為振幅的復(fù)數(shù),附加在它為0的可能性上,還有一個不同的振幅附加在它為1的可能性上。這些振幅與概率密切相關(guān),因為某些結(jié)果的振幅離零越遠,看到這個結(jié)果的機會就越大;更準(zhǔn)確地說,概率等于距離的平方。

但振幅不是概率。它們遵循不同的規(guī)則。例如,如果對振幅的某些貢獻是正的,而其他貢獻是負(fù)的,那么這些貢獻可以破壞性地干擾并相互抵消,從而使振幅為零,相應(yīng)的結(jié)果則永遠不會被觀察到;同樣,它們也可以「建設(shè)性地干擾并增加」特定結(jié)果的概率。
為量子計算機設(shè)計算法的目標(biāo)是編排一個「建設(shè)性和破壞性的干擾模式」,以便對于每個錯誤的答案,對其振幅的貢獻能相互抵消,而對于正確的答案,貢獻則相互加強。只有當(dāng)你能安排好這些,你就會以很大的概率看到正確的答案。
而棘手的部分是在不事先知道答案的情況下做到這一點,而且要比你用經(jīng)典計算機做的更快。
27年前,肖爾展示了如何在整數(shù)因式分解問題上做到這一切,它打破了廣泛使用的加密代碼,這些代碼是許多在線商務(wù)的基礎(chǔ)。我們現(xiàn)在也知道如何對其他一些問題做到這一點,但遺憾的是只能通過利用這些問題中的特殊數(shù)學(xué)結(jié)構(gòu)。這不僅僅是一次嘗試所有可能答案的問題。
更加困難的是,如果你想誠實地談?wù)摿孔佑嬎?,那么你也需要理論計算機科學(xué)的概念詞匯。我經(jīng)常被問到,量子計算機會比今天的計算機快多少倍?一百萬倍?十億?
這個問題忽略了量子計算機的重點,即實現(xiàn)更好的「擴展行為」,或運行時間與n的函數(shù),即輸入數(shù)據(jù)的比特數(shù)。這可能意味著在一個問題上,最好的經(jīng)典算法需要的步驟數(shù)隨n呈指數(shù)增長,而解決這個問題的步驟數(shù)只隨n的平方增長。在這種情況下,對于小的n,用量子計算機解決這個問題實際上會比用經(jīng)典算法解決這個問題更慢、更昂貴。只有隨著n的增長,量子加速才會首次出現(xiàn),然后最終占主導(dǎo)地位。
但我們怎么能知道有沒有經(jīng)典的捷徑——一個傳統(tǒng)的算法會有類似于量子算法的加速行為呢?這個問題雖然在流行的說法中通常被忽視,但它確實是量子算法研究的核心。困難往往不是證明量子計算機可以快速做某事,而是令人信服地論證經(jīng)典計算機不能做這些事。
唉,事實證明,要證明這個問題的難度是驚人的,著名的P與NP問題就說明了這一點(該問題大致上問的是,是否每個有快速可檢查的解決方案的問題也能被快速解決)。這不僅僅是一個學(xué)術(shù)問題,在過去的幾十年里,當(dāng)經(jīng)典算法被發(fā)現(xiàn)「應(yīng)該」具有類似的性能時,猜想的量子加速卻多次「缺席」。
請注意,在解釋了這一切之后,我仍然沒有說過一個關(guān)于建造量子計算機的實際困難。一句話,之前的介紹都是「退相干」的,這意味著量子計算機和它的環(huán)境(附近的電場、溫暖的物體和其他可以記錄量子比特信息的東西)之間沒有任何關(guān)聯(lián)。其實這些因素都可能導(dǎo)致對量子比特的過早「測量」,從而使它們坍縮為肯定為0或肯定為1的經(jīng)典比特,意味著量子計算機絲毫沒有發(fā)揮其特殊價值。
這個問題的唯一已知解決方案是量子糾錯:1990年代中期提出的一個方案,將量子計算的每個量子比特巧妙地編碼為幾十個甚至幾千個物理量子比特的集體狀態(tài)。但研究人員現(xiàn)在才開始讓這種糾錯在現(xiàn)實世界中發(fā)揮作用,而真正將其投入使用還需要更長時間。當(dāng)你讀到有關(guān)50或60個物理量子比特的最新實驗時,重要的是要理解這些量子比特并沒有被糾錯。而在它們被糾正之前,我們不期望有能夠超過幾百個量子比特的規(guī)模。
最后,如果你真的理解了以上所介紹的概念,你可以嘗試去閱讀一些真正前沿性的研究論文了!
原作者:Scott Aaronson
編譯:大陸
編輯:慕一
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?——end——