量子计算解线性方程:HHL algorithm for quantum linear equation
Posted 元之田
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了量子计算解线性方程:HHL algorithm for quantum linear equation相关的知识,希望对你有一定的参考价值。
Introduction
Systems of linear equations arise naturally in many real-life applications in a wide range of areas, such as in the solution of Partial Differential Equations, the calibration of financial models, fluid simulation or numerical field calculation. The problem can be defined as, given a m a t r i x A ∈ C N × N matrix A\\in\\mathbbC^N\\times N matrixA∈CN×N and a vector b ⃗ ∈ C N \\vecb\\in\\mathbbC^N b∈CN, find x ⃗ ∈ C N \\vecx\\in\\mathbbC^N x∈CN satisfying A x ⃗ = b ⃗ A\\vecx=\\vecb Ax=b
For example, take N=2,
A = ( 1 − 1 / 3 − 1 / 3 1 ) , x ⃗ = ( x 1 x 2 ) and b ⃗ = ( 1 0 ) A = \\beginpmatrix1 & -1/3\\\\-1/3 & 1 \\endpmatrix,\\quad \\vecx=\\beginpmatrix x_1\\\\ x_2\\endpmatrix\\quad \\textand \\quad \\vecb=\\beginpmatrix1 \\\\ 0\\endpmatrix A=(1−1/3−1/31),x=(x1x2)andb=(10)
Then the problem can also be written as find x 1 , x 2 ∈ C s u c h t h a t x 1 − x 2 3 = 1 − x 1 3 + x 2 = 0 x_1, x_2\\in\\mathbbC such that \\begincasesx_1 - \\fracx_23 = 1 \\\\ -\\fracx_13 + x_2 = 0\\endcases x1,x2∈Csuchthatx1−3x2=1−3x1+x2=0
A system of linear equations is called s-sparse if A has at most s non-zero entries per row or column. Solving an s-sparse system of size N with a classical computer requires O ( N s κ log ( 1 / ϵ ) ) \\mathcal O (Ns\\kappa\\log(1/\\epsilon)) O(Nsκlog(1/ϵ)) running time using the conjugate gradient method. Here κ \\kappa κ denotes the condition number of the system and ϵ \\epsilon ϵ the accuracy of the approximation.
The HHL is a quantum algorithm to estimate a function of the solution with running time complexity of O ( log ( N ) s 2 κ 2 / ϵ ) \\mathcal O (\\log(N)s^2\\kappa^2/\\epsilon) O(log(N)s2κ2/ϵ) when A is a Hermitian matrix under the assumptions of efficient oracles for loading the data, Hamiltonian simulation and computing a function of the solution. This is an exponential speed up in the size of the system, however one crucial remark to keep in mind is that the classical algorithm returns the full solution, while the HHL can only approximate functions of the solution vector.
The HHL algorithm
Some mathematical background
The first step towards solving a system of linear equations with a quantum computer is to encode the problem in the quantum language. By rescaling the system, we can assume b ⃗ \\vecb b and x ⃗ \\vecx x to be normalised and map them to the respective quantum states ∣ b ⟩ |b\\rangle ∣b⟩ and ∣ x ⟩ |x\\rangle ∣x⟩. Usually the mapping used is such that i t h i^th ith component of b ⃗ \\vecb b (resp. x ⃗ ) \\vecx) x) corresponds to the amplitude of the i t h i^th ith basis state of the quantum state ∣ b ⟩ |b\\rangle ∣b⟩ (resp. ∣ x ⟩ ) |x\\rangle) ∣x⟩). From now on, we will focus on the rescaled problem
A ∣ x ⟩ = ∣ b ⟩ A|x\\rangle=|b\\rangle A∣x⟩=∣b⟩
Since A is Hermitian, it has a spectral decomposition
A = ∑ j = 0 N − 1 λ j ∣ u j ⟩ ⟨ u j ∣ , λ j ∈ R A=\\sum_j=0^N-1\\lambda_j|u_j\\rangle\\langle u_j|,\\quad \\lambda_j\\in\\mathbb R A=j=0∑N−1λj∣uj⟩⟨uj∣,λj∈R
where ∣ u j ⟩ i s t h e j t h |u_j\\rangle is the j^th ∣uj⟩isthejth eigenvector of A with respective eigenvalue λ j \\lambda_j λj. Then,
A − 1 = ∑ j = 0 N − 1 λ j − 1 ∣ u j ⟩ ⟨ u j ∣ A^-1=\\sum_j=0^N-1\\lambda_j^-1|u_j\\rangle\\langle u_j| A−1=∑j=0N−1λj−1∣uj⟩⟨uj∣
and the right hand side of the system can be written in the eigenbasis of A as
∣ b ⟩ = ∑ j = 0 N − 1 b j ∣ u j ⟩ , b j ∈ C |b\\rangle=\\sum_j=0^N-1b_j|u_j\\rangle,\\quad b_j\\in\\mathbb C ∣b⟩=j=0∑N−1以上是关于量子计算解线性方程:HHL algorithm for quantum linear equation的主要内容,如果未能解决你的问题,请参考以下文章
量子计算秒解问题:Deutsch-Jozsa Algorithm
HHL algorithm for quantum linear equation
量子计算求解函数因子:Bernstein-Vazirani Algorithm