用量子計算機扔1900萬次量子骰子要多久?

用量子計算機扔1900萬次量子骰子要多久?

假設我們正在玩“扔硬幣”的遊戲。請你猜一猜,我扔出正面的機率是多少?

用量子計算機扔1900萬次量子骰子要多久?

你肯定會說,太簡單了!連小學生都知道,一枚硬幣扔出正面的機率是50%——如果其中沒有什麼貓膩的話。

用量子計算機扔1900萬次量子骰子要多久?

現在,我換個難度提問:假如我們扔的不是普通硬幣,而是一枚量子硬幣呢?

這個時候,你可能就原地愣住了,問:“量子硬幣是個什麼東西呢?”

(一)量子位元:一種量子的硬幣

世界上任何一臺量子計算裝置中,都包含一種量子的硬幣。這種量子硬幣有一個我們熟知的名字,叫

量子位元

用量子計算機扔1900萬次量子骰子要多久?

用量子計算機扔1900萬次量子骰子要多久?

用量子計算機扔1900萬次量子骰子要多久?

量子位元,是量子計算機操縱的基本資料單元。跟經典計算機中的經典位元類似,我們通常用0和1來表示它的兩種輸出。

用量子計算機扔1900萬次量子骰子要多久?

但跟經典計算機中的經典位元有所不同,一個量子位元不僅可以等於0(或等於1),它還可以處於一系列“同時處於0和1”的量子疊加狀態。

用量子計算機扔1900萬次量子骰子要多久?

那麼,為什麼我們可以把量子位元看作一種量子硬幣呢?

這是因為,當一個量子位元處於某個“同時處於0和1”的量子疊加狀態中時,如果你要從量子計算機中讀取它時,它並不是直接輸出這個疊加狀態給你看,而是會立刻改變原先的量子疊加狀態,並隨機地變成“等於0”或“等於1”的狀態,並輸出給你看。

用量子計算機扔1900萬次量子骰子要多久?

也就是說,讀取一個量子位元的過程,就像你在扔一枚量子硬幣,完全是隨機發生的。

用量子計算機扔1900萬次量子骰子要多久?

同時,讀取一個量子位元的結果,也像你在扔一枚量子硬幣,結果要麼是1(如同硬幣的正面),要麼是0(如同硬幣的反面),絕對不會存在其他結果。

用量子計算機扔1900萬次量子骰子要多久?

如此看來,量子位元真的可以看成某種基於量子力學原理的硬幣。

用量子計算機扔1900萬次量子骰子要多久?

好了,瞭解了量子位元就是一種量子硬幣,我們再回到剛才的問題:假如我們扔出一枚量子硬幣,它正面朝上的機率是多少呢?

(二)機率的機率分佈:

量子硬幣的輸出

對於這個問題,物理學家的回答是,這要看量子位元具體處於何種量子狀態。

一枚普通硬幣,只要隨機地扔出去,出現正面和出現反面的機率一定各佔50%。

但對於量子硬幣(量子位元)來說,情況就不一樣了。

處於某種特殊量子狀態的量子硬幣,不管你怎麼扔,它出現正面的機率都是100%。

處於另一種特殊量子狀態的量子硬幣,不管你怎麼扔,它出現正面的機率都是0。

用量子計算機扔1900萬次量子骰子要多久?

同理,處於各種量子疊加狀態的量子硬幣,不管你怎麼扔,它出現正面的機率都是固定不變的,我們記作x;同時,它出現反面的機率也是固定不變的,等於100% - x。只不過,對於某些量子疊加狀態而言,x = 10%;對於另一些量子疊加狀態而言,x = 13。6%;……總之,根據所處量子狀態的不同,x可以在0到1之間任意取值。

用量子計算機扔1900萬次量子骰子要多久?

所以,要想知道量子硬幣扔出以後的機率,我們就得預先知道這枚量子硬幣處於以上哪種情況。用物理學的黑話來說,

我們得預先知道這個量子位元處於哪一種量子狀態

可是,如果我死活不告訴你這枚量子硬幣屬於以上哪種情況呢?或者說,我們根本不知道這個量子位元處於哪一種量子狀態呢?

用量子計算機扔1900萬次量子骰子要多久?

這時,物理學家能給出的唯一合理答案是,以上情況皆有可能,每種情況的出現都對應一定的機率。如果“把正面朝上的機率大小”畫成一張機率分佈圖,那麼你就會看到一張這樣的圖:

用量子計算機扔1900萬次量子骰子要多久?

把這張圖翻譯成大白話就是:

我們有1%的機率得到一枚處於特定量子狀態的量子硬幣,將它“扔出正面朝上的機率為0-1%”;我們有1%的機率得到另一枚處於不同特定量子狀態的量子硬幣,將它“扔出正面朝上的機率為1%-2%”;……我們有1%的機率得到又一枚處於不同特定量子狀態的量子硬幣,將它“扔出正面朝上的機率為99%-100%”。

用量子計算機扔1900萬次量子骰子要多久?

這就是物理學家對這個問題能給出的最好回答。

為什麼這個回答這麼繞呢?因為量子力學算出來就是這個結果。由於計算過程涉及一定數學知識,我就不具體討論了。

用量子計算機扔1900萬次量子骰子要多久?

反正你只需要知道,假如我扔出一枚量子硬幣,問它正面朝上的機率是多少。正確的答案不是一個具體的機率值,而是一張關於機率大小的機率分佈圖,就可以了。

現在,我又要提高難度了:假如我們扔的不是一枚量子硬幣,而是一枚具有2N個面的多面量子骰子呢?

用量子計算機扔1900萬次量子骰子要多久?

(三)體現量子計算優越性:

扔出2N個面的多面量子骰子

說到這兒你可能有點兒不耐煩了?我們好不容易搞清楚了一枚具有正反面的量子硬幣怎麼扔,現在為啥突然要去研究具有2N個面的多面量子骰子呢?

這是因為,這個問題涉及量子計算的優越性。

我們經常聽物理學家誇量子計算,說量子計算千好百好,就是好呀就是好!那麼量子計算到底好在哪兒呢?

用量子計算機扔1900萬次量子骰子要多久?

用一句話概括量子計算的好處,就是:

量子計算在計算某些特定問題時,比經典計算高效得多!相比量子計算,世界上最高階的經典計算機在處理這些問題時,效率跟水熊蟲跑馬拉松、蝸牛拉中歐班列、樹懶爬珠穆朗瑪峰差不多。

用量子計算機扔1900萬次量子骰子要多久?

這就叫

量子計算的優越性

用量子計算機扔1900萬次量子骰子要多久?

於是問題又來了,量子計算在處理哪些特定問題時,能夠切實體現量子計算的優越性呢?

其中一個問題,就是我們剛才說的,扔一枚具有2N個面的多面量子骰子。

跟扔量子硬幣不同,扔一枚具有2N個面的多面量子骰子,我們得到的不是正面朝上或反面朝上兩種結果,而是會得到1號面朝上、2號面朝上……2N號面朝上,共2N個不同的結果。這些結果分別對應N個量子位元輸出“000。。。0”(N個0)、輸出“000。。。1”(N-1個0和1個1)……輸出“111。。。1”(N個1),共2N個不同的結果。

用量子計算機扔1900萬次量子骰子要多久?

跟扔量子硬幣類似,對於一枚特定的多面量子骰子,它1號面朝上、2號面朝上……2N號面朝上的結果出現的機率都是固定不變的。這些機率的具體數值取決於扔骰子時,骰子對應何種量子狀態。

同樣,跟扔量子硬幣類似,多面量子骰子本身可以處於各種不同的量子狀態。如果兩個多面量子骰子所處的量子狀態不同,它們扔出各種結果的機率也往往會各不相同。

用量子計算機扔1900萬次量子骰子要多久?

最後,仍然跟扔量子硬幣類似。如果我問,扔一枚多面量子骰子,得到1號面朝上、2號面朝上、……2N號面朝上的結果出現的機率分別是多少?

你只能回答:我們有a%的機率得到一枚處於特定量子狀態的多面量子骰子,它1號面朝上、2號面朝上、……2N號面朝上的結果出現的機率分別是a1%, a2%, a3%……

我們有b%的機率得到一枚處於另一種特定量子狀態的多面量子骰子,它1號面朝上、2號面朝上、……2N號面朝上的結果出現的機率分別是b1%, b2%, b3%……

………

這個問題回答起來實在是太麻煩了。所以,為了簡單起見,我們把最終所有可能的結果畫成一張機率分佈圖:

用量子計算機扔1900萬次量子骰子要多久?

這張圖的意思是說,不管是1號面還是2號面還是3號面朝上,我們把所有結果都簡化成“那些以1%機率朝上的面”和“那些以2%機率朝上的面”和“那些以3%機率朝上的面”……以及“那些以99%機率朝上的面”。最終,我們把以這些機率出現的面的機率畫成一張機率分佈圖。

用量子計算機扔1900萬次量子骰子要多久?

透過計算我們可以得出,當N很大時,這個機率分佈圖服從一種名為“波特-托馬斯分佈”的機率分佈。

用量子計算機扔1900萬次量子骰子要多久?

這就是物理學家對這個問題能給出的最好回答。

為什麼這個回答比剛才的量子硬幣還要繞呢?因為量子力學算出來就是這個結果。

用量子計算機扔1900萬次量子骰子要多久?

由於計算過程涉及更復雜的數學知識,我就不具體討論了。

反正你只需要知道,假如我扔出一枚具有2N個面的多面量子骰子,問會得到什麼樣的結果。正確的答案不是一組具體的機率值,而是一張“波特-托馬斯分佈”的機率分佈圖,就可以了。

那麼問題來了,我們真的能用量子計算裝置,實現扔2N個面的多面量子骰子的物理過程,從而證明量子計算的優越性嗎?

用量子計算機扔1900萬次量子骰子要多久?

答案是真的可以。只不過,在物理學的黑話體系中,這個過程不叫“扔2N個面的多面量子骰子”,而是叫“對N個量子位元的量子隨機線路進行取樣”。

(四)祖沖之號2.0:

56個量子位元的隨機線路取樣

2019年10月,在持續重金投入10餘年後,谷歌成功開發了一個包含53個可用量子位元的可程式設計超導量子處理器,命名為“Sycamore(懸鈴木)”。他們在上實施了一輪隨機線路取樣的實驗,並正式宣佈實驗證明了量子優越性。

用量子計算機扔1900萬次量子骰子要多久?

近日,中國科學技術大學潘建偉、朱曉波團隊又研製了66量子位元可程式設計超導量子計算原型機“祖沖之號” 2。0。他們透過操控其中的56個量子位元,也開展了一輪隨機線路取樣實驗,併成功地實現了量子計算優越性。

用量子計算機扔1900萬次量子骰子要多久?

值得一提的是,“祖沖之號” 2。0的效能超越2019年穀歌“懸鈴木”2-3個數量級。

用量子計算機扔1900萬次量子骰子要多久?

他們的論文發表在了2021年10月25日的《物理評論快報》(PRL)上。

用量子計算機扔1900萬次量子骰子要多久?

這個實驗的原理很簡單,就是製造出多面骰子,然後扔出去並記錄結果,得到一個關於機率大小的機率分佈。但實驗步驟描述起來有點兒複雜。關心細節的同學可以看[注1][注2]。

那麼,本輪實驗實現量子計算優越性了嗎?答案是肯定的。

本次實驗一共扔了1900萬次多面量子骰子,耗時1小時12分鐘。

用量子計算機扔1900萬次量子骰子要多久?

完成相同的任務,世界上速度最快的“Summit”超級計算機需要花費7年半的時間!

用量子計算機扔1900萬次量子骰子要多久?

你可能會問,超級計算機的計算過程真的那麼慢嗎?答案是真的那麼慢。我們看一看其中的資料量你就明白了。

我們平時說的1GB記憶體,大約可能容納230個經典位元的資料。要想容納256個經典位元的資料,我們就需要6千多萬GB的記憶體。如果要容納56個量子位元(需要256個復引數來描述)的資料,需要的記憶體容量就會更大,更不用說還要對它們進行復雜的運算了。

物理學家指出,用經典計算機計算多面量子骰子的機率分佈,其計算複雜度屬於

NP-oracle難度

因此,“祖沖之號” 2。0是真真正正地展現了量子計算的優越性[注3]。

值得一提的是,早在2020年12月,潘建偉、陸朝陽等人組成的研究團隊,就在另一個不同的量子計算問題(高斯玻色取樣)上,透過構建76個光子的量子計算原型機“九章”,展現了量子計算的優越性。

用量子計算機扔1900萬次量子骰子要多久?

就在祖沖之號團隊研發“祖沖之號” 2。0的同時,九章團隊也沒有閒著。他們對原先的“九章”進行升級,成功研發出了探測光子數為113個,探測模式數為144個的量子計算原型機“九章”2。0,將量子計算在高斯玻色取樣問題上的優越性,從經典計算機(太湖之光)的1014倍大幅提高到了1024倍,輸出態空間的維數則達到了1043量級,這使得問題的複雜度大大提升,更加難以被經典演算法所模擬。

用量子計算機扔1900萬次量子骰子要多久?

“九章”2。0與“祖沖之”2。0背靠背地發表在了2021年10月25日的《物理評論快報》(PRL)上。

用量子計算機扔1900萬次量子骰子要多久?

於是,“祖沖之號”2。0連同“九章”2。0這兩臺升級版的量子計算原型機,使得我國成為第一個在多個不同物理體系中均實現“量子計算優越性”並取得領先優勢的國家。

(五)尋求量子糾錯和更復雜的

量子演算法

說到這兒你可能會問?這就玩啦?研究組辛辛苦苦搭建了一個平臺,僅僅是為了扔骰子嗎?

並非如此。

用量子計算機扔1900萬次量子骰子要多久?

這就好比一個軍隊在跟敵人作戰之前,要進行射擊、投彈、刺殺、爆破、土工等作戰技能訓練。雖然在訓練中,士兵們並沒有消滅真正的敵人,但這些訓練有利於提高他們的作戰技能,為將來在戰場上消滅真正的敵人打下基礎。

用量子計算機扔1900萬次量子骰子要多久?

因此,你不要小看研究組讓“祖沖之號”2。0、“九章”2。0擲“量子骰子”的工作。這項工作對物理學家來說,也是一種作戰技能訓練。

用量子計算機扔1900萬次量子骰子要多久?

例如對於“祖沖之號”2。0的工作,當量子位元的數量和線路的層數增多時,量子計算的誤差不但會隨之增大,而且會變得越來越不可控。

具體來說,假如量子位元經過一層線路的運算後,理論準確率(即保真度)是99。6%;那麼經過20層線路,理論準確率就應該等於(99。6%)20= 92。3%。

但是,通常來講,量子計算裝置實際的準確率往往會遠小於92。3%。為什麼呢?這是因為量子位元和量子線路多了以後,就像三個和尚沒水吃,相互之間會發生關聯錯誤。這種關聯錯誤不是某一個具體的量子位元或量子線路造成的,而是他們之間大規模協同時產生的。

用量子計算機扔1900萬次量子骰子要多久?

然而幸運的是,在扔1900萬次骰子的工作中,“祖沖之號”2。0沒有額外的關聯錯誤出現。它的準確率基本上等於量子線路準確率的乘積。這一點相當不容易。

用量子計算機扔1900萬次量子骰子要多久?

而“九章”2。0的計算規模、複雜度比“九章”1。0大大提高,有兩處值得關注的升級:

一是“九章”2。0開發了一款受激壓縮光源,使得其關鍵指標從之前光源的63%,提高到了92%。用物理學黑話來說,它向高壓縮量、高純度和高收集效率的接近理想的壓縮光源邁進了一大步。

用量子計算機扔1900萬次量子骰子要多久?

二是“九章”2。0相比“九章”,增加了一定的可程式設計性。用物理學黑話來說,它實現了對光源相位的調控和鎖定。

用量子計算機扔1900萬次量子骰子要多久?

物理學家希望,他們可以透過一次又一次實驗,逐漸掌握各種量子處理器的設計和使用技巧,為將來實現真正的量子糾錯,和更復雜的量子演算法,及各項技術在其他量子科技領域的應用打下堅實的基礎。

用量子計算機扔1900萬次量子骰子要多久?

注:

1。 “祖沖之號” 2。0隨機線路取樣實驗的大致步驟:

第一步,研究組讓“祖沖之號” 2。0進入一種初始的量子狀態。假如把這時的“祖沖之號” 2。0看作一個具有256個面的量子骰子,它的這種量子狀態就相當於多面量子骰子的某一個面是朝上的。

第二步,研究組在“祖沖之號”2。0隨機地搭建20層量子閘電路。這些量子閘電路的作用是,改變“祖沖之號” 2。0的量子狀態,使它進入某種確定的量子疊加狀態。這就相當於我們把第一步的量子骰子隨機地製備到256個面同時朝上的一個量子疊加狀態。

第三步,研究組透過測量“祖沖之號”2。0中的全部56個量子位元,得到一個確定的輸出,比如,輸出結果是01011。。。。。01(共56位數字)。這就相當於把剛才製造的多面量子骰子扔了出去,得到了第57307。。。5號面朝上。

注意,完成這一步後,研究組就算完成了一次取樣。完成取樣以後,剛才製造的多面量子骰子就已經消失了。為了再進行一次取樣,研究組必須再製造出一個多面量子骰子,把它扔出去,記錄結果,同時它會再次消失。

所以,第四步,研究組對第一步、第二步和第三步重複1900萬次,共完成1900萬次取樣,得到1900萬個由0和1組成的56位字串。

第五步,研究組將所有得到的字串按照出現次數從少到多的順序排列起來,得到一組關於機率大小的機率分佈。然後與理論預言進行比較。

如果機率分佈與理論預言相差較大,說明實驗誤差太大,實驗失敗。

如果機率分佈與理論預言相差無幾,說明實驗誤差在可控範圍內,實驗成功。

實驗結果表明,本輪實驗圓滿成功。

用量子計算機扔1900萬次量子骰子要多久?

2。 我們在理論上想要實現的取樣步驟和實際上在“祖沖之號”2。0中實現的取樣步驟略有不同。

理論上看,我們得隨機制造N個許多完全不同的多面骰子,對每個多面骰子扔1次,才能得到我們想要的波特-托馬斯分佈。

用量子計算機扔1900萬次量子骰子要多久?

實際上,我們不必把實驗步驟設計得這麼複雜,也能得到波特-托馬斯分佈。透過數學計算,我們可以證明,只要“祖沖之號”2。0的隨機線路設計得足夠好,我們只需要透過執行它,得到N個完全相同的多面骰子,對每個多面骰子扔1次,就能得到我們想要的波特-托馬斯分佈。

用量子計算機扔1900萬次量子骰子要多久?

這裡說的“隨機線路設計得足夠好”,就是指量子位元數要足夠多,量子位元閘電路的保真度要足夠高,隨機線路的層數要達到一定標準等等。這就是我們在最後一節提到的,實驗物理學家所應對的挑戰。

3。 相比之下,由於Google“懸鈴木”的量子位元少一些,取樣次數也有所不同,因此,使用“Summit”超級計算機完成經典模擬,只需要2天的時間。

參考文獻:

‍1。 Yulin Wu et al。Strong Quantum Computational Advantage Using a Superconducting Quantum Processor。 Phys。 Rev。 Lett。 127, 180501。

2。 Han-Sen Zhong et al。Phase-Programmable Gaussian Boson Sampling Using Stimulated Squeezed Light。 Phys。 Rev。 Lett。 127, 180502。‍

3。 覃儉。 實驗光學量子資訊處理[D]。 合肥:中國科學技術大學,2021。

End

作者:

Sheldon

繪製:賞鑑、

周源

美指:

牛貓

排版:

Mirror

鳴謝:

吳玉林,陸朝陽

本文已發表於墨子沙龍,版權歸墨子沙龍所有

本頁刊發內容未經書面許可禁止轉載及使用,

自媒體、報刊等轉載請聯絡墨子沙龍授權,

TAG: 量子位元硬幣骰子多面