* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download ADIABATIC QUANTUM COMPUTATION
Algorithmic cooling wikipedia , lookup
Perturbation theory (quantum mechanics) wikipedia , lookup
Aharonov–Bohm effect wikipedia , lookup
Wave–particle duality wikipedia , lookup
Double-slit experiment wikipedia , lookup
Quantum dot cellular automaton wikipedia , lookup
Bell test experiments wikipedia , lookup
Topological quantum field theory wikipedia , lookup
Renormalization group wikipedia , lookup
Basil Hiley wikipedia , lookup
Renormalization wikipedia , lookup
Bohr–Einstein debates wikipedia , lookup
Relativistic quantum mechanics wikipedia , lookup
Delayed choice quantum eraser wikipedia , lookup
Theoretical and experimental justification for the Schrödinger equation wikipedia , lookup
Scalar field theory wikipedia , lookup
Probability amplitude wikipedia , lookup
Copenhagen interpretation wikipedia , lookup
Density matrix wikipedia , lookup
Measurement in quantum mechanics wikipedia , lookup
Path integral formulation wikipedia , lookup
Quantum field theory wikipedia , lookup
Particle in a box wikipedia , lookup
Quantum decoherence wikipedia , lookup
Coherent states wikipedia , lookup
Quantum entanglement wikipedia , lookup
Quantum dot wikipedia , lookup
Bell's theorem wikipedia , lookup
Quantum electrodynamics wikipedia , lookup
Hydrogen atom wikipedia , lookup
Quantum fiction wikipedia , lookup
Many-worlds interpretation wikipedia , lookup
Orchestrated objective reduction wikipedia , lookup
Symmetry in quantum mechanics wikipedia , lookup
EPR paradox wikipedia , lookup
Interpretations of quantum mechanics wikipedia , lookup
History of quantum field theory wikipedia , lookup
Quantum group wikipedia , lookup
Quantum key distribution wikipedia , lookup
Quantum teleportation wikipedia , lookup
Quantum cognition wikipedia , lookup
Hidden variable theory wikipedia , lookup
Quantum computing wikipedia , lookup
Quantum state wikipedia , lookup
University of Ljubljana Faculty for Mathematics and Physics Department for Physics SEMINAR - 4.letnik ADIABATIC QUANTUM COMPUTATION Avtor: Enej Ilievski email: [email protected] Mentor: dr. Marko Žnidarič May 17, 2010 Abstract In this seminar we present adiabatic quantum algorithm – a quantum computational method for solving hard computational problems which relies on the adiabatic theorem. Such approach is particularly interesting because it may offer possibilities to reduce the effects of quantum decoherence. We are mainly focusing on the conceptual background. 1 INTRODUCTION In adiabatic quantum computation (AQC) one encodes a computational problem in a suitable physical system in such way that the structure of the ground (lowest energy) state reveals the answer to the problem. In order to find the ground state one starts with engineering some simple Hamiltonian in its ground state and gradually deforms it into complex Hamiltonian whose ground state encodes the solution to the problem. If this deformation is sufficiently gradual, then the transformation of the state is adiabatic, and the system remains in its ground state throughout the evolution. AQC is known to be an universal model of quantum computation. We begin this seminar by briefly describing some basic concepts in quantum computation, especially related to the standard (logic gate) quantum computer, following by a short introduction to the possibilities of implementing quantum computers and comparing their power with respect to classical computers. 1 Before focusing on the adiabatic quantum computation and quantum annealing principles, we present some alternative approaches in quantum computation. At the end we present some recent theoretical and practical developements together with practical experimental implementation achievements concerning AQC. Although we give a short introduction to quantum computing some basic knowledge of quantum mechanics is required for proper understanding of this seminar. 2 QUANTUM COMPUTER Quantum computer is a device for computation that uses quantum mechanics phenomena (such as superposition of states and quantum entanglement) to perform operations on data. A theoretical model is an abstract machine, called quantum Turing machine (or universal quantum computer), which has the same relation to quantum computation that normal Turing machines have to classical computation [1]. 1 2.1 BITS VS. QUBITS A memory of classical computer consists of well-known bits, where each bit represents either a one or a zero. Quantum computer, on the other hand, performs operations on qubits (Fig. 1). Qubit is formally a two-level quantum mechanical system where one eigenstate refers to value 0 (or |0i in Dirac notation) and other to value 1. Quantum systems can be found in superposition of states, thus a qubit is given by |ψi = α|0i + β|1i. Figure 1: Qubit, a fundamental entity in quantum informatics, can be represented as a point on Bloch sphere; |ψi = cos (θ/2)|0i + eiφ sin (θ/2)|1i. A state of qubit is a vector in two-dimensional complex vector (Hilbert) space. Special states |0i and |1i are known as computational basis states and form an orthogonal basis of this vector space. The crucial fact is, that we cannot examine a qubit to determine its quantum state, i.e. coefficients α and β. In fact, when we measure a qubit we get either the result 0, with probability |α|2 , or result 1, with probability |β|2 . 2 After the measurement a qubit is found in a state that corresponds to the measurement result, e.g. if we get 0, |ψi “collapses” to state |0i. Moreover, a pair of qubits can be found in a superposition of 4 states (|00i, |01i, |10i, |11i), three qubits in 8 states, or in general, n qubits in 2n states 3 (n classical bits represent only one of possible 2n states). The computational basis vectors of n-qubit system are of the form |x1 x2 . . . xn i, xi ∈ {0, 1}, 1 It means that any quantum algorithm can be represented as particular quantum Turing machine. course, |α|2 + |β|2 = 1 holds. 3 Unfortunately there is no simple generalization of Bloch sphere for multiple qubits. 2 Of 2 so a quantum state of such a system is specified with 2n amplitudes. For n = 300 this number is larger than the estimated number of atoms in the Universe! Trying to store all this information on classical computer would be impossible. However, it seems Nature is capable of manipulating such enormous quantities of data during evolution of quantum systems and this huge computational power is really something we would like to take advantage of. Many physical systems can be used to represent qubits, for example two different polarizations of a photon, alignment of a nuclear spin in uniform magnetic field, two states of an electron orbiting a single atom etc. 2.2 QUANTUM COMPUTER USING QUANTUM LOGIC GATES Undoubtly the most popular model for quantum computation is a quantum circuit model in which a computation is a sequence of reversible transformations on n-qubit (quantum) register. 4 These transformations are unitary (probability preserving) and are called quantum gates [2, 3]. An arbitrary quantum computation (reversible operation) on any number of qubits can be generated by a finite set of quantum gates. Such set is said to be universal for quantum computation. An universal gates for classical computation are NAND and NOR gates. 5 In quantum computation, any multiple qubit logic gate can be composed from CNOT (2-qubit gate) and single qubit gates (described by 2 × 2 unitary matrices) such as Hadamard gate and phase gate. 6 As we intuitively expect, quantum computers can simulate classical computations (non-deterministic as well), but there would be little point in going to all the trouble with quantum effects if we would not be able to solve some problems much more efficiently than classical computers. Broadly speaking, there are three classes of quantum algorithms which provide an advantage over known classical algorithms. 1. A class of algorithms based upon quantum version of the Fourier transform (Shor’s algorithm for factoring and discrete logarithm). 2. Quantum search algorithms (Grover’s algorithm 7 ). 3. Quantum simulations (algorithms for simulatiing quantum systems 8 ). 2.3 QUANTUM DECOHERENCE One of the greatest challenges in quantum computation is controlling or removing quantum decoherence which usually means isolating system from its environment. Quantum decoherence is a consequence of interaction of quantum systems with their environments resulting in their probabilistic behaviour. 9 This is a non-unitary effect (irreversible) and can be viewed as the loss of infomation from the system to environment. 4 Note that classical logic gates are irreversible (non-invertible)! classical computation can also be done combining only 3-bit Toffoli gates. 6 A single-gate universal quantum gates can also be formulated using 3-qubit Deutsch gate. 7 Given a search space of size N (with no prior knowledge about the structure of information in it) we want to find the element satisfying a known √ property. Classicaly, this problem can be solved in O(N ), but the quantum search algorithm can do it using only O( N ) operations. 8 The main difficulty of simulating quantum systems on classical computers is exponentially growing size of the system (number of complex numbers needed to describe it). By contrast, a quantum computer can perform the simulation using O(n) qubits, however the question how to efficiently extract desired information from the quantum system still remains. 9 Note that the combined system (system + environment togehter) is always in a pure quantum state and desribed by unitary evolution. However, due to interacions of with external (unknown) degrees of freedom, system behaves as statistical ensemble of different states, rather than quantum superposition of them. 5 Universal 3 2.4 PHYSICAL REALIZATION OF QUANTUM COMPUTER To realize a quantum computer, we must not only give qubits some robust physical representation, but also select a system in which they can be made to evolve as desired. Furthermore, we must be able to prepare qubits in some specified set of initial states, and to measure the final output. A single nuclear spin can be a good choice for a qubit, because superpositions of being aligned with or against an external magnetic field can last a long time. Unfortunately it is difficult to build a quantum computer from nuclear spins because their coupling to the world is so small that it is hard to measure the orientation of a single nuclei. Physical support Single photon Electrons Nucleus Optical lattices Josephson junction Singly charged quantum dot pair Quantum dot Current Energy |0i Horizontal Vacuum Up No electron Up Up Uncharged SC island (Q = 0) CW current Ground state |1i Vertical Single photon state Down One electron Down Down Charged SC island (Q = 2e, extra Cooper pair) CCW current First exicited state Charge Spin Electron on left dot Down Electron on right dot Up Name Polarization encoding Photon number Electronic spin Electron number Nuclear spin (NMR) Atomic spin SC charge qubit Information support Polarization of light Photon number Spin Charge Spin Spin Charge SC flux qubit SC phase qubit Electron localization Dot spin Table 1: Incomplete list of physical implementations of qubits (choices of basis are by convention)[4]. Despite huge number of entries in the table above, only three fundamentally different qubit representations exist: spin, charge and photon. A key concept in understanding the merit of a particular realization is the notion of quantum noise (sometimes called decoherence). This is because the length of the longest possible quantum computation is given by the ratio of decoherence time 10 to operation time 11 . These two times are determined by the strength of coupling of the system to the external world. Still, if the error rate (due to decoherence) is small enough, it is thought to be possible to use quantum error correction, thereby allowing the total calculation time to be longer than decoherence time (the cost is greatly increased number of required qubits). The key idea is that if we wish to protect a system against the effects of noise we have to incorporate some redundant information. Protecting bits against the effects of noise is somehow trivial in classical world, where for instance one needs to simply replace each bit with three copies of itself. Similar procedure is not applicable to quantum systems due to no-cloning theorem, however there are two additional important issues: 1. Errors are continuous - different types of continuous errors may affect the state on a single qubit. Determining which error has occured in order to correct it would require infinite precision and resources. 2. Destructive measurements - observation in quantum mechanics destroys the quantum state under observation, thus making it’s recovery impossible. Fortunately these problems are not always fatal. Basic principles of error-correcting procedures are presented in [5]. 10 The 11 The time for which the system remains quantum-mechanically coherent. time it takes to perform elementary unitary transformations (at least two qubits). 4 2.5 THE POWER OF QUANTUM COMPUTATION How powerful quantum computers really are? Nobody yet knows the answer to this question, despite some examples (such as factoring) suggest that quantum computers are more powerful than classical computers. It is still possible that quantum computers are no more powerful than classical ones, in the sense that any problem which can be efficiently solved on a quantum computer can be also efficiently solved on a classical computer. Computational complexity theory is the subject of classifying the difficulty of various computational problems (both classical and quantum). The basic concept is a complexity class, which can be thought as a collection of computational problems that share some common feature(s) with respect to the computational resources needed to solve those problems. The most important classes are P and NP. The former is the class of computational problems that can be solved efficiently (in polynomial time) on classical computer and the later is the class of problems which have solutions that can be quickly verified (again in polynomial time) on classical computer. It is clear that P is a subset of NP, since the ability to solve problem implies the ability to check potential for solutions. Perhaps the most important problem of theoretical computer science is to determine whether ? these two classes are different: P6=NP. 12 There is an important subclass of NP problems, called NP-complete problems (NPC). Any NPC problem is at least as hard as all other problems in NP. It means that an algorithm to solve a specific NPC problem can be adapted 13 to solve any other problem in NP. If P6=NP, then it follows that no NP-complete problem can be efficiently solved on classical computer. It is not known wheter quantum computers can be used to quickly solve all the problems in NP (although they can be used to solve some of them, e.g. factoring, which is believed not to be in P). 14 Another important class in PSPACE. It consist of problems which can be solved using resources which are few in spatial size, but not necessary in time. PSPACE is believed to be strictly larger than P and NP (see Fig. 2), although this has never been proved. Finally we mention BPP complexity class containing problems that can be solved using randomized algorithms in polynomial time, if a bounded probability of error is allowed. What about quantum complexity classes? We can define BQP (acronym stands for bounded error, quantum, polynomial time) to be the class of all computational problems which can be solved efficiently on a quantum computer, allowing a bounded probability of error. Quantum computers run only probabilistic algorithms 15 , so BQP on quantum computer is the counterpart of BPP on classical computers. Exactly where BQP fits with respect to P, NP and PSPACE is not known. What is known is that quantum computers can solve all the problems in P efficiently, but there are no problems outside of PSPACE which can be solved efficiently, therefore BQP probably lies somewhere between them. An important implication is that if it is proved that quantum computers are strictly more powerful than classical computers, then it will follow that P is not equal to PSPACE. Although quantum computers may be faster than classical computers they can’t solve any problems the classical computers can’t (given enough time and memory). Since a probabilistic Turing machine can simulate quantum computers, they could never solve an undecidable problem like the halting problem. 12 Most scientists believe there are problems in NP that are not included in P. precisely, any NP problem is polynomial time reducible to NPC problem. 14 Note that factoring is not known to be NP-complete, otherwise we would already know how to efficiently solve all the problems in NP on a quantum computer. 15 However we can significally reduce the probability of error by repeating an algorithm several times. 13 More 5 Figure 2: The suspected relationship between classical and quantum complexity classes. Where quantum computers fit between P and PSPACE is not known, in part of because we do not even know whether PSPACE is bigger than P! 2.6 OTHER QUANTUM COMPUTER TYPES It is important to stress that quantum computer based on quantum logical gates (also known as standard quantum computer) mentioned above is not the only possible way of performing quantum computations! Several other approaches have been proposed so far: • One-way quantum computer In 2001, Robert Raussendorf and Hans J. Briegel presented a scheme of quantum computation that consist entirely of one-qubit measurements on a particular class of entangled states called cluster states 16 . The measurements are used to imprint a quantum logic circuit on the state (see Fig. 3). As the computation proceeds, the entanglement in the resource cluster state is progressively destroyed. Cluster states are thus one-way quantum computers and the measurements form the program (they replace the unitary evolution) [6, 7]. Figure 3: After initially creating a multiparticle entangled cluster state, a sequence of adaptive singleparticle measurements is carried out. In each step of the computation, the measurement basis of the next qubit depends on the specific program and on the outcome of previous measurement results [6]. • Quantum cellular automata It refers to any of several models of quantum computation, which have been devised in analogy 16 In quantum computation, a cluster state is a type of highly entangled state of multiple qubits. Cluster states can be created efficiently in any system with a quantum Ising-type interaction between two-state particles in a lattice configuration. 6 to conventional models of cellular automata 17 introduced by von Neumann. It may also refer to quantum dot cellular automata, which is a proposed implementation of classical cellular automata exploiting quantum mechanical phenomena. The computation is considered to come about by parallel operation of multiple cells. These are usually taken to be identical quantum systems, e.g. qubits. Cells togheter form a (usually regular) network. The evolution of the system has several symmetries. The most important are locality (next state of the cell depends only on current state and that of its neighbours) and homogeneity (the evolution is indepentendt of time and acts the same everywhere). The state space of the cells, as well as the operations performed on them, should be motivated by the principles of quantum mechanics [8]. • Topological quantum computer It is a theoretical quantum computer that employs two-dimensional quasiparticles called anyons 18 , whose world lines 19 cross over one another to form braids in a 3D spacetime (one temporal plus two spatial dimensions). These braids act like the logic gates that make up the computer and are described in terms of braid group [10]. The main advantage of a quantum computer based on quantum braids is its stability. While the smallest perturbations can cause a quantum particle do decohere (introducing errors in the computation) they do not change the topological properties of the braids [11]. In a key developement for topological quantum computers, in 2005 Vladimir J. Goldman et.al. were said to have created the first experimental evidence of using fractional quantum Hall effect to create actual anyons [12]. Topologial quantum computers are equivalent in computational power to other standard models of quantum computation. To learn more about quantum topological computer we refer the reader to [13]. • Adiabatic quanum computer Finally we mention adiabatic quantum computation which was initiated in 2001 by Edward Farhi et.al. Authors suggested a novel quantum algorithm for solving classical optimization problems such as satisfiability 20 (SAT) based on adiabatic theorem. In the remaining of this seminar we are focusing on the adiabatic quantum computer and presenting it in more detail. 3 ADIABATIC QUANTUM COMPUTATION Adiabatic quantum computation relies on adiabatic theorem to do calculations. The goal is to find a Hamiltonian whose ground state corresponds to the solution of the problem of interest. First, a system with a simple Hamiltonian is taken and initialized to its ground state. Finally, the simple Hamiltonian is adiabatically evolved to the desired Hamiltonian. By the adiabatic theorem, the system remains in the ground state, so that the final state of the system describes the solution to the problem. 17 The cellular automata is an abstract system consisting of uniform (finite or infinite) grid of cells. Each of these cells can only be in one of finite number of states, which are determined by its adjacent cells (neighbourhood). The most popular example is known as “The Game of Life”[9]. 18 Anyons are neither fermions nor bosons, but they share characteristics of fermions that they cannot occupy the same state. In the real world anyons emerge from the excitations in an electron gas in a very strong magnetic field, and carry fractional units of magnetic flux in a particle-like manner (fractional quantum Hall effect). 19 In physics, the world line of an object in the unique path of that object as it travels through 4D timespace. 20 Satisfiability is the problem of determining if variables of a given Boolean formula can be assigned in such a way as to make the formula evaluate to TRUE. 7 Adiabatic quantum computation offers possibility to avoid the problem of quantum decoherece. Since the system is in the ground state, interference with the outside world cannot make it move to a lower state. The only thing we need to ensure is to keep the temperature of the bath (energy of envoronment) lower than the energy gap between ground and first exited state of the system. If this condition is fulfilled, the system has a very low probability of going to a higher energy state. Thus the system can in principe stay coherent as long as needed. 21 3.1 ADIABATIC THEOREM Adiabatic theorem simply states that a physical system remains in its instantaneous eigenstate if a given perturbation is acting on it slowly enough and if there is a gap between the eigenvalue and the rest of Hamiltonian spectrum. Note that the term adiabatic is traditionally used in thermodynamics to describe processes without the exchange of heat between the system and environment. The quantum mechanical definition is somehow closer to the thermodynamical concept of quasistatic process 22 , and has no direct relation with heat exchange. A true analogy comes when entropy (TD system) and quantum number (QM system) are both considered to remain unchanged in adiabatic processes. Suppose an energy of the system H(t0 ) is given at some initial time t0 , with the corresponding eigenstate labelled as ψ(x, t0 ). Changing conditions in a continuous manner we end up with a final Hamiltonian H(t1 ) at some later time t1 in a final state ψ(x, t1 ). The adiabatic theorem states that the modification of the system critically depends on time difference τ = t1 − t0 . Diabatic process Rapidly changing conditions prevent the system from adapting its configuration during the process, hence the probability density remains unchanged. Diabatic passage (infinitely rapid) is reached in the limit τ → 0: |ψ(x, t1 )|2 = |ψ(x, t0 )|2 . Adiabatic process For a trully adiabatic process we require τ → ∞; in this case ψ(x, t1 ) will be an eigenstate of the final Hamiltonian H(t1 ), with a modified configuration: |ψ(x, t1 )|2 6= |ψ(x, t0 )|2 . Example: Quantum harmonic oscillator Let us quickly explain the effects of the adiabatic theorem on the simple example. Consider a quantum harmonic oscillator as the spring constant k is increased (resulting in a narrowing of the potential well in the Hamiltonian). If k is increased adiabatically ( dk dt → 0) then the system at time t will be in an instantaneous eigenstate of the current Hamiltonian H(t), corresponding to the initial eigenstate of H(0). In particular case, this means the quantum number associated with quantum harmonic oscilator will remain unchanged (if system is initially in its ground state n = 1, remains in the ground state as potential is compressed). For a rapidly increased spring constant, the system undergoes a diabatic process ( dk dt → ∞) in which the system has no time to adapt its functional form to the changing conditions. While the final state must look identical to the initial state (|ψ(t)|2 = |ψ(0)|2 ), there is no eigenstate of the new Hamiltonian H(t) that resembles the initial state, thus the final state is composed of a linear superposition of different eigenstates of H(t) that reproduce the form of the initial state. 3.2 QUANTUM ANNEALING Quantum annealing (abbrev. QA) is a general method for finding the global minimum of a given objective (cost) function over a given set of candidate solutions (the search space). It is used mainly for 21 In reality problems with decoherence cannot be completely avoided as we shall see later on. quasistatic process is a TD process that happens infinitely slowly. In practice, it must be carried out on a time-scale that is much longer than the relaxation time of the corresponding system. 22 A 8 the problems where the search space is discrete (combinatorial optimization problems) with many local minima. In quantum annealing, a current state is replaced by randomly selected “neighbour” state if the latter has lower energy (value of the objective function). The process is controlled by the tunneling field strength, the parameter that determines the extent of the neighborhood of states explored by the method. The tunneling field starts high (so that the neighborhood extends over the whole search space) and is slowly reduced through the computation. Method is actually derived from its classical analogue called simulated annealing, where “temperature” parameter plays similar role to QA’s tunneling field strength. However in simulated annealing the neighborhood stays the same throughout the search and the temperature determines the probability (given by Boltzmann distribution) of moving to a higher energy state, while in QA the tunneling field strength determines the neighborhood radius. 23 It has been demonstrated experimentally as well as theoretically, that QA can out rate thermal annealing in certain cases, specially, where the potential energy landscape consist of very high but thin barriers, surrounding shallow local minima - it is very unlikely for the thermal fluctuations to get the system out of such local minima, while quantum tunneling probabilities depends not only on the height of barrier, but also on its width. Figure 4: Schematic view on quantum annealing - while optimizing the cost function of computationally hard problem one has to get out of a shallower minimum in order to reach a deeper minimum. Classically one has to jump over the energy of the cost barriers separating them, while quantum mechanically one can tunnel thought the same. If the barrier is high enough, thermal jump becomes very difficult, however, if the barrier is narrow enough, quantum tunneling becomes quite easy [14]. In practice, the optimization problem is encoded in Hamiltonian HP . The algorithm starts by introducing strong quantum fluctuations by adding a disordering Hamiltonian H 0 that does not commute with H, H = HP + ΓH 0 , where Γ changes from one to zero during the evolution, thus slowly removing the disordering part. Γ indeed plays a role of so called tunneling field strength. If the process is slow enough, the system will settle in a local minima close to exact solution (the slower the process the better the solution will be achieved). The performance of the computation is conditioned by the residual energy (the distance from 23 In more elaborate simulated annealing variants (such as adaptive simulated annealing), the neighborhood radius is also varied using temperature value. 9 exact solution) versus evolution time. The computation time is the time required to generate a residual energy below some acceptable threshold value. The main difference between QA and AQC is that in the latter, the system is constrained to its ground state at all times, starting from the ground state of initial Hamiltonian and ending in the ground state of HP . In other words, AQC is an exact algorithm, while QA is heuristic. 3.3 ADIABATIC QUANTUM EVOLUTION AS A COMPUTATIONAL TOOL Quantum system evolves in time according to Schröedinger equation i d |ψ(t)i = H(t)|ψ(t)i, dt where |ψ(t)i is the time-dependent state vector and H(t) is the time-dependent Hamiltonian operator (here we set ~ = 1). A quantum algorithm can be viewed as a specification of a Hamiltonian H(t) and initial state |ψ(0)i. These are chosen so that the state at time T (|ψ(T )i) encodes the answer to the problem at hand. In designing our quantum algorithm we rely on the above introduced adiabatic quantum theorem. Adiabatic evolution refers to the situation where H(t) is slowly varying. Suppose evolution starts at time t = 0 in |ψg (0)i which is the ground state of Hamiltonian H(0). The adiabatic theorem guarantees that evolving state vector |ψ(t)i remains close to instantaneous ground state |ψg (t)i if H(t) varies slowly enough. To specify our algorithm we have to provide H(t) for 0 ≤ t ≤ T , where T denotes the running time of the algorithm. We choose H(t) so that the ground state of H(0) is known in advance and easy to construct. For any particular instance of the problem, there is a Hamiltonian HP , whose ground state encodes the solution. Although it is easy to construct HP , finding its ground state might be computationally difficult. Thus we take HP = H(T ), which implies that |ψg (T )i encodes our solution. For intermediate times, H(t) smoothly interpolates between H(0) and H(T ) = HP . If time T is large enough, H(t) will indeed be slowly varying and the final state |ψ(T )i will be close to the solution of the problem encoded in |ψg (T )i. The cruicial question is how to estimate the appropriate time T . 3.3.1 MINIMUM SPECTRAL GAP Adiabatic quantum evolution of Hamiltonian can be generally expressed as H(t) = [1 − s(t)]Hinit + s(t)HP , with s(t) changing from 0 to 1. The performance of AQC is determined by the minimal gap gm = min (E1 (s) − E0 (s)). 0≤s≤1 The adiabatic theorem imposes the minimum time it takes for the switching from Hinit to HP to be adiabatic. This time can be thought of as the algorithm complexity! If H(s) has an exponentially small minimum gap (with respect to the number of qubits used in computation) then the corresponding algorithm is inefficient, whereas minimum gap which scales inverse polynomially gives an efficient quantum adiabatic algorithm whose running time is also polynomial. 10 3.3.2 LOCAL VS. GLOBAL EVOLUTION In the global adiabatic evolution scheme, s is changed uniformly with time (ṡ = const.) and the compu−2 tation time scales as τglobal ∝ gm . On the other hand, in the local adiabatic scheme s in a non-linear −1 function of time chosen in such a way to optimize the computation time. 24 In this case τlocal ∝ gm ! Global evolution After evolution under H(s) for a time T , the system is found in the ground state of HP with probability (1 − 2 )2 , provided the evolution rate satisfies |h dH dt i1,0 | ≤ , 2 gmin dH dH = E1 ; t| |E0 ; t , 1,0 dt dt (1) where 1. The above formula (Eq. (1)) follows directly from adiabatic theorem by applying firstorder perturbation theory on a two-level system of relevant states. In particular, Eq. (1) implies that the minimum gap cannot be smaller than a certain value if we require the state at time t to differ from instantaneous ground state by a negligible amount (a smaller gap implies a higher transition probability to the first excited state). As long as the gap is finite, for any finite and positive , the time of evolution can be finite. Local evolution Adiabatic evolution scheme can be improved, since we have applied Eq. (1) to the entire time interval T , hence imposing the limit on the evolution rate during the whole computation while this limit is only severe in the vicinity of gmin . Thus, by dividing T into infinitesimal time intervals dt and applying adiabaticity condition locally to each of these intervals, we can vary the evolution rate continuously in time and thereby speeding up the computation. New condition would be | g 2 (t) ds | ≤ dH , dt |h ds i1,0 | (2) for all times t. 25 The local and global schemes of AQC are also different in their response to decoherence. The global scheme is robust against environmental noise, on the contrary, local adiabatic scheme is very sensitive −2 to decoherence. It was shown that in order for the local scheme to change the scaling time from ∝ gm 26 −1 to ∝ gm , the computation time should be smaller than global dephasing time. Beside that, local adiabatic evolution requires knowledge of the spectrum which is not feasible for general Hamiltonians. 3.3.3 LANDAU-ZENER FORMULA Landau-Zener formula [15] is an analytic solution to the equations of motions governing the transition dynamics of a 2-level quantum mechanical system, with a time-dependent Hamiltonian varying such that the energy separation of the two states is a linear function of time. If the system starts in the lower energy eigenstate we are interested in the probability of finding the system in the upper energy eigenstate in infinite future (so called Landau-Zener transition). For infinitely slow variation of the energy difference, the adiabatic theorem tells us that no such transition will take place, as the system will always be in an instantaneous eigenstate of the Hamiltonian at some 24 This is done by spending the majority of time in the vicinity of anticrossing. instance, local evolution applied to adiabatic Grover’s search algorithm provides quadratic speed up over global √ evolution, enabling to solve the problem in total running time of order N (same as logic gate quantum computer)[18]. 26 Characteristic time over which the mutual phases between qubits are destroyed. This implies loss of information from the system. 25 For 11 time. At non-zero velocities, transitions (diabatic) occur with probability given by the Landau-Zener formula a2 /~ a2 ~ PD = e−2πΓ , Γ= ∂ = , dq ∂ | ∂t (E2 − E1 )| | ( ) ∂q (E2 − E1 )| dt } | {z vLZ where q is the perturbation variable (e.g. electric or magnetic field), E1,2 are the energies of the crossing states and vLZ denotes Landau-Zener velocity which is inversely proportional to time. The quantity a is the off-diagonal element of the two-level Hamiltonian coupling given eigenstates. Since computational time is always finite, there is a nonzero probability that system would undergo Landau-Zener transitions and end up in an exited state. Hence, Landau-Zener transitions are important in estimating the sufficient computation time. 4 WHAT KIND OF PROBLEMS CAN AQC SOLVE? AQC is not restricted only to optimization problems (unlike QA) - an universal AQC can run any quantum algorithm, and has been shown to be computationally equivalent to the gate model of quatnum computation, as both can be efficiently mapped into each other [16]. Quantum adiabatic algorithms have been aplied to solve various optimization problems, for instance finding cliques 27 in random graphs [17]. There is no know classical algorithm that finds the largest clique in a random graph with high probability and runs in polynomial time. In these algorithms, the condition for adiabaticity is fulfilled globaly by using only the minimum energy gap between ground and first exited state to determine the computation time. This method (global evolution) is not efficient in some cases, such as adiabatic Grover’s search algorithm [18] and adiabatic Deutsch-Jozsa algorithm [19] as they result in a complexity τglobal = O(N ) (which is complexity of classical algorithms). However these algorithms can be improved by application of local adiabatic √ evolution yielding an optimal performance of a quantum algorithm, τlocal = O( N ). On the other hand, the universal AQC can provide solution to a problem in polynomial time if the same problem can be solved in polynomial time using logic gate quantum computer. Evidently, the polynomial advantage does not depend on the local evolution (instead it only provides a quadratic enhancement). 4.1 RECENT DEVELOPEMENT An important question is what kind of problems can benefit from AQC without requiring local adiabatic evolution and therefore phase coherence? Using a perturbative approach to estimate the gap size of adiabatic quantum optimization it has been found that the gap is inversely proportional to the square root of the number of states that have energies close to global minimum, which means if the number of low energy local minima becomes exponentially large, then the gap will be exponentially small. In such cases, only a local adiabatic evolution scheme can provide advantage over classical computation. Local AQC however requires phase coherence during the evolution and knowledge of the energy spectrum, which limits its practicality [20]. These problems, although unsuitable for AQC, could still be suitable for heuristic algorithm (such is quantum annealing) if approximate solutions are acceptable, because the chance of finding a solution within the acceptance range will be large. Equally important question is whether the interactions between the computer and its environment can spoil the computation. It is clear that AQC has fundamental advantages over the gate model in 27 A clique in an undirected graph is a subset of its vertices such that every two vertices are connected by an edge. 12 regards to robustness against decoherence, however there does not yet exist an equivalent of the threshold theorem [5] that describes under what conditions AQC coupled to an environment will succeed [21]. In an isolated system with no decoherence the limitation is due to the usual Landau-Zener tunneling at the anticrossing. Probability to leave out of the ground state is given by the a adiabatic theorem. The main assumption here is that there exist a well-defined energy gap between the two lowest energy states. In reality, the energy levels of qubit register are broadened by the coupling to an environment. Figure 5: Broadening of the energy levels of a closed system (a) due to coupling to the environment made of a single two-state system (b) or infinitely many degrees of freedom with a continuous energy spectrum (c). In latter case the anticrossing turns into a continuous transition region [22]. Since the broadening W typically increases with the number of qubits (Fig. 5), while the minimum gap gm decreases, the realistic large-scale system will eventually fall in the (incoherent) regime W gm [22]. 5 PRACTICAL IMPLEMENTATION OF ADIABATIC QUANTUM COMPUTER First experimental implementation of Shor’s algorithm was demonstrated by Vandersypen et. al. [23] in 2001 using nuclear spins to find the prime factors of number 15. More recent experiments by Lu et. al. [24] and Lanyon et. al. [25] used photons as qubits and found the same factors. In 2005, Mitra et. al demonstrated the experimental implementations of local adiabatic evolution algorithms (Grover’s search and Deutsch-Jozsa algorithm) on a 2-qubit quantum information processor using NMR [26, 27]. Chuang et. al. [28] have demonstrated the implementation of a quantum adiabatic algorithm by solving MAXCUT 28 problem on a 3-qubit system by NMR. Note that in actual implementation, the Hamiltonian of the system is discretized in order to recast adiabatic evolution in terms of unitary operators, U= M Y m=0 Um , Um = exp (−i[(1 − m m )Hinit + HP ]∆t), M M ∆t = T /(M + 1). Discretizing a continuous Hamiltonian is straightforward process and changes the total run time T 28 One wants a subset S of vertex set such that the number of edges between S and complementary subset is as large as possible. 13 of the adiabatic evolution only polynomially. The required adiabatic limit is achieved when both T and number of discrete steps M approach infinity. 5.1 D-WAVE SYSTEMS (The Quantum Computing Company) D-Wave’s core focus is the developement of superconducting processors capable of running adiabatic quantum algorithms for solving quadratic unconstrained binary optimization problems (NP-hard optimization problem) 29 . Many important scientific and commercial problems require the solution of QUBO. D-Wave processors actually perform quantum annealing. Combinatorial optimization is represented by a disordered Ising spin Hamiltonian, e.g. H0 (t) = X hi Siz + i=1 N X Jij Siz Sjz + i,j X ∆i (t)Siy i Example is taken from a Hydra processor manufactured by D-Wave. Si are representing Pauli matrices, hi is the local bias on qubit i, Jij is the coupling strength between qubits i and j and ∆i (t) tunneling matrix element. A problem instance is encoded in the h and J values. The traverse term is used to control the quantum annealing schedule [29]. Many artificial intelligence problems can be mapped to NP-hard optimization problems, particulary QUBO is found to be very useful in pattern matching, common in machine learning applications [30]. D-Wave processors are fabricated using superconducting metals instead of semiconductors and are operated at ultra-low temperatures. A circuit consisting of a network of coupled compound Josephson junction rf-SQUID flux qubits has been used to impelement an adiabatic quantum optimization algorithm [31]. Flux qubit Flux qubits (also known as persistent current qubits, are micro-metre sized loops of superconducting metal interrupted by a number of Josephson junctions. The junction parameters are engineered during fabrication so that a persistent current will flow continuously when an external flux is applied. The computational basis states of the qubit are defined by the circulating currents which can flow either clockwise or counter-clockwise. These currents screen the applied flux limiting it to multiples of the flux quantum and give the qubit its name. When the applied flux through the loop area is close to a half integer number of flux quanta the two energy levels corresponding to the two directions of circulating current are brought close together and the loop may be operated as a qubit. Computational operations are performed by pulsing the qubit with microwave frequency radiation which has an energy comparable to that of the gap between the energy of the two basis states. 29 QUBO is given by the formula E(X1 , . . . , XN ) = PN i≤j Qij Xi Xj , Xi ∈ {0, 1} 14 Figure 6: Large loop interrupted by two Josephson junctions (the SQUID) merged with the smaller loop on the right side comprising three in-line Josephson junctions (the flux qubit). Arrows indicate the direction of the persistent current for each qubit state and the corresponding measured Rabi oscillations (cyclic behaviour of a two-state quantum system in the presence of an oscillatory driving field) are shown below. Image is taken from qsd.magnet.fsu.edu. Conclusions We have seen that the efficiency of AQC approach is fundamentally limited by the small spectral gaps between ground and exited states. It was shown that these gaps can become exponentially small under specific conditions, such as bad choice of initial Hamiltonian [32] or specifically designed hard instances. As it unfortunately seems, exponentially small gaps appear close to the end of the adiabatic algorithm for large random instances of NPC problems, which indicates the failure of the adiabatic quantum optimization (the sistem gets trapped in one of the numerous local minima) [33, 36]. However it is important to point out that we are still lacking the rigorous analytical result characterizing the performance of AQC on random instances of NPC problems. Anyway, by assuming worst case scenario AQC could still be found more efficient in comparisson to classical algorithms on average case. References [1] Deutsch D.: Quantum theory, the Church-Turing principle and the universal quantum computer Proceedings of the Royal Society of London A 400, pp. 97-117 (1985) [2] Petek A.: Kvantna logična vrata, http://mafija.fmf.uni-lj.si/seminar/seminar.php, seminar (2008) [3] Gregorič M.: Kvantni računalniki, http://mafija.fmf.uni-lj.si/seminar/seminar.php, seminar (2007) [4] List of qubit prepresentations: http://en.wikipedia.org/wiki/Qubit, (2010) [5] Nielsen M.A., Chuang I.L.: Quantum computation & quantum information, Cambridge University Press (2000) [6] Raussendorf R., Briegel H.J: A One-Way Quantum Computer, Phys. Rev. Lett. 86 (2001) [7] Raussendorf R., Harrington J., Goyal K.: A fault-tolerant one-way quantum computer, Annals of Physics 321 (2006) [8] Quantum Dot Cellular Automata: automata (19.12.2009) http://en.wikipedia.org/wiki/Quantum_dot_cellular_ 15 [9] Cellular Automata: http://en.wikipedia.org/wiki/Cellular_automata (19.12.2009) [10] Braid theory: http://en.wikipedia.org/wiki/Braid_theory (19.12.2009) [11] Topological Quantum Computer: computer (19.12.2009) http://en.wikipedia.org/wiki/Topological_quantum_ [12] Goldman V.J., Camino F.E., Zhou W.: Realization of a Lauhlin Quasiparticle Interferometer: Observation of Fractional Statistics, Phys. Rev. Lett. B 72 (2005) [13] List I.: Kvantni topološki računalniki, http://mafija.fmf.uni-lj.si/seminar/seminar.php, seminar (2009) [14] Quantum annealing: http://en.wikipedia.org/wiki/Quantum_annealing, (2010) [15] Landau-Zener formula: http://en.wikipedia.org/wiki/Landau-Zener_formula (20.12.2009) [16] Aharonov D., van Dam W., Kempe J., Landau Z., Lyold S., Regev O.: Adiabatic Quantum Computation is Equivalent to Standard Quantum Computation, SIAM Journal of Computing, Vol. 37, Issue 1 (2007) [17] Childs A.M., Farhi E., Goldstone J., Gutmann S.: Finding cliques by quantum adiabatic evolution, Quantum Information and Computation 2, 181 (2002) [18] Roland J., Cerf J. N.: Quantum Search by Local Adiabatic Evolution, Phys. Rev. A 65 (2002) [19] Das S., Kobes R., Kunstatter G.: Adiabatic Quantum Computation and Deutsch’s Algorithm, Phys. Rev. A65 (2002) [20] Amin M. H. S.: Effect of Local Minima od Adiabatic Quantum Optomization, Phys. Rev. Lett. 100 (2008) [21] Johansson J., Amin M.H.S., Berkley A.J., Bunyk P., Choi V., Harris R., Johnson M.W., Lanting T.M., Lloyd S., Rose G.: Landau-Zener Transitions in an Adiabatic Quantum Computer, arXiv:0807.0797v1 (2008) [22] Amin M.H.S., Averin D.V., Nesteroff J.A.: Decoherence in Adiabatic Quantum Computation, arXiv:0708.0384v3 (2009) [23] Vandersypen M.K.L, Steffen M., Breyta G., Yannoni C.S., Sherwood M.H., Chuang I.L.: Experimental realization of Shor’s quantum factoring algorithm using nuclear magnetic resonance, Nature 414 (2001) [24] Lu C.Y., Browne D.E., Yang T., Pan J.W.: Demonstration of Shor’s quantum factoring algorithm using photonic qubits, Phys. Rev. Lett. 99 (2007) [25] Lanyon B.P, Weinhold T.J., Langford N.K., Barbieri M., James D.F.V., Gilchrist A., White A.G.: Experimental demonstration of Shor’s algorithm with quantum entanglement, Phys. Rev. Lett. 99 (2007) [26] Mitra A., Ghosh A., Das R., Patel A. Kumar A.: Experimental implementation of local adiabatic evolution algorithms by an NMR quantum information processor, arXiv:quant-ph/0503060v2 (2005) [27] Tulsi A., Mitra A., Kumar A.: Experimental NMR implementation of a robust quantum search algorithm, arXiv:0912.4071v1 (2009) 16 [28] Chuang I.L., Steffen M., van Dam W., Hogg T., Breyta G.: Experimental implementation of an adiabatic quantum optimization algorithm, Phys. Rev. Lett. 90 (2003) [29] Rose G., Macready W.G.: An Introduction to Quantum Annealing, D-Wave Systems (2007) [30] Neven H., Rose G., Macready W.G.: Image recognition with an adiabatic quantum computer I. Mapping to quadratic unconstrained binary optimization, arXiv:0804.4457v1 (2008) [31] Harris R., Berkley A.J., Johansson J. et.al.: Implementation of a Quantum Annealing Algorithm Using a Superconducting Circuit [32] Žnidarič M., Horvat M.: Exponential complexity of an adiabatic algorithm for an NP-complete problem [33] Altschuler B., Krovi H., Roland J.: Anderson localization casts clouds over adiabatic quantum optimization, arXiv:0912.0746v1 (2009) [34] Farhi E., Goldstone J., Gutmann S., Sipser M.: Quantum Computation by Adiabatic Evolution, arXiv:quant-ph/0001106v1 (2000) [35] Farhi E., Goldstone J., Gutmann S., Lapan J., Lundgren A., Preda D. A Quantum Adiabatic Evolution Algorithm Applied to Random Instances of an NP-Complete Problem, arXiv:quantph/0104129v1 (2001) [36] Altschuler B., Krovi H., Roland J.: Anderson localization cast clouds over adiabatic quantum optimization, arXiv:quant-ph/0912.0746v1 (2009) [37] Farhi E., Goldstone J., Gosset D., Gutmann S., Meyer B. H., Shor P.: Quantum Adiabatic Algorithms, Small Gaps, and Different Paths, arXiv:0909.4766v1 [quant-ph] (2009) Other internet sources (2010): http://en.wikipedia.org/wiki/Adiabatic_quantum_computation http://en.wikipedia.org/wiki/Quantum_computer http://en.wikipedia.org/wiki/Quantum_decoherence http://en.wikipedia.org/wiki/Adiabatic_theorem http://en.wikipedia.org/wiki/One-way_quantum_computer http://en.wikipedia.org/wiki/Flux_qubit http://info.phys.unm.edu/~alandahl/iqiwiki/index.php/Cluster_State_Quantum_ Computing 17