量子計(jì)算已經(jīng)成為了世界各國(guó)未來(lái)科技發(fā)展的必爭(zhēng)之地。美國(guó)提出「無(wú)盡前沿法案」,預(yù)計(jì)投入千億美元布局量子計(jì)算等10個(gè)領(lǐng)域;歐盟也投入10億歐元,推行量子旗艦計(jì)劃。中國(guó)的十四五規(guī)劃和2035年遠(yuǎn)景目標(biāo)綱要,也明確要加快布局量子計(jì)算、量子信息等領(lǐng)域。
現(xiàn)在很多人都認(rèn)為,量子計(jì)算會(huì)引領(lǐng)下一波技術(shù)變革的浪潮。世界技術(shù)變革已經(jīng)經(jīng)歷了三波重要的浪潮,一個(gè)是互聯(lián)網(wǎng)和個(gè)人計(jì)算機(jī)的興起,一個(gè)是移動(dòng)互聯(lián)網(wǎng)和智能手機(jī)的興起,第三個(gè)是萬(wàn)物互聯(lián)與智能設(shè)備的興起。而量子計(jì)算,大概率會(huì)是未來(lái)科技發(fā)展的新起點(diǎn)。
國(guó)內(nèi)外巨頭公司也紛紛跟進(jìn)量子領(lǐng)域,谷歌IBM英特爾都在造自己的量子計(jì)算機(jī),特別是2019年谷歌宣布實(shí)現(xiàn)量子霸權(quán)。中國(guó)在量子計(jì)算領(lǐng)域也有世界領(lǐng)先的技術(shù),2021年中科大潘建偉院士團(tuán)隊(duì)研發(fā)了九章二號(hào)和祖沖之二號(hào)量子計(jì)算機(jī),比超級(jí)計(jì)算機(jī)快了10的24次方倍。
似乎到了量子計(jì)算領(lǐng)域,數(shù)字要么特別特別小,只有幾個(gè)電子大小,要么特別特別大,性能提升后面放多少個(gè)零都不夠用。
不久前,百度召開(kāi)了量子開(kāi)發(fā)者大會(huì),并且發(fā)布了名叫「乾始 」的超導(dǎo)量子計(jì)算機(jī),以及名叫「量羲 」的全平臺(tái)量子軟硬一體解決方案。說(shuō)明百度也已經(jīng)開(kāi)始布局量子計(jì)算領(lǐng)域了。
但可能很多人都和我一樣,看到量子計(jì)算的時(shí)候都會(huì)有茫茫多的疑問(wèn)。量子計(jì)算機(jī)究竟是什么?它有哪些好處?它到底能干什么事兒?為什么這些大公司都在拼命布局這個(gè)領(lǐng)域?作為一個(gè)量子物理的外行、計(jì)算機(jī)領(lǐng)域的半個(gè)內(nèi)行,我也是刻苦學(xué)習(xí)了一下量子計(jì)算機(jī)的皮毛。今天我們來(lái)就看一看這個(gè)引領(lǐng)未來(lái)科技發(fā)展的量子計(jì)算,究竟是什么;以及造一個(gè)能用的量子計(jì)算機(jī),到底有多難。
1. 什么是量子計(jì)算
和傳統(tǒng)計(jì)算機(jī)相比,量子計(jì)算機(jī)到底有什么優(yōu)勢(shì)呢?它最大的優(yōu)點(diǎn),就是比傳統(tǒng)計(jì)算機(jī)的運(yùn)算速度快的多的多的多,以至于它速度提升的倍數(shù),1后面的0數(shù)都數(shù)不清。
舉個(gè)例子,在破解密碼的時(shí)候需要用到的一個(gè)關(guān)鍵操作,就是對(duì)一個(gè)數(shù)進(jìn)行質(zhì)因式分解:這個(gè)我們?cè)谛W(xué)可能就學(xué)過(guò),比如把15分解成3和5的乘積,把63分成3乘3乘7的乘積。
這個(gè)操作看起來(lái)很簡(jiǎn)單,但當(dāng)一個(gè)數(shù)很大的時(shí)候,分解起來(lái)就非常難了。比如對(duì)300位的數(shù)字進(jìn)行質(zhì)因式分解,傳統(tǒng)計(jì)算機(jī)開(kāi)足馬力可能也要算15萬(wàn)年!但是對(duì)于量子計(jì)算機(jī)來(lái)說(shuō),就可以算的非??欤?秒鐘就可以完成。
那么為什么量子計(jì)算機(jī)能算的這么快呢?這是由它的工作原理決定的。不過(guò)在介紹量子計(jì)算機(jī)的工作原理之前,有必要先簡(jiǎn)單了解下傳統(tǒng)計(jì)算機(jī)是如何工作的,只有這樣才能直觀知道量子計(jì)算機(jī)到底提升在什么地方。
傳統(tǒng)計(jì)算機(jī)的最小組成單位是晶體管,它本質(zhì)就是一個(gè)開(kāi)關(guān),所以計(jì)算機(jī)最本質(zhì)的工作原理就是利用晶體管的開(kāi)和關(guān),去表示0和1。這也是計(jì)算機(jī)里表示數(shù)的最小單位:比特,也叫做1位。有了0和1,我們就可以用二進(jìn)制表示所有的數(shù)了,比如前面的3就是011,5就是101。我們還可以用很多個(gè)晶體管組成各種電路來(lái)完成特定的運(yùn)算,比如加減乘除。然后這些簡(jiǎn)單的電路可以再組合成更加復(fù)雜的電路,最終形成一個(gè)完整的計(jì)算機(jī)芯片。
現(xiàn)代計(jì)算機(jī)芯片里包含了成百上千億個(gè)晶體管,比如蘋果的M1 Ultra里就有1140億個(gè)晶體管。也有統(tǒng)計(jì)數(shù)據(jù)說(shuō),到2025年,世界上所有芯片里晶體管的數(shù)量總和,會(huì)超過(guò)世界上所有人身體里的細(xì)胞數(shù)量總和。毫不夸張的說(shuō),現(xiàn)代文明就是建立在這一個(gè)個(gè)小小的晶體管上的。
但是盡管有這么多晶體管,它們卻有一個(gè)根本的問(wèn)題,那就是每個(gè)晶體管在同一個(gè)時(shí)刻只有一個(gè)值。因?yàn)榫w管的狀態(tài)要么是開(kāi)要么是關(guān),所以只能表示0或者1。也就是說(shuō),做一次計(jì)算,只能得到一個(gè)固定的結(jié)果。
所以如果要進(jìn)行大量計(jì)算的時(shí)候,只有兩種辦法,一個(gè)是加快每次計(jì)算的速度,比如提高CPU的計(jì)算頻率,另外一個(gè)就是多個(gè)計(jì)算同時(shí)進(jìn)行,比如采用更多的CPU內(nèi)核、或者買更多的計(jì)算機(jī)并行運(yùn)行。但是對(duì)于前面說(shuō)的特別復(fù)雜的問(wèn)題,要算15萬(wàn)年才能解決的問(wèn)題,買成千上萬(wàn)臺(tái)服務(wù)器可能都解決不了。這個(gè)時(shí)候,量子計(jì)算機(jī)的優(yōu)勢(shì)就展現(xiàn)出來(lái)了。
量子計(jì)算機(jī)里沒(méi)有晶體管了,它表示數(shù)的最小單位也不是比特了,而是叫量子比特Qubit。它也有0和1兩個(gè)值,但它還可以表示0和1之間的任意狀態(tài),這個(gè)就是它的玄妙之處。這種特性有個(gè)專有名詞,叫量子疊加 superposition。
打個(gè)比方大家應(yīng)該就能理解了,上臺(tái)階的時(shí)候我們可以從一個(gè)臺(tái)階上到另外一個(gè)臺(tái)階,這兩個(gè)臺(tái)階就是0和1.我們不能說(shuō)上了半截臺(tái)階,或者上了73%的臺(tái)階。這個(gè)就是傳統(tǒng)計(jì)算機(jī)的比特。但對(duì)于量子計(jì)算機(jī),就沒(méi)有臺(tái)階了,而是一個(gè)斜坡。我們可以從坡底一步走到坡頂,但也可以走一半,或者走73%,或者站在這個(gè)斜坡上的任意地方。
量子疊加是單個(gè)量子比特的重要特點(diǎn),當(dāng)多個(gè)量子比特放在一起的時(shí)候,還有另外一個(gè)非常重要的特性:量子糾纏。用非常簡(jiǎn)單的話說(shuō),就是多個(gè)量子比特會(huì)相互作用,糾纏在一起,從而形成一個(gè)整體。
量子疊加和量子糾纏這兩個(gè)特性是量子計(jì)算的關(guān)鍵,借助這些特性,就能做出很多有意思的東西。最重要的就是一次性完成多個(gè)計(jì)算,從而極大提升計(jì)算的速度。比如對(duì)于傳統(tǒng)計(jì)算機(jī)來(lái)說(shuō),兩個(gè)比特能表示四個(gè)數(shù),也就是00、01、10、11,但某個(gè)具體的時(shí)刻只能有一個(gè)值。但對(duì)于兩個(gè)量子比特,這四個(gè)值可以同時(shí)存在。隨著量子比特?cái)?shù)的增加,能同時(shí)表示的數(shù)也會(huì)指數(shù)級(jí)的增加,N個(gè)量子比特就可以同時(shí)有2的N次方個(gè)值,這就相當(dāng)于在同一個(gè)時(shí)刻,可以進(jìn)行2的N次方個(gè)運(yùn)算。隨著量子比特?cái)?shù)N的增加,這個(gè)數(shù)會(huì)變的非常大,當(dāng)N=300的時(shí)候,這個(gè)數(shù)會(huì)超過(guò)全宇宙包含的所有原子的總數(shù)。相比之下,傳統(tǒng)計(jì)算機(jī)在同一個(gè)時(shí)刻只能進(jìn)行一次運(yùn)算,這就體現(xiàn)出性能的巨大差別了。
不過(guò),雖然量子計(jì)算機(jī)能同時(shí)算很多次,但并不是所有的結(jié)果都是需要的。比如一加一等于二,而不是013。這時(shí)候就需要我們?cè)O(shè)計(jì)專門的量子電路,通過(guò)改變量子比特的狀態(tài),對(duì)結(jié)果進(jìn)行篩選,得到想要的一種或者多種結(jié)果。這些量子電路組合在一起,就是量子計(jì)算機(jī)。
但是值得注意的是,量子計(jì)算機(jī)暫時(shí)并不是一個(gè)通用計(jì)算機(jī),而是一個(gè)專用計(jì)算機(jī),也就是說(shuō),你可以專門設(shè)計(jì)一個(gè)量子計(jì)算機(jī)來(lái)做質(zhì)因數(shù)分解,而且他會(huì)做的非常非常快,但你沒(méi)辦法用它來(lái)刷視頻打游戲。至少到目前為止,量子計(jì)算機(jī)并不能取代我們現(xiàn)在用的傳統(tǒng)計(jì)算機(jī),它們更多是相互補(bǔ)充、取長(zhǎng)補(bǔ)短,各自在自己適合的領(lǐng)域里使用。
2. 造一個(gè)量子計(jì)算機(jī)有多難
對(duì)于所有計(jì)算機(jī),它的核心都是芯片。只不過(guò)傳統(tǒng)計(jì)算機(jī)的核心是CPU,而量子計(jì)算機(jī)的核心是量子芯片。傳統(tǒng)CPU芯片更關(guān)注芯片制造的工藝,比如使用3納米還是5納米工藝,相比之下,量子芯片對(duì)制程工藝并沒(méi)有那么嚴(yán)格的要求,而是對(duì)芯片的運(yùn)行環(huán)境有著嚴(yán)格甚至是嚴(yán)苛的要求。為了實(shí)現(xiàn)對(duì)量子比特的精確控制,就需要精確控制量子芯片周圍的溫度、震動(dòng)、噪聲、電磁波等等環(huán)境因素。
就拿百度這次發(fā)布的超導(dǎo)量子計(jì)算機(jī)乾始為例,它里面的量子芯片工作在極低的溫度,達(dá)到了零下273.14度,只比絕對(duì)零度只高一點(diǎn)點(diǎn)。所以對(duì)制造量子芯片的材料也有更高的要求,比如使用更高純度的硅等等。
除了芯片本身,設(shè)計(jì)芯片用的EDA軟件也要重新設(shè)計(jì)和開(kāi)發(fā),比如需要重新采集低溫環(huán)境下電路數(shù)據(jù),并且對(duì)電路的行為進(jìn)行建模仿真。為了達(dá)到接近絕對(duì)零度的低溫,傳統(tǒng)的冰箱肯定不能用,還要用特殊的制冷機(jī)。量子芯片的數(shù)據(jù)輸入和輸出,也要通過(guò)專門的路徑和控制芯片來(lái)完成。所有的這些,其實(shí)都是量子計(jì)算機(jī)的硬件部分。
事實(shí)上除了硬件之外,軟件也是同樣重要甚至是更重要的部分。和傳統(tǒng)計(jì)算機(jī)類似,量子計(jì)算機(jī)也需要通過(guò)編程才能使用,這就需要編程環(huán)境和編程工具,他們統(tǒng)稱為量子計(jì)算平臺(tái)。比如百度的量易伏,這次發(fā)布了3.0版本,它就結(jié)合了量子軟件開(kāi)發(fā)工具集SDK、云上的集成開(kāi)發(fā)環(huán)境IDE,支持混合語(yǔ)言編程,還能從云端進(jìn)行接入,并且可以連接多種不同的超導(dǎo)計(jì)算機(jī)硬件。
在接口的部分,由于量子計(jì)算機(jī)的結(jié)構(gòu)和傳統(tǒng)計(jì)算機(jī)差別太大,也需要專門的測(cè)試、優(yōu)化與調(diào)度的測(cè)控平臺(tái),來(lái)對(duì)接量子計(jì)算機(jī)的制冷機(jī)、微波電子學(xué)設(shè)備、量子芯片等等核心硬件。就像百度的量脈平臺(tái),就可以將軟件程序高效編譯成量子硬件設(shè)備可以識(shí)別的脈沖信號(hào),起到量子軟件和硬件的橋梁和紐帶作用。
雖然已經(jīng)很復(fù)雜了,但這個(gè)時(shí)候這個(gè)量子計(jì)算機(jī)還不算是能用。為了真正讓量子計(jì)算機(jī)從實(shí)驗(yàn)室里走出來(lái),實(shí)現(xiàn)商業(yè)化應(yīng)用,還要解決的另外一個(gè)關(guān)鍵問(wèn)題就是應(yīng)用和落地。就像人工智能里下棋的阿爾法狗、新能源汽車里的無(wú)人駕駛一樣,量子計(jì)算也必須找到自己的殺手級(jí)應(yīng)用。
除了一開(kāi)始說(shuō)的質(zhì)因數(shù)分解這些特別基礎(chǔ)性的應(yīng)用之外,其實(shí)人們更關(guān)心什么時(shí)候能把量子計(jì)算機(jī)用在更廣泛的領(lǐng)域,比如機(jī)器學(xué)習(xí)、互聯(lián)網(wǎng)、生物醫(yī)藥這些地方,并且讓普通開(kāi)發(fā)者也能用量子計(jì)算機(jī)進(jìn)行開(kāi)發(fā)。
在這次百度的發(fā)布里我們可以看到,他們把百度飛槳和量子計(jì)算結(jié)合在了一起,做了一個(gè)量子機(jī)器學(xué)習(xí)平臺(tái)量槳,在里面提供了量子神經(jīng)網(wǎng)絡(luò)、量子核方法、含噪量子電路模擬等模塊,能幫助開(kāi)發(fā)者快速進(jìn)行量子機(jī)器學(xué)習(xí)的研發(fā)。
我覺(jué)得這對(duì)于廣大機(jī)器學(xué)習(xí)從業(yè)者來(lái)說(shuō)是個(gè)好事情,是否能夠根據(jù)自己應(yīng)用的特點(diǎn),并且很好的利用前面說(shuō)的量子計(jì)算機(jī)的特點(diǎn),從而達(dá)到N個(gè)數(shù)量級(jí)的性能提升,這個(gè)說(shuō)不定會(huì)產(chǎn)生非常有意思的工作,而且這比日復(fù)一日的調(diào)參要有趣多了。
除了機(jī)器學(xué)習(xí)之外,其他不同產(chǎn)業(yè)的開(kāi)發(fā)者也可以利用這個(gè)量子軟件平臺(tái)里的應(yīng)用軟件、操作系統(tǒng)、硬件驅(qū)動(dòng)來(lái)構(gòu)建自己的應(yīng)用。單靠一個(gè)量子計(jì)算機(jī)是遠(yuǎn)遠(yuǎn)不夠的,只有通過(guò)軟件和編程框架,讓普通開(kāi)發(fā)者能把量子計(jì)算機(jī)用起來(lái),讓各行各業(yè)都參與進(jìn)來(lái),一起把蛋糕做大,才能幫助量子計(jì)算真正實(shí)現(xiàn)產(chǎn)業(yè)化落地,這應(yīng)該也是百度為什么花大力氣去搞量子軟件的主要原因。
3. 小結(jié)
對(duì)于任何新興技術(shù)來(lái)說(shuō),開(kāi)放合作、兼容并包,一起構(gòu)建健康的生態(tài),是最重要的。有個(gè)很有趣的例子,就是量子計(jì)算剛興起的時(shí)候,如果它的性能遠(yuǎn)超傳統(tǒng)計(jì)算機(jī),我們就說(shuō)它取得了量子霸權(quán)。但后來(lái),人們就不說(shuō)霸權(quán)了,而是把這個(gè)詞改成了量子優(yōu)越性。從這個(gè)細(xì)節(jié)其實(shí)能看到,其實(shí)量子計(jì)算并沒(méi)有什么霸權(quán),前面說(shuō)了它甚至并不能取代傳統(tǒng)計(jì)算機(jī),二者更多的是相互補(bǔ)充和促進(jìn)的關(guān)系。
事實(shí)上,比霸權(quán)更重要的,是通過(guò)量子計(jì)算給人類社會(huì)帶來(lái)的共同進(jìn)步。量子計(jì)算對(duì)傳統(tǒng)計(jì)算機(jī)的超越,并不是結(jié)束,而是剛剛開(kāi)始。
(本文不代表老石任職單位之觀點(diǎn))