먼저 읽으면 좋은 용어
개념 소개
조합 최적화 문제는 유한한 이산 해 공간에서 목적 함수를 최대화·최소화하는 해를 찾는 문제다. 외판원 문제, 그래프 분할(MaxCut), 작업 스케줄링 등이 대표적이며, 다수는 NP-난해 복잡도를 지닌다. 해 공간이 변수 수 에 대해 으로 지수 성장하므로 고전 컴퓨터는 전수 탐색 대신 근사 알고리즘에 의존한다.
QAOA는 양자 중첩과 간섭을 활용해 이러한 문제를 근사 해결하는 **변분 양자 알고리즘(VQA)**이다. 매개변수화된 양자 회로와 고전 최적화기를 반복 호출하는 양자-고전 하이브리드 구조를 취하며, 현재의 NISQ 장치에서 실행 가능하도록 설계되었다.
핵심 원리
해밀토니안 인코딩
비트 이진 목적 함수 를 큐비트 비용 해밀토니안 로 인코딩한다. 는 파울리 연산자의 함수로 대각 행렬을 이루며,
형태로 쓰인다. 의 최대 고유값에 대응하는 고유 상태가 곧 최적해다.
혼합(Mixer) 해밀토니안 는 해 공간 탐색을 담당한다. 표준 선택은
로, 모든 큐비트에 파울리 를 합산한 형태다.
QAOA 회로 구조
깊이 의 QAOA 회로는 다음 순서로 구성된다.
1. 초기 상태 준비 — 하다마르 변환으로 균등 중첩을 생성한다.
2. 층 교대 유니터리 적용 — 각 층 에서
를 순서대로 적용한다.
3. 최종 상태와 기댓값 측정
변분 최적화 루프
고전 최적화기(COBYLA, L-BFGS-B, Adam 등)가 를 최대화하도록 , 를 반복 갱신한다. 층수 가 커질수록 근사 비율(approximation ratio)이 향상되며, 극한에서 양자 단열 알고리즘과 동치임이 이론적으로 알려져 있다.
예시·응용
MaxCut 문제
그래프 에서 꼭짓점을 두 집합으로 분할할 때 절단 간선 수를 최대화하는 문제다. 비용 해밀토니안은
로 쓰인다. 이면 두 꼭짓점이 다른 집합에 속해 해당 간선이 절단된 것이다.
Qiskit을 이용한 MaxCut 구현 예시
from qiskit import QuantumCircuit
from scipy.optimize import minimize
import numpy as np
edges = [(0, 1), (1, 2), (0, 2)] # 3-노드 삼각 그래프
n = 3
def build_qaoa(gamma, beta):
qc = QuantumCircuit(n)
qc.h(range(n)) # 균등 중첩
for (i, j) in edges: # U_C(gamma): ZZ 상호작용
qc.cx(i, j)
qc.rz(2 * gamma, j)
qc.cx(i, j)
for q in range(n): # U_B(beta): X 회전
qc.rx(2 * beta, q)
qc.measure_all()
return qc
def objective(params):
qc = build_qaoa(*params)
# 시뮬레이터로 샘플링 후 기댓값 추정 (스켈레톤)
return -estimate_cut(qc) # 최소화 → 부호 반전
res = minimize(objective, x0=[0.5, 0.5], method='COBYLA')
print("최적 (γ, β):", res.x)
항은 CNOT––CNOT 시퀀스로 분해되며, 이는 ZZ 상호작용의 표준 트로터화에 해당한다.
주요 응용 분야
| 분야 | 대표 문제 |
|---|---|
| 물류·교통 | 차량 경로 최적화, TSP |
| 금융 | 포트폴리오 선택, 리스크 관리 |
| 약물 설계 | 분자 구조 탐색 |
| 반도체 | 회로 배치·배선 최적화 |
IBM Quantum, Google 등은 QAOA를 NISQ 시대 핵심 응용 후보로 지속 연구하고 있다.
정리
QAOA는 비용 해밀토니안 와 혼합 해밀토니안 를 교대 적용하는 층 변분 회로로 조합 최적화를 근사 해결한다. 매개변수 는 고전 최적화기로 조율되며, 가 클수록 더 정밀한 근사가 가능하다. 잡음·배런 평원(barren plateau) 문제, 매개변수 훈련의 어려움이 현재 주요 연구 과제이며, 하드웨어 발전과 함께 실질적 양자 우위 달성 여부가 집중 탐구되고 있다.
Exercises
연습문제
Q1간선 $(0,1)$ 하나만 있는 2큐비트 MaxCut 문제에서 비용 해밀토니안 $H_C = \frac{1}{2}(I - Z_0 Z_1)$에 해당하는 $U_C(\gamma)$를 CNOT과 $R_z$ 게이트로 분해하시오.
힌트 보기
$e^{-i\gamma(I-Z_0Z_1)/2} = e^{-i\gamma/2} \cdot e^{i\gamma Z_0Z_1/2}$로 쪼개고, $e^{i\theta Z_0Z_1}$는 CNOT–$R_z(2\theta)$–CNOT으로 구현됨을 이용한다.
해설 보기
전역 위상 $e^{-i\gamma/2}$는 측정에 무관하므로 생략할 수 있다. 나머지 $e^{i(\gamma/2)Z_0Z_1}$는 CNOT(제어: 0, 표적: 1) → $R_z(-\gamma)$ on qubit 1 → CNOT(제어: 0, 표적: 1) 순서로 분해된다. 이 시퀀스는 ZZ 커플링의 표준 트로터화이며, QAOA MaxCut 회로에서 모든 간선에 반복 적용된다.
Q2QAOA의 층수 $p$를 늘릴수록 근사 비율이 잡음 없는 환경에서 항상 단조 증가하는가? NISQ 환경에서는 어떻게 달라지는가?
해설 보기
잡음 없는 이상적 환경에서는 $p$ 증가에 따라 도달 가능한 상태 공간이 넓어지므로 이론적으로 단조 비감소가 성립한다. 그러나 NISQ 환경에서는 회로 깊이 증가로 잡음이 누적되고, 매개변수 수 $2p$ 증가로 배런 평원 현상이 심화되어 경사(gradient)가 지수적으로 소멸할 수 있다. 또한 국소 최솟값 함정에 빠질 확률도 높아진다. 따라서 실제 하드웨어에서는 적절한 $p$를 실험적으로 결정해야 한다.
Q3QAOA와 VQE의 구조적 공통점과 차이점을 서술하시오.
해설 보기
공통점: 둘 다 매개변수화된 양자 회로(ansatz)와 고전 최적화기를 결합한 변분 양자 알고리즘이며, 해밀토니안 기댓값을 최적화하는 반복 루프 구조를 가진다. 차이점: VQE는 분자 해밀토니안의 기저 에너지(최솟값) 탐색에 특화되며 화학적 직관에 기반한 ansatz를 사용한다. QAOA는 조합 최적화에 특화되어 문제 구조에서 직접 유도된 $H_C$, $H_B$를 사용하고, 회로 구조가 층수 $p$에 의해 체계적으로 정의된다는 점에서 구별된다.
관련 용어


