想像你有一盒積木。在我們平常的世界裡,每一塊積木都只有一種顏色,要嘛是紅色,要嘛是藍色,不會同時是兩個顏色。這就像我們一般電腦用的位元,不是0就是1,非常清楚。
但是,在「量子」的世界裡,積木就變得超級神奇了,一塊量子積木,竟然可以「同時是紅色,又是藍色」,就像在變魔術一樣。這種「同時存在兩種狀態」的神奇能力,我們就叫它「量子疊加」。
還有更厲害的喔。如果你把兩塊量子積木用魔法黏在一起,它們就會變得很有默契,好像可以心電感應一樣。就算你把這兩塊積木分開,一個放在北極,一個放在南極,只要你改變其中一塊的顏色,另一塊的顏色就會馬上跟著改變。它們總是同步行動,永遠不會分開。這種神奇的現象,我們就叫它「量子糾纏」。這跟那個「量子波動速讀」完全沒關係,那是騙人的,千萬不要搞混了喔!
量子電腦是怎麼工作的?
量子電腦啊,就是利用這些神奇的魔術積木,來蓋出一台超級厲害的電腦。它可以做到很多普通電腦做不到、或是要花很久很久才能完成的事情。它的工作方法,可以分成三個部分來理解。
第一個重點:神奇的量子積木,我們叫它「量子位元」
普通電腦的積木,叫做「位元」,它像一個普通的開關,只能選擇「開」(也就是1)或「關」(也就是0)。但是,量子電腦的積木是「量子位元」,它就像一個會魔法的開關,可以「同時是開和關」。就像我們剛剛說的積木可以同時是紅色和藍色一樣。這個同時是開和關的能力,就是「量子疊加」。
第二個重點:我們怎麼玩這些量子積木,叫做「量子閘」
有了這些神奇的積木,我們還需要一些玩法,才能把它們變成有用的東西。我們可以用一些特殊的方法,比如翻轉它、旋轉它,來改變它的狀態。這就像我們用不同的工具,可以把普通的積木變成房子或車子。這些操控量子積木的方法,我們就叫它「量子閘」。
第三個重點:我們怎麼把積木拼起來,叫做「量子演算法」
不同的問題,要用不同的方法來拼積木。如果你想用積木蓋一座城堡,跟想用積木蓋一台火車,你的蓋法一定不一樣,對吧?量子電腦也是一樣。科學家們會針對不同的問題,設計出不同的「拼法」,也就是「量子演算法」。量子電腦就是照著這些「拼法」,來解決各種問題。
為什麼量子電腦這麼厲害?
讓我們用一個找迷宮出口的遊戲來解釋。
假如你面前有一個很大很大的迷宮,裡面有很多條路,但只有一條路可以走出去。
一般電腦就像一隻小老鼠。這隻小老鼠沒有地圖,也沒有方向感,只能一條路、一條路的慢慢試。它會先走第一條路,走到盡頭發現是死路,就退回來,再走第二條路。如果迷宮裡有一千萬條路,那它可能就得走上好幾年才能找到出口。
但是,量子電腦就不一樣了。因為量子積木有「疊加」和「糾纏」的超能力,它就像擁有分身術一樣,可以「同時」變出幾千、幾萬、甚至幾億個分身。這些分身會在同一時間,各自去探索迷宮裡所有不同的路。只要其中一個分身找到出口,其他分身就會收到消息,然後大家一起說:「找到了!出口在這裡!」
所以,量子電腦可以「瞬間」解決這個迷宮問題。這就是量子電腦最厲害的地方,它能把一個需要花很久才能解決的問題,變成像變魔術一樣快。
簡單來說,量子電腦就是用這種超級厲害的魔術積木蓋出來的超級電腦。它能幫我們解決很多又快又難的事情,是不是很酷呢?
量子電腦的誕生故事
這麼厲害的點子,是誰想出來的呢?這要回到1980年代,有一位很聰明的物理學家,叫做理查德.費曼。他提出一個很特別的想法:「如果我們想了解一個東西是怎麼運作的,最好的方法就是做一個一模一樣的東西出來模擬它。」
費曼發現,我們想要了解的世界,像原子、分子這些東西,它們的運作方式都符合「量子」的規則,是很複雜的。如果用一般電腦去模擬它們,會非常非常慢,甚至做不到。所以費曼就說:「那我們為什麼不乾脆做一台『量子電腦』,用量子的規則來模擬量子世界呢?」從那個時候開始,科學家們就開始努力研究,想把量子電腦做出來。
後來,大家發現量子電腦不只可以用來模擬分子,還可以做很多其他厲害的事情。比如說,有科學家用16個量子位元,做了一個叫做「量子退火」的技術,專門用來解決超級複雜的最佳化問題。什麼是最佳化問題呢?比如說,快遞公司有100台貨車要送1000個包裹,要怎麼安排路線,才能讓所有車子跑的路最短、最省油?這就是一個很難的最佳化問題,而量子退火就是專門處理這類問題的厲害工具。
不過,要做出能用的量子電腦真的非常困難。它需要非常非常低的溫度來運作,比外太空還要冷。而且,為了讓它保持低溫,會消耗很多電力。根據估計,目前全世界有大約百分之三的電,是用在跟量子計算相關的設備上。所以,科學家們也在努力研究,希望能做出更省電的量子電腦技術。
哪些公司在努力做出量子電腦?
世界上有很多很厲害的公司,都在努力把量子電腦變得更強大、更實用。從我們找到的資料來看,下面這些公司都在做相關的研究:
- 微軟(Microsoft),他們是一家很大的軟體公司,也投入了很多資源在量子電腦的研究上。
- IonQ,這是一家專門在做量子電腦的公司。
- Rigetti,這也是一家量子電腦公司,他們還提供雲端服務,讓其他人可以透過網路來使用他們的量子電腦。
- Quantum Circuits, Inc.,從名字就可以看出來,他們也是在做量子電路相關的研究。
- D-Wave Systems,他們是專門做「量子退火」這種量子電腦的公司。
- IBM,他們有推出一個叫IBM Q的量子電腦平台,在量子計算領域是非常重要的一家公司的。
當然,世界上還有其他很多公司和研究機構也在研究量子電腦,只是這份資料裡面沒有全部提到。
量子電腦厲害在哪裡?
我們剛剛一直說量子電腦很厲害,但它到底厲害在哪裡呢?最關鍵的地方,就在於「量子位元」這個魔術積木。因為它有「疊加」和「糾纏」這兩種超能力,所以讓量子電腦可以用一種完全不同的方式來計算。
接下來的內容,會提到一些比較專門的名詞,像是「演算法」和「平行計算」,不用擔心,我們一樣會用講故事的方式,讓你聽得懂。
量子位元的疊加與糾纏如何徹底改變計算速度?
我們先來詳細說說,為什麼疊加和糾纏能讓量子電腦變這麼快。
疊加狀態與量子平行計算
一般電腦的積木,我們剛剛說了,一次只能代表一個數字,不是0就是1。就像你只能用手指比出一個數字,比1就不能同時比2。
可是,一個量子位元因為有疊加的能力,它可以同時代表0和1。那如果我們有兩個量子位元呢?它們可以同時代表00、01、10、11這四種組合。如果我們有三個量子位元,就可以同時代表八種組合。總結來說,如果有N個量子位元,它們就可以同時代表2的N次方(也就是2乘以2乘以2…總共N次)這麼多種組合。
這代表什麼呢?當量子電腦在執行一個運算時,它可以把這個運算一次就套用到這2的N次方種組合上。這就好像你有一道數學題目,要你把1到1000全部加起來。一般電腦只能一個一個加,從1加到2,再加3…一直加到1000。但量子電腦可以「同時」把這1000個數字全部加在一起,一個步驟就完成。這種能力,我們就叫它「量子平行計算」。有了這種能力,計算速度就能獲得指數級的提升,變得超級快。
量子糾纏的作用
量子糾纏則是另一種超能力。它讓兩個或更多個量子位元之間,產生一種神奇的連結。不管它們離得多遠,只要我們改變其中一個的狀態,另一個就會立刻跟著改變。這種特性,讓量子電腦在處理需要考慮很多變數之間關係的問題時,會變得非常厲害。因為這些變數就像被糾纏的量子位元一樣,彼此之間有著非常緊密的關聯。
結合疊加與糾纏的巨大威力
把疊加和糾纏這兩種能力結合在一起,就等於給了量子電腦一個超級武器。它可以在同一時間,處理海量的可能性,並且能同時考慮這些可能性之間的關聯。比如說,我們要破解一個密碼,傳統電腦需要一個一個去試可能的密碼。但量子電腦可以「同時」嘗試所有可能的密碼組合,並且還能利用糾纏的特性,找出組合之間的關聯,讓破解的速度快上幾億、幾兆倍。
量子平行計算與傳統平行計算有什麼不一樣?
你可能會問:「一般電腦不是也可以同時做很多事情嗎?比如說我一邊玩遊戲一邊聽音樂,這不就是平行計算嗎?」沒錯,這也是一種平行,但它跟量子平行計算有根本上的不同。
資訊狀態的表示與處理機制
傳統電腦的平行計算,是「數量」上的平行。意思是,我們在電腦裡面裝了好幾個處理器,每個處理器各自處理一件不同的事情。比如說,一個處理器負責遊戲,另一個處理器負責音樂,這樣就可以「同時」進行。但每個處理器在運算的時候,還是一個一個慢慢算,只是分工合作而已。
但量子平行計算,是「本質」上的平行。它不是靠很多處理器來分工,而是靠量子位元「疊加」的物理特性。一個量子位元本身就同時代表了0和1兩種狀態,所以它從根本上就具有「一次做兩件事」的能力。
單一步驟的大規模平行運算
我們用一個例子來說明。假設我們有一個數學函數,需要把它套用到所有可能的輸入值上。如果可能的輸入值有1024種,傳統計算機就需要執行1024次計算,才能把答案全部算出來。就算你用100個處理器來分工,也還是需要執行10輪以上的計算才能完成。
但是,量子電腦只需要一個步驟!它利用量子疊加,把這1024種可能的輸入值,全部壓縮成一個量子態。然後,它只需要執行一次運算,這個運算就會同時作用在這1024種輸入值上,同時得出所有的答案。這就是「單一步驟」完成大規模平行運算的神奇之處。
效能的指數級躍升
總結來說,傳統平行計算是靠增加處理器數量來提升速度,速度的提升是線性的,也就是說,處理器數量加倍,速度大約也加倍。而量子平行計算,是靠量子疊加來提升速度,速度的提升是指數級的。也就是說,當量子位元數量增加一點點,它能夠同時計算的可能性數量就會以驚人的速度暴增。這就是為什麼量子電腦能解決傳統電腦幾萬年都算不完的問題。
量子計算機在處理大規模平行運算時的難題
聽起來量子電腦好像無所不能,但實際上,要把它做出來,還有好幾個超難的關卡要過。
第一關:量子退相干與環境敏感性
量子位元就像一個特別敏感的小寶寶,非常容易受到外界的影響。只要周圍有一點點震動,溫度有一點點變化,甚至有一點點雜音,它就會失去「疊加」和「糾纏」的能力,從一個神奇的魔術積木,變回一個普通的積木。這個失去神奇能力的過程,我們就叫它「退相干」。一旦發生退相干,計算就會出錯。
第二關:極高的錯誤率與系統不穩定性
正因為量子位元這麼敏感,所以目前的量子電腦非常容易出錯。它們的狀態極不穩定,可能剛開始運算幾秒鐘就壞掉了。科學家們要花很多力氣去測試和維護,但還是很難讓它們穩定地工作。跟我們現在用的普通電腦比起來,量子電腦的錯誤率高得太多了。
第三關:嚴苛的運作環境需求
為了讓量子位元不要太快「退相干」,科學家們必須給它們一個超級穩定的環境。這通常意味著要把它們放到接近「絕對零度」的地方。絕對零度是宇宙中最冷的溫度,大概是零下273度。為了達到這麼低的溫度,科學家們需要用到叫做「超冷冰箱」的大型設備,還需要很多隔熱和隔絕震動的裝置。這些設備又大、又貴、又耗電。
第四關:量子糾錯與規模擴展的瓶頸
為了要解決錯誤率太高的問題,科學家們設計了「量子糾錯碼」。這個技術可以幫忙找出錯誤並修正它。但是,這個技術需要消耗大量的「額外」量子位元來保護真正用來計算的量子位元。也就是說,如果你想要用100個量子位元來計算,你可能還需要幾百個甚至幾千個量子位元來幫它們「糾錯」。當我們想把量子電腦做到能夠解決真正複雜的問題時,可能需要幾百萬個量子位元,那所需的空間、連線、和複雜度,就變成了一個幾乎無法跨越的巨大障礙。
量子電腦運作原理(用更簡單的話再說一次)
我們再來複習一次,量子電腦到底是怎麼工作的。
量子疊加與量子平行計算
量子電腦最核心的秘密,就是「量子疊加」。它讓一個量子位元可以同時是0和1。這就像是一個硬幣,在它還沒落地的時候,我們可以說它「同時是正面和反面」。當我們有好多個這樣的量子位元時,它們就能同時代表非常多種不同的狀態。當我們進行一次運算時,等於同時對所有這些狀態進行了計算。這就是它為什麼這麼快的原因。
量子糾纏
「量子糾纏」就像是把兩個硬幣用魔法綁在一起。不管它們離得多遠,只要你看一下其中一個是正面還是反面,另一個就會「瞬間」變成相反的那一面。這種特性,讓量子電腦可以非常有效率地處理那些彼此之間有複雜關係的問題。
量子干涉
「量子干涉」就像是水波一樣。當兩個水波疊在一起,如果它們的方向一樣,就會變得更高;如果方向相反,就會互相抵消。量子電腦利用這個特性,在運算的時候,想辦法讓「錯誤的答案」互相抵消,讓「正確的答案」變得越來越突出,最後我們測量到的,就會是正確的答案。
量子邏輯閘與硬體控制
為了讓量子位元做到上面這些事,我們需要一些工具來操控它們。這些工具就像是一套特殊的魔法咒語,叫做「量子邏輯閘」。科學家們透過發射雷射、微波,或是調整電壓,來對量子位元施展這些魔法,改變它們的狀態。
測量與退相干的挑戰
計算到最後,我們需要知道答案。這個過程叫做「測量」。一旦我們去測量量子位元,它就會從神奇的疊加狀態,變成一個明確的結果,比如說,它會確定是0或1,我們就能讀到答案了。但是,維持量子狀態非常困難,環境的干擾隨時會讓它「退相干」,失去超能力。
量子電腦與一般電腦有什麼不同?
我們把量子電腦和一般電腦的不同點,用一個表格來比較看看。
資訊表示與運算基礎
一般電腦用的是「位元」,一個位元在任一時間只能是0或1,非常明確。
量子電腦用的是「量子位元」,一個量子位元可以同時是0和1,這就是量子疊加。
運算模式與速度擴展
一般電腦是「序列運算」,也就是一個步驟一個步驟慢慢算。增加速度的方法是增加電晶體數量,速度大致上是「線性」成長。
量子電腦是「量子平行計算」,一個步驟可以同時算很多種可能性。增加速度的方法是增加量子位元數量,速度是「指數級」成長,快上非常多。
擅長的應用領域
一般電腦很適合處理日常生活中的各種事情,比如上網、寫作業、看影片,這些事情它做得又快又好。
量子電腦並不是用來取代一般電腦的。它專門用來解決一般電腦算不出來的「極度複雜」問題,比如破解密碼、研發新藥、模擬分子運動、規劃全球物流路線等等。
運作環境與系統穩定性
一般電腦在一般的室溫下就能穩定運作,而且幾乎不會出錯。
量子電腦需要在接近絕對零度的極低溫環境下才能運作,而且目前錯誤率還是很高。
量子電腦能不能完全取代我們現在用的電腦?
答案是:不行。量子電腦不是來取代一般電腦的,它們的角色是「互補」,也就是一起合作。
擅長的運算任務不一樣
量子電腦只有在處理特定類型的問題時才會特別厲害。如果你只是要算數學,或是上網、打電動,量子電腦並不會比一般電腦快。所以,日常生活中的事情,我們還是會用一般電腦。
應用領域的明確分工
量子電腦會專門負責處理那些超級複雜的科學和工程問題,比如幫助科學家研發新藥材、幫助公司規劃最省錢的送貨路線、或是研究如何製造出更厲害的電池。而我們平常使用的各種服務、軟體、遊戲,還是會由一般電腦來負責。
嚴苛的運作環境與技術門檻
因為量子電腦需要那麼嚴格的環境才能運作,它不可能變得像手機或筆電一樣小,可以隨身帶著走。它會一直待在研究所或大公司的機房裡,是一個又大又昂貴的設備。一般使用者如果想用它,可能要透過雲端服務,也就是透過網路連線到遠方的量子電腦去使用。所以,我們的個人電腦是絕對不會被取代的。
總結一下,量子電腦的誕生,是為了幫我們解決那些一般電腦永遠算不完的超級難題,而不是要搶走我們手上的電腦。
什麼是量子干涉?它在演算法中扮演什麼角色?
我們之前簡單提過量子干涉,現在我們把它說得更清楚一點。
什麼是量子干涉?
量子干涉,簡單說就是「互相影響」。在量子世界裡,每個狀態都有一個看不見的「機率」,告訴我們這個狀態出現的可能性有多大。干涉就是這些機率之間互相影響、互相加減的現象。就像水波,兩個水波碰在一起,有的地方會疊得更高(建設性干涉),有的地方會互相抵消變平(破壞性干涉)。
量子干涉在演算法中扮演的角色
在量子演算法中,我們會利用量子干涉來做兩件重要的事:
第一,精準引導運算結果。科學家們會透過量子邏輯閘,刻意去操縱量子干涉的現象。他們會想辦法讓「錯誤的答案」發生破壞性干涉,把它們的機率越變越小;同時讓「正確的答案」發生建設性干涉,讓它的機率越變越大。
第二,實現演算法的極速運算。以 Grover 演算法為例,它就是靠著量子干涉,在一個未分類的資料庫裡快速找到目標。它會不斷地重複「放大正確答案、抵消錯誤答案」這個過程,最後讓正確答案的機率變得非常大,大到幾乎可以確定就是它。
量子干涉如何幫助 Grover 搜尋演算法找到答案?
Grover 演算法是一個專門用來在未排序的資料庫中快速找到目標的演算法。我們來看看量子干涉是怎麼幫上忙的。
放大正確答案與抵消錯誤答案
假設我們有一個很大的名單,裡面有幾億個名字,我們想要找到「王小明」這個名字。用一般電腦的方法,我們只能從頭開始一個一個看,直到找到為止。但 Grover 演算法會這樣做:它用量子疊加,同時把這幾億個名字都放進量子電腦裡。然後,它會利用量子干涉,一次一次地進行操作,每一次操作都會讓「王小明」這個名字的機率變高一點,同時讓其他名字的機率變低一點。
精密的量子電路與多輪迭代
Grover 演算法不是一步就能完成,它需要反覆進行很多輪。每一輪,它都會透過精心設計的量子電路,去「翻轉」目標的機率,讓它變大,並讓其他名字的機率變小。經過幾輪之後,「王小明」的機率就會變得超級高,其他名字的機率變得超級低。這時候我們再去測量,就幾乎一定會得到「王小明」這個答案。
實現二次方等級的極速搜尋
Grover 演算法的威力就在於,它可以把搜尋時間從「N」縮短到「根號N」。如果一個資料庫有100萬筆資料,一般電腦平均要搜尋50萬次才能找到目標。但 Grover 演算法只需要大約1000次就可以找到。這種速度的提升叫做「二次方等級的速度提升」,雖然不像 Shor 演算法那麼誇張,但也是非常厲害了。
Shor 演算法如何利用量子特性破解加密?
我們來講一個讓很多科學家又興奮又擔心的演算法,叫做 Shor 演算法。它的發明者是 Peter Shor,他在1994年就提出了這個想法。
為什麼它這麼厲害?因為它可以「分解大數」,而且快得嚇人。我們現在使用的很多加密技術,比如說網路銀行、線上購物時會用到的 RSA 加密,它們的安全性是建立在「大數很難分解」這個數學難題上的。
什麼是分解大數?就是把一個很大的數字,拆成兩個質數相乘。比如說,15可以拆成3乘以5,這很簡單。但如果給你一個超級大的數字,比如一個有幾百位數的數字,要把它拆成兩個質數相乘,對一般電腦來說,可能要算好幾萬年,甚至算不出來。這就是為什麼 RSA 加密很安全。
但是 Shor 演算法用上了量子電腦的超能力,可以在幾分鐘內就把那個超級大的數字分解出來,直接破解 RSA 加密。我們來看看它是怎麼做到的。
量子糾纏與平行運算
要分解一個大數,傳統的演算法必須一個一個地試,看哪個數字是它的因數。這個過程非常慢。但 Shor 演算法利用量子糾纏和平行運算,讓量子電腦可以「同時」試非常多個可能的因數,而不是一個一個慢慢試。這一下子就把計算時間從幾萬年縮短到幾分鐘。
量子傅立葉變換
Shor 演算法還用了一個非常厲害的數學工具,叫做「量子傅立葉變換」。它可以把一個問題變成另一種形式,更容易找出規律。Shor 演算法就是用這個變換,去找到一個函數的「週期」。找到週期之後,就可以很簡單地推算出這個大數的質因數。
破解加密的驚人威力
我們來舉個例子,讓你感受一下這個威力。如果有一個 1000 位數的大數字,用一般電腦來分解,大概需要耗費 1000萬億年。這個時間比宇宙的年齡還要長很多很多。但是,如果用一台夠強大的量子電腦來執行 Shor 演算法,猜猜看需要多久?只需要大約 20 分鐘!
這就是為什麼 Shor 演算法讓所有依賴大數分解的加密系統都面臨巨大的威脅。這也是為什麼現在科學家們要趕快研究「抗量子密碼學」,也就是不怕量子電腦破解的新密碼技術。
目前科學界開發了哪些「抗量子密碼學」技術來應對?
為了對抗像 Shor 演算法這樣的威脅,科學家們正在努力開發新的加密技術,讓量子電腦也沒辦法輕易破解。他們主要有幾個方向。
研發新型的抗量子數學演算法
Shor 演算法之所以能破解 RSA 加密,是因為 RSA 依賴的「大數分解」問題對量子電腦來說很簡單。所以科學家們開始尋找其他數學問題,希望這些問題對量子電腦來說也很難。他們找到了幾種看起來很有希望的數學問題,並根據這些問題設計了新的加密方法。這些方法包括:
基於晶格的密碼學
基於雜湊的密碼學
多變數多項式密碼學
基於編碼的密碼系統
這些名字聽起來很複雜,但簡單說,它們就是建立在不同數學難題上的新鎖,科學家們相信這些新鎖連量子電腦都打不開。
增加對稱金鑰的長度
除了上面的方法,還有一個比較簡單直接的應對方式,就是「把鑰匙變長」。我們的加密系統有分兩種,一種叫「非對稱加密」,比如 RSA,容易被 Shor 演算法破解。另一種叫「對稱式加密」,比如我們上網時用的 AES 加密。Grover 演算法可以讓對稱式加密的安全性降低一半,也就是說,原本需要 256 位元長度的金鑰才能保證安全,在 Grover 演算法面前,它的安全性會縮減到只有 128 位元。那要怎麼對抗呢?很簡單,我們直接把金鑰長度加倍,比如從 256 位元變成 512 位元,這樣一來,即使 Grover 演算法能讓安全性減半,它還是很安全。
量子金鑰分發
還有一個更酷的方法,叫做「量子金鑰分發」。這個方法不用數學來保護,而是直接用量子力學的物理特性來保護。它利用量子糾纏的特性來傳遞密碼鑰匙。因為量子力學有一個很特別的性質,就是「當你試圖觀察或測量一個量子狀態時,你就會改變它」。所以,如果有駭客想要偷聽我們傳遞的鑰匙,他就會改變這個鑰匙的量子狀態,讓收信的人馬上就能發現:「哎呀,有人偷聽!這把鑰匙不能用了!」這樣就能確保沒有人可以偷偷複製我們的鑰匙。量子金鑰分發被認為是未來最安全的通訊方式之一。
總結來說,科學家們一方面在開發不怕量子電腦破解的新型數學密碼(抗量子數學演算法),另一方面也在研究用量子物理來保護密碼的技術(量子金鑰分發)。這兩種方法互相配合,將會是未來量子時代裡,保護我們資訊安全最重要的關鍵。
