Combinatorial Optimization on Gate Model Quantum Computers: A Survey

by   Ehsan Zahedinejad, et al.

The advent of quantum computing processors with possibility to scale beyond experimental capacities magnifies the importance of studying their applications. Combinatorial optimization problems can be one of the promising applications of these new devices. These problems are recurrent in industrial applications and they are in general difficult for classical computing hardware. In this work, we provide a survey of the approaches to solving different types of combinatorial optimization problems, in particular quadratic unconstrained binary optimization (QUBO) problems on a gate model quantum computer. We focus mainly on four different approaches including digitizing the adiabatic quantum computing, global quantum optimization algorithms, the quantum algorithms that approximate the ground state of a general QUBO problem, and quantum sampling. We also discuss the quantum algorithms that are custom designed to solve certain types of QUBO problems.



There are no comments yet.


page 1

page 2

page 3

page 4


Multilevel Combinatorial Optimization Across Quantum Architectures

Emerging quantum processors provide an opportunity to explore new approa...

Performance of hybrid quantum/classical variational heuristics for combinatorial optimization

The recent literature on near-term applications for quantum computers co...

Automated quantum programming via reinforcement learning for combinatorial optimization

We develop a general method for incentive-based programming of hybrid qu...

Exploring Airline Gate-Scheduling Optimization Using Quantum Computers

This paper investigates the application of quantum computing technology ...

Quantum approximate algorithm for NP optimization problems with constraints

The Quantum Approximate Optimization Algorithm (QAOA) is an algorithmic ...

Constraint Programming to Discover One-Flip Local Optima of Quadratic Unconstrained Binary Optimization Problems

The broad applicability of Quadratic Unconstrained Binary Optimization (...

Ising-based Consensus Clustering on Specialized Hardware

The emergence of specialized optimization hardware such as CMOS annealer...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Quantum computers Ladd et al (2010); Lloyd (1996) are theoretically proven to solve certain families of computational problems faster than the best known classical algorithms Lanyon et al (2010); Shor (1999); Grover (1996). There are different paradigms to realize quantum computing Nielsen and Chuang (2000) including (but not limited to) adiabatic quantum computing (AQC) Farhi et al (2000) and gate model quantum computing Shor (1996).111The gate model paradigm is interchangeably also called the standard approach or the circuit-based approach in the literature. Each paradigm can be realized within various systems Benhelm et al (2008); Clarke and Wilhelm (2008); Li et al (2003); Johnson et al (2011). Over the past years there has been an impressive progress in the field of AQC Johnson et al (2011); Childs et al (2001); Amin and Steininger (2006), with many practical problems within the field of combinatorial optimization are proposed to be solved using this approach Hernandez et al (2016); Zaribafiyan et al (2017); Venturelli et al (2015); McGeoch and Wang (2013); Rieffel et al (2015); Heim et al (2015). As AQC (at zero temperature) and gate model quantum computing are shown to be polynomially equivalent Aharonov et al (2008), a valid question would be how to solve combinatorial optimization problems on a gate model quantum computer. Here we will address this question by giving a short survey on quantum algorithms for solving combinatorial optimization problems. We mainly focus on quadratic unconstrained binary optimization (QUBO) problems although the arguments can be generalized to any unconstrained discrete variable optimization problem.

The primary objective in quantum algorithm design is to devise algorithms which require less time and resources to find an optimal (or near-optimal) solution to a specific computational task Kassal et al (2008); Kitaev et al (2002). Shor’s factorization algorithm Shor (1999) is an example of a quantum algorithm that performs prime factorization in polynomial time. Due to Shor’s algorithm, the prime factorization is now in the complexity class BQP (bounded-error quantum polynomial time), whereas all of the other existing classical algorithms solve the problem in sub-exponential time Lenstra and Pomerance (1992); Pomerance (1982). The exponential speed-up of Shor’s factorization algorithm gives rise to the question of whether other problems in the NP can be reduced to BQP on a quantum computer.

Quadratic unconstrained binary optimization is important in that it provides us with the ability to formulate many applied problems in combinatorial optimization and is defined by:


where is an -by- square, symmetric matrix of real-valued coefficients. Many problems, including graph optimization, scheduling and resource allocation, and clustering and partitioning, can be formulated as a QUBO problem. These problems (and QUBO problems in general) are proved to be NP-complete Hyafil and Rivest (1973); Garey et al (1976a, b)

. The outstanding advantage of formulating these problems as QUBO problems is that often general QUBO solvers, which are not specialized to exploit problem heuristics, provide solutions which are either superior to, or as good as, the best specialized approaches, both in terms of quality and efficiency 

Kochenberger et al (2014).These reasons, along with the wide range of applications of the mentioned industry problems, make a strong case for studying the feasibility and performance of a general quantum QUBO solver.

Despite many attempts to investigate and improve general quantum (or classical) QUBO solvers Zhu et al (2016); Boros and Hammer (2002); Bian et al (2010), a quantum algorithm for solving general QUBO models in polynomial time has not been found. The optimality of Grover’s search algorithm Zalka (1999), which proposes at most a quadratic speed-up for searching an unstructured database Grover (1996), makes it difficult to find other quantum algorithms for solving general QUBO models. There have been many attempts to investigate the effectiveness of quantum annealers for solving QUBO problems. The results indicate that these devices might also have the potential to solve families of QUBO problems more efficiently than classical computers Venturelli et al (2015); Katzgraber et al (2015); Denchev et al (2016); King et al (2017). Fig. 1 illustrates the solving of applied combinatorial optimization problems by first formulating them as an unconstrained discrete-valued optimization task (like a QUBO problem) and then using different quantum computation algorithms, devices, and platforms to solve the problem.

Figure 1: A flowchart illustrating how different approaches to solving combinatorial optimization problems can utilize different realizations of quantum computation devices and quantum algorithms.

Given the fact that there is a large body of literature on solving QUBO problems using adiabatic quantum computation (AQC), we focus in this survey mainly on quantum algorithms that solve QUBO problems on a gate model quantum computer. In particular, we review four distinct approaches to tackling this problem, including the simulation of AQC on a gate model quantum computer Aharonov et al (2008); van Dam et al (2001), (the applicability of) Grover’s search algorithm for solving problems in the NP complexity class in a global optimization framework Baritompa et al (2005), quantum approximate optimization algorithms (QAOA) which are inspired by AQC Farhi et al (2014), and, lastly, quantum Metropolis sampling Temme et al (2011).

This survey is by no means a comprehensive review of all of the research and recent work related to the solving of combinatorial optimization problems using quantum algorithms. Rather, we focus on the quantum algorithms that can be implemented on near-term quantum devices, or those quantum algorithms that have been used by other researchers to solve optimization problems. For completeness, whenever possible, we refer readers to the appropriate reference materials that discuss other quantum algorithms relevant to our survey.

This survey is structured as follows. In Section 2, we define the Ising model and QUBO problems. In Section 3, we explain AQC and its relation to QUBO. In Section 4, we explain the standard method of simulating AQC on a gate model quantum computer. Section 5 focuses on global quantum optimization algorithms, including Grover-based algorithms as well as heuristic approaches. Section 6 discusses the methods that approximate the ground state of the classical Ising model. We discuss quantum Metropolis sampling in Section 7. A review of the quantum algorithms that have been devised to solve specific types of QUBO problems is given in Section 8. We conclude this survey with a brief discussion and propose some future research directions in Section 9.

2 The Ising model and QUBO problems

In this section, we first present the mathematical formulation of an Ising problem which is one of the most widely used models in physics Cipra (1987). We then establish the relation between an Ising model and a QUBO formulation.

An Ising model, first proposed by Ernst Ising and Wilhelm Lenz, explains the interaction of molecules in a magnetic material in an external magnetic field. In a mathematical abstract form, an Ising model consists of a set of spins , each taking a value of . Denoting as a set of pair-wise interactions between spins, one can formulate the energy of the spin system for a configuration using an Ising Hamiltonian:


The Ising model has the QUBO formulation


which is equivalent to (2

) up to a linear transformation

222We refer the interested reader to Bian et al (2010) for he explicit steps of the transformation. (), where in Equation (3), and and are real numbers. Given this mapping between (2) and (3), solving a QUBO problem is equivalent to finding the ground state of an Ising model Hamiltonian; one can, therefore, utilize quantum algorithms to do so. In the next section, we begin our survey, explaining how AQC is related to the solving of QUBO problems, and how AQC can be digitized and simulated on a gate model quantum computer to solve such problems.

3 AQC and QUBO problems

The idea of adiabatic quantum computation was first proposed by Farhi et al. Farhi et al (2000, 2001, 2002a, 2002b)

, wherein the goal was to employ a physical quantum computer to solve a combinatorial optimization problem. Over the past decade, there has been a great deal of progress in designing adiabatic quantum devices, with the D-Wave 2000Q quantum computing machine, with more than two thousand qubits, being the latest quantum adiabatic optimizer 

Trummer and Koch (2016). A pictorial explanation of AQC is given in Fig. 2 . The main idea in AQC is to initialize the system in the known ground state of a specific Hamiltonian. Then, the system Hamiltonian is slowly evolved from the initial Hamiltonian toward the final Hamiltonian in which we have encoded the problem Hamiltonian (equivalently, the QUBO problem) in the form of an Ising model (see (2)). The adiabatic theorem states that if the evolution is sufficiently slow, the system will remain in its ground state (or one of its ground states) throughout the entire evolution process. Therefore, starting from the ground state of , the system ends up in the ground state of (i.e., ), that is, the solution of the optimization problem in (1). In the next section, we explain how AQC can be simulated on a gate model quantum computer.

Figure 2: A schematic view of the AQC process. The vertical axis denotes the energy spectrum, E, of the whole system Hamiltonian. The horizontal axis shows the external parameter, , changing adiabatically over time. The system is initialized at the ground state of an initial Hamiltonian and then slowly evolved toward the final Hamiltonian with the ground state .

4 Simulating AQC on a gate model quantum computer

It is natural to ask why we would need to simulate AQC on a gate model quantum computer. The answer is that, in practice, we can always use quantum annealing to solve a general QUBO problem. One of the main challenges in designing a universal adiabatic quantum computer is in realizing physical quantum systems that can accommodate any type of non-stoquastic Hamiltonian. The state-of-the-art quantum annealers do not currently provide such interactions. This challenge can be (at least in principle) addressed by decomposing the terms in a generic Hamiltonian into a sequence of single- and two-qubit gates. There exist additional, general challenges to address, such as supporting graphs with higher connectivity and various multi-body interactions, increasing robustness against noise, and attaining high precision in programming the problem Hamiltonian that can affect the design of a universal adiabatic or gate model quantum computer. It remains to be seen how each of these challenges can be addressed in the design of a universal quantum computing device.

The idea behind digitizing AQC is to decompose the unitary evolution of a quantum system into a sequence of single- and two-qubit gates. There are several approaches to performing this decomposition. In fact, the whole scheme of digitization belongs to a broader field of quantum mechanics called “quantum Hamiltonian simulation”. In this section, we explain only one of the most straightforward methods of Hamiltonian simulation that has practically been used to simulate AQC on a gate model quantum processor.

In an AQC setting, the system Hamiltonian can be represented by a combination of an initial Hamiltonian () whose ground state we know and final (problem) Hamiltonian () whose ground state we aim to find. We denote this combination as


where is the total Hamiltonian of the system and is a time-dependent function that varies from to , where is the total evolution time of the system. In order to ease the digitization formulation, we reformulate (4) into


where are time-dependent real variables and are -local Hamiltonians, that is, they act on at most qubits. A simple method to digitize the time evolution of a system with Hamiltonian (5) is to use the first-order Lie–Trotter–Suzuki formula Trotter (1959); Suzuki (1990). Using this method, we can approximate the time-ordered () evolution operator of the system


over a time interval [] by the approximated operator


where, in (7), are equally-sized time steps and is the number of time steps. Given the ability to perform arbitrary local rotations, each -local term in the Hamiltonian (2-local in the case of QUBO) requires at most gates. Therefore, in summary, using the above digitization approach, we can employ on the order of single- or two-qubit logical gates to evolve the initial state of the quantum system (represented as a uniform superposition of all eigenstates of ) from


to a state that represents the ground state of the problem Hamiltonian (i.e., an Ising spin model Hamiltonian with spins). The preceding argument holds if we know the exact evolution time for the adiabatic process. As we will not be discussing the complexity of finding the ground state of an Ising Hamiltonian, we refer interested readers to Barahona (1982) and the references therein.

A similar approach was recently used to digitize AQC on a quantum processor with nine qubits and a thousand quantum logical gates Barends et al (2016). There also exist other methods, in theory, to simulate AQC on a gate model quantum computer with far better complexity over the number of gates required. For example, a method based on Taylor series truncation and approximating the unitary evolution of the system in terms of the sum of some unitary operators is shown to exponentially outperform Trotterization with respect to the desired precision Berry et al (2015a). Currently, the choice of Hamiltonian simulation is largely limited by the size of existing quantum processors, and not by the performance of these methods Berry et al (2015b, 2014).

5 Global quantum optimization

Most global quantum optimization algorithms employ Grover’s search algorithm as a subroutine, and enhance the optimization process by taking advantage of its quadratic speed-up Baritompa et al (2005); Boyer et al (1998); Liu and Koehler (2010). In the first part of this section, we discuss Grover-based optimization algorithms. In the second part, we explain another approach in quantum global optimization which is inspired by AQC.

5.1 Grover-based quantum global optimization

Grover’s search algorithm has been shown to be optimal for searching an unstructured database Zalka (1999), with a quadratic speed-up over the best classical algorithm. As noted by Grover, if the algorithm could solve the unsorted problem in polynomial time on a quantum computer, then it would provide an algorithm for BQP (bounded error quantum polynomial time) for problems in NP Grover (1996). However, quadratic speed-up of Grover’s algorithm and, in fact, its optimal complexity (i.e., , with being the number of elements in the search database) prohibit any definitive statement about the relation between classes BQP and NP Grover (1996).

Grover’s search algorithm has been widely used in the context of general quantum optimization algorithms. Dur et al. first introduced a quantum algorithm for finding the minimum of an unstructured database Durr and Hoyer (1996). Inspired by that work, other researchers also proposed quantum algorithms for optimization problems. Here, we review common fundamental steps of these methods, and explain how they can be used to solve QUBO problems on a gate model quantum computer. We start by defining the problem that Grover’s algorithm solves. We then give a geometrical picture of Grover’s algorithm Mermin (2007) and construct the related quantum circuit. The geometrical picture is then used to explain the effectiveness of Grover-based optimization algorithms. Readers can consult with Grover’s original paper for more details Grover (1996).

Let us define the problem that Grover’s algorithm solves. We are given an oracle that, given a question , provides an answer , where


and is a -bit integer. We are asked to find the variable using the fewest queries to the oracle. Classically, one can attempt to find the solution, , by making queries to the system, where . Grover’s algorithm promises a quadratic speed-up over the best classical algorithm.

The basic idea of Grover’s algorithm is to repeatedly apply two operators and (see details about these operators below) to the quantum state


such that, through the evolution, the quantum state rotates toward the target solution . Here, we assume that the target subspace is unique and there is only one solution that matches the oracle . Later, we explain the case where the target subspace includes multiple target states.

The action of operator on (10) is to flip the sign of the component along the target state while leaving the sign of the other components orthogonal to unchanged. Given the action of , one can define the corresponding operator as follows:


where is the identity operator and the operator , called the diffusion operator, is defined as follows:

Figure 3: Geometrical representation of Grover’s search algorithm in two-dimensional space. (a) Representing the initial state in the two-dimensional space of the target () and non-target () states. (b) Action of operators and on the initial state. Each action of moves the initial state closer to the target state by .

As is evident from (12), the operator preserves the component along the state and flips the sign of any state orthogonal to . It is easy to realize from (10) that can be represented in the two-dimensional space of (target) and (non-target) subspace (see Fig. 3A), where and are the angles that makes with and , respectively, and where, for large , we have .

The geometrical action of on in the two-dimensional plane of and

is to reflect the vector with respect to

as the mirror axis. On the other hand, will reflect the result of the first reflection caused by the action of with respect to being the mirror axis of reflection (see Fig. 3B). After each operation of , the initial vector will rotate toward the target solution by . From this analysis, one can conclude that the total number of rotations (i.e., the number of times we apply the operations ) to the initial state is on the order of


The role of the two operators V and D will be more clear when we show their actions within the quantum circuit of Grover’s search algorithm, depicted in Fig. 4. As is evident from this figure, the operator V implements the oracle , whereas D performs a diffusion operation on the problem register with qubits.

Figure 4: Quantum circuit representation of Grover’s search algorithm. Each block in the main circuit (lower part) denotes a Grover search operation. and refer to the number of qubits in each register. is the single-qubit Hadamard gate. V and D refer to the operators discussed in Fig. 3. represents the oracle defined in (9).

We are now ready to discuss how Grover’s search algorithm can be used inside a global optimization algorithm. Fig. 5 summarizes the general structure of global optimization algorithms which employ Grover’s algorithm as part of their structures. The process starts with an initial solution (which is either an incumbent or a random solution). Then, the task of Grover’s algorithm is to find any solution which has a lower cost (in terms of the objective function defined in (3)) than the initial solution. If the resultant search was successful, then we replace the initial solution with a new one and continue the iteration procedure until some criteria are met. In the case that the search process fails, we either abort the algorithm or fine-tune the Grover’s search block by using a rotation schedule subroutine. We clarify the role of the schedule generator later in our survey.

Figure 5: A flowchart denoting the general structure of a quantum global optimization algorithm that iteratively employs Grover’s search algorithm as a subroutine. This subroutine is referred to as Grover’s search block. Note that at each iteration we have to update the structure of the oracle to represent the action of (15).

Assuming that the implementation of each operator involved in Grover’s search algorithm is only polynomial, then the algorithmic complexity of Grover’s algorithm to find is . In Algorithm 1, we have summarized the above geometrical explanation into an algorithmic framework. Here, the task is to find the variable with the fewest queries to the oracle .
Algorithm 1 Grover (1996); Nielsen and Chuang (2000); Strubell (2011):   Inputs: A set of unstructured databases with integer-indexed elements Output: Resources: An -qubit register initialized at An oracle in the form of (9)

Runtime: operation Ambainis (2004), with probability of success


  1. Initialize the state of the quantum register at

  2. Apply Hadamard gate to generate state

  3. Apply the operators times

  4. Measure the register


When the search problem is known to have multiple solutions (target states), that is, with , then the number of iterations needed to find the solution is reduced to  Liu and Koehler (2010). We can explain this using the previous geometrical picture of Grover’s algorithm. When there are multiple target states (i.e., there exists degeneracy at the target subspace), we can still represent the initial state, , in the two-dimensional space of target and non-target states. However, the target state will be a superposition of all of the possible target states . Now, we see that the overlap of the initial state and the is


From (14), we conclude that in order to rotate the initial state toward its component, one should apply to the initial state times.

We can use Grover’s algorithm as a subroutine in a global optimization framework to find the ground state of a QUBO problem. Given the formulation of (3), the algorithmic procedure reads as follows.
Algorithm 2 Baritompa et al (2005); Boyer et al (1998); Liu and Koehler (2010)   Inputs: An initial trial solution An objective function in the form of


  • A quantum oracle which performs the operation


    for all , where

    is the sigmoid function.

  • An -qubit register initialized at


Runtime: operation Ambainis (2004), with probability of success


  • Randomly choose a trial solution, , and initialize

  • for until the convergence criteria are met

    1. Apply Algorithm 1 on the register, with the oracle constructed as (15)

    2. Measure the register and store the output in register

    3. Perform a classical evaluation: if (), then


In Algorithm 2, at each iteration, we divide the entire search space into two subspaces. The first subspace includes any state with an energy (in terms of the Ising model Hamiltonian) less than the energy of the incumbent. The second subspace includes the incumbent and any other state which has an energy higher than the energy of the incumbent. Then, the role of Grover’s search algorithm in Algorithm 2 is to find a solution in the first subspace. At each iteration, we need to update the structure of the oracle if a new incumbent is found. We leave the details of constructing the oracle of a logical function such as to other works. For example, in Nielsen and Chuang (2000), one can see how the quantum circuit of a logical function can be built; however, this does not guarantee the efficiency of the oracle.

In order for Grover’s algorithm to show a quadratic speed-up at each iteration, the number of solutions with a lower energy value than the current incumbent must be known. A larger number of rotations does not necessarily guarantee the convergence of the algorithm toward a better solution than the current incumbent. This can be seen from Fig. 3. If the size of the target, , is not known in an instance of employing Grover’s search algorithm, we do not know the exact overlap between the initial state and the target space. This lack of knowledge prevents us from knowing the exact number of rotations needed to steer the initial state toward the target space. A greater number of rotations than necessary would rotate the initial state away from the axis, resulting in a small probability of finding any target state. Fortunately, we are not completely blind in this case, as there exist algorithms for gaining some insights about the size of the target space.

Given the problem of finding an estimate of the size of the target subspace at each iteration of

Algorithm 2, there are a few heuristic and deterministic algorithms proposed in Baritompa et al (2005); Boyer et al (1998); Liu and Koehler (2010) for this task. In what follows, we discuss each of these approaches and explain their features.

In Boyer et al (1998), a simple heuristic approach is proposed for choosing the number of rotations at each iteration of Algorithm 2. We explain how this heuristic algorithm works at each iteration of the algorithm. First, consider a real number , where the superscript denotes the value of at iteration . Then, at the -th iteration, we always choose the number of rotations, , to be a uniform random number chosen from . The value of changes based on the relation


where the rand function generates random numbers and with an optimal value of .

A different deterministic approach is proposed by Baritompa et al. Baritompa et al (2005), which involves generating a schedule for the number of rotations in each iteration. Interestingly, the rotation schedule is independent of the problem instance and works well for different sets of problems given in Baritompa et al (2005). This method assumes a uniform prior over the unknown ratio of , and updates this distribution independent of success or failure of Grover’s search at each iteration. Assuming that

is the cumulative distribution function of the improving fraction

at the-th iteration of Algorithm 2, the -schedule generator at each step maximizes an objective function that is the ratio of the benefit, , to the cost, , with and being the expectation under the respective distributions and of the improving fraction of the domain.

There are other heuristic algorithms which are inspired by Baritompa et al (2005). One such algorithm, which we call the static version of Baritompa et al (2005), is based on having a user-defined prior over the initial distribution of the improving fraction . There is also a dynamic version of Baritompa et al (2005) in which the cumulative distribution over the improving fraction is updated differently according to a bias law and the failure or success of Grover’s algorithm at each iteration. This dynamic -schedule generator is a preferred approach, as it has to be run on a classical computer at each iteration of Algorithm 2, slowing down the entire optimization procedure.

We note that although the above -schedule generators reduce the number of rotations each time Grover’s search block is employed (i.e., they reduce the number of applications of DV), they do not change the computational complexity of Grover’s algorithm into an algorithm with polynomial complexity. An estimation of the size of the target subspace, , is required in order to keep the complexity sub-exponential; otherwise, the algorithm turns into a random search over the search space of (3).

Thus far, what we have discussed was based on the use of Grover’s search algorithm. This requires knowledge of the improving fraction throughout the optimization procedure. There is another class of quantum global optimization algorithms which are inspired by AQC. We discuss one of these algorithms in the following section.

5.2 A quantum search heuristic

From our discussion in Section 3, we can consider AQC as a process that adiabatically evolves an initial quantum state toward a specific final state that is the ground state of the problem Hamiltonian. One can use this idea and construct a sequence of unitary operations such that the overall action of this sequence on an initial state leads to a final state close to the ground state of an Ising model. As is proposed in Hogg and Portnov (2000), such a sequence of unitary operations can be constructed where the elements of these operations depend on the cost (i.e., the value) of the objective function for a given state. In what follows, we explain the procedure of this algorithm.

The quantum heuristic search algorithm can be generally defined as the sequence of unitary operators


where the operator acts on the initial state represented in the form of (10). In (17), at the -th step, the operator and are the mixing and phase operators, respectively, and are defined in what follows. Note that, since the QUBO problems correspond to -local Hamiltonians, we need only a polynomial number of quantum logical gates to construct the operator .

The operator does not depend on the problem instance. Each element of operator at a given row () and column () is defined as


The operator is a diagonal matrix, with each element depending on the cost of the objective function . The -th element of this operator is defined as


In both Equation (18) and Equation (19), the parameters and are real numbers that vary linearly at each step throughout the evolution. This linear variation has been a common property used in other classical heuristics as well Zahedinejad et al (2014). Applying operator evolves the initial state (10) toward a minimum energy state of a QUBO problem which is encoded in the Ising spin model Hamiltonian.

It is easy to see that the algorithm described in this section has the same overall structure as amplitude amplification. In particular, we can reduce the current algorithm into an amplitude amplification algorithm Brassard et al (2002)

. However, since in an optimization problem the set of solutions is not known a priori, the amplitude amplification algorithm gives no improvement over the states of the solutions. The fact that the proposed heuristic algorithm depends on the cost of the problem instance precludes a direct asymptotic analysis of the algorithm.

It is interesting to see that operator has the same form as the the sequence of unitary operations resulting from the discretization of the adiabatic quantum Hamiltonian in van Dam et al (2001), as well as the sequence of rotations used in Grover’s algorithm described in Grover (1996). In the following section, we discuss how AQC inspires researchers to devise optimization algorithms that run on gate model quantum computers.

6 Quantum algorithms to approximate the ground state of the Ising model

In this section, we focus on quantum algorithms that provide an approximation of the ground state. This set of algorithms is based on the introduction of some unknown parameters into the unitary evolution of the system and the subsequent finding of the optimal value of these parameters so as to maximize the overlap between the resultant quantum state under the evolution and the true ground state of the system.

6.1 Quantum approximate optimization algorithm (QAOA)

A quantum algorithm to approximate the ground state of a -local Hamiltonian is proposed by Farhi et al. Farhi et al (2014). This algorithm can be used to approximate the ground state of an Ising model. The QAOA has been suggested as an excellent candidate to run on near-term quantum computers, not only because it may be of use for optimization, but also because of its potential as a route to establishing quantum supremacy Farhi and Harrow (2016).

The QAOA is inspired by AQC and works based on the parametrization of the unitary evolution of the quantum system. Given the near-optimal values of the parameters, a sequence of unitary operators acting on the initial state of the system will generate a final state close to the ground state. To explain the procedure of the algorithm, let us consider an Ising model Hamiltonian with at most -local interactions between qubits as follows Farhi et al (2014):


The algorithmic steps of the QAOA read as follows:

  1. Generate the initial state as a uniform superposition of all states in the computational basis: .

  2. Construct the unitary operator which depends on the angle as follows:

  3. Construct the operator which is the sum of all single-bit operators:

  4. Define the angle-dependent quantum state for any integer and angles and as follows:

  5. Obtain the expectation of in this state (this step could be performed on a quantum computer),

  6. Update the parameters () using a classical (or quantum) optimization algorithm in order to minimize .

  7. Iterate over steps 5 and 6 in order to find the minimum value of for the near-optimal values ().

  8. Plug () into Equation (23) and evolve the initial state of the system to the state .

  9. Repeat step 8 with the same angles. A sufficient number of repetitions will produce a state which represents a close enough solution to the ground state of .

The above algorithm can be used to approximate the ground state of an Ising model. However, the challenge is in that how to come up with the near-optimal values for the angles is not obvious. The approaches to calculating the optimal values are given in Farhi et al (2014) when one considers the as a fixed or varying values. The QAOA inspired other researchers to propose similar ideas for approximating the ground state of the Ising model Wecker et al (2016); Yang et al (2016).

6.2 Quantum control and variational methods

Optimal control theory Bryson (1975); Stengel (2012), combined with variational quantum algorithms McClean et al (2016), is another approach to finding the ground state of an Ising model. In this approach Yang et al (2016), the Hamiltonian of the system is represented by


where represents a transverse field generating the quantum fluctuation and contains the problem Hamiltonian. Here, is a time-dependent function. Using the Pontryagin’s minimum principle of optimal control theory Pontryagin (1987), Yang et al. has shown Yang et al (2016) that throughout the evolution of the system, the optimal shape of is bang-bang, that is,  abruptly changes between the lower and upper bounds of the control parameters. With the knowledge that optimal control policy Palittapongarnpim et al (2016) has a bang-bang shape, one can maximize the following objective function over to find the optimal path of for the evolution:


In (26), , with as defined in (6) and where is the total evolution time. The objective function’s evaluation can be done on a quantum computer, whereas the classical computing device updates the control policy. Given the optimal control policy , one can simulate the evolution of the system from to on a gate model quantum computer. Repeating the evolution process multiple times, and performing measurements in the computational basis of the Ising Hamiltonian will lead to a state which has a large overlap with the true ground state of the system.

There is a direct connection between the above control procedure and the QAOA. Since it has been mathematically shown in Yang et al (2016) that the optimal schedule takes a bang-bang shape, one can parametrize the above procedure in a way that is similar to the QAOA and use the time interval of discretized pulses as variational parameters to be optimized using a classical optimization algorithm, while increasing to achieve convergence.

6.3 Training a quantum optimizer

Wecker et al. Wecker et al (2016)

have transformed the problem of approximating the ground state of an Ising model into a machine learning task. In particular, they turn the problem into a supervised machine learning problem, where the training set is a subset of hard instances studied in 

Crosson et al (2014). Knowing the ground state of these hard instances, they generate specific schedules which give the highest overlap between the ground state and the final state after the evolution. Technically, the objective function is rather different than Equation (24) and is represented as follows:


where is the true ground state and are the learning parameters which determine the evolution of the system from the initial state to . The training procedure was performed on instances with variables, but tested on sizes up to , where it shows a larger overlap for these instances than the optimized annealing times proposed in Crosson et al (2014). We should note that the approach proposed by Wecker et al. works well in the case of Max-SAT (maximum satisfiability) problems. Since it is shown in Bian et al (2010) how to transform a QUBO problem into a weighted Max-SAT problem, it remains to be seen how the method in Wecker et al (2016) can be generalized to solve weighted Max-SAT problems (i.e., general QUBO problems).

7 Quantum Metropolis sampling

Sampling from low energy levels of the quantum system enables algorithmic approaches to find the ground state of a physical system. For instance, good samples from the low energy levels of the system can help to quickly identify the backbone of combinatorial optimization problems by reducing the original optimization problem into smaller subproblems Karimi and Rosenberg (2017); Karimi et al (2017). There are other algorithms that benefit from low energy state distributions that have applications in machine learning Crawford et al (2016); Amin et al (2016). One can also use sampling to estimate the ground state of an Ising model Hamiltonian. The idea is to initiate the system at some random initial state and then use a quantum sampling algorithm to evolve the system toward a state with lower energy. One example of a sampling algorithm is Metropolis sampling.

The classical Metropolis algorithm is used ubiquitously in the field of computational physics. By evolving the physical system toward its ground or Gibbs state, one can simulate the equilibrium or static properties of a classical system. The corresponding quantum algorithm that performs a Metropolis sampling on the quantum system is proposed in Temme et al (2011). Impervious to the negative-sign problem in classical simulations of fermionic systems, the quantum Metropolis algorithm can simulate the equilibrium and static properties of a wide range of physical systems, including classical Ising models.

The basic concept of the Metropolis algorithm is to construct a fast-mixing Markov chain which obeys the detailed balance that samples from the states with the highest probabilities. In the case of the classical Ising model, one can start with a random initial state and follow a series of update rules to prepare the system in a state with a lower energy. For an instance of an update rule, we can consider a local random bit-flip operation on the state. If the resultant configuration has a lower energy than the original state, then we accept the move; otherwise, in order to avoid being trapped in a local minimum, we accept the new state with a probability proportional to

, where is the inverse temperature and is the energy of the state.

The quantum version of the Metropolis algorithm acts much in the same way as the classical algorithm; however, the accept/reject step of the quantum version becomes non-trivial in the following sense. At each iteration of the algorithm, we need to perform a measurement on the system to figure out whether we succeeded in achieving a better state (i.e., a state with a lower cost than the one which is already available). In the case of success, we can set the entire system to the new state. In the case of failure, we only accept the new state according to the update rules, and might need to set the system in its previous state. However, we no longer have access to the previous state of the system after performing the initial measurement. Classically, we can always have a copy of the state of the system at any given time; however, quantum mechanically, this is prohibited because of the no-cloning theorem. The quantum Metropolis algorithm resolves this issue through a systematic approach which we now explain.

As usual, readers are invited to consult with the original paper Temme et al (2011) for more details. We note that the main component of the quantum Metropolis algorithm is the quantum phase estimation algorithm which works as follows. Let us assume that the action of a quantum phase estimation circuit can be represented by the operator which acts on qubits, where and are the number of qubits of the quantum system and and an extra quantum register, respectively. Given a quantum system in one of its eigenstates with the corresponding energy , the action of on the state of the quantum system and register reads as follows:


where is encoded inside the extra quantum register up to -digit precision. Here, through our review of the quantum Metropolis algorithm, we assume a perfect (i.e., error-free) quantum phase estimation procedure. However, it has been shown in Yang et al (2016) that the quantum Metropolis algorithm works even when errors are present in the phase estimation algorithm.

The approach explained above can be used to solve for the ground state of an Ising model Hamiltonian. The algorithm starts with a random initial state as an initial solution of the Ising model. We then use the quantum Metropolis algorithm to evolve the initial state toward some states with low energy levels. Sampling from these states with low energies will give us an approximation of the ground state of the Ising model.

The whole quantum Metropolis algorithm acts on the four registers, where we call this action on four registers as a mapping . The first register, with qubits, encodes the state of the quantum system; the second register, with qubits, works as a set of ancilla qubits for the quantum phase estimation algorithm; the third register, with qubits, holds a copy of the corresponding energy of the initial state of the system at each step of the quantum Metropolis algorithm; and the fourth register, with one qubit, is used for the process of rejection or acceptance of a new state with lower energy than the initial state of the quantum system. The initial state of the first register is an arbitrary state . The initial states of all of the other registers are set to . Therefore, we represent the initial state of the system as , showing the states of each of the registers 1–4 in order from left to right. We maintain this ordering in representing the state of the whole registers throughout this section.

The first step in the Metropolis quantum algorithm is to prepare the quantum system in one of its eigenstates that has a known energy value. This step can be accomplished by preparing the quantum system at some arbitrary state , and using the quantum phase estimation algorithm Kitaev (1995) to project the state of the first register into an eigenstate of the system Hamiltonian, while the second register holds the corresponding energy . Therefore, the first transformation takes the following form:


After generating the new state, we employ a series of gates to copy the state of the second register into the third register, and apply, on the first and second registers. It is easy to show that this sequence of actions leads to the following transformation:


Similar to the classical Markov chain, at this point we need a transition matrix which decides the probability of transition from one state to another. To maintain the ergodicity of the mapping , one can choose the operator to be a universal gate set Barenco et al (1995). The quantum detailed balance condition also requires that the probability of applying a specific be the same as the probability of applying its conjugate . For instance, a simple choice for can be a set of local bit flips at random locations or other simple set of transformations.

The action of the operator on the quantum system register is to take this state into a superposition of all possible eigenstates of the system Hamiltonian, that is, . Having the action of on the first register followed by the action of on the first and second registers generates the following mapping:


Arriving at Equation (31), one might perform a measurement on the second register to get an energy and its corresponding eigenstate . If this measurement is successful, then we have a new state with lower energy than the initial energy , and we can start the entire algorithm over with this new eigenstate. However, in the case of rejection (i.e., ) the whole state is destroyed and there is no way to return to the initial state . This is why we use the fourth register as follows to overcome this problem.

We define the operator ,which is conditioned on the state of the second and third registers (i.e., it depends on the two energies and ). This operator performs the following transformation on (31):


where , with representing the inverse temperature. Note that in the above formula, the amplitude corresponds exactly to the transition probability of the classical Metropolis rules. At this step, one can perform a measurement on the fourth register. An output of is indicative of a new state with a lower energy than the initial state. We then perform a projective measurement on the third register to obtain a new state with the energy with its corresponding eigenstate encoded in the first register. However, an output of after measuring the first register indicates a rejection, in which case we must return to the initial state.

We can use the same approach that is employed in Marriott and Watrous (2005) to return to the initial state or a state with the same energy as the initial state. We first explain how this measurement works and then we represent the procedure inside a mathematical framework. From (32), we can see that prior to performing any measurement on the fourth register, the entire system is in a linear combination of two orthonormal states {}. After performing the first binary measurement on the first register, the state of the system will collapse into one of these subspaces. Independent of the output of the first measurement, we perform a second measurement acting on the two-dimensional space of {}. This second measurement collapses the current state of the system into the one of these two subspaces. The second von Neumann measurement can easily be implemented using a phase estimation algorithm that compares the energy of the current state with the energy of the initial state which is encoded in the third register. If the result of the second measurement is , then we have successfully prepared the system in a quantum state with the same energy as the initial state . Otherwise, we repeat this measurements sequence until we retrieve the initial state.

The sequence of binary measurements explained in the previous paragraph take the state of the system into two different two-dimensional spaces represented by different bases. Beginning with the first measurement performed on the first qubit, we can define the complete set of projectors and as follows:


The above projective measurement will collapse the system into an accepted state if the resultant measurement is ; otherwise, it collapses the system into a rejected state . Since we have a complete set of projector operators , we can expand each of the states or in the {} basis as follows:


The second set of projective measurements collapse the state of the system into one of the subspaces or . As mentioned earlier, we can implement this projective measurement on the original subspace by using a phase estimation technique on the second and third registers. The mathematical representation of the these projection operators can be stated simply as


Following the measurements stated in (35), if the outcome of the measurement is , then we have successfully returned to ; otherwise, the system collapses into the state .

It is easy to derive an inverse transformation from (34) and express the states {} in terms of the orthonormal basis {, } as follows:


Assuming that the system is in a rejection state, Fig. 6 demonstrates the recurrence of rejection through the sequence of measurements . It is proved that the probability of reaching a state with the same energy as the initial state increases exponentially with the number of measurements.

Figure 6: A procedure representing recurrence of rejection, followed by the sequence of measurements . The recurrence procedure terminates when it reaches the state .

8 Quantum algorithms for solving specific types of QUBO problems

Thus far, we have only discussed the quantum algorithms that can solve a general QUBO problem on a gate model quantum computer, without any guarantee that the resultant quantum algorithms are faster than the best classical algorithms. There exist quantum algorithms for specific types of QUBO problems, including (but not limited to) satisfiability problems Ambainis (2004), the triangle finding problem Magniez et al (2007); Gall (2014), finding a clique with a length of  Childs and Eisenberg (2003), and minimum spanning trees and graph connectivity Dürr et al (2004). Most of these algorithms use Grover’s search or quantum amplitude amplification algorithm Brassard et al (2002) to devise a quantum algorithm that is faster than the best classical alternative. In the following sections, we discuss three quantum algorithms for solving constraint satisfaction problems Cerf et al (2000), Boolean satisfiability problems Ambainis (2004), maximum independent set problems Dörn (2005), and clustering problems Lloyd et al (2013).

8.1 Constraint satisfaction problems

Constraint satisfaction problems (CSP) are defined as a set of variables, each taking a finite set of domain values, which together are involved in a set of constraints. A set of values must be assigned to the variables such that no constraints are violated. Cerf et al. propose a nested quantum algorithm for solving CSPs, which exploits the quadratic speed-up of Grover’s search algorithm. As is explained in Cerf et al (2000), the algorithm can be summarized as follows:

  1. Construct a binary tree representing the CSP.

  2. Construct a superposition of all possible solutions at level of the tree.

  3. Use the quantum search algorithm to amplify the magnitude of could-be solutions using Algorithm 1.

  4. Perform a subsequent quantum search in the subspace of the descendants of all of the could-be partial solutions simultaneously. This is achieved by using Algorithm 1 as an input, the superposition of could-be solutions resulting from the previous step. The overall yield after this step is a superposition of all states where the solutions have been partially amplified with respect to non-solutions.

  5. The final procedure consists of nesting stages 3 and 4, using them as a search operator inside a higher-level quantum search algorithm until the solutions get maximally amplified, at which point a measurement is performed.

For a pseudo-Boolean CSP, the number of iterations needed to find a solution of an average instance of the problem scales as , with , depending on the nesting depth and problem type.

8.2 Satisfiability problems

Although a Boolean satisfiability problem, known as the SAT problem, can be thought of as a certain form of a conjunctive normal form (CNF) problem, there exist specific quantum algorithms for solving SAT problems. In a SAT problem, one is given a Boolean function in the CNF


where is the number of clauses, each expressed as the disjunction of literals, , as


The task with satisfiability problems is to find an assignment that makes true. A general SAT problem is called a -SAT problem if the number of literals in each clause is restricted to . A SAT problem is a special case of a weighted Max-SAT (WMSAT) problem. In a WMSAT problem, one is given a Boolean function such as (37) with each clause expressed as , where each weight is a positive number. The objective is to maximize the sum of the weights of satisfied clauses by any assignment.

One of the fastest classical SAT solvers, proposed by Schöning, solves a -SAT problem in  Schöning (1999). It would be interesting to see whether a quantum algorithm exists that performs better than the proposed algorithm in Schöning (1999). In fact, Ambainis Ambainis (2004) proposed a quantum algorithm that solves a -SAT problem in . The algorithm employs the amplitude amplification technique Brassard et al (2002) that is a generalization of Grover’s algorithm. Amplitude amplification techniques can even be used to gain a quadratic speed-up over a classical SAT solver that has the best upper bound Paturi et al (1997, 1998). The preceding argument also holds for the best classical SAT solver (with no constraint on the clauses) such that the resultant quantum algorithm provides a quadratic speed-up over the best classical algorithm Dantsin and Wolpert (2005). In summary, it has been shown in Dantsin et al (2005) that by using variants of Grover’s search algorithm one cannot attain better than quadratic speed-up over the best classical algorithms for solving SAT problems.

8.3 Independent set problems

An independent set problem is the problem of finding the set of vertices of a graph under the constraint that no two of the vertices can be adjacent. Finding the maximum number of these vertices under this constraint is a maximum independent set (MIS) problem. An MIS problem belongs to the class of NP-complete problems Back and Khuri (1994); Johnson (1979). Thus far, the best classical algorithm has a time complexity of  Robson (2001), where is the number of vertices. Dörn proposes a quantum algorithm that employs the quantum amplitude amplification algorithm for finding the MIS with a time complexity of  Dörn (2005).

8.4 Data clustering in supervised and unsupervised machine learning

Lloyd et al. Lloyd et al (2013)

show that a quantum algorithm can be improved upon using Grover’s search algorithm to solve the supervised learning

-means clustering problem with an exponential speed-up. They further discuss that the unsupervised version of this problem can be reformulated as a QUBO problem that is amenable to the adiabatic algorithm. According to our discussion above, we can extend this approach to work on a gate model quantum hardware device by using any of the ideas for solving QUBO problems on a gate model quantum computer that are mentioned in this survey. There are many other works in the literature that attempt to address various machine learning problems using quantum algorithms (see, for instance, Wittek (2014)).

In this section, we have discussed a few application-specific quantum algorithms for solving certain families of combinatorial optimization problems. There are many other examples in the literature, and creating a comprehensive list of the various ideas is outside of the scope of this research. Our main purpose was to show that, based on the same few principles described earlier (such as the use of Grover’s search algorithm or the unified QUBO framework), new custom-tailored algorithms can be developed to address specific problems tied to certain applications.

9 Discussion and conclusion

Quantum computing is a new paradigm of computation that has the potential to surpass the computing power of classical computers for certain computational tasks. Combinatorial optimization is the large family of discrete-valued optimization problems that includes many such computational tasks that are hard for classical computers. Emerging circuit-model quantum hardware based on scalable technologies has invigorated investigations into applying these hardware devices to solve combinatorial optimization problems.

In this survey, we have reviewed the existing gate model quantum algorithms for solving combinatorial optimization problems. In particular, we have investigated the framework of formulating combinatorial optimization problems in the quadratic unconstrained binary optimization (QUBO) formalism. Whether it is possible to develop a quantum-enabled general QUBO solver that runs on a gate model quantum computer is the question we addressed in this work.

Our survey has discussed some approaches to solving a general QUBO problem on a gate model quantum computer. In the first approach, we introduced the simulation of adiabatic quantum computing (AQC), and quantum annealing in particular, on a gate model quantum computer. AQC is naturally closer to discrete optimization problems. However, a simulation of AQC on a gate model computer might have the advantage of being able to benefit from more-practical error correction schemes.

Using Grover’s search algorithm as a subroutine in global optimization algorithms is another approach to solving QUBO problems. Although this approach is appealing, the computational complexity of this approach is

, which is slower in practice than many efficient classical algorithms. There have been numerous algorithms developed that are based on the idea of using Grover’s search algorithm as a subroutine. One way to speed up this naïve application of Grover’s algorithm is to combine it with other local optimization algorithms to overcome the curse of dimensionality 

Bulger (2005, 2007). There is much room for the improvement and development of more-sophisticated hybrid quantum–classical optimization algorithms based on Grover’s search algorithm.

State-of-the-art chip design and fabrication technologies allow us to have quantum processors with a few hundred qubits. Larger chips with more-scalable architectures are expected to become available as an advancement in the longer term. Therefore, the development of quantum algorithms that require small quantum processing units has become an active area of research in quantum computing. The quantum algorithms that can approximate the ground state of the classical Ising model like quantum approximate optimization algorithm and the quantum Metropolis algorithm, can be considered good examples of these algorithms.

This survey has provided example approaches to illustrate that the solving of combinatorial optimization problems using a unified programming framework (such as QUBO) is possible on a gate model quantum computer. Our hope is that a consolidation of ideas such as this can help researchers come up with more-advanced algorithms that can harness the potential of gate model quantum computers to solve hard combinatorial optimization problems.


The authors would like to thank Marko Bucyk for editing the manuscript, Robert Raussendorf, and Anna Levit for useful discussion. This work was supported by 1QBit.


  • Ladd et al (2010) Ladd TD, Jelezko F, Laflamme R, Nakamura Y, Monroe C, O’Brien JL (2010) Quantum computers. Nature 464(7285):45–53
  • Lloyd (1996) Lloyd S (1996) Universal quantum simulators. Science 273(5278):1073–1078
  • Lanyon et al (2010) Lanyon BP, Whitfield JD, Gillett GG, Goggin ME, Almeida MP, Kassal I, Biamonte JD, Mohseni M, J P, Barbieri M, Aspuru-Guzik A, White AG (2010) Towards quantum chemistry on a quantum computer. Nat Chem 2(2):106–111
  • Shor (1999) Shor PW (1999) Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Review 41(2):303–332
  • Grover (1996)

    Grover LK (1996) A fast quantum mechanical algorithm for database search. In: Proceedings of the Twenty-eighth Annual ACM Symposium on Theory of Computing, ACM, New York, NY, USA, STOC ’96, pp 212–219

  • Nielsen and Chuang (2000) Nielsen M, Chuang I (2000) Quantum Computation and Quantum Information. Cambridge Series on Information and the Natural Sciences, Cambridge University Press
  • Farhi et al (2000) Farhi E, Goldstone J, Gutmann S, Sipser M (2000) Quantum computation by adiabatic evolution. arXiv preprint quant-ph/0001106
  • Shor (1996) Shor PW (1996) Fault-tolerant quantum computation. In: Foundations of Computer Science, 1996. Proceedings., 37th Annual Symposium on, pp 56–65
  • Benhelm et al (2008) Benhelm J, Kirchmair G, Roos CF, Blatt R (2008) Towards fault-tolerant quantum computing with trapped ions. Nat Phys 4(6):463–466
  • Clarke and Wilhelm (2008) Clarke J, Wilhelm FK (2008) Superconducting quantum bits. Nature 453(7198):1031–1042
  • Li et al (2003) Li X, Wu Y, Steel D, Gammon D, Stievater TH, Katzer DS, Park D, Piermarocchi C, Sham LJ (2003) An all-optical quantum gate in a semiconductor quantum dot. Science 301(5634):809–811
  • Johnson et al (2011) Johnson MW, Amin MHS, Gildert S, Lanting T, Hamze F, Dickson N, Harris R, Berkley AJ, Johansson J, Bunyk P, Chapple EM, Enderud C, Hilton JP, Karimi K, Ladizinsky E, Ladizinsky N, Oh T, Perminov I, Rich C, Thom MC, Tolkacheva E, Truncik CJS, Uchaikin S, Wang J, Wilson B, Rose G (2011) Quantum annealing with manufactured spins. Nature 473(7346):194–198
  • Childs et al (2001) Childs AM, Farhi E, Preskill J (2001) Robustness of adiabatic quantum computation. Phys Rev A 65:012,322
  • Amin and Steininger (2006) Amin M, Steininger M (2006) Adiabatic quantum computation with superconducting qubits. US Patent 7,135,701
  • Hernandez et al (2016) Hernandez M, Zaribafiyan A, Aramon M, Naghibi M (2016) A novel graph-based approach for determining molecular similarity. arXiv preprint arXiv:160106693
  • Zaribafiyan et al (2017) Zaribafiyan A, Marchand DJJ, Changiz Rezaei SS (2017) Systematic and deterministic graph minor embedding for cartesian products of graphs. Quantum Information Processing 16(5):136
  • Venturelli et al (2015) Venturelli D, Marchand DJ, Rojo G (2015) Quantum annealing implementation of job-shop scheduling. arXiv preprint arXiv:150608479
  • McGeoch and Wang (2013) McGeoch CC, Wang C (2013) Experimental evaluation of an adiabiatic quantum system for combinatorial optimization. In: Proceedings of the ACM International Conference on Computing Frontiers, ACM, New York, NY, USA, CF ’13, pp 23:1–23:11
  • Rieffel et al (2015) Rieffel EG, Venturelli D, O’Gorman B, Do MB, Prystay EM, Smelyanskiy VN (2015) A case study in programming a quantum annealer for hard operational planning problems. Quantum Information Processing 14(1):1–36
  • Heim et al (2015) Heim B, Rønnow TF, Isakov SV, Troyer M (2015) Quantum versus classical annealing of ising spin glasses. Science 348(6231):215–217
  • Aharonov et al (2008) Aharonov D, van Dam W, Kempe J, Landau Z, Lloyd S, Regev O (2008) Adiabatic quantum computation is equivalent to standard quantum computation. SIAM Review 50(4):755–787
  • Kassal et al (2008) Kassal I, Jordan SP, Love PJ, Mohseni M, Aspuru-Guzik A (2008) Polynomial-time quantum algorithm for the simulation of chemical dynamics. Proceedings of the National Academy of Sciences 105(48):18,681–18,686
  • Kitaev et al (2002) Kitaev AY, Shen A, Vyalyi MN (2002) Classical and quantum computation, vol 47. American Mathematical Society Providence
  • Lenstra and Pomerance (1992) Lenstra HW, Pomerance C (1992) A rigorous time bound for factoring integers. Journal of the American Mathematical Society 5(3):483–516
  • Pomerance (1982) Pomerance C (1982) Analysis and comparison of some integer factoring algorithms. Mathematisch Centrum Computational Methods in Number Theory, Pt 1 p 89-139(SEE N 84-17990 08-67)
  • Hyafil and Rivest (1973)

    Hyafil L, Rivest RL (1973) Graph partitioning and constructing optimal decision trees are polynomial complete problems. IRIA. Laboratoire de Recherche en Informatique et Automatique

  • Garey et al (1976a) Garey MR, Johnson DS, Sethi R (1976a) The complexity of flowshop and jobshop scheduling. Math Oper Res 1(2):117–129
  • Garey et al (1976b) Garey M, Johnson D, Stockmeyer L (1976b) Some simplified np-complete graph problems. Theoretical Computer Science 1(3):237 – 267
  • Kochenberger et al (2014) Kochenberger G, Hao JK, Glover F, Lewis M, Lü Z, Wang H, Wang Y (2014) The unconstrained binary quadratic programming problem: a survey. Journal of Combinatorial Optimization 28(1):58–81
  • Zhu et al (2016) Zhu Z, Fang C, Katzgraber HG (2016) borealis-a generalized global update algorithm for boolean optimization problems. arXiv preprint arXiv:160509399
  • Boros and Hammer (2002) Boros E, Hammer PL (2002) Pseudo-boolean optimization. Discrete Applied Mathematics 123(1–3):155 – 225
  • Bian et al (2010) Bian Z, Chudak F, Macready WG, Rose G (2010) The ising model: teaching an old problem new tricks. D-Wave Systems 2
  • Zalka (1999) Zalka C (1999) Grover’s quantum searching algorithm is optimal. Phys Rev A 60:2746–2751
  • Venturelli et al (2015) Venturelli D, Mandrà S, Knysh S, O’Gorman B, Biswas R, Smelyanskiy V (2015) Quantum optimization of fully connected spin glasses. Phys Rev X 5:031,040
  • Katzgraber et al (2015) Katzgraber HG, Hamze F, Zhu Z, Ochoa AJ, Munoz-Bauza H (2015) Seeking quantum speedup through spin glasses: The good, the bad, and the ugly. Phys Rev X 5:031,026
  • Denchev et al (2016) Denchev VS, Boixo S, Isakov SV, Ding N, Babbush R, Smelyanskiy V, Martinis J, Neven H (2016) What is the computational value of finite-range tunneling? Phys Rev X 6:031,015
  • King et al (2017) King J, Yarkoni S, Raymond J, Ozfidan I, King AD, Nevisi MM, Hilton JP, McGeoch CC (2017) Quantum annealing amid local ruggedness and global frustration. arXiv preprint arXiv:170104579
  • van Dam et al (2001) van Dam W, Mosca M, Vazirani U (2001) How powerful is adiabatic quantum computation? In: IEEE Symposium on Foundations of Computer Science, 2001. Proceedings. 42nd, pp 279–287
  • Baritompa et al (2005) Baritompa WP, Bulger DW, Wood GR (2005) Grover’s quantum algorithm applied to global optimization. SIAM Journal on Optimization 15(4):1170–1184
  • Farhi et al (2014) Farhi E, Goldstone J, Gutmann S (2014) A quantum approximate optimization algorithm. arXiv preprint arXiv:14114028
  • Temme et al (2011) Temme K, Osborne TJ, Vollbrecht KG, Poulin D, Verstraete F (2011) Quantum metropolis sampling. Nature 471(7336):87–90
  • Cipra (1987) Cipra BA (1987) An introduction to the ising model. Am Math Monthly 94(10):937–959
  • Farhi et al (2001) Farhi E, Goldstone J, Gutmann S, Lapan J, Lundgren A, Preda D (2001) A quantum adiabatic evolution algorithm applied to random instances of an np-complete problem. Science 292(5516):472–475
  • Farhi et al (2002a) Farhi E, Goldstone J, Gutmann S (2002a) Quantum adiabatic evolution algorithms versus simulated annealing. arXiv preprint quant-ph/0201031
  • Farhi et al (2002b) Farhi E, Goldstone J, Gutmann S (2002b) Quantum adiabatic evolution algorithms with different paths. arXiv preprint quant-ph/0208135
  • Trummer and Koch (2016) Trummer I, Koch C (2016) Multiple query optimization on the d-wave 2x adiabatic quantum computer. Proc VLDB Endow 9(9):648–659
  • Trotter (1959) Trotter HF (1959) On the product of semi-groups of operators. Proceedings of the American Mathematical Society 10(4):545–551
  • Suzuki (1990) Suzuki M (1990) Fractal decomposition of exponential operators with applications to many-body theories and monte carlo simulations. Physics Letters A 146(6):319 – 323
  • Barahona (1982) Barahona F (1982) On the computational complexity of ising spin glass models. Journal of Physics A: Mathematical and General 15(10):3241
  • Barends et al (2016) Barends R, Shabani A, Lamata L, Kelly J, Mezzacapo A, Heras UL, Babbush R, Fowler AG, Campbell B, Chen Y, Chen Z, Chiaro B, Dunsworth A, Jeffrey E, Lucero E, Megrant A, Mutus JY, Neeley M, Neill C, O’Malley PJJ, Quintana C, Roushan P, Sank D, Vainsencher A, Wenner J, White TC, Solano E, Neven H, Martinis JM (2016) Digitized adiabatic quantum computing with a superconducting circuit. Nature 534(7606):222–226
  • Berry et al (2015a) Berry DW, Childs AM, Cleve R, Kothari R, Somma RD (2015a) Simulating hamiltonian dynamics with a truncated taylor series. Phys Rev Lett 114:090,502
  • Berry et al (2015b) Berry DW, Childs AM, Kothari R (2015b) Hamiltonian simulation with nearly optimal dependence on all parameters. In: Foundations of Computer Science (FOCS), 2015 IEEE 56th Annual Symposium on, pp 792–809
  • Berry et al (2014) Berry DW, Childs AM, Cleve R, Kothari R, Somma RD (2014) Exponential improvement in precision for simulating sparse hamiltonians. In: Proceedings of the 46th Annual ACM Symposium on Theory of Computing, ACM, New York, NY, USA, STOC ’14, pp 283–292
  • Boyer et al (1998) Boyer M, Brassard G, Høyer P, Tapp A (1998) Tight bounds on quantum searching. Fortschritte der Physik 46(4-5):493–505
  • Liu and Koehler (2010) Liu Y, Koehler GJ (2010) Using modifications to grover’s search algorithm for quantum global optimization. European Journal of Operational Research 207(2):620 – 632
  • Durr and Hoyer (1996) Durr C, Hoyer P (1996) A quantum algorithm for finding the minimum. arXiv preprint quant-ph/9607014
  • Mermin (2007) Mermin ND (2007) Quantum computer science: an introduction. Cambridge University Press
  • Strubell (2011) Strubell E (2011) An introduction to quantum algorithms. COS498 Chawathe Spring
  • Ambainis (2004) Ambainis A (2004) Quantum search algorithms. SIGACT News 35(2):22–35
  • Hogg and Portnov (2000) Hogg T, Portnov D (2000) Quantum optimization. Inf Sci Inf Comput Sci 128(3-4):181–197
  • Zahedinejad et al (2014)

    Zahedinejad E, Schirmer S, Sanders BC (2014) Evolutionary algorithms for hard quantum control. Phys Rev A 90:032,310

  • Brassard et al (2002) Brassard G, Hoyer P, Mosca M, Tapp A (2002) Quantum amplitude amplification and estimation. Contemporary Mathematics 305:53–74
  • Farhi and Harrow (2016) Farhi E, Harrow AW (2016) Quantum supremacy through the quantum approximate optimization algorithm. arXiv preprint arXiv:160207674
  • Wecker et al (2016) Wecker D, Hastings MB, Troyer M (2016) Training a quantum optimizer. arXiv preprint arXiv:160505370
  • Yang et al (2016) Yang ZC, Rahmani A, Shabani A, Neven H, Chamon C (2016) Optimizing variational quantum algorithms using pontryagin’s minimum principle. arXiv preprint arXiv:160706473
  • Bryson (1975) Bryson AE (1975) Applied optimal control: optimization, estimation and control. CRC Press
  • Stengel (2012) Stengel RF (2012) Optimal control and estimation. Courier Corporation
  • McClean et al (2016) McClean JR, Romero J, Babbush R, Aspuru-Guzik A (2016) The theory of variational hybrid quantum-classical algorithms. New Journal of Physics 18(2):023,023
  • Pontryagin (1987) Pontryagin LS (1987) Mathematical theory of optimal processes. CRC Press
  • Palittapongarnpim et al (2016) Palittapongarnpim P, Wittek P, Zahedinejad E, Sanders BC (2016) Learning in quantum control: High-dimensional global optimization for noisy quantum dynamics. arXiv preprint arXiv:160703428
  • Crosson et al (2014) Crosson E, Farhi E, Lin CYY, Lin HH, Shor P (2014) Different strategies for optimization using the quantum adiabatic algorithm. arXiv preprint arXiv:14017320
  • Karimi and Rosenberg (2017) Karimi H, Rosenberg G (2017) Boosting quantum annealer performance via sample persistence. Quantum Information Processing 16(7):166
  • Karimi et al (2017) Karimi H, Rosenberg G, Katzgraber HG (2017) Effective optimization using sample persistence: A case study on quantum annealers and various monte carlo optimization methods. arXiv preprint arXiv:170607826v1
  • Crawford et al (2016)

    Crawford D, Levit A, Ghadermarzy N, Oberoi JS, Ronagh P (2016) Reinforcement learning using quantum boltzmann machines. arXiv preprint arXiv:161205695

  • Amin et al (2016) Amin MH, Andriyash E, Rolfe J, Kulchytskyy B, Melko R (2016) Quantum boltzmann machine. arXiv preprint arXiv:160102036
  • Kitaev (1995) Kitaev AY (1995) Quantum measurements and the abelian stabilizer problem. arXiv preprint quant-ph/9511026
  • Barenco et al (1995) Barenco A, Bennett CH, Cleve R, DiVincenzo DP, Margolus N, Shor P, Sleator T, Smolin JA, Weinfurter H (1995) Elementary gates for quantum computation. Phys Rev A 52:3457–3467
  • Marriott and Watrous (2005) Marriott C, Watrous J (2005) Quantum arthur—merlin games. Comput Complex 14(2):122–152
  • Magniez et al (2007) Magniez F, Santha M, Szegedy M (2007) Quantum algorithms for the triangle problem. SIAM Journal on Computing 37(2):413–424
  • Gall (2014) Gall FL (2014) Improved quantum algorithm for triangle finding via combinatorial arguments. In: Foundations of Computer Science (FOCS), 2014 IEEE 55th Annual Symposium on, pp 216–225
  • Childs and Eisenberg (2003) Childs AM, Eisenberg JM (2003) Quantum algorithms for subset finding. arXiv preprint quant-ph/0311038
  • Dürr et al (2004) Dürr C, Heiligman M, Høyer P, Mhalla M (2004) Quantum Query Complexity of Some Graph Problems, Springer Berlin Heidelberg, Berlin, Heidelberg, pp 481–493
  • Cerf et al (2000) Cerf NJ, Grover LK, Williams CP (2000) Nested quantum search and structured problems. Phys Rev A 61:032,303
  • Dörn (2005) Dörn S (2005) Quantum complexity bounds for independent set problems. arXiv preprint quant-ph/0510084
  • Lloyd et al (2013) Lloyd S, Mohseni M, Rebentrost P (2013) Quantum algorithms for supervised and unsupervised machine learning. arXiv preprint qunat-ph/13070411v2
  • Schöning (1999) Schöning U (1999) A probabilistic algorithm for k-sat and constraint satisfaction problems. In: Proceedings of the 40th Annual Symposium on Foundations of Computer Science, IEEE Computer Society, Washington, DC, USA, FOCS ’99, pp 410–
  • Paturi et al (1997) Paturi R, Pudlak P, Zane F (1997) Satisfiability coding lemma. In: Foundations of Computer Science, 1997. Proceedings., 38th Annual Symposium on, pp 566–574
  • Paturi et al (1998) Paturi R, Pudlik P, Saks ME, Zane F (1998) An improved exponential-time algorithm for k-sat. In: Foundations of Computer Science, 1998. Proceedings. 39th Annual Symposium on, pp 628–637
  • Dantsin and Wolpert (2005) Dantsin E, Wolpert A (2005) An Improved Upper Bound for SAT, Springer Berlin Heidelberg, Berlin, Heidelberg, pp 400–407
  • Dantsin et al (2005) Dantsin E, Kreinovich V, Wolpert A (2005) On quantum versions of record-breaking algorithms for sat. SIGACT News 36(4):103–108
  • Back and Khuri (1994)

    Back T, Khuri S (1994) An evolutionary heuristic for the maximum independent set problem. In: Evolutionary Computation, 1994. IEEE World Congress on Computational Intelligence., Proceedings of the First IEEE Conference on, pp 531–535 vol.2

  • Johnson (1979) Johnson DS (1979) Computers and intractability: A guide to the theory of np-completeness
  • Robson (2001) Robson JM (2001) Finding a maximum independent set in time . Tech. rep., Technical Report 1251-01, LaBRI, Université Bordeaux I
  • Wittek (2014) Wittek P (2014) Quantum Machine Learning. Academic Press, Boston
  • Bulger (2005) Bulger D (2005) Quantum basin hopping with gradient-based local optimisation. arXiv preprint quant-ph/0507193
  • Bulger (2007) Bulger DW (2007) Combining a local search and grover’s algorithm in black-box global optimization. J Optim Theory Appl 133(3):289–301