+ All Categories
Home > Documents > Route Finding: A Quantum [Non] Algorithm Jason Clemons EECS 598 November 7, 2001.

Route Finding: A Quantum [Non] Algorithm Jason Clemons EECS 598 November 7, 2001.

Date post: 21-Dec-2015
Category:
View: 215 times
Download: 1 times
Share this document with a friend
37
Route Finding: A Quantum [Non] Algorithm Jason Clemons EECS 598 November 7, 2001
Transcript

Route Finding: A Quantum [Non] Algorithm

Jason Clemons

EECS 598

November 7, 2001

The Paper

Narayanan, A., Wallace, J. A Quantum Algorithm for Route Finding. Proceedings of the 15th European Meeting on Cybernetics and Systems Research (EMCSR 2000), Vienna, Austria, 25-28 April 2000, Vol. 1, pp 140-143.

Outline for the day

Introduction to GraphsReview of basic graphsReview of representation

The QAND

The Basic Algorithm

Interesting Findings

Final Thoughts and Questions

Graphs

Common representation in CS

A

D

BC

Graphs

TerminologyEdges – connect two nodesNode – Basic state or representation there

ofWeight – Cost associated with a node

Graphs

A few characteristics:WeightedDirectional

Problems from graphsGraph Coloring Hamiltonian Circuit FindingTraveling Salesman (Shortest Route)

Our Graph

Shortest Route Finding for:Weighted finite edgesFinite number of nodesUndirectedNo self connection edges

Our Graph (Example)

A

B

CS

2 5

1

4 2

Representation As Matrix

Adjacency Matrix:N x N Matrix where N is the number of

nodesMij = wi to j where w is the weight of the edge

from node I to node J and zero or zero if there is no edge

Representation as Matrix

S A B C

S 0 2 4 0

A 2 0 1 5

B 4 1 0 2

C 0 5 2 0

Our Graph as a TreeS

BA

CBS S A C

CA

A CS

BA BA

B CS

BA

2 4

4 7

12 97 4 5

6 8 10 12

7 6 10

11 8

8 5 61

The Quantum And

a QSUMAND b = a + b if (a > 0 and b >0)

0 if a=0 or b =0 where a, b R+ {0}

Example:2 QSUMAND 2 = 42 QSUMAND 0 = 0

The Matrix creation

Each Row is superposition of states representing the edgesExample:

From our Matrix before the row |S> is the vector a|000> + b|010> +c|100> + d|000>

An element can be identified using the row and column labelsExample: <A1|b1> = 1 (note: not an IP)

Quantum Registers

Similar to what is used by Shor

3 Registers Reg1 Holds the original adjacency matrix Reg2 Holds Matrix created when choose start

node Reg3 Interacts with Reg1 to tell us whether a route

exists.

During the Algorithm we alternate between Reg2 and Reg3 to hold info

Algorithm Step 1

Select the Starting node and perform the QSUMAND manipulation process (Perform QSUMAND between start node row and all other rows) to produce a new matrix M2

Algorithm Step 1

|S1>QSUMAND|S1> |0 2 4 0> QSUMAND |0 2 4 0> = |0 4 8 0>

|S1>QSUMAND|A1> |0 2 4 0> QSUMAND |2 0 1 5> = |0 0 5 0>

|S1>QSUMAND|B1> = |0 3 0 0>

|S1>QSUMAND|C1> = |0 7 6 0>

M2

|s2> |a2> |b2> |c2>

|S2> 0 4 8 0

|A2> 0 0 5 0

|B2> 0 3 0 0

|C2> 0 7 6 0

What M2 Says

M2 shows that from S to the row node is connected through column node with a total length of the entry <row|column>Example:

S to B to A is 5

We have a new level of the search tree!

What M2 Says

The column shows from the start point to that node and from that node to each of the rows.

Algorithm Step 2

Manipulate each non-zero column of the matrices constructed in previous step by performing QSUMAND with each non zero column and the entire row in matrix M1 that is associated with each element from the non zero column

Step 2 example

<S2|a2> QSUMAND |S1> |4> QSUMAND | 0 2 4 0> = |0 6 8 0>

<A2|a2> QSUMAND |A1> = |0 0 0 0>

<B2|a2> QSUMAND |B1> = |7 4 0 5>

<C2|a2> QSUMAND |C1> = |0 12 9 0>

M3

|s3> |a3> |b3> |c3>

|S3> 0 6 8 0

|A3> 0 0 0 0

|B3> 7 4 0 5

|C3> 0 12 9 0

M4

|s4> |a4> |b4> |c4>

|S4> 0 10 12 0

|A4> 7 0 6 10

|B4> 0 0 0 0

|C4> 0 11 8 0

M3 and M4

They are each a separate side of the search treeM3 is path from S down Node A

M4 is path from S down Nobe B

M3 and M4

Entry <Row|Column> is the distance from start to Row by path computed so far and then from row to columnExample:

<B3|s3> in M3 has the cumulative weight for S->A->B->S which is 7

<B4|s4> in M4 has the cumulative weight for S->B->B->S which is 0

M3 and M4

S

BA

CBS S A C

CA

A CS

BA BA

B CS

BA

2 4

4 7

12 97 4 5

6 8 10 12

7 6 10

11 8

8 5 6

M3M4

Step 3

Repeat step 2 adequate amount of times to reach bottom of tree and for each new matrix at each level

Step 4

Route exists if there is non zero value in a column

Thus measure columns and non zero values are path

Expanding the Adjacency Matrix Creation

Each row and column are a super position of quantum state vectors with N states where N is number of nodes

The N states either show a weight if there is an edge or show that there is no weight ie the n states represent a weight

Issues

Even if have weights, information on which node is connected to which is lost |s> = |s> + |a> + |b> + |c> looks okay but

leads to: |S1> = a|000> + b|010> + c|100> + d|000>

Issues

Author calls for n distinct values but opens up problem of dealing with states that have the same weight

Author agrees saying: “There are problems describing the

adjacency matrix as quantum state vectors”

Issues

Algorithm calls for acting on single state in a superposition of states ie acting solely on state |a> for the vector |s> = |s> + |a> + |b> + |c>

Alternate Representation

Add in qubits for the node in which this weight is for. One issue is make sure you have enough

qubits to represent the weightFurthermore the fact that the Qubits are no

longer in a single state will complicate the QSUMAND

Review

Graph Basics

Route Finding in general

QAND

The basic Algorithm

Issues with Algorithm

Fixes to be explored

Questions?

References

Narayanan, A., Wallace, J., A Quantum Algorithm for Route Finding. Proceedings of the 15th European Meeting on Cybernetics and Systems Research (EMCSR 2000), Vienna, Austria, 25-28 April 2000, Vol. 1, pp 140-143.

Penrose, R. Shadows of the Mind: A search for the missing science of consciousness. Oxford University Press 1994.

Shor, P., Algorithms for quantum computation: Discrete logarithms and factoring 1994.

Follow Up

I need a drink after all this.


Recommended