# Quantum walks: Definition and applications

## Presentation on theme: "Quantum walks: Definition and applications"— Presentation transcript:

Quantum walks: Definition and applications
Ashley Montanaro

Talk structure Introduction to quantum walks Defining a quantum walk
...on the line ...on undirected graphs ...on directed graphs Applications of quantum walks NEW

What are quantum walks? A random walk is the simulation of the random movement of a particle around a graph A quantum walk is the same – but with a quantum particle not the same as running a normal random walk algorithm on a quantum computer Random walks are a useful model for developing classical algorithms; quantum walks provide a new way of developing quantum algorithms which is particularly important because producing new quantum algorithms is so hard

Physical intuition behind a classical random walk on a graph
Time Probability at vertex 1 2 3 4 5 6 5 2 4 6 1 1 3 After 3 steps we are in position “5” or “6” with equal probability.

Physical intuition behind a quantum walk on a graph
Light detectors Mirror 5 2 6 4 1 Half-silvered mirror 3

Physical intuition behind a quantum walk on a graph
Time Amplitude at point 1 2 3 4 5 6 5 2 6 4 1 1 3 After 3 steps we are guaranteed to be in detector “6” – this is caused by quantum interference.

Mathematical definition of a random walk
Express a classical random walk as a matrix W of transition probabilities where the entries in each column sum to 1 Express a position as a column vector v Performing a step of the walk corresponds to pre-multiplying v by W Performing n steps of the walk corresponds to pre-multiplying v by Wn 2 4 1 3 =

Mathematical definition of a quantum walk
Very similar, but: probabilities combine differently (sum of the amplitudes squared must be 1) the transition matrix must be unitary (ie. send unit vectors to unit vectors) This will not in general be the case, so we may need to modify the structure of the graph – for example, by adding a coin space This can be considered as a quantum analogue of flipping a coin to decide which direction to go at each step of the walk 2 4 1 3 = (e.g.)

Classical random walk on the line
Consider a walk on the following simple infinite graph: Versions of this walk are useful models for many random processes When the walker has equal probability to move left or right, it’s well-known that the average distance from the start position after time n is sqrt(n) But we can define a quantum walk on the same graph with different behaviour: an average distance of n

Quantum walk on the line
We have two quantum registers: a coin register holding |L or |R, and a position register |p Our walk operation is a coin flip followed by a shift coin flip: send |L  |L + i|R, |R  i|L + |R shift: send |L|p  |L|p-1 |R|p  |R|p+1 These are both unitary operations, and hence their combination is too so, together, they provide a way of defining a quantum walk on the line there are other ways – e.g. the continuous-time formulation of quantum walks

A few iterations of the walk on the line
start  |R|0 coin  (i|L + |R)|0 shift  i|L|-1 + |R|1 coin  (i|L - |R)|-1 + (i|L + |R)|1 shift  i|L|-2 - |R|0 + i|L|0 + |R|2 coin  (i|L - |R)|-2 + (i|L + |R)|2 shift  i|L|-3 - |R|-1 + i|L|1 + |R|3 Equal probability to be at |-3, |-1, |1 or |3 - whereas classical random walk favours |-1, |1

Classical vs. quantum walk on the line
Running a classical walk on the line results in a probability distribution like: position Whereas running this quantum walk for the same number of steps gives: The peaks and troughs in this graph are caused by quantum interference.

Quantum walks on undirected graphs
Consider a d-regular graph G (each vertex has d arcs leaving it) We can label each arc and choose between them using a d-dimensional “coin” A variety of coin operators can be used: we usually pick one to mix between all arcs equally As before, one step of the walk consists of a coin flip followed by a shift An irregular graph can be handled using a different coin for each vertex of a different degree or other methods...

Behaviour of quantum walks on undirected graphs
We can define quantum equivalents of the mixing time and hitting time of a walk The mixing time of a random walk is the time it takes to converge to a limiting distribution Quantum walks have quadratically faster mixing time for any undirected graph The hitting time is the time it takes to reach a given vertex On certain graphs, quantum walks have exponentially faster hitting time Open question: for which graphs is this true?

Quantum walks on directed graphs
NEW Quantum walks on directed graphs A quantum walk can be defined on any undirected graph, with the use of a suitable coin But it turns out that not all directed graphs support the idea of a quantum walk: only reversible ones do a reversible graph is a graph where, if you can get from a to b, you can get from b to a each component of such graphs is strongly connected compare the idea that quantum computers have to be reversible Quantum walks defined on irreversible graphs will not respect the structure of the graph: there will be some possibility to traverse arcs in the “wrong direction”

Reversible and irreversible graphs
NEW Reversible and irreversible graphs These graphs are reversible: These graphs are irreversible:

Implications for translation of classical algorithms
NEW Implications for translation of classical algorithms Many classical algorithms can be represented as a random walk on a directed graphs with sinks – the idea is to find a sink, which represents a solution to a problem e.g. Schöning’s random walk algorithm for SAT A quantum walk cannot be defined on these graphs; this suggests that there is no easy translation of these algorithms into a quantum walk form However, it is possible to produce a quantum walk which is “like” the original random walk in the sense that, after a long period of time, it has a high probability of ending up in a sink

Applications of quantum walks
Quantum network routing Kempe, 2002 Quantum walk search algorithm Shenvi, Kempe, Whaley, 2002 Element distinctness Ambainis, 2004 Applications of element distinctness Magniez, Santha, Szegedy, 2003 Buhrmann, Spalek, 2004

Quantum network routing
110 111 Consider a network whose topology is a d-dimensional hypercube We want to route a packet from one corner of the hypercube to the other (eg. from 000 to 111) Algorithm: perform ~d steps of a quantum walk. Then measure to see where the packet is. This has advantages over a classical routing algorithm: it’s noise resistant: deleting intermediate links will not affect the walk much intermediate nodes need minimal routing “hardware” 010 011 100 101 000 001

Quantum walk search algorithm
Consider the unstructured search problem: given a function f(x) = { 1 if x = a, 0 otherwise } find the “marked” element a, where 0  a  2n-1. Grover’s algorithm can solve this in O(2n/2) queries on a quantum computer, whereas a classical computer needs at least W(2n) queries Can we produce a quantum walk algorithm that requires the same (optimal) number of queries? this may be easier to implement, or provide a better model for searching a “real” database

Quantum walk search algorithm (2)
We perform a quantum walk on the hypercube of dimension n each vertex, labelled by an n-bit string, corresponds to a possible input to the oracle each vertex has n neighbours Our walk consists of a combination of a coin flip and a shift, as before Identify each of the n coin states with each neighbour of a vertex Use a “marking” coin operator When at an unmarked vertex, pick a coin state randomly When at the marked vertex, stay in the same coin state

Quantum walk search algorithm (3)
Start with a superposition over all vertices If we run the walk for O(2n/2) steps, can prove that there is a high probability it will “home in” on the marked vertex in fact, there’s a general result stating that “perturbed” walks like this will always find one of the marked elements We then simply measure the position and we’ve found the marked item

Element distinctness Problem: does a (multi-)set S of N elements contain any duplicate elements? Call reading an element from the set a query Clearly, classically we need N queries to answer the question with certainty It turns out that a quantum walk algorithm can solve the problem in O(N2/3) queries which has been proven to be optimal

Quantum walk algorithm for element distinctness
{1, 1, 2, 3} We use a quantum walk on a graph where the vertices are subsets of S containing either M or M + 1 elements for some M < N Two vertices are connected if they differ in exactly one element The graph on the right encodes the set {1, 1, 2, 3} for M = 2 11,12 11,12,2 11,2 11,12,3 11,3 12,2 11,2,3 12,3 12,2,3 2,3

Quantum walk algorithm for element distinctness (2)
Basic walk algorithm: start with some subset S’  S (where |S’| = M) check whether S’ contains any duplicates (needs O(M) queries) if not, change to a different subset S’’ that differs in exactly one element check S’’ for duplicates (needs 1 query) repeat steps 3 and 4 until a duplicate is found Because this is a quantum walk, we can start with a superposition of all M-subsets

Analysis of quantum walk
In total, we need (M + r) queries, where M is the number of elements in the initial subset r is the number of steps of the quantum walk It turns out that if we pick M = N2/3, then a solution can be found with high probability in r = N1/3 steps of the walk resulting in O(N2/3) queries in total it also turns out that the number of non-query operations required is small, so the query complexity is a good measure of the time complexity Note that this algorithm requires a significant amount of space – enough to store O(N2/3) elements

Applications of element distinctness
Using element distinctness as a subroutine, quantum walk algorithms have been developed to solve other problems: finding a triangle in a graph with n vertices in time O(n1.3) verifying matrix multiplication (testing if A*B = C for some n*n matrices A, B, C) in time O(n1.67) The algorithm has also been generalised to solve the problem of finding any subset that has a given property i.e.: find (a, b) such that (f(a), f(b))  P, where P is some property

Quantum walks can be defined on any undirected graph, and on reversible directed graphs. Quantum walks are a way to develop quantum algorithms that outperform their classical counterparts. Further reading (on “Quantum walks and their algorithmic applications”, A. Ambainis, quant-ph/ “Quantum random walks – an introductory overview”, J. Kempe, quant-ph/ “Quantum walks on directed graphs”, A. Montanaro, quant-ph/

Similar presentations