45
Itay Hen June 6 th , 2012 Advanced Machine Learning class– UCSC Itay Hen Advanced Machine Learning class UCSC June 6 th 2012 Adiabatic quantum computation – a tutorial for computer scientists Dept. of Physics, UCSC

Adiabatic Quantum Computation – a Tutorial for Computer Scientists

Embed Size (px)

DESCRIPTION

Adiabatic Quantum Computation – a Tutorial for Computer Scientists

Citation preview

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Itay Hen

    Advanced Machine Learning class

    UCSC

    June 6th 2012

    Adiabatic quantum computation

    a tutorial for computer scientists

    Dept. of Physics, UCSC

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    introduction I: what is a quantum computer?

    introduction II: motivation for adiabatic quantum computing

    adiabatic quantum computing

    simulating adiabatic quantum computers

    future of adiabatic computing

    [AQC and machine learning(?)]

    Outline

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a

    Quantum Computer?

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    both classical and quantum computers may be viewed as

    machines that perform computations on given inputs and produce

    outputs. Both inputs and outputs are strings of bits (0s and 1s).

    classical computers are based on manipulations of bits.

    at any given time the system is in a unique classical

    configuration (i.e., in a state that is a sequence of 0s and 1s).

    computer

    010011

    011

    input state output state computation

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    a classical algorithm (circuit) looks like this:

    at any given time the system is in a unique classical

    configuration (i.e., in a state that is a sequence of 0s and 1s).

    computer

    010011

    011

    input state output state computation

    0 1

    0 1

    1

    0 1

    0 1

    0

    1 1

    1 0

    1

    1 0

    0 1

    0

    input state output state computation

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    quantum computers on the other hand manipulate objects called

    quantum bits or qubits for short.

    010011

    011

    input state output state computation

    computer

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    quantum computers on the other hand manipulate objects called

    quantum bits or qubits for short.

    010011

    011

    input state output state computation

    computer

    what are qubits?

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What are qubits?

    a qubit is a generalization on the concept of bit.

    motivation / idea behind it: small particles, say electrons, obey

    different laws than big objects (such as, say, billiard balls).

    small particles obey the laws of Quantum Physics.

    big objects are classical entities they obey the laws of Classical

    Physics. (however, big objects are collections of small particles!)

    most notably: a quantum particle can be in a superposition of

    several classical configurations.

    classical world

    Im here Im there or

    quantum world

    Im here Im there and

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What are qubits?

    while a bit can be either in the a |0 state or a |1 state (this is

    Diracs | notation).

    a qubit can be in a superposition of these two states, e.g.,

    imagine |0 and a |1 as being two orthogonal basis vectors.

    while a classical bit is either of the two, a qubit can be an arbitrary

    (yet normalized) linear combination of the two.

    in order to access the information stored in a qubit one must

    perform a measurement that collapses the qubit. extremely non-

    intuitive. important: only 1 bit of information is stored in a qubit.

    | =1

    2|0 + |1

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What are qubits?

    take for example a system of 3 bits. Classically, we have 23 = 8

    possible classical configurations:

    the corresponding quantum state of a 3-qubit system would be:

    this is a (normalized) 8-component vector over the complex

    numbers (8 complex coefficients). | enumerates the 8 classical configurations listed above.

    |000 , |001 , |010 , |011 , |100 , |101 , |110 , |111 ,

    | =

    7

    =0

    |

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Encoding optimization problems suppose that we are given a function

    and are asked to find its minimum

    and the corresponding minimizing configuration.

    this is the same as having the diagonal matrix:

    and asking which is the smallest eigenvalue (minimum of f ) and

    corresponding eigenvector (minimizing configuration).

    here, the basis vectors correspond to | and the elements on

    the diagonal are the evaluation of f on them.

    : {0,1}3

    =

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Encoding optimization problems

    in matrix-form we can generalize classical optimization problems

    to quantum optimization problems by adding off-diagonal

    elements to the matrix.

    we still look for the smallest eigen-pair, i.e.,

    but problem now is much harder. (this is Diracs | notation).

    in quantum mechanics, the minimal (eigen)vector is called the

    ground state of the system and the corresponding minimal

    (eigen)value is called the ground state energy.

    also, the matrix F is called the Hamiltonian (usually denoted by H).

    quantum mechanics is just linear algebra in disguise.

    min|

    || = min

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    quantum computers manipulate quantum bits or qubits for short.

    a quantum algorithm (circuit) may look like this:

    010011

    011

    input state output state computation

    computer

    0 1

    0 1

    1

    0 1

    0 1

    0

    +

    0 1

    0 0

    1

    1 0

    0 1

    0

    input state output state computation

    1 1

    0 1

    0

    +

    1 1

    0 0

    1

    +

    1 1

    1 0

    1

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    What is a quantum computer?

    space of possible quantum states is huge.

    range of operations on qubits is huge.

    capabilities are greater (name dropping: superposition,

    entanglement, tunneling, interference). can solve problems faster.

    only problem with quantum computers: they do not exist!

    theory is very advanced but many technological unresolved

    challenges.

    010011

    011

    input state output state computation

    computer

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Motivation for adiabatic

    quantum computing

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Motivation

    in what ways quantum computers are more efficient than classical computers?

    what problems could be solved more efficiently on a quantum computer?

    these are two of the most basic and important questions in the

    field of quantum information/computation.

    clearly, a quantum computer is a generalization of a classical computer

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    best-known examples are:

    Shors algorithm for integer factorization. Solves the problem in

    polynomial time (exponential speedup).

    current quantum computers can factor all integers up to 21.

    Grover's algorithm is a quantum algorithm for searching an unsorted

    database with entries in 1/2 time (quadratic speedup).

    importance is huge (cryptanalysis, etc.).

    Motivation

    in what ways quantum computers are more efficient than classical computers?

    what problems could be solved more efficiently on a quantum computer?

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    people are considering hard satisfiability (SAT) and other

    optimization problems which are at least NP-complete.

    these are hard to solve classically; time needed is

    exponential in the input (exponential complexity).

    could a quantum computer solve these problems in an

    efficient manner? perhaps even in polynomial time?

    Motivation

    Adiabatic Quantum Computing is a general approach to solve a broad range

    of hard optimization problems using a quantum computer [Farhi et al.,2001]

    what other problems can quantum computers solve?

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Adiabatic

    quantum computation

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    adiabatic quantum computation is different that circuit-based computation (there are still other models of computation).

    adiabatic quantum computation is analog in nature (as opposed to 0/1 digital circuits).

    it is based on the fact that the state of a system will tend to reach a minimum configuration. this is the principle of least action.

    The nature of physical systems

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Analog classical optimization

    we are given a landscape f(x) for which we need to find the minimum configuration, i.e., the stable state of the ball.

    if energy landscape is simple:

    the ball will eventually end up at the bottom of the hill.

    x

    f

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Analog classical optimization

    we are given a landscape f(x) for which we need to find the minimum configuration, i.e., the stable state of the ball.

    if energy landscape is jagged:

    ball will eventually end up in a minimum but is likely to end up in a local minimum. this is no good.

    x

    f

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Analog classical optimization

    we are given a landscape f(x) for which we need to find the minimum configuration, i.e., the stable state of the ball.

    if energy landscape is jagged:

    ball will eventually end up in a minimum but is likely to end up in a local minimum. this is no good.

    probability of jumping over the barrier is exponentially small in the height of the barrier.

    ball is unlikely to end up in the true minimum.

    x

    f

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Analog quantum optimization

    we are given a landscape f(x) for which we need to find the minimum configuration, i.e., the stable state of the ball.

    if energy landscape is jagged:

    ball will eventually end up in a minimum but is likely to end up in a local minimum. this is no good.

    quantum mechanically, the ball can tunnel through thin but high barriers!

    sometimes more likely to end up in the true minimum.

    tunneling is a key feature of quantum mechanics.

    x

    f

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    The adiabatic theorem of QM

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    The adiabatic theorem of QM

    ??

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    rephrasing:

    if the ball is at the minimum (ground state) of some function (Hamiltonian), and

    the function is changes slowly enough,

    ball will stay close to the instantaneous global minimum throughout the evolution.

    here, initial function is easy to find the minimum of. final function is much harder.

    take advantage of adiabatic evolution to solve the problem!

    The adiabatic theorem of QM

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    real QM example: change the strength of a harmonic potential of a system in the ground state:

    The adiabatic theorem of QM

    (, ) 2

    harmonic potential

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    real QM example: change the strength of a harmonic potential of a system in the ground state:

    an abrupt change (a diabatic process):

    The adiabatic theorem of QM

    (, ) 2

    harmonic potential

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem of QM tells us 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 the Hamiltonian's spectrum.

    real QM example: change the strength of a harmonic potential of a system in the ground state:

    a gradual slow change (an adiabatic process): wave function can keep up with the change.

    The adiabatic theorem of QM

    harmonic potential

    (, ) 2

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    The quantum adiabatic algorithm (QAA)

    1. take a difficult (classical) optimization problem.

    4. vary the Hamiltonian slowly and smoothly from

    to until ground state of is reached.

    the mechanism proposed by Farhi et al., the QAA:

    2. encode its solution in the ground state of a quantum

    problem Hamiltonian .

    3. prepare the system in the ground state of another

    easily solvable driver Hamiltonian . , 0.

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    () = () + 1 ()

    is the problem Hamiltonian whose

    ground state encodes the solution of the optimization problem

    is an easily solvable driver Hamiltonian, which

    does not commute with

    the interpolating Hamiltonian is this:

    The quantum adiabatic algorithm (QAA)

    the parameter obeys 0 1, with 0 = 0 and = 1. also: 0 = and = .

    here, stands for time and is the running time, or complexity, of the algorithm.

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    the adiabatic theorem ensures that if the change in is made slowly enough, the system will stay close to the ground state of the instantaneous Hamiltonian throughout the evolution.

    one finally obtains a state close to the ground state of .

    measuring the state will give the solution of the original problem with high probability.

    the interpolating Hamiltonian is this:

    The quantum adiabatic algorithm (QAA)

    how fast can the process be?

    () = () + 1 ()

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Quantum phase transition bottleneck is likely to be something called a

    happens when the energy differenece between the ground state and the first excited state (i.e., the gap) is small.

    there, the probability to get off track is maximal.

    0 1 QPT = =

    gap

    1 a schematic picture of

    the gap to the first excited state as a function of the adiabatic parameter .

    Quantum Phase Transition

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Quantum phase transition

    1

    2

    Landau-Zener theory tells us that to stay in the ground state the running time needed is:

    exponentially closing gap (as a function of problem size N) exponentially long running time exponential complexity.

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Quantum phase transition

    1

    2

    system remains in its instantaneous ground state

    a two-level avoided crossing

    Landau-Zener theory tells us that to stay in the ground state the running time needed is:

    exponentially closing gap (as a function of problem size N) exponentially long running time exponential complexity.

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    most interesting unknown about QAA to date:

    The quantum adiabatic algorithm

    could the QAA solve in polynomial time hard (NP-complete) problems?

    for which hard problems is polynomial in ? or

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Simulating Adiabatic

    Quantum Computers

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    quantum computers are currently unavailable. how does one

    study quantum computers?

    quantum systems are huge matrices. sizes of matrices for n

    qubits: = 2.

    one method: diagonalization of the matrices. however, takes a

    lot of time and resources to do so. cant go beyond

    ~25 qubits.

    another method: Quantum Monte Carlo.

    Exact diagonalization

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Quantum Monte Carlo methods

    quantum Monte Carlo (QMC) is a generic name for classical

    algorithms designed to study quantum systems (in equilibrium)

    on a classical computer by simulating them.

    in quantum Monte Carlo, one only samples the exponential number

    of configurations, where configurations with less energy are given

    more weight and are sampled more often.

    this is usually a stochastic Markov process (a Markovian chain).

    there are statistical errors.

    not all quantum physical systems can be simulated (sign problem).

    quantum systems have an additional extra dimension (called

    imaginary time and is periodic). for example a 3D classical

    system is similar to 2D quantum systems (with notable exceptions).

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    main goal:

    study the dependence of the typical minimum gap

    on the size (number of bits) of the problem.

    this is because:

    polynomial dependence polynomial complexity!

    Method

    determine the complexity of the QAA for the various optimization problems

    1

    2

    min = min 0,1

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Future of adiabatic

    Quantum Computing

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Future of adiabatic QC

    so far, there is no clear-cut example for a problem that is

    solved efficiently using adiabatic quantum computation (still

    looking though).

    the first quantum adiabatic computer (quantum annealer)

    has been built. ~128 qubits. built by D-Wave (Vancouver).

    one piece has been sold to USC / Lockheed-Martin (~1M$).

    a strong candidate for future quantum computers.

    there are however a lot of technological challenges.

    people are looking for other possible uses for it.

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Adiabatic QC and Machine Learning

    one of many possible avenues of research is Machine

    Learning. people are starting to look into it.

    supervised and unsupervised machine learning. could work

    if problem can be cast in the form of an optimization problem.

    Hartmut Nevens blog: http://googleresearch.blogspot.com/2009/12/machine-

    learning-with-quantum.html#!/2009/12/machine-learning-with-

    quantum.html

  • Itay Hen June 6th, 2012 Advanced Machine Learning class UCSC

    Itay Hen

    Advanced Machine Learning class

    UCSC

    June 6th 2012

    Adiabatic quantum computation

    a tutorial for computer scientists

    Dept. of Physics, UCSC