VQE (変分量子固有値ソルバー) 概要
Variational Quantum Eigensolver (VQE) は、量子コンピュータと古典最適化を組み合わせてハミルトニアンの基底状態エネルギーを求めるアルゴリズムです。
アイデア
変分原理によれば、任意の状態 に対して:
この期待値を古典オプティマイザで最小化します。
手順
- アンサッツ回路 を用意
- 量子コンピュータで期待値 を測定
- 古典コンピュータでパラメータ を更新
- 収束するまで繰り返す
from qiskit.circuit.library import EfficientSU2
from qiskit.primitives import StatevectorEstimator
from scipy.optimize import minimize
def vqe(hamiltonian, num_qubits):
ansatz = EfficientSU2(num_qubits, reps=2)
estimator = StatevectorEstimator()
def cost(params):
job = estimator.run([(ansatz, hamiltonian, params)])
return job.result()[0].data.evs
result = minimize(cost, x0=[0.1]*ansatz.num_parameters, method='COBYLA')
return result.fun課題とトレンド
- バレンプラトー問題: パラメータ空間の勾配消失
- 測定ノイズ: 実機では多くのサンプリングが必要
- エラー緩和: ZNE、PEC を利用してノイズを軽減
VQEはNISQデバイスの標準的なベンチマークとなっており、量子化学計算から組合せ最適化まで幅広い応用が期待されます。