주 콘텐츠로 건너뛰기

변분 알고리즘

시작하기 전에, 짧은 사전 설문조사를 완료해 주세요. 이는 콘텐츠 제공과 사용자 경험을 개선하는 데 큰 도움이 됩니다.

Note: This survey is provided by IBM Quantum and relates to the original English content. To give feedback on doQumentation's website, translations, or code execution, please open a GitHub issue.

이 과정에서는 양자역학의 변분 정리에 기반한 변분 알고리즘과 근미래 하이브리드 양자-고전 알고리즘의 구체적인 내용을 다룹니다. 이러한 알고리즘은 오늘날의 비(非)결함허용 양자 컴퓨터가 제공하는 유용성을 활용할 수 있어, 양자 우위를 달성하기에 이상적인 후보가 됩니다.

이 과정 전반에 걸쳐 다음과 같은 내용을 살펴봅니다.

  • 변분 알고리즘 설계 워크플로의 각 단계
  • 각 단계와 관련된 트레이드오프
  • 속도와 정확도를 최적화하기 위한 Qiskit Runtime 프리미티브의 사용 방법

이 과정은 연구자와 개발자가 양자 컴퓨터의 유용성을 탐색하기 위한 출발점을 제공하지만, 양자 컴퓨팅 전반에 대한 이론적·기초적 지식을 알고 싶다면 양자 정보와 계산의 기초(YouTube 동영상 시리즈로도 제공됨)를 자유롭게 둘러보세요.

단순화된 하이브리드 워크플로

Flow of a variational algorithm showing steps: initialize problem, prepare ansatz, evaluate cost function, optimize parameters. 변분 알고리즘은 알고리즘적, 소프트웨어적, 하드웨어적 발전에 따라 결합하고 최적화할 수 있는 여러 모듈식 구성 요소로 이루어져 있습니다. 여기에는 일련의 매개변수로 특정 문제를 기술하는 비용 함수, 이러한 매개변수로 탐색 공간을 표현하는 ansatz, 그리고 탐색 공간을 반복적으로 탐색하는 옵티마이저가 포함됩니다. 각 반복 단계에서 옵티마이저는 현재 매개변수로 비용 함수를 평가하고, 최적 해에 수렴할 때까지 다음 반복에서 사용할 매개변수를 선택합니다. 이 알고리즘 계열의 하이브리드적 특성은, 비용 함수가 양자 자원을 통해 평가되고 고전 자원을 통해 최적화된다는 사실에서 비롯됩니다.

  1. 문제 초기화: 변분 알고리즘은 양자 컴퓨터를 기본 상태 0|0\rangle로 초기화한 뒤, 이를 우리가 _참조 상태_라고 부를 원하는 (매개변수화되지 않은) 상태 ρ|\rho\rangle로 변환하는 것으로 시작됩니다.

    이 변환은 기본 상태에 유니타리 참조 연산자 URU_R을 적용하는 것으로 표현되며, UR0=ρU_R|0\rangle = |\rho\rangle을 만족합니다.

  2. Ansatz 준비: 기본 상태 0|0\rangle에서 목표 상태 ψ(θ)|\psi(\vec\theta)\rangle로 반복적으로 최적화하기 시작하려면, 변분 알고리즘이 탐색할 매개변수화된 상태들의 집합을 나타내는 변분 형식 UV(θ)U_V(\vec\theta)를 정의해야 합니다.

    참조 상태와 변분 형식의 특정 조합을 ansatz라고 부르며, UA(θ):=UV(θ)URU_A(\vec\theta) := U_V(\vec\theta) U_R로 정의됩니다. Ansatz는 궁극적으로 기본 상태 0|0\rangle을 목표 상태 ψ(θ)|\psi(\vec\theta)\rangle로 변환할 수 있는 매개변수화된 양자 Circuit의 형태를 띠게 됩니다.

    정리하면 다음과 같습니다.

    0URUR0=ρUV(θ)UA(θ)0=UV(θ)UR0=UV(θ)ρ=ψ(θ)\begin{aligned} |0\rangle \xrightarrow{U_R} U_R|0\rangle & = |\rho\rangle \xrightarrow{U_V(\vec{\theta})} U_A(\vec{\theta})|0\rangle \\[1mm] & = U_V(\vec{\theta})U_R|0\rangle \\[1mm] & = U_V(\vec{\theta})|\rho\rangle \\[1mm] & = |\psi(\vec{\theta})\rangle \\[1mm] \end{aligned}
  3. 비용 함수 평가: 우리는 문제를 Pauli 연산자의 선형 결합으로 표현된 비용 함수 C(θ)C(\vec\theta)로 인코딩하여 양자 시스템에서 실행할 수 있습니다. 이는 에너지나 스핀과 같은 물리계에 대한 정보일 수도 있지만, 물리적이지 않은 문제를 인코딩할 수도 있습니다. 비용 함수를 평가하는 동안 Qiskit Runtime 프리미티브를 활용하여 오류 억제와 완화를 통해 잡음에 대응할 수 있습니다.

  4. 매개변수 최적화: 평가 결과는 고전 컴퓨터로 전달되고, 고전 옵티마이저가 이를 분석하여 변분 매개변수의 다음 값 집합을 선택합니다. 기존에 알려진 최적해가 있다면 이를 초기점 θ0\vec\theta_0으로 설정하여 최적화를 부트스트랩할 수 있습니다. 이러한 초기 상태 ψ(θ0)|\psi(\vec\theta_0)\rangle를 사용하면 옵티마이저가 유효한 해를 더 빨리 찾는 데 도움이 될 수 있습니다.

  5. 결과를 바탕으로 ansatz 매개변수를 조정하고 재실행: 고전 옵티마이저의 종료 기준이 충족될 때까지 전체 과정이 반복되며, 최적의 매개변수 값 집합 θ\vec\theta^*이 반환됩니다. 그러면 문제에 대해 제안되는 해 상태는 ψ(θ)=UA(θ)0|\psi(\vec\theta^*)\rangle = U_A(\vec\theta^*)|0\rangle이 됩니다.

변분 정리

변분 알고리즘의 흔한 목표는 특정 관측량의 가장 낮거나 가장 높은 고윳값을 갖는 양자 상태를 찾는 것입니다. 여기서 활용할 핵심 통찰은 양자역학의 _변분 정리_입니다. 정리의 완전한 서술에 들어가기 전에, 그 이면의 수학적 직관을 먼저 살펴보겠습니다.

에너지와 바닥 상태에 대한 수학적 직관

양자역학에서 에너지는 보통 _Hamiltonian_이라 불리는 양자 관측량의 형태로 나타나며, 이를 H^\hat{\mathcal{H}}로 표기합니다. 그 스펙트럼 분해를 다음과 같이 살펴봅시다.

H^=k=0N1λkϕkϕk\hat{\mathcal{H}} = \sum_{k=0}^{N-1} \lambda_k |\phi_k\rangle \langle \phi_k|

여기서 NN은 상태 공간의 차원, λk\lambda_{k}kk-번째 고윳값(물리적으로는 kk-번째 에너지 준위), 그리고 ϕk|\phi_k\rangle는 이에 대응되는 고유 상태이며, H^ϕk=λkϕk\hat{\mathcal{H}}|\phi_k\rangle = \lambda_k |\phi_k\rangle을 만족합니다. (정규화된) 상태 ψ|\psi\rangle에 있는 시스템의 기댓값 에너지는 다음과 같이 계산됩니다.

ψH^ψ=ψ(k=0N1λkϕkϕk)ψ=k=0N1λkψϕkϕkψ=k=0N1λkψϕk2\begin{aligned} \langle \psi | \hat{\mathcal{H}} | \psi \rangle & = \langle \psi |\bigg(\sum_{k=0}^{N-1} \lambda_k |\phi_k\rangle \langle \phi_k|\bigg) | \psi \rangle \\[1mm] & = \sum_{k=0}^{N-1} \lambda_k \langle \psi |\phi_k\rangle \langle \phi_k| \psi \rangle \\[1mm] & = \sum_{k=0}^{N-1} \lambda_k |\langle \psi |\phi_k\rangle|^2 \\[1mm] \end{aligned}

λ0λk,k\lambda_0\leq \lambda_k, \forall k임을 고려하면 다음을 얻습니다.

ψH^ψ=k=0N1λkψϕk2k=0N1λ0ψϕk2=λ0k=0N1ψϕk2=λ0\begin{aligned} \langle \psi | \hat{\mathcal{H}} | \psi \rangle & = \sum_{k=0}^{N-1} \lambda_k |\langle \psi |\phi_k\rangle|^2 \\[1mm] & \geq \sum_{k=0}^{N-1} \lambda_0 |\langle \psi |\phi_k\rangle|^2 \\[1mm] & = \lambda_0 \sum_{k=0}^{N-1} |\langle \psi |\phi_k\rangle|^2 \\[1mm] & = \lambda_0 \\[1mm] \end{aligned}

{ϕk}k=0N1\{|\phi_k\rangle \}_{k=0}^{N-1}이 정규직교 기저이므로, ϕk|\phi_{k} \rangle을 측정할 확률은 pk=ψϕk2p_k = |\langle \psi |\phi_{k} \rangle |^2이고, 모든 확률의 합은 k=0N1ψϕk2=k=0N1pk=1\sum_{k=0}^{N-1} |\langle \psi |\phi_k\rangle|^2 = \sum_{k=0}^{N-1}p_k = 1을 만족합니다. 요컨대, 임의의 시스템의 기댓값 에너지는 최저 에너지, 즉 바닥 상태 에너지보다 높거나 같습니다.

ψH^ψλ0.\langle \psi | \hat{\mathcal{H}} | \psi \rangle \geq \lambda_0.

위의 논증은 임의의 유효한 (정규화된) 양자 상태 ψ|\psi\rangle에 적용되므로, 매개변수 벡터 θ\vec\theta에 의존하는 매개변수화된 상태 ψ(θ)|\psi(\vec\theta)\rangle를 고려하는 것도 얼마든지 가능합니다. 바로 이 지점에서 "변분"이라는 표현이 등장합니다. C(θ):=ψ(θ)H^ψ(θ)C(\vec\theta) := \langle \psi(\vec\theta)|\hat{\mathcal{H}}|\psi(\vec\theta)\rangle로 주어지는 비용 함수를 고려하여 이를 최소화하고자 한다면, 그 최솟값은 언제나 다음을 만족합니다.

minθC(θ)=minθψ(θ)H^ψ(θ)λ0.\min_{\vec\theta} C(\vec\theta) = \min_{\vec\theta} \langle \psi(\vec\theta)|\hat{\mathcal{H}}|\psi(\vec\theta)\rangle \geq \lambda_0.

C(θ)C(\vec\theta)의 최솟값은 매개변수화된 상태 ψ(θ)|\psi(\vec\theta)\rangle를 사용하여 λ0\lambda_0에 가장 가깝게 접근할 수 있는 값이며, 등호는 오직 ψ(θ)=ϕ0|\psi(\vec\theta^*)\rangle = |\phi_0\rangle을 만족하는 매개변수 벡터 θ\vec\theta^*가 존재하는 경우에만 성립합니다.

양자역학의 변분 정리

양자 시스템의 (정규화된) 상태 ψ|\psi\rangle가 매개변수 벡터 θ\vec\theta에 의존한다면, 바닥 상태(즉, 최소 고윳값 λ0\lambda_0을 갖는 고유 상태 ϕ0|\phi_0\rangle)의 최적 근사는 Hamiltonian H^\hat{\mathcal{H}}기댓값을 최소화하는 것입니다.

H^(θ):=ψ(θ)H^ψ(θ)λ0\langle \hat{\mathcal{H}} \rangle(\vec\theta) := \langle \psi(\vec\theta) |\hat{\mathcal{H}}| \psi(\vec\theta) \rangle \geq \lambda_0

변분 정리가 에너지 최솟값을 기준으로 서술되는 까닭은, 이 정리가 다음과 같은 몇 가지 수학적 가정을 포함하기 때문입니다.

  • 물리적 이유로, NN\rightarrow\infty인 경우에도 에너지에 유한한 하한 Eλ0>E \geq \lambda_0 > -\infty가 존재해야 합니다.
  • 상한은 일반적으로 존재하지 않습니다.

그러나 수학적으로 보면, 이러한 가정 외에 Hamiltonian H^\hat{\mathcal{H}}가 특별한 점은 없으므로, 같은 제약을 따른다면 이 정리는 다른 양자 관측량과 그 고유 상태로 일반화할 수 있습니다. 또한, 유한한 상한이 존재한다면, 하한을 상한으로 바꾸어 고윳값을 최대화하는 경우에도 동일한 수학적 논증을 적용할 수 있음을 유의해 주세요.

요약

이 강의를 통해 변분 알고리즘에 대한 큰 그림을 익혔습니다. 다음 강의들에서는 각 단계를 더 자세히 살펴보고, 이에 따른 트레이드오프를 함께 탐구하겠습니다.