먼저 읽으면 좋은 용어
개념 소개
변분 원리(Variational Principle)는 양자역학의 근본 정리 중 하나다. 임의의 시험 상태(trial state) 에 대해 해밀토니언 의 기대값은 항상 실제 기저 상태 에너지 이상임이 보장된다.
VQE는 이 부등식을 알고리즘적으로 활용한다. 매개변수 에 의해 제어되는 양자 회로(ansatz) 를 구성하고, 고전 최적화기를 통해 기대값 을 최소화하는 를 찾는다. 수렴된 최솟값이 의 상한 추정치가 된다.
핵심 원리
1. Ansatz 설계
Ansatz는 탐색할 힐베르트 공간의 범위를 결정한다. 일반적으로 사용되는 형태는 다음 두 가지다.
- 하드웨어 효율적 ansatz(HEA): 실제 양자 칩의 연결 구조에 맞춰 층(layer)을 쌓는다. 매개변수 수가 적어 NISQ 장치에 친화적이나, 표현력(expressibility)이 제한될 수 있다.
- UCCSD ansatz: 화학적으로 동기부여된 Unitary Coupled Cluster 방법론. 단일·이중 여기(single & double excitation) 연산자를 지수함수 형태로 표현한다.
여기서 는 Hartree-Fock 기준 상태이며, 는 여기 클러스터 연산자다.
2. 해밀토니언의 파울리 분해
양자 회로에서 측정 가능한 형태로 만들기 위해, 해밀토니언을 파울리 연산자의 선형 결합으로 분해한다.
이 분해를 통해 기대값을 각 파울리 항의 기대값 합으로 계산할 수 있다.
3. 매개변수 기울기: Parameter-Shift Rule
고전 최적화기에 기울기 정보를 제공하기 위해, 양자 회로에서 직접 편미분을 계산한다. 회전 게이트 에 대해 다음이 성립한다.
이 공식은 유한 차분 근사 없이 정확한 기울기를 양자 회로 실행만으로 계산할 수 있게 한다.
4. 최적화 루프
전체 VQE 루프는 다음 순서로 반복된다.
- 현재 로 양자 회로 실행 → 각 파울리 항 측정
- 계산
- 고전 최적화기(COBYLA, SPSA, Adam 등)로 갱신
- 수렴 조건 충족 시 종료
예시·응용
H₂ 분자 기저 상태 에너지 계산 (PennyLane 예시)
import pennylane as qml
from pennylane import numpy as np
# 최소 기저(STO-3G) H2 해밀토니언 (파울리 분해 결과 예시)
coeffs = [-0.2252, 0.1777, 0.1777, -0.2427, 0.1705, 0.1705]
obs = [
qml.Identity(0),
qml.PauliZ(0),
qml.PauliZ(1),
qml.PauliZ(0) @ qml.PauliZ(1),
qml.PauliY(0) @ qml.PauliX(1) @ qml.PauliX(0) @ qml.PauliY(1),
qml.PauliX(0) @ qml.PauliX(1) @ qml.PauliY(0) @ qml.PauliY(1),
]
H = qml.Hamiltonian(coeffs, obs)
dev = qml.device("default.qubit", wires=2)
@qml.qnode(dev)
def ansatz(params):
# Hartree-Fock 초기 상태
qml.BasisState(np.array([1, 1]), wires=[0, 1])
# 매개변수화된 여기 게이트
qml.DoubleExcitation(params[0], wires=[0, 1, 2, 3])
return qml.expval(H)
# 최적화
opt = qml.GradientDescentOptimizer(stepsize=0.4)
params = np.array([0.0], requires_grad=True)
for step in range(100):
params, energy = opt.step_and_cost(ansatz, params)
if step % 20 == 0:
print(f"Step {step:3d} | E = {energy:.6f} Ha")
print(f"\n최종 기저 상태 에너지 추정: {energy:.6f} Hartree")
실용적 주의사항
- 측정 노이즈: 실제 양자 하드웨어에서는 샷(shot) 수에 의한 통계적 오차가 최적화를 방해한다. SPSA와 같은 노이즈 내성 최적화기가 선호된다.
- Barren Plateau: 회로 깊이와 큐비트 수가 증가할수록 기울기가 지수적으로 감소하는 현상이 발생한다. 적절한 초기화 전략과 국소적 비용 함수 설계가 필요하다.
- 고전 오버헤드: 파울리 항의 수는 분자 크기에 따라 까지 증가하므로, 항 그룹화(grouping) 기법으로 측정 횟수를 줄이는 것이 필수적이다.
정리
VQE는 양자 회로의 표현력과 고전 최적화기의 성숙한 수렴 기법을 결합한 하이브리드 알고리즘으로, NISQ 시대의 현실적 제약(회로 깊이, 노이즈) 속에서 화학 및 물질 시뮬레이션 문제에 접근하는 주요 수단이다. 핵심은 ansatz 설계, 파울리 분해, parameter-shift 기울기 계산, 그리고 노이즈 환경에서의 안정적인 최적화 루프 구성이다. Barren plateau 문제와 측정 오버헤드 완화는 현재도 활발히 연구 중인 과제다.
Exercises
연습문제
Q12큐비트 해밀토니언 $H = 0.5\, Z_0 Z_1 - 0.3\, X_0$가 주어졌을 때, ansatz $|\psi(\theta)\rangle = R_y(\theta)|00\rangle$에 대한 비용 함수 $E(\theta)$를 파울리 기대값의 합으로 명시적으로 표현하라.
힌트 보기
$\langle R_y(\theta)|00\rangle | Z_0 Z_1 | R_y(\theta)|00\rangle$에서 $R_y(\theta)|0\rangle = \cos(\theta/2)|0\rangle + \sin(\theta/2)|1\rangle$임을 이용하라.
해설 보기
$\langle Z_0 Z_1 \rangle = \langle Z_0 \rangle \langle Z_1 \rangle$이고, $\langle Z \rangle_{R_y(\theta)|0\rangle} = \cos\theta$, $\langle Z_1 \rangle = 1$ (두 번째 큐비트는 $|0\rangle$ 유지). $\langle X_0 \rangle = \sin\theta$. 따라서 $E(\theta) = 0.5\cos\theta - 0.3\sin\theta$.
Q2Parameter-Shift Rule을 사용하여 위 비용 함수의 $\theta = \pi/4$에서의 기울기를 계산하고, 해석적 미분 결과와 비교하라.
해설 보기
Parameter-Shift: $\frac{\partial E}{\partial\theta} = \frac{1}{2}[E(\pi/4+\pi/2) - E(\pi/4-\pi/2)] = \frac{1}{2}[E(3\pi/4) - E(-\pi/4)]$. $E(3\pi/4) = 0.5\cos(3\pi/4) - 0.3\sin(3\pi/4) = -\frac{0.5}{\sqrt{2}} - \frac{0.3}{\sqrt{2}}$, $E(-\pi/4) = \frac{0.5}{\sqrt{2}} + \frac{0.3}{\sqrt{2}}$. 따라서 기울기 $= \frac{1}{2} \cdot (-\frac{1.6}{\sqrt{2}}) = -\frac{0.8}{\sqrt{2}} \approx -0.566$. 해석적으로 $\frac{dE}{d\theta} = -0.5\sin\theta - 0.3\cos\theta$에 $\theta=\pi/4$ 대입하면 $-\frac{0.5}{\sqrt{2}} - \frac{0.3}{\sqrt{2}} = -\frac{0.8}{\sqrt{2}} \approx -0.566$으로 일치한다.
Q3Barren plateau 현상이 왜 무작위 초기화된 깊은 회로에서 필연적으로 발생하는지를 2-design 관점에서 설명하라.
힌트 보기
무작위 양자 회로가 unitary 2-design에 수렴할 때 기울기의 분산이 어떻게 달라지는지 생각하라.
해설 보기
무작위 매개변수화된 깊은 회로는 Haar 랜덤 유니터리의 2-design에 근사한다. 이 경우 임의의 비용 함수 편미분의 분산은 $\text{Var}[\partial_k E] \sim O(2^{-n})$으로 큐비트 수 $n$에 대해 지수적으로 감소함이 증명된다. 즉, 거의 모든 방향에서 기울기가 0에 가까워지므로 고전 최적화기가 하강 방향을 식별하지 못한다. 이를 완화하기 위해 국소적 비용 함수, 층별(layer-wise) 학습, 또는 identity 블록 초기화 전략이 제안된다.
관련 용어


