量子電腦的糾錯法-科學人雜誌
物理學

量子電腦的糾錯法

2022-08-01 納札里歐(Zaira Nazario)
量子電腦有能力解決傳統電腦難以處理的計算問題,但在計算過程中會出現傳統電腦不會發生的錯誤,因此需要嶄新的糾錯技術。
▲ (繪圖:Alice Mollon)

物理學有一條定律:凡是不禁止的事,就必然發生。因此,錯誤無可避免。任何事物都可能出錯:語言、烹飪、通訊、影像處理,當然還有運算。減少並糾正錯誤能讓社會持續運作。DVD刮花了依然能夠播放;行動條碼(QR code)可能模糊或破損,但還是可以讀取;太空探測船拍到的影像可以傳遞數億公里,看起來依然清晰。糾錯(error correction)是資訊技術當中最為基本的概念。錯誤或許無可避免,但可以糾正。

這條無可避免的定律同樣適用於量子電腦。這些新興機器利用物理學的基本法則,解決傳統電腦難以處理的問題,對科學和商業的影響深遠。但能力越強,弱點越大。量子電腦會出現傳統電腦不會發生的錯誤類型,只靠標準的糾錯技術無法解決問題。

我是在國際商業機器公司(IBM)研究量子計算(quantum computing)的物理學家,但職業生涯不是從這裡開始。我一開始是凝態(condensed-matter)理論學家,研究材料的量子力學特性,例如超導性;當時我渾然不知,這最終致使我研究量子計算。其中的轉折是我中斷了研究,轉任到美國國務院研究科學政策,進而任職於美國國防高等研究計畫署(DARPA)以及美國情報高等研究計畫署(IARPA)。在這兩個機構任職時,我想要利用大自然的基本原理來研發新技術。

當時,量子電腦還在最早期的階段。雖然阿崗國家實驗室的班尼奧夫(Paul Benioff)在1980年就提出概念,物理學家花了將近20年才打造出第一台量子電腦。又過了10年,在2007年,他們發明了基本資料單元,稱為超導transmon量子位元,是IBM、Google和其他公司製造量子電腦的基礎。因為超導體方面的研究經驗,我突然很受歡迎。我在IARPA協助執行了好幾項量子計算研究計畫,之後加入了IBM。

在IBM,我致力於改善使用多個相連的量子位元執行的運算,並探索糾錯法。透過纏結(entanglement)這種量子現象來連結量子位元,可以儲存大量資訊,遠勝過同樣數量的傳統電腦位元。因為量子電腦的狀態是以波的形式存在,可以像光波一樣干涉,比起轉換位元(flipping bit),能產生更豐富的運算樣貌。這些能力讓量子電腦可以非常有效率地執行某些功能,以期加速各式各樣的應用,例如模擬大自然、研究並設計新材料、發現資料中隱藏的特徵來改善機器學習,或是為工業化學製程找到更有能源效率的催化劑。

問題在於,很多解答實用問題的提案,都需要量子電腦在幾百到幾千個量子位元上,執行幾十億次邏輯運算,或稱閘(gate)。要達成這項成果,每幾十億個閘最多只能犯一次錯誤。但今天最強大的量子電腦每1000個閘就會犯一次錯誤。面對實務與理論之間的巨大差距,早期的物理學家擔心,量子計算永遠只會是基於好奇心進行的科學研究,難以付諸應用。

保護量子資訊

1995年,情勢有了變化,貝爾實驗室的修爾(Peter Shor)和英國牛津大學的斯提內(Andrew Steane)分別研發出量子糾錯(quantum error correction, QEC)技術。他們展示了如何把一個量子位元的資訊分散到多個物理量子位元(physical qubit),利用不可靠的元件打造出可靠的量子電腦。只要物理量子位元的品質夠高,錯誤率低於某個閾值,消除錯誤的速度就可以高於錯誤累積的速度。

要了解修爾和斯提內的研究何以是重大突破,可透過一般糾錯的運作方式。一個簡單的糾錯碼會製作資訊的副本,例如以000代表0,以111代表1。如果電腦讀出010,就知道原始值可能是0。當錯誤率夠低,最多只有一個位元副本毀壞時,這樣的糾錯碼就算成功。工程師讓硬體盡可能可靠,然後增加一層冗餘,以消除任何剩餘的錯誤。

然而,當時並不清楚要如何把傳統的糾錯法應用在量子電腦。量子資訊無法複製;要糾錯,必須透過測量來蒐集資訊。問題是,如果檢查量子位元,可能會讓它們的狀態塌縮,換句話說,可能會摧毀其中編碼的量子資訊。再者,除了有位元轉換的錯誤,描述量子位元狀態的波相位也會發生錯誤。

為了避開這些問題,量子糾錯策略使用輔助量子位元(helper qubit)。一連串的閘把輔助量子位元與原始量子位元纏結起來,這能把系統雜訊有效轉移給輔助量子位元。接著測量輔助量子位元,而不需檢查原始量子位元,就能取得足夠資訊以找出錯誤,進而糾正。

就跟傳統糾錯一樣,成功與否取決於雜訊的物理性質。在量子電腦上,當裝置與環境發生纏結就可能發生錯誤。為了讓電腦持續運作,物理錯誤率必須夠低。這個錯誤率有個閾值。在這個閾值之下,可以糾錯,迫使運算失敗的機率降到某個低點。而在這個閾值之上,硬體發生錯誤的速度會超過糾正的速度。本質上,這種行為的轉變是有序和無序狀態之間的相變(phase transition)。身為職業生涯大半時間在研究量子相變的凝態物理學家,這點讓我很著迷。

科學家長期研究改善糾錯碼(error correction code)的方法,以便能因應更高的錯誤率、更多樣的錯誤,以及硬體的限制。最受歡迎的糾錯碼稱為拓撲量子碼(topological quantum code)。拓撲量子碼可以追溯至1982年,當時美國麻省理工學院(MIT)的威爾切克(Frank Wilczek)提出,宇宙可能還有一類全新的粒子。已知粒子的角動量要嘛是整數值,要嘛是半整數(half-integer)值,但新型粒子的角動量可能是介於兩者的分數值。他稱之為任意子(anyon),並警告「這些現象的實際應用似乎還很遙遠」。

但很快地,物理學家就發現任意子沒有那麼深奧;事實上,任意子和真實世界的現象有關聯。加州理工學院的基塔耶夫(Alexei Kitaev)意識到,量子計算要從理論完全轉移到技術的實際需求,任意子是實用構想。他進一步提出利用某些多粒子系統做為量子糾錯碼。

在這些系統當中,多個粒子在晶格(lattice)結構裡相互連結,其最低能態(energy state)在此會高度纏結。錯誤就相當於系統處於較高能態,稱為激發(excitation)。這些激發就是任意子。這個系統標示了拓撲碼的誕生,而這也是凝態物理學與量子糾錯的另一個連結。因為雜訊應該只會在晶格的局部發揮作用,而拓撲碼把激發局部化,因此在保護量子資訊方面,拓撲碼很快就變成受歡迎的方案。

拓撲碼當中的兩個例子,稱為表面碼(surface code)和色彩碼(color code)。表面碼是基塔耶夫和我的IBM同事布拉維(Sergey Bravyi)所發明,特徵是資料量子位元和輔助量子位元在二維方格上交替出現,就像棋盤上的黑白方格......


# 關鍵字:物理學量子電腦量子
更多文章
活動推薦更多
追蹤科學人