---
# System prepended metadata

title: 05 量子退火
tags: [量子演算法（下下）]

---

## 量子退火

然而在現實中，因爲環境干擾，外加我們其實難以知道 $T$ 要是多少才計算完（理論上，$T$ 無限大時能保證系統會跑到基態），難以真正地實現 adiabatic，但不代表我們就放棄這條路線，反之人類做出類似 adiabatic 的 quantum annealer，概念類似但因為是一種閹割版的 adiabatic，所以不像是 adiabatic 能實現 universal quantum computing，反之只能求解特定問題，就是我們前面花很多時間鋪陳的 QUBO 問題。

<div style="text-align: center;margin-top: 20px;">
    <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/f/fe/2D_ising_model_on_lattice.svg/2880px-2D_ising_model_on_lattice.svg.png" alt="Ising model" width="100%"/>
    <br>量子退火架構
    <p>Picture comes from Wiki
    </p>
</div>

在上一節，我們提到了 adiabatic 的公式：

\begin{align}\tag{1}
H(t)=A(t)H_0+B(t)H_1
\end{align}

在 quantum annealer 裡，在一開始的時候，各個 qubit 互相獨立且還沒有施加磁場，這時候系統的能量就是每個 qubit 的能量加起來：

\begin{align}
H_0=-\sum_{i=0}^{N-1} X_i
\end{align}


其中 $N$ 是 qubits 數。當計算完成後，系統的能量值就跟 Ising model 類似：

\begin{align}
H_1=-\sum_i h_i z_i - \sum_{ij} J_{ij}z_iz_j
\end{align}

將上面兩式代入（1）式變成：

\begin{align}
H(t)=-A(t)\sum_{i=0}^{N-1} X_i-B(t)\bigg[\sum_i h_i z_i+\sum_{ij} J_{ij}z_iz_j\bigg]
\end{align}

在 quantum annealer 中，我們稱 $T$ 為 annealing time，$A$ 與 $B$ 則為 annealing schedule。

就如同一開始我們說的，即便 quantum annealer 看起來與 adiabatic 非常相像，但真實的計算環境其實是有環境干擾，而且我們不知道最適合的 $T$ 是什麼時候，這只能透過不斷嘗試實驗去累積經驗，這兩個主因讓 quantum annealer 算出來的答案不一定會是該問題的精確解，但會是一個不錯的答案。