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).^{1}^{1}1The gate model paradigm is interchangeably also called the standard approach or the circuitbased 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 nearoptimal) 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 (boundederror quantum polynomial time), whereas all of the other existing classical algorithms solve the problem in subexponential time Lenstra and Pomerance (1992); Pomerance (1982). The exponential speedup 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:
(1)  
s.t. 
where is an by square, symmetric matrix of realvalued 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 NPcomplete 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 speedup 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 discretevalued optimization task (like a QUBO problem) and then using different quantum computation algorithms, devices, and platforms to solve the problem.
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 nearterm 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 Groverbased 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 pairwise interactions between spins, one can formulate the energy of the spin system for a configuration using an Ising Hamiltonian:
(2) 
The Ising model has the QUBO formulation
(3) 
which is equivalent to (2
) up to a linear transformation
^{2}^{2}2We 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 DWave 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.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 nonstoquastic Hamiltonian. The stateoftheart 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 twoqubit gates. There exist additional, general challenges to address, such as supporting graphs with higher connectivity and various multibody 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 twoqubit 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
(4) 
where is the total Hamiltonian of the system and is a timedependent 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
(5) 
where are timedependent 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 firstorder Lie–Trotter–Suzuki formula Trotter (1959); Suzuki (1990). Using this method, we can approximate the timeordered () evolution operator of the system
(6) 
over a time interval [] by the approximated operator
(7) 
where, in (7), are equallysized time steps and is the number of time steps. Given the ability to perform arbitrary local rotations, each local term in the Hamiltonian (2local 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 twoqubit logical gates to evolve the initial state of the quantum system (represented as a uniform superposition of all eigenstates of ) from
(8) 
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 speedup Baritompa et al (2005); Boyer et al (1998); Liu and Koehler (2010). In the first part of this section, we discuss Groverbased optimization algorithms. In the second part, we explain another approach in quantum global optimization which is inspired by AQC.
5.1 Groverbased quantum global optimization
Grover’s search algorithm has been shown to be optimal for searching an unstructured database Zalka (1999), with a quadratic speedup 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 speedup 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 Groverbased 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
(9) 
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 speedup 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
(10) 
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:
(11) 
where is the identity operator and the operator , called the diffusion operator, is defined as follows:
(12) 
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 twodimensional space of (target) and (nontarget) 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 twodimensional 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(13) 
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.
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 finetune the Grover’s search block by using a rotation schedule subroutine. We clarify the role of the schedule generator later in our survey.
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 integerindexed elements
Output:
Resources:
An qubit register initialized at
An oracle in the form of (9)
Runtime: operation Ambainis (2004), with probability of success
Procedure:

Initialize the state of the quantum register at

Apply Hadamard gate to generate state

Apply the operators times

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 twodimensional space of target and nontarget 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
(14) 
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
Resources:

A quantum oracle which performs the operation

An qubit register initialized at
Output:
Runtime: operation Ambainis (2004), with probability of success
Procedure:

Randomly choose a trial solution, , and initialize

for until the convergence criteria are met

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

Measure the register and store the output in register

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 speedup 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
(16) 
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 theth 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 userdefined 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 subexponential; 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
(17) 
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
(18) 
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
(19) 
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 nearterm 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 nearoptimal 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):
(20) 
The algorithmic steps of the QAOA read as follows:

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

Construct the unitary operator which depends on the angle as follows:
(21) 
Construct the operator which is the sum of all singlebit operators:
(22) 
Define the angledependent quantum state for any integer and angles and as follows:
(23) 
Obtain the expectation of in this state (this step could be performed on a quantum computer),
(24) 
Update the parameters () using a classical (or quantum) optimization algorithm in order to minimize .

Iterate over steps 5 and 6 in order to find the minimum value of for the nearoptimal values ().

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

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 nearoptimal 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
(25) 
where represents a transverse field generating the quantum fluctuation and contains the problem Hamiltonian. Here, is a timedependent 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 bangbang, 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 bangbang shape, one can maximize the following objective function over to find the optimal path of for the evolution:
(26) 
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 bangbang 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:(27) 
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 MaxSAT (maximum satisfiability) problems. Since it is shown in Bian et al (2010) how to transform a QUBO problem into a weighted MaxSAT problem, it remains to be seen how the method in Wecker et al (2016) can be generalized to solve weighted MaxSAT 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 negativesign 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 fastmixing 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 bitflip 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 nontrivial 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 nocloning 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:
(28) 
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., errorfree) 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:
(29) 
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:
(30) 
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:
(31) 
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):
(32) 
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 twodimensional 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 twodimensional 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:
(33)  
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:
(34)  
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
(35)  
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:
(36)  
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.
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 speedup of Grover’s search algorithm. As is explained in Cerf et al (2000), the algorithm can be summarized as follows:

Construct a binary tree representing the CSP.

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

Use the quantum search algorithm to amplify the magnitude of couldbe solutions using Algorithm 1.

Perform a subsequent quantum search in the subspace of the descendants of all of the couldbe partial solutions simultaneously. This is achieved by using Algorithm 1 as an input, the superposition of couldbe 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 nonsolutions.

The final procedure consists of nesting stages 3 and 4, using them as a search operator inside a higherlevel quantum search algorithm until the solutions get maximally amplified, at which point a measurement is performed.
For a pseudoBoolean 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
(37) 
where is the number of clauses, each expressed as the disjunction of literals, , as
(38) 
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 MaxSAT (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 speedup 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 speedup 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 speedup 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 NPcomplete 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 speedup. 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 applicationspecific 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 customtailored 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 discretevalued optimization problems that includes many such computational tasks that are hard for classical computers. Emerging circuitmodel 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 quantumenabled 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 morepractical 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 moresophisticated hybrid quantum–classical optimization algorithms based on Grover’s search algorithm.Stateoftheart chip design and fabrication technologies allow us to have quantum processors with a few hundred qubits. Larger chips with morescalable 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 moreadvanced algorithms that can harness the potential of gate model quantum computers to solve hard combinatorial optimization problems.
Acknowledgment
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.
References
 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, AspuruGuzik A, White AG (2010) Towards quantum chemistry on a quantum computer. Nat Chem 2(2):106–111
 Shor (1999) Shor PW (1999) Polynomialtime 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 Twentyeighth 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 quantph/0001106
 Shor (1996) Shor PW (1996) Faulttolerant 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 faulttolerant 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 alloptical 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 graphbased 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 jobshop 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, AspuruGuzik A (2008) Polynomialtime 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 89139(SEE N 8417990 0867)

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 npcomplete 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) borealisa generalized global update algorithm for boolean optimization problems. arXiv preprint arXiv:160509399
 Boros and Hammer (2002) Boros E, Hammer PL (2002) Pseudoboolean 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. DWave 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, MunozBauza 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 finiterange 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 npcomplete 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 quantph/0201031
 Farhi et al (2002b) Farhi E, Goldstone J, Gutmann S (2002b) Quantum adiabatic evolution algorithms with different paths. arXiv preprint quantph/0208135
 Trummer and Koch (2016) Trummer I, Koch C (2016) Multiple query optimization on the dwave 2x adiabatic quantum computer. Proc VLDB Endow 9(9):648–659
 Trotter (1959) Trotter HF (1959) On the product of semigroups 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 manybody 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(45):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 quantph/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(34):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, AspuruGuzik A (2016) The theory of variational hybrid quantumclassical 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: Highdimensional 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 quantph/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 quantph/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 quantph/0510084
 Lloyd et al (2013) Lloyd S, Mohseni M, Rebentrost P (2013) Quantum algorithms for supervised and unsupervised machine learning. arXiv preprint qunatph/13070411v2
 Schöning (1999) Schöning U (1999) A probabilistic algorithm for ksat 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 exponentialtime algorithm for ksat. 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 recordbreaking 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 npcompleteness
 Robson (2001) Robson JM (2001) Finding a maximum independent set in time . Tech. rep., Technical Report 125101, LaBRI, Université Bordeaux I
 Wittek (2014) Wittek P (2014) Quantum Machine Learning. Academic Press, Boston
 Bulger (2005) Bulger D (2005) Quantum basin hopping with gradientbased local optimisation. arXiv preprint quantph/0507193
 Bulger (2007) Bulger DW (2007) Combining a local search and grover’s algorithm in blackbox global optimization. J Optim Theory Appl 133(3):289–301
Comments
There are no comments yet.