●量子世界與量子電腦的基本概念
1.量子理論描述的是量子世界(微觀世界) ,而非宏觀世界。
2.量子世界(薛丁格方程式)只有在量子態(沒有外在干擾的狀態)下存在。
3.宏觀世界因其構成的微觀粒子(量子),經長期相互干擾,導致量子態消失,
故生是生死是死,只有在量子態下才存在薛丁格貓既是生又是死的現象。
4.量子在量子狀態下,可達成⎾量子去相干˩ ,因此當裝有量子態晶片的量子電腦,
就有機會來執行Q-Bit 運算
5.量子電腦營造量子態的方法有很多,其中最常見的是採用絕對零度(0.01K)再用
mu-metal金屬包覆晶片,隔絕外界磁場干擾,來構建量子態。
●量子的特性
1.量子疊加 (quantum superposition):一個量子狀態是所有可能的狀態的組合
2.量子糾纏 (quantum entanglement):量子狀態的資訊也藏在關聯性當中
量子力學中的狀態是處在線性疊加 (superposition) 的狀態,最有名的思想實驗就是薛丁格的貓(Schrödinger’s cat)。如果有一隻量子貓 (quantum cat) ,他的兩種可能的狀態是:活著或死亡。在量子貓被觀察之前,他的量子力學狀態會處於同時活著以及死亡,直到量子貓被觀察時,其狀態才會塌縮 (collapse) 到其中一種。
●量子計算原理 QUBIT
不同於古典的位元 bit ,狀態為 0 或 1 ; 量子位元 (qubit) 處於 0 與 1 的疊加狀態,也就是說一個 qubit 可以攜帶的資訊量更多,不僅只有 0 或 1 而是 0 與 1 的無窮多種組合,又稱為布洛赫球 (Bloch sphere)。
(來源 : http://tul.blog.ntu.edu.tw/archives/25564 )
(來源 : https://aijishu.com/a/1060000000122616 )
●古典電腦與量子電腦之比較
●量子電腦的設計原理
1.量子電路 Quantum Circuit Model (Gate Model)
與古典電腦相同的設計方式,但是將古典邏輯閘 (logic gate) 替換為量子力學中的操作子 (quantum operator) ,以及電路中的狀態由古典的二元狀態替換為量子力學中的波函數 (wave function) 或量子計算中稱為 qubit 。
2.單向量子計算 One-way Quantum Computation Model (MBQC)
也稱為 measurement based quantum computer, MBQC。利用 qubit 糾纏的性質,準備好糾纏態 (entangled state) 並且每次測量一個 qubit ,好處在於每次計算的結果均會成功,但付出的代價是失去平行化的能力 (因為量測需要依賴前一次的結果) 。 稱為 One-way 的原因是糾纏態經過量測後就會被破壞。
3.絕熱量子計算 Adiabatic Quantum Computation Model (AQC)
根據問題設計成漢密爾頓的量子系統表示 (Hamiltonian),如此當系統處在能量最低的時候 (ground state) 就對應到問題的解答。透過絕熱理論 (adiabatic theory) ,最常用的就是量子退火法 (quantum annealing) 緩慢降低系統溫度,達到最低能量狀態。
(來源: https://www.youtube.com/watch?v=zvfkXjzzYOo)
●量子電腦的實作種類
1.量子退火 (Quantum Annealing)
一種控制量子電腦高高低低震盪的溫度,使量子態處於類似鋼鐵焠火過程來解出近似解的量子電腦
真正的量子電腦若能擁有 50 ~ 100 個 qubits 便是量子技術重要的里程碑。但有其他的電腦架構可以實作擁有大量 qubits 電腦。例如 D-Wave 推出得 D-Wave 2000Q 即具有 2000 個 qubits ,但是 D-Wave 的機器並沒有使所有的 qubits 發生糾纏。
量子退火是模擬退火演算法中的進階版。模擬退火 (simulated annealing) 是熱力學中
透過降低溫度找到最小能量狀態的過程;量子退火是在降溫時,系統逐漸靠近基態 (ground state) 並顯現出量子現象 (例如穿隧, quantum tunneling),而加快的得到最低能量,也就相對應全域最佳解。在該技術下,每個 qubit 只和臨近的 qubit 糾纏並交互作用 (稱為 coupler),這並沒有建立起一組並行計算,而是一個整體上的、單一的量子狀態 (也就是說沒有完全利用量子糾纏的特性)。
(來源: https://henrywang7.com/2014/01/18/quantum-annealing-for-pell-equations/)
使用量子退火技術最有名的就是 D-Wave,但很可惜它並不是真正的通用型量子電腦 (universal quantum computer) ,而僅是一種演算法而已。因為它的架構專為退火法而設計,因此沒辦法做其他運算,因此許多人不認為是真正的量子電腦,而只是具有特定功能的量子結構。不過量子退火演算法的強項-全域最佳化在應用上太有用了,也是機器學習等領域必定碰到的且費時的問題,量子退火都能有效的提速。
(來源: https://www.youtube.com/watch?v=zvfkXjzzYOo )
富士通 2020 年上半年將推出數位退火 (digital annealer) 晶片 DAU,晶片則是利用古典電路 (半導體元件製成) 模擬 quantum annealing 的方法,提供到 100萬位元 (bit) 的大規模平行處理能力。
2.量子點 (Quantum Dot)
量子點是能將電子束縛在三維空間中的半導體奈米結構,其束縛的能力來自外加磁場、摻雜、應變或雜質產生等。
(來源: http://www.quantuminfo.physik.rwth-aachen.de/cms/Quantuminfo/Forschung/Institut-fuer-Quantentechnologie/~eyea/Bluhm-SiGe/?lidx=1 )
在開發量子電腦的大廠中,Intel 專注於矽量子點 (silicon quantum dots) 技術 (又被稱為人造原子)。量子點是一塊極小的材料,像原子一樣帶有電子,有自旋上或下的量子態可以用來表示量子位元,並且不需像囚禁離子法需要雷射來困住它。早期的 quantum dot 用幾近完美的砷化鎵晶體製作,但研究人員們更傾向於矽,希望能利用半導體產業的巨大產能,但是基於矽的量子點研究,大大落後於囚禁離子和超導量子技術。
3.超導迴路 (Superconducting Loops)
超導量子電腦是將超導材料線迴路冷卻至接近絕對零度,使電流在沒有阻抗的情況下流動,因迴圈中的電流具有量子效應 (能階量子化、疊加與糾纏),能作為量子位元。
(來源: http://www.kurzweilai.net/lockheed-martin-buys-first-d-wave-quantum-computing-system#!prettyPhoto )
超導迴路中最重要的元件特徵為約瑟夫森接面 (Josephson junction)。約瑟夫森接面是將兩層超導體線路間參入一層很弱的絕緣層,讓電子僅能透過量子穿隧效應通過絕緣層,在電路中作為非線性電感 (non-linear inductance) ,改變電流相位 (也可以改變電荷或通量),作為兩種不同的量子位元。
利用此技術,Google 量子 AI 實驗室發表了新的 72 位元 qubits 的量子處理器 Bristlecone。雖然目前還沒有看到具體的實驗結果,但這塊晶片的未來有很大潛力,很有可能達成量子計算領域內的重要里程碑。
4.囚禁離子 (Trapped Ion)
利用電場或磁場將離子(即帶電原子或分子)俘獲和囚禁在一定範圍內的裝置,離子的囚禁在真空中實現,離子與裝置表面不接觸。離子阱利能用電極產生電場,將經過超冷處理 (雷射冷卻,避免熱擾動) 的離子囚禁在電場裡,實現量子位元 。
(來源: https://physics.aps.org/articles/v7/119 )
其技術代表的公司為 ionQ,目前能把 22 個鐿離子糾纏成一條線形鏈(linear chain),但至今還未能控製或讀取所有的離子對。
5.鑽石空缺 (Diamond Defect)
量子計算中具有前景的技術之一是基於人造金剛石 (鑽石) 中的氮空缺 (nitrogen-vacancy, NV) 中心所構成的。鑽石的晶格是相當穩定的, NV 中心是利用氮取代晶格中原本的碳原子,由於 5A 族的氮比 4A 的碳多出一個電子,這的帶有自旋的電子被緊緊困於空缺中,可以作為量子位元使用。在量子電腦中,如何從量子位元中讀取資訊是一個難題,而鑽石缺陷中的光學性質能使得量子位元很容易被讀取。事實上,鑽石缺陷放出的光子能處於疊加狀態,有利於量子計算。此外,鑽石空缺是目前唯一可以在室溫底下操作的量子計算技術,利用參雜的技術能提升鑽石中的量子位元數量。
(來源: http://science.sciencemag.org/content/320/5883/1601.full )
2012 年在南加州大學成功用鑽石空缺技術的量子電腦實作 Grover 演算法。但目前尚未有明確或顯著的商業應用。
6.拓樸量子位元 (Topological Qubit)
拓樸量子位元是建造可擴展量子系統 (scalable quantum system) 的重要技術。量子拓樸的性質能保護其訊息,比起其他的量子系統的脆弱性,這種保護的特性能提高系統運作的效能。量子系統的疊加狀態很容易因為與外界的交互作用而被破壞,僅僅一顆光子也能讓計算的結果錯誤。可以防止破壞發生方法稱為準粒子 (quasi-particle) 的拓樸保護 (topological protection) 性質。
存在於二維空間的準粒子加上時間,它的運動可以視為在三維時空中的一條軌跡,也稱為世界線 (worldline)。不同粒子的世界線會在時空中互相交錯,產生像是辮子 (braids) 的拓樸形式。這些辮子狀的編織物就是拓樸量子電腦的邏輯閘,由於它們的拓撲性質不會因為小的擾動而發生變化,因此這種結構比使用囚禁離子、超導迴路的結構穩定得多。拓樸量子位元提供了更好的基礎來實作量子電腦,它具有更低的錯誤率、降低物理與邏輯 量子位元的比例,提升可編程的量子位元數量。(當然,由熱擾動引起的誤差仍然是拓撲量子系統的問題,但是可以通過顯著降低溫度並將準粒子分開合理的距離來避免這種情況。)
(來源: https://www.quantamagazine.org/construction-begins-of-topological-qubit-route-to-quantum-computer-20140515/ )
拓樸量子電腦操作的過程:編辮 (braiding) 與 計算。將準粒子的順時針與逆時針交換當作量子位元基本操作,在三維時空中的世界線 (worldline) 則形成對應的辮子 (braidings) 。
在操作計算時,將一群準粒子排列表達出輸入的量子位元。這些準粒子隨時間變化時會與鄰近的其他準粒子交換,這些交換就對應到量子位元的操作。最後計算完成後對準粒子逕行量測取的計算結果。由於過程中的擾動不會對拓撲結構產生影響,因此計算結果不受誤差影響。
(http://www.cs.virginia.edu/~robins/Computing_with_Quantum_Knots.pdf)
二維準粒子是理論預測的結果,但實驗上一直到 2014 年才露出曙光,近期 2018 年在 Microsoft 的研究中成功捕捉。
●各類量子電腦之比較
●量子電腦的硬體
1. 3D 異質集成電路
3D 集成電路 (積體電路) 是將多顆晶片進行三維空間垂直整合 (integrated),以因應半導體製程受到電子及材料的物理極限。若每一層電路功能、製程或材料不同,則稱為異質集成 (heterogeneous integration)。 (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5730618/)
隨著量子位元的數量增加,為了提升量子位元的可擴展性 (extensibility) 與可尋訪性 (addressability),電路的 3D 集成與封裝是相當重要的。雖然 3D 半導體積體電路相當成熟,但是在針對量子位元 — 處於高度相關 (high-coherence) 但是脆弱的狀態 的電路仍是發展中的領域。
例如製造超導迴路量子位元 (superconducting qubit) 的積體電路時,研究發現鄰近的晶片會抑制量子位元的相關性,而從電路的幾何設計可以改善,並維持相關性 (coherence time)。
(來源 : https://www.nature.com/articles/s41534-017-0044-0 )
或者利用異質 3D 結構 (每層使用不同材料),設計能有效控制光子,實現穩定的光子光源 (single-photon emitter) ,對於單量子點 (quantum dot) 裝置或作為光子量子位元都有相當的幫助。下圖為 3D 積體電路與光場強度的示意圖與實驗結果。
(來源: https://www.nature.com/articles/s41467-017-00987-6 )
2.量子電腦硬體架構 (Quantum Computer Architecture)
(來源: https://ce-ublications.et.tudelft.nl/publications/1548_a_heterogeneous_quantum_computer_architecture.pdf )
量子電腦的架構由古典電路與量子單元所構成。古典電路的部分 (右半邊) 作為介面、訊號轉換和錯誤修正;量子電路負責主要的邏輯運算。量子電腦的堆疊示意圖如下。
(來源: https://ce-publications.et.tudelft.nl/publications/1548_a_heterogeneous_quantum_computer_architecture.pdf )
我們先前討論的量子點、超導迴路等量子位元屬於最底層的 quantum chip,要控制量子位元與取得運算結果則透過 quantum-classical interface 來達成 (這兩層可以透過集成技術實作在同一組電路上)。QEX (quantum execution) 與 QEC (error detection and correction) 分別負責執行指令集 (指令來自於對應的量子電路 quauntum gate,例如 CNOT 或 Hadamard) 與修正量子計算的錯誤結果 (錯誤產生魚量子力學的機率性性質以及量子態的不穩定)。
●量子演算法 (Quantum Algorithm)
PSPACE problems: NxN 的象棋或圍棋 (N 任意大小)
1.NP Complete: Map coloring/ Traveling salesman/ Box packing 等問題
2.NP Problems: 圖論同構性 (Graph isomorphism)
3.BQP: 離散直因數分解
4.P Problems: Graph connectivity/ Matchmaking 等問題
(來源: https://en.wikipedia.org/wiki/BQP)
●如何編程量子演算法?(How to Program Quantum Algorithm?)
各大廠商有提供量子電腦的雲端服務,像是 Microsoft 與 IBM 都推出自家的量子電腦,以及搭配的程式語言。例如以下
以商用的角度,使用的程式語言與一般編程的 Python 或 C#, F# 並無太大改變 (例如 D-Wave 提供了 C/C++, Python, and MATLAB 等語言介面)。但是量子計算使用的演算法則相當不同,主要依賴了量子力學的原理,因此設計量子演算法的重點是設計出比古典演算法快的方法。
(來源: https://arxiv.org/pdf/1804.03719.pdf)
●量子電腦實際應用案例 (Real Applications)
【視頻】如何打造一台量子電腦 (中央研究院物理研究所/陳啟東研究員)
【視頻】二次量子科技革命—量子電腦霸權已經降臨?
●量子電腦不是要替代傳統電腦
量子電腦是為突破傳統電腦無法解決的特定領域,如因數分解、量子模擬、
量子搜索等領域;