作者:張晏瑞 / 臺灣大學IBM量子電腦中心研究助理
本文接續上篇介紹量子變分電路(VQE)的文章,進一步詳細探討VQE在量子計算中的實作步驟。我們將展示如何構建量子電路以求解特定問題的基態能量,並介紹如何結合古典優化器來調整量子電路的參數。通過實作過程中的實例分析,我們將探討VQE在量子化學計算、材料科學和優化問題中的應用,並說明其在目前量子計算發展階段的優勢和局限性。
VQE流程簡述
在本節中,我們將詳細介紹量子變分電路(VQE)的操作流程,並配合下圖進行說明。
VQE流程主要包含以下步驟:
Figure 1 VQE流程示意圖(from qiskit)
- 準備試探量子態(Ansatz state):首先,我們需要準備一個參數化的試探量子態 ,這個態由一組參數 控制,這個試探態的構建是通過一系列量子邏輯閘在量子硬體上實現的。
- 哈密頓量設計:將優化問題中的哈密頓量 表示為一系列旋轉算符(Pauli算符)的加權和。
\begin{equation} \hat{H} = \sum_{i}^{P} c_i \hat{P}_i \end{equation}
- 能量期望值量測:根據測量得到的期望值,我們可以計算出系統的總能量
\begin{equation} E = \sum_{i}^{P} c_i \langle 0 | U_i^{\dagger}(\theta) | \hat{P}_i | U_i(\theta) | 0 \rangle \end{equation}
這個能量值應該是大於或等於系統的真實基態能量。
- 優化參數:為了找到最小的能量值,我們使用古典優化器來調整參數 。這個過程是通過反復測量期望值和調整參數來進行,通過古典計算與量子計算的交互操作,不斷優化參數,以逼近系統的基態能量。
VQE範例介紹
量子變分電路(VQE)算法的構建和運行需要一定的專業領域知識來構建哈密頓量和ansatz,但這些細節對於Runtime來說是無關緊要的,我們可以以相同的方式執行各種VQE問題。
- 軟體要求:
請確保您已安裝以下軟體:
Qiskit SDK 1.0 或更高版本(pip install 'qiskit[visualization]')
Qiskit Runtime(pip install qiskit-ibm-runtime)0.22 或更高版本
SciPy(python -m pip install scipy)
這裡我們定義VQE算法的問題實例。儘管問題可以來自不同領域,但通過Qiskit Runtime執行的形式是相同的。Qiskit提供了一個方便的類來用Pauli形式表達哈密頓量,並在qiskit.circuit.library中收集了廣泛使用的ansatz電路。
以下是我們從量子化學問題中導出的哈密頓量及選擇的ansatz是EfficientSU2,非常適合連接性有限的量子硬體,參數向量 包含在ansatz電路中。
為了減少總作業執行時間,Qiskit Runtime V2原語僅接受符合目標系統支持的指令集架構(ISA)電路和可觀測量的電路(分別為ISA電路和可觀測量)。
與許多古典優化問題類似,VQE問題的解決方案可以表述為成本函數的最小化。根據定義,VQE通過優化ansatz電路參數來最小化哈密頓量的期望值(能量),從而尋找哈密頓量的基態解。使用Qiskit Runtime Estimator直接接受哈密頓量和參數化的ansatz,並返回所需的能量,因此VQE實例的成本函數非常簡單。
我們現在可以使用我們選擇的經典優化器來最小化成本函數。在這裡,我們通過SciPy中的minimize函數使用COBYLA例程。請注意,在運行真實量子硬體時,優化器的選擇非常重要。
由於我們希望一次性執行大量生成的電路,我們使用一個Session來以塊狀方式執行所有電路。這裡的args是標準SciPy方式,用於提供成本函數所需的附加參數。
輸出:
從這裡我們可以看到,經過nfev次成本函數評估後,我們得到了參數角度的解向量(x),當其插入ansatz電路時,產生了我們尋找的近似基態解。
輸出:
結語
量子變分電路(VQE)是一種能夠利用當前量子計算資源的強大算法。其主要優勢包括:
- 兼容性:VQE特別適合當前的NISQ(噪聲中等規模量子)設備。這些設備的量子位元數有限,並且存在較高的錯誤率。VQE能夠有效利用這些有限的計算資源,並且在很大程度上降低了對錯誤更正的需求。
- 混合計算:VQE結合了量子計算和古典計算的優勢,通過反復的量子測量和古典優化來找到問題的最佳解,充分利用了現有技術的優勢。
- 多應用性:VQE在多個領域具有廣泛的應用,包括量子化學、材料科學和各種優化問題。這使得VQE成為一個靈活且實用的工具,可以應對不同科學和工程領域中的複雜問題。
然而,VQE也有其局限性:
- 依賴於硬體性能:儘管VQE能夠在NISQ設備上運行,但其效果和效率高度依賴於硬體的性能和穩定性。高錯誤率和噪聲仍然是挑戰,需要不斷改進量子硬體。
- 古典優化挑戰:古典優化器在處理噪聲和多變的成本函數時可能會遇到困難,這對於VQE的性能會產生影響。選擇合適的優化器並進行調參是成功實施VQE的關鍵。
- 計算資源需求:VQE的運行需要大量的計算資源,特別是在進行多次測量和參數優化時,這可能會限制其在某些實際應用中的可行性。
總之,VQE是當前量子計算研究中的一個重要算法,展示了在解決特定科學和工程問題上的巨大潛力。隨著量子硬體技術的不斷進步,VQE及其變體有望在未來解決更多複雜的問題,推動量子計算的應用和發展。
參考:
1. https://learning.quantum.ibm.com/tutorial/variational-quantum-eigensolver