Quantum Algorithms for the Moving-Target Traveling Salesperson Problem

Download Report

Transcript Quantum Algorithms for the Moving-Target Traveling Salesperson Problem

Quantum Algorithms for
Moving-Target TSP
1
Two Slit Experiment
Bullets
2
Two Slit Experiment
Sound Waves
3
Two Slit Experiment
Electrons
4
Two Slit Experiment
Observing Electrons
5
Basic Quantum Computation
• Qubit - can be 1, 0 or both 1 and 0
• |x> - number in Quantum Computer
• Superposition of states:
2 N 1
2 N 1
a
i 0
i
si
Where:
a
i 0
i
2
1
6
Examples
1
1
0 
1
2
2
1
1
1
1
00  01  10  11
2
2
2
2
7
Representation
• n qubits: 2nx1 matrix represents the state:
– |0> would be represented by
1 
0 
 
– |1> would be represented by
0 
1 
 
– Equal superposition would be





1 
2
1 
2 
8
Changing States
• Unitary transformations change states
• Unitary matrix:
– conjugate transpose = inverse
A A
T
1
9
Example
Hadamard Transform





1 
2
 1 
2 
1
2
1
2





1
2
1
2





1
2
1
2
1 
2
 1 
2 
1 
2
 1 
2 
1 
0  
 
1 0
 

0 1 





1 
2

1 
2 
10
Example: CNot Gate
Not Gate:
0 1   a 
1 0 b 

 
1
CNot Gate: 
0

0

0

0 0 0  a 



1 0 0  b 
0 0 1  c 
 
0 1 0  d 
b 
a 
 

a 
b 
 
d 
 
c 
 00 
 
 01 
 10 
 
 11 
 
11
Visual Representation
H
00

1
1
00 
11
2
2
1
1
00 
10
2
2


1
1
10 
01
2
2
12
Grover’s Search Algorithm
• Search a phone book for a specific number
without rearranging the numbers.
• Idea: magnify amplitude of the “choosen” number:
– Flip the amplitude of the selected item and
rotate all amplitudes around the average
– Repeat this until the selected item’s probability
of being read is greater than 1/2
13
Graphical Representation
Original Amplitudes
Average of all Amplitudes
Negate Amplitude
Flip all Amplitudes around Avg
14
Time Complexity
• Normal search requires N/2 steps
• Grover’s Algorithm takes O N  steps
15
Traveling Salesperson Problem
a
4
6
e
11
12
b
5
2
3
8
d
10
c
16
Moving-Target TSP
Origin
17
Moving-Target TSP
2
3
Origin
1
4
18
Moving Target TSP is Intractable
• NP-Hard
– Classical TSP is NP-Complete
– Classical TSP reduces to Moving-Target TSP
a
(V=0)
4
6
e
11
12
(V=0)
b
(V=0)
5
2
3
8
d
(V=0)
10
c
(V=0)
19
NP-Complete
• Contained in NP:
1. Decision version: $ path with time < T?
• Non-deterministically travel all paths. If one exists
with time < T, return TRUE. Else, return FALSE
2. Optimization version: what is min-time path?
• Upper-bound T with initial random path. Then,
binary search the range by testing T/2, T/4, etc. to
find optimal the minimum- time path
20
Quantum Computing Solution
• Step 1 - Traverse every possible path
• Step 2 - Search through paths superposition
to find a shortest path
21
Superposition for
Hamiltonian Paths
• T. Rudolph
– superposition of cubic bipartite graph in linear time
• Cubic - all nodes have degree 3
• Bipartite
– nodes are partitioned into two groups
– each node is only adjacent to nodes in other group
22
Example
1
2
3
4
1000 1000 0000 0000 0000
1000 1
1100 1 2  1010 1 3
0100 1 2 1  1101 1 2 4  0010 1 3 1  1011 1 3 4
0000 1 2 1 2  0110 1 2 1 3  1001 1 2 4 2  1111 1 2 4 3 
0110 1 3 1 2  0000 1 3 1 3  1111 1 3 4 2  1001 1 3 4 3
23
Potential Problems
• Problem 1:
– Extract the Hamiltonian paths
• Problem 2:
– Find cycles, not paths
• Problem 3:
– Only works for cubic graphs
24
Solution to Problem 1
• How to extract only paths containing all 1’s
in first register?
• Solution: Use Grover’s Algorithm!
25
Solution to Problem 2
• Use black box for Hamiltonian paths to
solve for Hamiltonian cycles?
• Solution:
26
Solution to Problem 3
• Problem 3: non-cubic graphs
• Solution:
– Make all nodes have the same degree
– Degree must be a power of 2
– Algorithm when all nodes have degree 2i
27
Step 1
Give all nodes same degree of 2x
• Graph G has n nodes
• Find node with largest degree D
• Find x where
2 x 1  D  2 x
Groups of x nodes
n+x-n(mod x)
28
Step 1 (continued)
• Go through the graph G node by node, and
go through the new nodes set by set:
G
29
Algorithm
• Quantum transition for nodes with 2x degree:
Control bit
H
H
1 0000 1
1 1 0000 1 1 1000
0010  0100  1000
 1101
2
4
4
4
4 2
1
1
1
1
0000

0100

1000

1 4
1 4
1 4
1 4 1100
0010  0100  1000  1001
4
4
4
4
1
1
1
1
0010  0100  1000  1100
1 4
1 4
1 4
1 4
0010  0100  1000  0001
4 1
4 1
4 1
4 1
0010  0100  1000  1101
4
4
4
4
30
Observations
• Algorithm works for all graphs
• May double # of nodes
• Takes O(n) steps
• Search first register for all 1’s
• Added nodes do not affect solution
31
Extension to TSP
• Need another register:
– Large enough to hold longest path
• At each step, add edge weight into register
32
Iteration
• All paths of length n & their weights
• Run algorithm for Hamiltonian cycles
– Look for all 1’s in the first register
• Superposition of all Hamiltonian cycles
• Grover’s algorithm on sum register finds min
33
Extension to Moving-Target TSP
• Moving Target TSP
– Each node has a velocity
– Find the minimum-weight round trip
v2x
v1y
v2y
v1x
34
Moving-Target TSP Solution
• Add a time register
• Track the total time elapsed so far
• Each step: calculate time to reach next node
v1x t  nx  v x t  a x
v1y t  n y  v y t  a y
v x  v y  MaxV 2
2
2
v1y
MaxV
Unknowns :
vx
vy
t
a , a 
x
v1x
n , n 
x
y
y
35
Determining the Optimal Path
• Add time to reach next node to total sum
• Find the minimum, similar to TSP
• Added time complexity is linear
36
Summary
• Extended Hamiltonian path algorithm for
cubic bipartite graphs [Rudolph’s]
• For TSP and Moving-Target TSP, paths
superposition can be obtained in linear time
• Grover’s search algorithm works in time
SQRT of # of objects in superposition
• 2n different paths: total time is O(2n/2 )
37
Future Work
• Faster algorithm for (Moving-Target) TSP
• Improve Grover’s search algorithm
• P=NP for quantum computation?
38
j
i
A
a
b
c
j+1
a
b
c
Circuit
V
• a,b,c are the nodes adjacent to I
• A is the register keeping track of which nodes
have been traversed
39
Finding the Minimum
•
•
•
•
Measure the lengths register (M)
Create superposition again
Now search for all paths < M
On average, do this log(k) times
– k is the number of items in the superposition
40
Bullets
Electrons
Sound Waves
Observed Electrons
41