Detecting Quantum Speedup of HHL Algorithm for Linear Programming Scenarios

Quantum computers are machines that are designed to use quantum mechanics in order to improve upon classical computers by running quantum algorithms. One of the main applications of quantum computing is solving optimization problems. For addressing optimization problems, we can use linear programming. Linear programming is a method to obtain the best possible outcome in a special case of mathematical programming. Application areas of this problem consist of resource allocation, production scheduling, parameter estimation, etc. In our study, we look at quantum speedup ratios of HHL Algorithm for different scenarios of linear programming. In a first scenario we look quantum speedup ratio (S(N)) as a function of phase transition and the ratio (κ) between the greatest and smallest eigenvalues of the matrix in linear equation system. As a second scenario, we investigate the changes in S(N) as a function of κ and s, which is the coefficient for defining the matrix as s-sparse.


Introduction
Quantum computers are designed to use quantum mechanics to improve speed by running quantum algorithms over classical computers.Entanglement is the theoretical aspect providing the speedup comparing to classical counterparts.Many recent researches have been done in entanglement and its related disciplines like entanglement measures and majorization, etc. [12][13][14][15][16][17][18][19][20].One of the main applications of quantum computing is solving optimization problems.Other Application areas of this problem can be listed as resource allocation, production scheduling and parameter estimation, etc.
In our study, we looked at two different scenarios for measuring the quantum speedup in HHL Algorithm.In the first scenario we look at quantum speedup ratio (S(N) defined in the next section) as a function of phase transition ε and the ratio κ between the greatest and smallest eigenvalues of the matrix in linear equation system.As a second scenario, we investigate the changes in S(N) as a function of κ and s, which is the coefficient for defining the matrix as s-sparse.

Materials and Methods
Linear optimization (also called linear programming) is a method used to obtain the best result (such as maximum gain or lowest cost) in a mathematical model represented by linear relationships [21][22][23].Linear programming is a special case of mathematical programming.
In other words, linear programming is a technique used to optimize a linear objective function, subject to linear equality and linear inequality constraints.The feasible region is a convex polytope, defined as the intersection of the finite half spaces, each defined by a linear inequality.The objective function is a real-valued linear function defined on this polyhedron.A linear programming algorithm finds the smallest (or largest) value on the polyhedron if such a point exists [21][22][23].
Linear programs are canonical problems that can be expressed as follows: Ax ≤ b and x ≥ 0 where x represents the vector of variables (to be determined), c and b are vectors of (known) coefficients, A is a (known) matrix of coefficients, and (.) T is the matrix transpose.The expression to be maximized or minimized is called an objective function (in this case c T x).Ax ≤ b and x ≥ 0 inequalities are constraints that specify a convex polytope on which the objective function is optimized.In this context, two vectors are comparable when they have the same dimensions.If each leading input is less than or equal to the corresponding input of the second, we can say that the first vector is less than or equal to the second vector [21][22][23].
Linear programming can be applied to various fields of study.It is widely used in business and economics, and is also used for some engineering problems.Industries using linear programming models include transportation, energy, telecommunications and manufacturing.It has proven useful in modeling various types of problems in planning, routing, scheduling, assignment and design.
A fundamental task in mathematics, engineering and many areas of science is solving systems of linear equations.This problem is defined as follows: We are given an N × N matrix A, and a vector b ∈ R N , and are asked to output x such that Ax = b.This problem can be solved in time polynomial in N by linear algebra methods such as Gaussian elimination.These works are reviewed by Montanaro [11].
The quantum algorithm of Harrow, Hassidim and Lloyd [1] (HHL) for solving systems of linear equations sidesteps this issue by "solving" the equations in a peculiarly quantum sense: Given the ability to create the quantum state outputs a state approximately proportional to . This is an N-dimensional quantum state which can be stored in O(logN) qubits.This algorithm gives a solution of linear equations of type Ax = B [1], where A is a ssparse matrix.This algorithm has time complexity: Õ(log(N)κ 2 s 2 /ε) (1) where κ is the proportion of the greatest eigenvalue to the smallest eigenvalue in the matrix and ε is the phase estimation error bound constant [1,3].
If non-zero element count d in rows and κ are small, this is an exponential improvement on standard classical algorithms.Indeed, one can even show that achieving a similar runtime classically would imply that classical computers could efficiently simulate any polynomialtime quantum computation [1].
Of course, rather than giving as output the entirety of x, the algorithm produces an Ndimensional quantum state x ; to output the solution x itself would then involve making many measurements to completely characterise the state, requiring time of order N in general.However, we may not be interested in the entirety of the solution, but rather in some global property of it.Such properties can be determined by performing measurements on x .For example, the HHL algorithm allows one to efficiently determine whether two sets of linear equations have the same solution [3], as well as many other simple global properties [4].
The HHL algorithm is likely to find applications in settings where the matrix A and the vector b are generated algorithmically, rather than being written down explicitly.One such setting is the finite element method (FEM) in engineering.Recent work by Clader, Jacobs and Sprouse has shown that the HHL algorithm, when combined with a preconditioner, can be used to solve an electromagnetic scattering problem via the FEM [4].The same algorithm, or closely related ideas, can also be applied to problems beyond linear equations themselves.These include solving large systems of differential equations [5,6], data fitting [7] and various tasks in machine learning [8].It should be stressed that in all these cases the quantum algorithm "solves" these problems in the same sense as the HHL algorithm solves them: it starts with a quantum state and produces a quantum state as output.Whether this is a reasonable definition of "solution" depends on the application, and again may depend on whether the input is produced algorithmically or is provided explicitly as arbitrary data [9].
The simplex method is a method for solving problems in linear programming.This method, invented by George Dantzig in 1947, tests adjacent vertices of the feasible set (which is a polytope) in sequence so that at each new vertex the objective function improves or is unchanged [10].The simplex method is very efficient in practice, generally taking 2m to 3m iterations at most (where m is the number of equality constraints), and converging in expected polynomial time for certain distributions of random inputs.

Results
For defining the quantum speedup Ronnow et.al. proposed a classical to quantum scaling ratio [24]: (2) where C(N) is the time used by a classical device to solve a problem of size N and Q(N) is the time used on a quantum device.S(N) > 1 means that there is a quantum speed up in the setup.

Worst-case time complexity of Simplex is O(n m )
where n is the number of variables and m is the inequality constraints [2].Average time complexity of Simplex is O((n+m)*n).For our example problem setup in the definition of C(N) we use the previously mentioned average time complexity, therefore, C(N) = N 2 +4N.
In the first setup we look at S(N) as a function of κ and ε.In Figure 1, it can be viewed that there is quantum speedup in many cases (region of the 3D plot which is above the plane z=1).Maximum quantum speedup ratio is around 13.For the values ε > ~0.85 we cannot view quantum speedup.Similarly, for κ > 3.6~, we cannot view quantum speedup.In the second scenario, in Figure 2, we visualize the changes in S(N) as a function of κ and s.The maximum quantum speedup ratio achieved is ~30 and the regions above the plane z=1 show the parts of the 3D plot where quantum speedup occurs.

Discussion
We showed that for the linear equation systems of type Ax = B where A is a s-sparse matrix.If the eigenvalues of A are close to each other (κ is small) and s is small in A, we can obtain a significant quantum speedup.In the first scenario studied in this work, maximum quantum speedup ratio is around 13.For the values ε > ~0.85 we cannot view quantum speedup.Similarly, for κ > 3.6~, we cannot view quantum speedup.In the second scenario, the maximum quantum speedup ratio achieved is ~30.We can conclude that for linear programming setup conforming HHL Algorithm conditions, it is possible to quantify quantum speedup either as functions of κ and ε or κ and s.

Figure 1 .
Figure 1.Quantum speedup ratio-S(N) as a function of κ and ε

Figure 2 .
Figure 2. Quantum speedup ratio-S(N) as a function of κ and s (coefficient of s-sparse matrix)