Theory versus practice in annealing-based quantum computing
Introduction
How much time does it take to solve a satisfiability problem defined on n variables? The complexity theorist will tell you that satisfiability is NP-complete: based on current knowledge, probes of the solution space are required. The empirical computer scientist will tell you that hard random 3CNF SAT instances with 250 variables can be solved in under 5000 seconds [31], considerably lower than the theoretician's estimate, which works out to about seconds assuming one nanosecond per probe. (For comparison, about seconds have elapsed since the Big Bang.)
This illustrates a long-standing communication gap between theoreticians and empiricists when reasoning about algorithm performance on NP-hard problems. The empiricist will explain that worst-case bounds are over-pessimistic and irrelevant to real-world scenarios. The theoretician will point out that performance of any given algorithm on any given input says nothing about performance in general. Both are correct. But in this case, neither prediction is much use to the practitioner with real inputs in hand who is wondering what to expect.
The theoretician and empiricist will agree that the cost of any given computation depends on three factors shown in Fig. 1: the instance, the algorithm, and the machine on which the algorithm runs. Theoretical analysis is based on finding bounds for abstractions, and empirical analysis is based on measuring instantiations of these three factors. The communication gap arises because abstract results are hard to make precise and empirical results are hard to generalize.
The gap becomes a ravine when reasoning about quantum computation. Most theoretical work on quantum algorithms assumes that the computation takes place in an ideal closed system, in perfect isolation, whereas all real-world quantum computation takes place in an open system, vulnerable to noise from the ambient environment and to other hazards such as imprecision in analog controls. These effects degrade the probability that any given computation succeeds, which increases computation time (or space, or both, depending on the remedy). Furthermore, the impact of these effects increases with system size, in ways that are difficult to characterize. Without measurements, theory-based predictions about performance of real-world quantum computers at industrially-relevant scale can become untenable, due to over-pessimism about (worst case) classical performance and over-optimism about (ideal case) closed system conditions.
The ravine becomes a chasm when considering the annealing-based quantum paradigm, including adiabatic quantum computing (AQC) and quantum annealing (QA), which is distinct from the more familiar gate model (GM) of quantum computation. These terms are defined more carefully in Section 2.3: here briefly, AQC refers to a general closed-system model of computation, analogous to a Turing Machine, and QA refers to a restricted and more realistic model of computation, analogous to the programmable RAM found in any algorithms textbook (e.g. [19]).
Physical QA computers are easier to build and operate at commercially-relevant scale than are physical GM computers, as evidenced by the steady pace of production from D-Wave Systems,1 starting with the 128 qubit D-Wave One launched in 2011 through the 2000 qubit D-Wave 2000Q launched in 2017; a next-generation system with 5000+ qubits is due to be announced in 2020. This trajectory exists partly because the annealing-based paradigm is more robust than GM against the kinds of errors that plague open system quantum computing, and partly because D-Wave's business strategy has prioritized early growth of system size in the simpler QA model, and later growth of system scope to more general forms of quantum computers. As a result, progress in developing and analyzing the physical machines has outpaced progress in abstract analysis within this paradigm. As Preskill concisely puts it [57]: Since theorists have not settled whether quantum annealing is powerful, further experiments are needed.
Certainly plenty of experimental results are available. A quick search of arXiv [1] and review of presentations at D-Wave QUBITS user group meetings [60] reveals hundreds of published papers that describe physical properties, performance, demonstrated applications, and classical simulations of existing quantum annealing processors. A rough empirical picture of the algorithm performance landscape — characterizing how well a given quantum annealing algorithm performs, with respect to input properties and machine parameters — is starting to emerge. However, it is not clear whether these empirical results are useful or interesting to the theoretician who wants to study abstract properties of QA and AQC. On the flip side of this coin, without proper abstract models, generalizing measured results beyond the scope of any given experiment becomes extremely problematic.
This paper aims to address this impass. Section 1.1 presents a brief tutorial overview on how quantum annealing works. Section 2 proposes a framework for reasoning about annealing-based models of quantum computation from both ends of the abstraction/instantiation spectrum, by introducing the QA-RAM, an abstract model that captures features of real-world quantum annealing processors. Section 3 points out some differences between theoretical and empirical approaches to algorithm analysis in the context of quantum annealing.
Sections 2 and 3 aim to provide a common language for sharing results from theoretical and empirical research on annealing-based quantum machines and algorithms. A second goal of the paper is to develop common understanding of the language already in place: one unhappy consequence of the above-mentioned communication breakdown is that key technical terms have different meanings in different research communities that study quantum annealing systems. Section 4 presents a glossary of commonly-used terms having multiple definitions, with the aim of breaking down this barrior to research communication. Section 5 offers some conclusions.
Brief history of AQC and QA. The computational concepts associated with AQC and QA have origins in different branchs of science. Nowadays, like the overloaded terms in Section 4, they have multiple conflicting meanings in the literature — sometimes referring to abstract models of computation, sometimes to algorithms, and sometimes to physical machines — and are sometimes used interchangeably.
Nevertheless, some consensus has emerged that AQC refers to more abstract versions, and QA to more realistic versions, of the same basic concept: annealing-based quantum computation. This paradigm uses Hamiltonians to describe a given computation: a Hamiltonian is a Hermitian matrix, an operator that describes the forces to be applied to a collection of qubits and couplers, in order to move the system into some desired state. That is, instead of describing computation in terms of step-by-step application of quantum logic gates as in the gate model, the annealing-based model describes an operator to be applied to all qubits simultaneously, together with a specification of how to gradually transition from an initial state to a realization of that operator. The transition is called an anneal.
Quantum annealing originally referred to a classical heuristic for solving NP-hard optimization problems, proposed by several authors starting in the late 1980's, as a variation on the well-known simulated (thermal) annealing algorithm (SA). Kadawaki and Nishimori [36] analyzed quantum annealing in a version incorporating a transverse field Ising model, and showed that QA converges to optimality faster than SA in some cases.
Farhi et al. [25] proposed an abstract quantum adiabatic algorithm (QAA) that was designed to run on a purpose-build quantum device for solving NP-hard optimization problems. The idea was further generalized to become AQC, which now refers to both a model of computation and an algorithm that runs in that model.
D-Wave Systems demonstrated a prototype QA processor called Orion in 2007, and its first commercial system, the D-Wave One, in 2011. These and subsequent quantum processors implement a family of quantum annealing algorithms using quantum hardware.
This section presents a brief introduction to quantum annealing processors developed by D-Wave (see [68], [17], [48] for more). The quantum processing unit (QPU) reads inputs for the Ising Model minimization problem (IM), defined as follows: Given a graph with real weights on n vertices and on m edges, find an assignment of spin values to vertices, so as to minimizes the energy function, This problem is NP-hard when G is non-planar [11]. The problem is equivalent to quadratic unconstrained binary optimization (QUBO) defined on binary variables , via the trivial transformation , and to Maximum Weighted 2-Satisfiability defined on booleans , with logical operators replacing arithmetic operators in formula (1).
The process of using the QPU to solve a given input for an arbitrary NP-hard problem P typically involves three steps:
- (1)
Transform instance for P to an instance for IM or QUBO (the QPU accepts either form), using standard reduction techniques of NP-completeness theory.
- (2)
Apply minor-embedding to transform onto an equivalent instance that matches the native QPU topology, that is, the physical connectivity structure among qubits.
- (3)
Send to the QPU, together with algorithm parameters, and receive solutions. Quantum annealing in the open system means that there is a chance that the returned solution is not optimal. In normal use the QPU is asked to return a sample of R results, to boost the chances of finding an optimal solution in the sample.
An example. The circuit satisfiability problem (CSAT) is defined as follows: Given a description of a boolean circuit together with an output string , find an input string such that . Fig. 2 shows a small example circuit, the half-adder (H), which has two input bits and two output bits (sum and carry). The center table shows the binary function computed by H.
Translating the CSAT input into an IM input requires finding a penalty model, a function that is minimized exactly when , that is, when the circuit constraint is satisfied. The right side of Fig. 2 shows the first eight rows of such a model, here minimized at zero when the constraint is satisfied, and otherwise taking a positive value g (not necessarily the same g in every row). This penalty model must be expressed in quadratic form as in (1). Here is one possible derivation of the penalty model : It is straightforward to verify that is minimized exactly when variables obey the half-adder constraint. Referring to the energy function (1), this penalty model has coefficients shown in the table of Fig. 3, with h on the diagonal and J on the off-diagonals.
A second penalty model is needed to ensure that variables match the output string O: for example, setting for some ensures that is minimized when (the value of α can be tuned to improve success probabilities). Summing yields coefficients for the logical input . If desired, this QUBO form defined on binaries can be converted to an IM form defined on spins as in (1).
The next step is to map defined on general G to the native qubit connection topology inside the QPU. The current D-Wave architecture is based on a topology described by a Chimera graph. Fig. 3 shows a C2 Chimera containing a grid of Chimera cells, where each cell is a , and nodes are connected to grid neighbors.
Current model D-Wave 2000Q QPUs are based on a C16 Chimera graph with 2048 qubits. The physical hardware graph for a specific QPU may contain a small number of qubits that are unused due to fabrication defects, in which case C16. A next-generation system with a more complex Pegasus topology will be launched in 2020 [14].
The input must be embedded in a minor of the hardware graph, which may introduce auxilliary qubits to physically represent the minor. For example, since Chimera is bipartite, the triangles and in must be minor-embedded by splitting some variables across two physical qubits. The qubits are linked by so-called chain edges with strong negative weights , to ensure that their values are equivalent in the output. The right side of Fig. 3 shows one possible embedding of : the weights are split over qubits and , and the chains are shown in red. Finding an optimal minor-embedding is NP-hard in general; D-Wave provides users with a suite of heuristics and tools for accomplishing the task [13], [21], [18].
The quantum annealing algorithm. Given input , the QPU applies a quantum annealing algorithm that is expressed as an algorithm Hamiltonian , designed so that the ground state of the qubit system matches the optimal solution to the energy function (1). The qubits, behaving as quantum spins driven by this Hamiltonian operator, naturally seek their lowest-energy (ground) state, just as water naturally seeks downhill. By the end of the quantum process, the qubit states have classical spin values ±1. These values are read and returned as a solution to : if all goes well (never guaranteed in open-system conditions), the solution is optimal for (1).
This time-varying algorithm Hamiltonian is defined in terms of four components, as follows.
- (1)
The problem Hamiltonian is based on and describes the goal (ground) state for the qubits, Here denotes the Pauli-z operator applied to qubit i, and the multiplication operator ⋅ is the tensor product; thus is a matrix of complex numbers describing an operator to be applied to the full qubit system. The eigenvectors and eigenvalues of correspond to the solutions and costs defined by (1).
- (2)
The initial Hamiltonian describes initial conditions. Here , where is the Pauli-x operator applied to qubit i. This is a so-called transverse field operator in the x basis, which puts the qubits into equal superposition with respect to the problem basis z, so that initially each solution to is equally likely.
- (3)
The anneal time is an interval during which transitions from to . Time is normalized by so that as .
- (4)
A pair of anneal path functions and are defined such that and as . The path functions describe the “shape” of the transition, which may go faster or slower at different times s.
Each execution of this algorithm, called an anneal, works as follows. First, at , qubits are put in an initial superposition state according to . As s increases, evolves by growing and shrinking , so that the problem Hamiltonian gradually dominates. When at the end, the qubit states — by now classical spin values because has classical eigenvalues — are read and returned. A minimum-eigenvalue (ground) state for corresponds to an optimal solution for the energy function (1) defined by input . As mentioned previously, in open-system computing there is a nonzero probability that the qubits will not finish in ground state, so in normal use, R anneals are applied resulting in a sample of R solutions for the input.
In the current D-Wave architecture, the user can specify the problem Hamiltonian , the anneal time , and variations on the default path functions (including running s backwards). The default is fixed, but the user may provide initial spin values for qubits rather than starting them in equal superposition. Just as with classical algorithms, modifying these parameters changes the distribution of solutions, and possibly the amount of computation time (controlled by and R) needed to find an optimal solution.
The quantum element. Well-publicized arguments that quantum computing has the potential to outperfom classical computation are based on the fact that qubits have special properties not available to classical bits. First, qubits are capable of superposition, which means that rather than representing discrete values ±1, they can be in a probabilistic combination of both states at the same time. Thus, while a classical n-bit register can represent one of states, a quantum n-qubit register can (probabilistically) represent all states at once. Second, qubits are capable of entanglement, which means that the superposition state of a group of qubits can move together as an indivisible unit.
In the context of quantum annealing, entanglement and superposition create a condition whereby the qubits respond to as a system (as opposed to individuals) and without having to choose discrete spin values ±1. The initial Hamiltonian puts the qubits in ground state in the x basis, which corresponds to equiprobable superposition (all states equally likely) in the z basis; then the Hamiltonian gradually evolves so that the qubit system finishes in a ground state corresponding to . Ideally, the quantum spin state follows and remains in the ground state all the way to the end of the anneal. Thus, quantum annealing can be viewed as a type of natural computing, as it controls a system of physical qubits to carry out a quantum process that achieves a specific computational goal.
Declarative programming paradigm. Note that using a quantum annealer does not require inventing and implementing a new quantum algorithm for each new input, as is normally done in the imperative programming paradigm. Instead, the (highly parameterized) quantum algorithm has already been implemented in hardware: the user simply provides a description of the desired outcome together with parameters specifying how the computation should go, as in the declarative programming paradigm. Examples of the declarative paradigm in use in classical computation include logic programming in the Prolog language, database programming in the SQL language, combinatorial optimization with CPLEX, and programming tools such yacc and makefile. D-Wave chose this approach to quantum processor deployment in order to simplify the overall design and lower barriers to usability.
Section snippets
Annealing models of computation
Fig. 4 shows a scale of instantiation for computing machines, the first of our three performance factors identified in Fig. 1. Theoreticians tend to work with pencil-and-paper machine models on the abstract (left) side of this scale, and empiricists tend to work with physical machines at the instantiated (right) end. Machines at intermediate points can be used to share results from the endpoints. Some familiar examples from classical computing are shown in red:
- •
A Turing machine (TM) performs
Algorithms and inputs
The communication gap between theoretical and empirical approaches to algorithm analysis is perhaps greatest when reasoning about algorithms and heuristics for NP-hard problems. Some differences between the abstract and concrete ends of the instantiation spectrum, which can create significant obstacles to sharing of results, are discussed in this section.
Glossary of ambiguous terminology
A technical term that has multiple meanings is semantically loaded. Philosophers use the term semantic discord to refer to a situation where a dispute about some concept arises not from disagreement about the concept, but from disagreement about the meanings of the words used to describe the concept: that is, semantically loaded language leads to semantic discord. The highly multidisciplinary nature of research on AQC and QA — with different groups using the same terms with different meanings —
Conclusions
This paper introduces basic concepts of annealing-based quantum computation and the quantum annealing processors manufactured by D-Wave, and considers some communication barriers that arise when theoreticians and empirical scientists study these novel systems.
Section 2.1 proposes a model of computation, the QA-RAM, that can provide a common framework for discussing results about quantum computation in the AQC and QA paradigms from both theoretical and empirical points of view. Section 3
Declaration of Competing Interest
The authors declare the following financial interests/personal relationships which may be considered as potential competing interests: Catherine McGeoch is employed by D-Wave Systems.
References (73)
Benchmarking gate-based quantum computers
Comput. Phys. Commun.
(2017)- et al.
A modified quantum adiabatic evolution for the Deutsch-Josza problem
Phys. Lett. A
(2006) - 1994–2019, arXiv:[quant-ph]. arxiv.org...
- et al.
Adiabatic quantum computation is equivalent to standard quantum computation
SIAM J. Comput.
(2007) - et al.
Is quantum mechanics falsifiable? A computational perspective on the foundations of quantum mechanics
- T. Albash, D.A. Lidar, Decoherence in adiabatic quantum computation, 2015, 062320...
- et al.
Demonstration of a scaling advantage for a quantum annealer over classical annealing
- et al.
Adiabatic quantum computing
Rev. Mod. Phys.
(2018) - et al.
Temperature scaling law for quantum annealing optimizers
Phys. Rev. Lett.
(2017) - et al.
Reexamining classical and quantum models for the D-Wave one processor
Eur. Phys. J. Spec. Top.
(2015)
Graver bases via quantum annealing with application to non-linear integer programs
Searching for quantum speedup in quasistatic quantum annealers
On the computational complexity of Ising spin glass models
J. Phys. A
Realizable Hamiltonians for universal adiabatic quantum computers
Phys. Rev. A
Fast clique minor generation in Chimera qubit connectivity graphs
Beweis des Adiabatensatzes
Z. Phys. A
Computer Systems: A Programmer's Perspective
Architectural considerations in the design of a superconducting quantum annealing processor
IEEE Trans. Appl. Supercond.
A practical heuristic for finding graph minors
Introduction to Algorithms
Support vector machines on the D-Wave quantum annealer
D-Wave system documentation
What is the computational value of finite range tunneling?
Phys. Rev. X
Quantum theory, the Church-Turing principle and the universal quantum computer
Proc. R. Soc. Lond. Ser. A
Logistic network design with a D-Wave quantum annealer
A quantum adiabatic evolution algorithm applied to random instances of an NP-complete problem
Science
Improved approximation algorithms for maximum cut and satisfiability problems using semidefinite programming
J. ACM
Encoding universal computation in the ground states of Ising lattices
Phys. Rev. E
Phase transitions in a programmable quantum spin glass simulator
Science
Period finding with adiabatic quantum computation
Europhys. Lett.
Accuracy and Stability of Numerical Algorithms
SAT competition 2018
Test-driving 1000 qubits
8th DIMACS impelementation challenge: the traveling Salesman problem (results page)
Performance of a quantum annealer for Ising ground state computations on Chimera graphs
Cited by (62)
A quantum annealing-sequential quadratic programming assisted finite element simulation for non-linear and history-dependent mechanical problems
2024, European Journal of Mechanics, A/SolidsA hybrid quantum annealing method for generating ensemble classifiers
2023, Journal of King Saud University - Computer and Information SciencesDynamic analysis of quantum annealing programs
2023, Journal of Systems and SoftwareHybrid quantum-classical multi-cut Benders approach with a power system application
2023, Computers and Chemical EngineeringTunneling time from spin fluctuations in Larmor clock
2022, Physics Letters, Section A: General, Atomic and Solid State PhysicsCitation Excerpt :In Sec. 3 we analyze the fluctuation-induced ATT we constructed using the available experimental data [19], and discuss its physics implications considering the relevant limit values. In Sec. 4 we conclude with a discussion of the fluctuation-induced ATT in regard to its potential applications like the quantum annealing [26,27]. Durmuş Demir: Writing – review & editing, Writing – original draft, Visualization, Methodology, Investigation, Conceptualization.
Milestones on the Quantum Utility Highway: Quantum Annealing Case Study
2023, ACM Transactions on Quantum Computing