絕熱量子計算

作者:
林昱誠(Yu-Cheng Lin)
閱讀時間:
5
分鐘
# 絕熱量子計算 當你成功將問題轉換成 [QUBO](https://www.entangletech.tw/lesson/optim-03) 或 [Ising model](https://www.entangletech.tw/lesson/optim-01) 後,我們就能將問題丟給 D-Wave 的 quantum annealer(量子退火)求解,在了解 quantum annealer 如何運作前,我們先介紹絕熱量子計算。 ## Adiabatic quantum computing 如同我們在演算法總覽提到的,量子計算架構可以分成 gate-based 與 adiabatic,兩者在數學上是等價,這兩者的關係就有點類似現代電腦的數位與類比,gate-based 將一個計算過程離散化,變成一個一個 gate,就像是數位系統裡一個一個邏輯閘;而 adiabatic 不同,他將計算過程看成一個連續的變化,類似類比系統裡將波做連續性變化,接下來的解釋你會更清楚這段講的意思。 在量子力學中,描述系統如何運動的方程式是: \begin{align} H|\psi(t)\rangle=E|\psi\rangle \end{align} 上式就是知名的 Schrödinger equation,其中 $|\psi\rangle$ 是 qubits 的量子態,$H$ 是一種 Hermitian 矩陣,$E$ 是我們最後能測量到的值,即期望值。在 gate-based 量子計算中,我們可以將 $H$ 分解成一個一個 quantum gate,像是 X, Y, Z, CNOT,...gate,組成你熟知的量子電路(這我們在 QAOA 章節能看到怎麼做分解)。 在 adiabatic 中,我們將 $H$ 就當作一種能量,通常是透過磁場控制,從某個能量值“緩慢”調整到另一個能量值,當能量的變化足夠緩慢,在每個能量值當下量子態理應都處在最低值,即基態,也就是我們欲求解問題的最佳解(最小值),如果今天能量變化太快,量子態就會跑到激發態,而激發態這解不會是我們欲解問題的最佳解,這種能量「緩慢」變化的過程就稱作 adiabatic。 當 Ising model(或 QUBO)最佳解對應的能量值為 $H_1$.那現在我們的初始能量值為 $H_0$,我們得把能量(或說磁場)緩慢地從 $H_0$ 變到 $H_1$,即: \begin{align} H(t)=A(t)H_0+B(t)H_1 \end{align} $A(t)$ 與 $B(t)$ 是一個隨時間 $t$ 變化的常數,在一開始 $t=0$,$A(t=0)=1$,$B(t=0)=0$,在計算完成時 $t=T$,$A(T)=0$,$B(T)=1$。因此,可以簡單地得知,$H(0)=H_0$,$H(T)=H_1$。
adiabatic
絕熱量子計算示意圖。系統最一開始位於圖中的 H0,當下對應的量子態就是 H0 旁變得四個箭頭,我們的目標是是緩慢地讓系統演化,讓系統始終在當下最低能量做演化,即圖中的藍線,一直到最右邊的 H1,如果演化速度太快,那系統有可能因為獲得額外能量而從基態跳到其他的激發態,也就是其他黑線上,那黑線對應的量子態就不會是我們要的解

課程目錄