11월 5일 (목)양자 뉴스·논문·데이터를 매일 검증해 한국어로 전합니다

튜토리얼 목록
Tutorial중급양자컴퓨팅

Grover 알고리즘 — 비정렬 데이터베이스의 √N 양자 검색

Grover 알고리즘은 N개의 비정렬 항목에서 특정 목표를 찾는 데 O(√N)번의 쿼리만으로 충분한 양자 탐색 기법이다. 오라클과 확산 연산자를 약 π/4·√N회 반복 적용하여 목표 상태의 진폭을 집중적으로 증폭한다. 이 이차적(quadratic) 속도 향상은 비정렬 검색 문제에서의 양자 하한(lower bound)임이 증명되어 있다.

난이도 중급4분 읽기연습문제 3개

먼저 읽으면 좋은 용어

개념 소개

비정렬 데이터베이스에서 특정 항목을 찾는 고전적 방법은 최악의 경우 N번 전체를 확인해야 하므로 O(N) 시간이 소요된다. 1996년 Lov Grover가 제안한 양자 알고리즘은 이를 O(√N)으로 단축한다. 예를 들어 100만 개 항목 중 하나를 찾는다면, 고전 컴퓨터는 평균 50만 번을 조회하지만 Grover 알고리즘은 약 1,000번(≈ √10⁶) 만으로 목표를 식별한다.

핵심 아이디어는 **진폭 증폭(amplitude amplification)**이다. 모든 항목에 균등하게 분포된 확률 진폭을, 목표 상태에만 집중되도록 반복적으로 재형성하는 것이다.


핵심 원리

1. 초기 상태 준비

개 항목을 개 큐비트로 표현한 뒤, Hadamard 변환을 전체 적용해 균등 중첩 상태를 만든다.

각 항목의 초기 진폭은 으로 동일하다.

2. 오라클

목표 상태 의 위상만 반전시키는 유니터리 연산자다.

행렬 표현으로는 이다. 오라클은 "이 항목이 정답인가?"를 판별하는 블랙박스로, 단 한 번의 쿼리로 동작한다.

3. 확산 연산자

오라클이 목표 위상을 뒤집은 후, 확산 연산자가 모든 진폭을 **평균에 대해 반전(inversion about the mean)**시킨다.

기하학적으로 해석하면, 오라클은 와 가 만드는 2차원 평면에서 에 대한 반사를, 확산 연산자는 에 대한 반사를 수행한다. 두 반사를 합치면 방향으로의 회전이 된다.

4. 반복 횟수와 복잡도

와 사이의 각도를 라 하면 이다. Grover 반복 한 번은 이 각도를 만큼 회전시키므로, 목표 상태 확률이 최대가 되려면

번 반복이 필요하다. 이때 측정하면 를 높은 확률로 얻는다. 최적 횟수를 초과하면 확률이 다시 감소하므로 반복 횟수 선택이 중요하다.


예시·응용

2큐비트 예시 (N = 4, 목표: |11⟩)

최적 반복 횟수는 회다.

from qiskit import QuantumCircuit

qc = QuantumCircuit(2)

# 균등 중첩
qc.h([0, 1])

# 오라클: |11⟩ 위상 반전 (CZ 게이트)
qc.cz(0, 1)

# 확산 연산자
qc.h([0, 1])
qc.x([0, 1])
qc.cz(0, 1)
qc.x([0, 1])
qc.h([0, 1])

qc.measure_all()
print(qc.draw('text'))

1회 반복 후 의 측정 확률이 1(100%)에 수렴한다.

실제 활용 분야

분야 내용
조합 최적화 SAT, 그래프 채색 등의 해 탐색
암호해독 대칭키 암호의 유효 보안 강도를 절반으로 단축 (AES-128 → 64비트 수준)
패턴 검색 비정형 데이터 내 특정 패턴 탐색

정리

Grover 알고리즘은 오라클과 확산 연산자를 회 반복하여 목표 상태의 진폭을 집중적으로 증폭한다. Shor 알고리즘처럼 지수 속도 향상은 아니지만, 비정렬 검색 문제에서의 이차 속도 향상은 이론적 최적임이 증명된 근본적 결과다. 이 원리는 진폭 증폭이라는 범용 기법으로 발전해 양자 머신러닝, 양자 최적화 등 다양한 알고리즘의 서브루틴으로 활용된다.

Exercises

연습문제

  1. Q1항목 수가 N = 256일 때, Grover 알고리즘의 최적 반복 횟수를 구하시오.

    힌트 보기

    sin θ ≈ 1/√N 관계와 $k \approx \frac{\pi}{4}\sqrt{N}$ 공식을 사용한다.

    해설 보기

    $k \approx \frac{\pi}{4}\sqrt{256} = \frac{\pi}{4} \times 16 \approx 12.6$이므로 약 **12~13회** 반복이 최적이다. 고전 탐색의 평균 128회와 비교하면 약 10배 빠르다.

  2. Q2Grover 알고리즘에서 오라클을 최적 횟수의 두 배만큼 반복 적용하면 어떤 현상이 발생하는가?

    해설 보기

    $k = \frac{\pi}{4}\sqrt{N}$ 반복에서 목표 상태 진폭이 최대(≈1)에 도달한 뒤, 계속 반복하면 진폭이 다시 감소하기 시작한다. 2k 반복 시점에서는 진폭이 초기값(≈0) 부근으로 되돌아와 탐색이 실패한다. 이는 기하학적으로 목표 방향으로의 회전이 과도하게 진행되어 다시 목표 반대편으로 넘어가는 현상이다.

  3. Q3목표 항목이 단 1개가 아닌 M개(1 ≤ M ≤ N)인 경우, Grover 알고리즘의 최적 반복 횟수는 어떻게 변하는가?

    힌트 보기

    초기 각도 θ는 $\sin\theta = \sqrt{M/N}$으로 일반화된다.

    해설 보기

    목표 항목이 M개일 때 초기 각도가 $\sin\theta = \sqrt{M/N}$으로 커지므로, 최적 반복 횟수는 $k \approx \frac{\pi}{4}\sqrt{N/M}$으로 줄어든다. M = N/4이면 단 1회 반복만으로 충분하며, M이 클수록 알고리즘이 더 빠르게 수렴한다.

관련 용어

이 챕터는 Claude (claude-sonnet-4-6)가 작성했습니다. · 발행 2026. 8. 26.

Keep Learning

다음으로 볼 튜토리얼

전체보기
중급

양자통신

포스트양자암호(PQC) 기초: 양자 시대를 대비하는 암호 설계

포스트양자암호(PQC)는 충분한 규모의 양자 컴퓨터가 등장해도 안전하도록 설계된 고전 알고리즘 기반 암호 체계다. RSA·ECC 등 현행 공개키 암호의 취약점을 수학적 난제로 보완하며, NIST의 표준화를 통해 실용화 단계에 진입했다.

4분 읽기

중급

양자통신

PQC(포스트양자암호) 기초: 양자 시대의 암호 보안

양자 컴퓨터의 발전으로 RSA, ECC 등 현재의 공개키 암호 체계가 근본적인 위협에 직면했다. 포스트양자암호(PQC)는 양자 컴퓨터로도 풀기 어려운 수학적 난제에 기반한 새로운 암호 방식으로, NIST의 표준화 작업을 통해 실용화 단계에 접어들었다. PQC는 기존 통신 인프라 위에서 동작하므로 양자키분배(QKD)와는 구별되는 상호 보완적인 접근이다.

4분 읽기

고급

양자컴퓨팅

변분 양자 고유값 계산(VQE): 원리와 구현

VQE(Variational Quantum Eigensolver)는 변분 원리를 기반으로 해밀토니안의 바닥 상태 에너지를 추정하는 양자-고전 하이브리드 알고리즘이다. 매개변수화 양자 회로(Ansatz)로 시험 상태를 준비하고 고전 최적화기로 에너지를 최소화하는 반복 루프를 구성한다. 깊이가 얕은 회로를 사용하므로 NISQ 장치에서 실행 가능한 현실적 양자 알고리즘으로 평가받는다.

6분 읽기

고급

양자컴퓨팅

QAOA: 조합 최적화를 위한 양자 근사 최적화 알고리즘

QAOA(Quantum Approximate Optimization Algorithm)는 조합 최적화 문제를 양자 회로로 근사 해결하는 변분 양자 알고리즘이다. 비용 해밀토니안과 혼합 해밀토니안을 교대로 적용하는 $p$층 회로를 구성하고, 고전 최적화기로 매개변수를 조율하는 하이브리드 방식을 채택한다. MaxCut, 포트폴리오 최적화 등 NP-난해 문제에 대한 근사 해를 NISQ 장치에서 탐색하는 데 활발히 연구되고 있다.

5분 읽기