Open shell 就是指有未成對電子## 前情提要 在量子化學中,我們最常在鑽研的方程式就是以下知名的 Schrodinger 方程式: \begin{align}\tag{1} H|\psi\rangle=E|\psi\rangle \end{align} $H$ 會是一個矩陣,包含分子的所有能量資訊,$|\psi\rangle$ 也可以想成一個矩陣或向量,代表該分子的軌域(orbitals),兩者相乘後得到右邊一個數字 $E$ 乘上原來的向量 $|\psi\rangle$,其中 $E$ 就是該分子在這 orbitals 組合 $|\psi\rangle$ 下的能量值。 然而當分子越來越大,結構越來越複雜,$H$ 矩陣會越來越大,計算(1)式所需的電腦資源會劇增,以知名的 FCI 方法(full configuration interaction)為例,想要在 22 個電子系統上獲得精確解已經逼近極限,想要再應用到更大的分子就需要用到許多近似方法,這也是長久以來計算化學在研究的工作之一。
由於這是新聞導讀,在很多專有名詞上為了科普會做很多簡化,以剛剛提到的「精確解」其實是指 exact diagonalization,22 個電子其實更明確說是 22 個電子搭配 22 個 orbitals 或是 26 個電子搭配 23 個 orbitals而這時候,量子電腦給出了嶄新的一條路徑來攻克這困難,然而現在的量子電腦都不完美,造成以下兩個問題: 1. 為了得到更準確的結果就必須要對同的電路測量非常多次,測量次數越高,整體計算時間就拉長 2. 針對化學問題設計的 [ansatz](https://www.entangletech.tw/lesson/optim-08#toc-8),其[電路深度](https://www.entangletech.tw/lesson/hardware-general-01)都很深,以知名的 coupled cluster 為例,對於 $M$ 個 (spin) orbitals 的分子,電路深度就達到 $M^4$,這麼深的電路意味著有非常多 gate,gate 越多,錯誤率也會隨之提高 為了解決這問題,IBM 團隊提出 Sample-Based Quantum Diagonalization (SQD)演算法試圖克服量子電腦應用在化學上的瓶頸,在解釋 SQD 之前,榮我們來介紹 [VQE](https://www.entangletech.tw/lesson/optim-07) 演算法。 ## VQE 演算法 在我們的[量子優化系列](https://www.entangletech.tw/lesson/optim-07)文章就有深入淺出介紹 VQE 演算法,有興趣的讀者可以點開連結,這麼我們就做簡短介紹。假設今天一個分子的 $H$ 可以寫成以下矩陣: \begin{align} H= \begin{bmatrix} -1.2 & 0 & 0 & 0.3 \\ 0 & -0.5 & 0.2 & 0 \\ 0 & 0.2 & -0.5 & 0 \\ 0.3 & 0 & 0 & 0.1 \\ \end{bmatrix} \end{align} VQE 的電路負責製備量子態 $|\psi\rangle$,接著經典電腦利用這量子態和 $H$ 矩陣計算能量值: \begin{align} \langle\psi|H|\psi\rangle=E \end{align} 透過此能量值和量子態提供新的參數傳回量子電路,如此循環直到 $E$ 沒什麼變化(簡稱收斂)。比方說我們這次的 VQE 電路長這樣: 在某一次循環中,經典電腦給出的參數為$(-2\pi, 2\pi)$,那當下電路輸出的量子態為: \begin{align} RX(-2\pi)_0 \otimes RY(2\pi)_1|00\rangle= \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \\ \end{bmatrix}= \begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \\ \end{bmatrix} \end{align} 利用這結果計算能量值為: \begin{align} \langle \psi|H|\psi\rangle= \begin{bmatrix} 1 & 0 & 0 & 0 \end{bmatrix} \begin{bmatrix} -1.2 & 0 & 0 & 0.3 \\ 0 & -0.5 & 0.2 & 0 \\ 0 & 0.2 & -0.5 & 0 \\ 0.3 & 0 & 0 & 0.1 \\ \end{bmatrix} \begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \\ \end{bmatrix}=-0.7 \end{align} 得到 $E=-0.7$,然後經典電腦再根據此提供新參數去調整電路的角度,理應最後會得到 $-1.26$。然而 VQE 的其中一個挑戰是,當 $H$ 超級大時,直接計算上式非常耗費電腦資源,而 SQD 演算法就是為此而生。 ## SQD 演算法 VQE 電路生成的量子態經過多次測量後便會進入下圖所繪的流程圖,而圖中繪製的流程圖都在經典電腦上運行:

SQD 流程圖
Picture comes from doi: 10.1126/sciadv.adu999

多次測量得到測量結果,從中找到有錯的地方並做糾正
Picture comes from 2025 Qiskit Summer School

Picture comes from 2025 Qiskit Summer School

Picture comes from 2025 Qiskit Summer School

以氮氣分子維利,其 H 矩陣為 40 億乘 40 億,對這樣的矩陣做對角化,十分不容易,但透過 SQD 的操作可以把這龐大的矩陣簡化到僅僅 50 乘 50
Picture comes from 2025 Qiskit Summer School

methylene 的兩種構型:singlet 與 triplet,兩種構型的能量差異為 14.4 mHa(9.03 kcal/mol)
在量子化學中,能量單位為 Ha(Hartree),也可以記做 Eh當 methylene 的兩個孤對電子平行排列時,這狀態稱作 triplet,會被稱作 triplet 是因為當兩個 spin 平行排列時會有三個自旋量子數(這在圖中沒畫出來);當兩個孤對電子反平行排列,這狀態稱作 singlet,此時這對孤對電子可能位在圖中灰色的 orbital 或是白色的 orbital(再一次,會被稱作 singlet 是因為只有一個自旋量子數,跟圖中有兩種不同的分布位置是兩回事)。 這次的實驗在 *ibm nazca* 量子電腦上執行,模擬 6 個電子與 23 個 orbitals,因此需要 46 個 qubits 表示每個 orbitals 有沒有電子,以及其他 6 個 qubits(總共 52 個 qubits) 和 33,242 個 two qubits gates,電路深度達到 1663,測量 100,000 次。 ### 能量預測 與 SQD 一起做比較的為經典計算方法,包括 SCI、CCSD 與 SCF。
SCI:selected configuration interaction從下圖可以看到,對於 triplet 態,SQD 的結果與 SCI 非常接近(圖 (a)),與 SCI 的差異落在 $1\sim28$ mHa 範圍內(圖 (b)),當鍵長來到 2 Å 和 2.5 Å 時,兩者差異最大;對於 singlet,SQD 的結果與 SCI 都插在 $1\sim4$ mHa。
CCSD:coupled cluster singles and doubles
SCF:self-consistent field

(a) 不同鍵長,不同方法計算兩態的能量值(b)不同鍵長,不同方法計算兩態的能量值與 SCI 差異(c)不同鍵長,不同方法計算兩態的能量差值

不同方法預測在平衡鍵長下兩態的能量差異與實驗值

SCI(黃線)與 SQD(紅點)的波函數振幅分析。(a)為 singlet (b)為 triplet。從左到右分別是鍵長 1.11 Å, 1.60 Å, 2.30 Å, 與 2.50 Å
此文章僅作初步導讀,有更多內容在本文中沒有詳細提到,歡迎參看原論文## 參考文獻與延伸閱讀 - [原論文](https://pubs.acs.org/doi/10.1021/acs.jctc.5c00075) - [IBM SQD 簡易教學](https://github.com/qiskit-community/qgss-2025/blob/main/solutions/lab-3/lab3-solution.ipynb) - [SQD 原始論文](https://www.science.org/doi/10.1126/sciadv.adu9991) - [SQD 原始碼](https://github.com/Qiskit/qiskit-addon-sqd/tree/main/qiskit_addon_sqd)