Forthcoming applications of quantum computing: peeking into the future

IET Quantum CommunicationVolume 1, Issue 2 p. 35-41 Review ArticleOpen Access Forthcoming applications of quantum computing: peeking into the future Vikas Hassija, Department of CSE and IT, Jaypee Institute of Information Technology, Noida, IndiaSearch for more papers by this authorVinay Chamola, Corresponding Author vinay.chamola@pilani.bits-pilani.ac.in Department of Electrical and Electronics Engineering, BITS Pilani, Pilani, IndiaSearch for more papers by this authorAdit Goyal, Department of CSE and IT, Jaypee Institute of Information Technology, Noida, IndiaSearch for more papers by this authorSalil S. Kanhere, orcid.org/0000-0002-1835-3475 School of Computer Science and Engineering, UNSW Sydney, AustraliaSearch for more papers by this authorNadra Guizani, School of Electrical Engineering and Computer Science, Washington State University, Pullman, WA, 99163 USASearch for more papers by this author Vikas Hassija, Department of CSE and IT, Jaypee Institute of Information Technology, Noida, IndiaSearch for more papers by this authorVinay Chamola, Corresponding Author vinay.chamola@pilani.bits-pilani.ac.in Department of Electrical and Electronics Engineering, BITS Pilani, Pilani, IndiaSearch for more papers by this authorAdit Goyal, Department of CSE and IT, Jaypee Institute of Information Technology, Noida, IndiaSearch for more papers by this authorSalil S. Kanhere, orcid.org/0000-0002-1835-3475 School of Computer Science and Engineering, UNSW Sydney, AustraliaSearch for more papers by this authorNadra Guizani, School of Electrical Engineering and Computer Science, Washington State University, Pullman, WA, 99163 USASearch for more papers by this author First published: 30 November 2020 https://doi.org/10.1049/iet-qtc.2020.0026Citations: 2AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Share a linkShare onEmailFacebookTwitterLinked InRedditWechat Abstract We all have been using classical computers for a long time. Quantum computing uses the phenomena of quantum mechanics like superposition and entanglement. Quantum computations can help achieve for the breakthroughs we have been looking for in science, machine learning, financial planning, medicine, etc., where classical computers' computing power is not enough. It was not long back when quantum computing's applications in our life were all just theoretical. However, to utilise the power of quantum computations for real-life applications, several recent developments have been made. Keeping that in mind, this study aims to explore the existing and upcoming applications of quantum computing. In this study, they start with an introduction of quantum computing fundamentals, following which, they give a brief overview of various applications of quantum computing in several significant areas of computer science, such as cryptography, machine learning, deep learning, and quantum simulations. They also cover various real-life scenarios such as risk analysis, logistics, and satellite communication. 1 Introduction Classical computers have been around for a long time now, and they have played a significant role in scientific breakthroughs. Quantum computing, on the other hand, has shown promising results for solving such large complex problems. Quantum computers, generally, utilise the quantum mechanical phenomena of superposition and entanglement to create states that scale exponentially with the number of qubits or quantum bits [1]. The classical computers manipulate individual bits, 0 and 1, to store information as binary data, whereas quantum computers use the probability of an object's state before it is measured [2]. Therefore, it gives them the potential to process exponentially more data compared to classical computers. Unlike classical computers that use the binary bit, quantum computers use qubits that are produced by the quantum state of the object to perform operations. Since these qubits are quantum in nature, they follow phenomena like superposition and entanglement. Superposition is the ability of a quantum system to be in multiple states at the same time. Entanglement is the strong correlation between quantum particles. These phenomena help the quantum computer work with 0, 1, and superposition of 0 and 1, giving them the advantage in doing complex calculations that modern classical systems cannot do or would take a significant amount of time to get the desired result [3]. Currently, quantum computing is the metaphorical elephant in the room for researchers because of its potential for altering the time and space complexity of many algorithms we have been using, such as a solution to a linear system of equations [4]. With these changes, there is an increasing threat to the security of our data. Many cryptography systems rely on the complexity of the mathematical problems for their security. It was impossible to get an optimal solution for these problems in time, with the processing capacity of classical computers. However, since the advent of quantum computations, cryptography is at a significant threat [5]. There have been developments in research for post-quantum cryptography [6], and possibly, we will be able to transfer all the encrypted data to these 'quantum-safe' systems. Quantum simulation is one of the most promising and exciting areas of quantum computers, it has the potential to solve the complexities of molecular and chemical interactions, which can lead to the discovery of new medicines and materials. This paper will give the readers a very broad perspective of the applications of quantum computers in the next four sections. Section 2 explains the various applications of quantum algorithms, such as the well-known Shor's algorithm in cryptography [7], and Grover's algorithm for unstructured search [8]. Section 3 deals with how some of the most basic and standard machine learning algorithms can be modified to be used on a quantum computer for faster and better results. Furthermore, Section 4 talks about various quantum simulations, and the need for quantum simulators for performing simulations that are beyond the scope of classical computers. Finally, Section 5 explains various day-to-day areas where quantum computers would be very useful to save cost and can provide a better quality of service [9]. An overview of this paper is shown in Fig. 1. Fig. 1Open in figure viewerPowerPoint Overview of this article 2 Applications of various quantum algorithms Many different algorithms have been developed using the principles of quantum computing. These algorithms have shown significant improvements in terms of efficiency over their classical counterparts, and we have discussed a few of the most common algorithms in this section. 2.1 Cryptography One of the first applications of quantum computing, i.e. Shor's algorithm [7], can break today's most widely used public-key cryptosystems, such as RSA that use complex mathematical problems such as integer factorisation as their basis for security. Given an integer for some prime numbers p and q, Peter Shor was able to determine p and q in time . This is exponentially faster as compared to any existing classical algorithms. Shor's algorithm is analogous to the hidden subgroup problem (HSP) for finite Abelian groups. The HSP is described by a group G, in the case of Shor's algorithm . Other cryptosystems can be broken by solving the HSP for other G groups. In Table 1, we have summarised different HSPs, their corresponding groups, and the cryptosystems that can be broken using a particular group in the HSP. Table 1. Some groups G for a given hidden subgroup problem (HSP) and the corresponding cryptosystems that are broken Reference Problem Group Complexity Cryptosystem [7] factorisation polynomial RSA [7] discrete log polynomial Diffie–Hellman, DSA [10] elliptic curve discrete log elliptic curve polynomial ECDH, ECDSA [11] principal ideal polynomial Buchmann–Williams [12] shortest lattice vector dihedral group subexponential NTRU, Ajtai–Dwork The best known time complexity for a given HSP is also mentioned. 2.2 Unstructured search As of now, unstructured data accounts for a significant portion of the total data generated. It may consist of text, dates, and values that result in data not organised in any pre-defined manner. In an unstructured search within a list of k elements, assuming for the index to become an n bit string, function f is given such that to tell us whether that specific unique element is present or not. Grover's algorithm, based on quantum computing, was devised in 1997 for searching in an unstructured data set [8]. Grover's algorithm does not use any internal structure of the given function f, even if it has one. f is a black box or oracle to the algorithm. This algorithm requires a time complexity of , which is an improvement by a quadratic factor over the classic computational models. Fig. 2 shows the complete working of Grover's search algorithm for 3 qubits. The amplitude of the marked state becomes negative through the oracle, and then that state is amplified. After an appropriate number of iterations, the amplitude of the desired state is maximised [13]. Fig. 2Open in figure viewerPowerPoint 3-Qubit Grover's search algorithm on a quantum computer (adapted from [13]) Sergey Sysoev proposed an improvised algorithm based on Grover's algorithm to solve NP-tasks [14], which would be exponentially faster than the speed achieved by Grover's algorithm. However, this requires the use of two quantum systems at the same time to alternate the roles between each iteration, and this kind of quantum computational model is yet to be developed. 2.3 Amplitude amplification and estimation Let's assume that the probability of finding an element in the list of elements is p. Each time we execute this search algorithm, the probability of finding the element would increase by p, making the probability , and so on. Applying the same logic in quantum computations, we get the concept of amplitude amplification. We can consider a Boolean function , , wherein it's value is true if otherwise, it's false. In amplitude amplification, instead of increasing the probability after each iteration, we would be increasing the amplitude of being in one amongst the two possible states (true/false) residing in a complex separable Hilbert space. The quantum algorithm which was proposed by Brassard et al. [15] is a generalisation of Grover's algorithm [8] where there has to be a unique solution only. This algorithm can find the element in time, which is a quadratic speedup over classical algorithms. Amplitude estimation uses the ideas behind Grover's [8] and Shor's algorithms [7] to obtain the approximate number of times a 'True' value is obtained in the simulation. 2.4 Applications of search Grover's search and amplitude amplification can be used as subroutines for more complicated quantum algorithms. Refer Table 2 for a summary. A quantum algorithm by Durr and Hoyer [16] can be used to find the minimum of an unsorted list of N integers with evaluations. More generally, it finds the minimum of an unknown function . Their algorithm applies Grover's algorithm to a function defined by if and only if , where T is some threshold initially set randomly. The threshold is then updated as inputs x are found such that . Table 2. Comparison of speed-ups achieved due to Grover's algorithm and amplitude amplification when used as subroutines Application Classical complexity Quantum complexity finding minimum of an unordered list determine graph connectivity pattern matching Determining graph connectivity is another application. A classical computer requires time in the worst case, where N is the number of vertices in the graph. The authors of [17] give a quantum algorithm that runs in time , up to logarithmic factors. Efficient algorithms for other graph problems, such as strong connectivity, minimum spanning tree, and shortest path, were also proposed in the same paper. A fundamental problem in text processing and bioinformatics is pattern matching. Ramesh and Vinay [18] have proposed an algorithm that can find a given pattern p of length m within a text t of given length n. The required time is of the order up to logarithmic factors. The best possible classical complexity is . 2.5 Constraint satisfaction problem (CSP) A CSP means some limitations or constraints applied over a set of objects. CSP is under research in various domains that have a common basis to solve many problems of many different varieties. A lot of these problems are NP-complete. The authors of [19] proposed a quantum algorithm based on adiabatic evolution to solve any CSP. In the algorithm, a quantum state with uniform superposition over all possible solutions of CSP is prepared in the starting. This quantum state is considered as the ground state of a Hamiltonian [A Hamiltonian is a mathematical description of a physical system in terms of its energies.]. This Hamiltonian is modified 'slowly enough' to give a new Hamiltonian. The newly prepared ground state encodes a solution that maximises the number of satisfied constraints. The adiabatic theorem guarantees that if we modify slowly enough, then the system remains in its ground state for the whole process. The worst-case time complexity for this algorithm is unknown. 2.6 Harrow, Hassidim, and Lloyd (HHL) algorithm It is one of the algorithms that has provided unparalleled applications for quantum computers. The HHL algorithm designed by Harrow, Hassidim, and Lloyd can solve a system of linear equations. In particular, the algorithm does not solve for the solution, but estimates the result of a scalar operation on the solution [4]. However, it has a few limitations like the linear system of equations in N variables should be sparse, the matrix needs to be a Hermitian matrix and have a low condition number . The result of some scalar operation on the solution requires time on a classical computer, whereas this algorithm provides the result in time . Clader et al. [20] have shown that we can use the HHL algorithm to compute the electromagnetic scattering cross-section of an arbitrary target. Some other applications include solving linear differential equations [21] and data fitting [22]. Many of the machine learning algorithms also use the HHL algorithm as a subroutine for various tasks. 2.7 Quantum annealing Adiabatic quantum computation (AQC), also known as quantum annealing, is a method to solve optimisation problems. It can be used to find the global minimum value from the data set with the help of an objective function. The ground state (lowest energy state) of a complicated Hamiltonian describes the solution to the problem. Initially, we take a simple Hamiltonian in its ground state to solve the problem. Thereafter, a complicated Hamiltonian evolves adiabatically from the simple Hamiltonian. Fig. 3 provides a graphical representation for the quantum annealing process [23]. According to the adiabatic theorem, the system will always remain in the ground state. The processor D-Wave 2X from the D-wave company, developed recently, can outperform classical processors implementing quantum Monte Carlo and simulated annealing [24]. Fig. 3Open in figure viewerPowerPoint Graphical representation of quantum annealing (adapted from [23]) Similar to the Shor's algorithm, quantum annealing can be used to factor integers into primes. This makes it very important from the perspectives of cryptography. Burges in [25] did fundamental research in this direction. The author used factoring of bi-primes as a framework for solving combinatorically hard problems using optimisation algorithms. His work was further improved by the authors of [26] in 2012. 3 Applications of quantum computing for machine learning In the field of machine learning, we develop algorithms which can learn from the given examples of inputs and desired outputs, following which, we expect the algorithms to predict values for future unknown inputs. The most common use of quantum computing in machine learning is using the computational speed-ups achieved by quantum algorithms as subroutines for classical machine learning algorithms. On the other hand, deep learning algorithms use specialised hardware such as quantum annealers (quantum computers based on AQC) to enhance performance. Table 3 provides a summary of how a machine learning algorithm achieves speed-up in comparison to a classical computer. Table 3. Approaches used for improving machine learning algorithms Machine learning method Quantum enhancement nearest neighbour classification quantum subroutine to improve existing machine learning algorithms K-means clustering SVM neural network exploration of quantum model deep quantum learning special hardware to training existing neural networks hidden quantum Markov module (HQMM) open quantum systems with instantaneous feedback 3.1 Nearest neighbour classification and k-means clustering It is a standard algorithm in machine learning. K-nearest neighbour (KNN) algorithm takes all the previous data under consideration while evaluating a new data item that we need to classify based on how similar it is and how it's neighbours are classified. The closer a vector is to another vector, the more similar they are. Standard methods for evaluating closeness or distance are the inner product, the Hamming distance, or the Euclidean. In [27], the authors use a technique of overlap or fidelity of two quantum states and to measure the similarity between vectors. The overlap is acquired through a subroutine known as a swap test. Based on [27], the authors in [28] proposed a quantum algorithm that takes time . This introduced an exponential speed-up [29]. The authors of [30] have also presented algorithms for measuring the distance between feature vectors. The approach, which is based on the swap test, provides methods for calculating Euclidean distance both directly and using the inner product. It is coupled with the use of amplitude amplification applied together with Grover's search. However, the representation of classical information through qubits is different. In the worst case, the algorithm leads to polynomial reductions when compared to Monte Carlo algorithms. 3.2 Support vector machine (SVM) SVMs are widely used supervised machine learning algorithms for data models. They are mainly used for classification analysis and also for regression. It uses a test sample for training the data model and assigning each value to one of the categories available. The task in such problems is to find an optimal hyperplane that separates two-class regions very clearly and acts as a decision boundary for future inputs. In the early 2000s, the authors of [31] proposed the first version of the quantum SVM, which used a variant of Grover's search. More powerful methods have been developed recently. The data input can come from, sources such as qRAM accessing classical data, or it can be a quantum subroutine preparing quantum states. Specifically, quantum phase estimation and matrix invasion are used to create the optimal hyperplane and test the input vector, which in principle requires time poly . N is the dimension of the matrix that is required to produce a quantum version of the hyperplane vector. The methods described in [32–34] can be used to analyse data using the HHL algorithm. 3.3 Quantum neural networks (QNNs) and deep learning QNNs are computational neural networks working on the principles governed by quantum mechanics. Artificial neural networks are specifically researched because of their help in pattern recognition and big data applications. It is believed that concepts such as entanglement, parallelism, and interference may help. An increasing number of publications have explored the idea of quantum artificial networks [35–37]. Current work in the field uses the concept of replacing the classic binary bit with a qubit and thus creating a neural unit that is in a superposition of the activated and not activated states. Quantum annealers are easily scalable and commercially available and well suited for constructing deep quantum learning networks [38]. A deep learning network that is the Boltzmann machine is the easiest to approximate [39]. The quantum Boltzmann machine outputs quantum data which is in qubits. Schuld et al. [40] have concluded in their survey that there are no proposals that truly harness the power of quantum computers. The reason why this is just theoretical till now is that quantum states need to be normalised. Using a unitary operator like addition in a Hilbert space (a real or complex inner product space satisfying certain properties) would render an invalid state. Moreover, classical neural networks have non-linear dynamics, whereas QNN has linear dynamics. 3.4 Hidden quantum Markov models A Markov model is a stochastic model that models temporal or sequential data which helps in predicting future value based on the current information. A hidden Markov model (HMM) is a Markov model where states of the model are hidden and can be observed only when it is given as output by the state. Recorded speech is an example of the Markov chain of successive words. HMM is particularly useful to model sequential data in fields such as NLP (Natural Language Processing). In 2010, the authors of [41] first introduced hidden quantum Markov models (HQMMs). HQMMs have an edge in that they are a generalisation when compared to the classical HMM. In [42], the authors have proposed open quantum systems with instantaneous feedback to implement the HQMM. They also note that HQMMs can find application as simulators of stochastic processes. Recently an iterative maximum likelihood algorithm has been proposed [43]. The algorithm could successfully learn HQMM and better model certain sequential data. 4 Quantum simulation Classical computer encounters many problems when it tries to simulate quantum mechanics. Direct simulation on a classical computer is very challenging to achieve because it requires a massive amount of computational memory to store the vast number of explicit states of the quantum system. It happens because quantum states are described by many parameters that grow exponentially as the system size increases [44]. It was in 1982 when Richard Feynman proposed the idea of quantum simulators to do what the most powerful classical simulation methods or supercomputers could not do [45]. Feynman proposed the alternative method of quantum simulation that can be defined as simulating a quantum system by quantum mechanical means. The idea is to have 'one controllable quantum system simulate another' [45]. With this approach, quantum simulators would be able to solve quantum many-body problems. It would provide new results that could not be predicted and be very hard to be classically simulated. Being quantum systems themselves, they would help us give more insights into the vast quantum phenomenon. Additionally, it would also allow us to test and verify various models. For instance, it is possible to study hard problems in condensed matter physics like quantum magnetism and correlated electrons. A big advantage of quantum simulation is that it does not require explicit quantum gates. Error correction does not act as a major obstacle, and less accuracy is required while dealing with quantum simulations. One very apparent advantage of simulation over the other quantum computational processes is that one could easily perform a quantum simulation with just tens of qubits. On the other side, well-known algorithms such as Shor's algorithm require thousands of qubits to work. Secondly, it would be possible to build a quantum simulator with current technologies in the near future. Thirdly, the quantum simulation applications are diverse, ranging from condensed-matter physics to cosmology and from nuclear physics to quantum chemistry. This resulted in an increased interest in quantum simulators. 5 Miscellaneous applications 5.1 Logistics For any transportation purpose, finding the optimum route is very essential. The global logistics market is predicted to have a compound annual growth rate of 3.48% from the years 2016–2022 and capture a market worth $12,256 billion by the year 2022. With the increased globalisation of the markets and increased demand for movement of stock products from one place to another, logistics have played a significant role in the development of many economies. The functioning in a supply chain is an essential decisive factor in a competitive business. The transport business has unhealthy consequences on human life as it is one of the main contributors to air pollution and greenhouse gases, which thereby leads to global warming [46]. Visiting just ten cities can make up to 200,000 different routes. This problem increases exponentially, and with more cities, the complexity goes beyond the capabilities of a classical computer. This problem is better known as VRP or 'Vehicle Routing Problem.' The referred paper by Wang et al. [9] proposes an algorithm, quantum-inspired evolutionary algorithm (IQEA), which follows a heuristics approach and utilises the quantum nature of exponential growth. It serves as a good solution for VRPTW or 'Vehicle Routing Problem with Time Windows,' which applies more constraints VRP to make it similar to the real-life scenarios. Experimental results have shown that by following this method, the cost of transport operations can have a 19.8% reduction in cost (from $44,157 to $35,408) when implemented on twenty vehicles [9]. Fig. 4 shows that the value of the optimal solution decreases significantly as we increase the number of iterations. Similar to the above-discussed applications of quantum computers, there can be many other applications that can help in improving the efficiency of many day-to-day processes. Fig. 4Open in figure viewerPowerPoint Drop in cost with a quantum algorithm [9] 5.2 Financial risk analysis Suppose you hold a portfolio of financial products, and the value of these products' profits and losses depends on future prices. These future prices are uncertain, and you do not know how they will develop with time. This uncertainty raises many questions, such as whether a particular investment will yield profit or loss or whether the capital in hand is good enough not to go bankrupt. Risk management, thus, is a very crucial part of our financial system. To get these future estimations, many algorithms have been developed over time. Value at Risk (VaR) and Conditional VaR (CVaR) are the two units for calculating the risk. VaR is used to determine the loss distribution, while the CVaR is used to determine the expected loss for losses greater than the VaR. CVaR is more sensitive to extreme events in the loss distribution. Monte Carlo simulations are the most widely used methods to find these predictions on traditional classical computers. Monte Carlo simulation is the process of the generation of random objects or processes that can be achieved on a computer [47]. It follows a stochastic model to sample for future prices. This requires a large number of random samples of future realisation of these prices. If the random data sample is big, and the model designed to predict results is good, it can yield a possibility or probability of identifying the risk factor in our investments. This approach to finding the risk factor faces some obstacles. Sometimes a million samples are needed to draw out relevant results. Also, calculations performed on a classical computer may take overnight or even weeks for big datasets. However, quantum methods can achieve this very quickly. Quantum techniques can not only assist machine learning to solve financial problems, but also can optimise risk returns for the financial assets and portfolios. Amplitude estimation can be used to estimate and achieve speedups over classical algorithms such as Monte Carlo [15]. This approach to finding risk estimates has significant advantages over classical computer algorithms. These quantum algorithms can estimate the risk for a given portfolio for a given financial derivative. Only a few thousand samples are required for them to work, whereas Monte Carlo requires millions of samples. It can take weeks for a classical computer to run this algorithm, whereas a quantum computer can run this in a few hours. Fig. 5 shows that by increasing the number of qubits, better results are achieved for the VaR calculation. With the increase of qubits, i.e. m, VaR calculations by the quantum computer show lesser deviation from the classical values. Even though a small number of samples can provide a significant quantum speed-up, but more are provided to get a practical quantum advantage. Fig. 5Open in figure viewerPowerPoint Measurement of VaR value on a classical versus a quantum computer. As the number of qubits increases, the value of VaR calculated by a quantum computer gets closer to the classical VaR value [48] 5.3 Quantum random number In this day and age, random number serves as the fundamental element in several applications. It is used in modern electronic casino machines and lottery games for gambling. Many statistical methods, such as the bootstrap method, require random numbers to work. Random numbers play a very signifi