Wie funktioniert der Grover-Diffusionsoperator und warum ist er optimal?


15

In dieser Antwort wird der Algorithmus von Grover erklärt. Die Erklärung weist darauf hin, dass der Algorithmus stark vom Grover-Diffusionsoperator abhängt , jedoch keine Details zum Innenleben dieses Operators enthält.

Kurz gesagt, der Grover-Diffusionsoperator erzeugt eine 'Inversion über den Mittelwert', um iterativ die winzigen Unterschiede in früheren Schritten so groß zu machen, dass sie messbar sind.

Die Fragen sind jetzt:

  1. Wie erreicht der Grover-Diffusionsoperator dies?
  2. Warum ist das resultierende Ö(n)in der Gesamtzeit, um eine ungeordnete Datenbank optimal zu durchsuchen?

1
Nur ein Kommentar zur zweiten Frage. Es gibt Arbeiten, die zeigen, dass die Spur des Zustands in Grovers Algorithmus genau der Geodät folgt, die den Anfangszustand des Algorithmus und den Zielzustand verbindet. Es ist also optimal.
30.

Antworten:


5

Da es sich bei der ursprünglichen Frage um eine Laienbeschreibung handelte, biete ich eine etwas andere Lösung an, die auf der Grundlage einer kontinuierlichen zeitlichen Entwicklung möglicherweise leichter zu verstehen ist (abhängig vom Hintergrund). (Ich behaupte jedoch nicht, dass es für einen Laien geeignet ist.)

Wir gehen von einem Anfangszustand , die eine gleichmäßige Überlagerung aller Staaten ist, und wir streben einen Zustand finden| xdie als die richtige Antwort erkannt werden kann (vorausgesetztes ist genau ein solcher Zustand, obwohl dies verallgemeinert werden kann). Dazu entwickeln wir uns im Laufe der Zeit unter der Wirkung eines Hamiltonschen H=| xx| +| & psgr;& psgr;| . Das wirklich schöne Merkmal von Grovers Suche ist, dass wir zu diesem Zeitpunkt die Mathematik auf einen Unterraum von nur zwei Zuständen reduzieren können

|ψ=12ny{0,1}n|y
|x
H=|xx|+|ψψ|.
, anstatt alle erfordern 2 n . Es ist einfacher zu beschreiben, ob wir aus diesen Zuständen eine orthonormale Basis bilden, { | x , | & psgr; } wo | & psgr; = 1{|x,|ψ}2n{|x,|ψ} Auf dieser Basis kann die Zeitentwicklunge-iHt| & psgr;kann geschrieben werden e-it(I+2-nZ+
|ψ=12n1y{0,1}n:yx|y.
eiHt|ψ wobeiXundZdie Standard-Pauli-Matrizen sind. Dies kann umgeschrieben werden als e-it(Icos(t
e-icht(ich+2-nZ+2n-12nX)(12n1-12n),
XZ Wenn wir uns also für eine Zeit entwickeln, istt=π
eit(Icos(t2n/2)i12n/2sin(t2n/2)(Z+X2n1))(12n112n).
t=π22n/2
12n/2(Z+X2n1)(12n112n)=(12n2n12n)+(112n2n12n)=(10).
In other words, with probability 1, we get the state |x that we were searching for. The usual circuit-based description of Grover's search is really just this continuous time evolution broken into discrete steps, with the slight disadvantage that you usually can't get exactly probability 1 for your outcome, just very close to it.

One caveat is the following: you could redefine H~=5H, and evolve using H~ and the evolution time would be 5 times shorter. If you wanted to be really radical, replace the 5 with 2n/2, and Grover's search runs in constant time! But you're not allowed to do this arbitrarily. Any given experiment would have a fixed maximum coupling strength (i.e. a fixed multiplier). So, different experiments have different running times, but their scaling is the same, 2n/2. It's just like saying that the gate cost in the circuit model is constant, rather than assuming that if we use a circuit of depth k each gate can be made to run in time 1/k.

The optimality proof essentially involves showing that if you made detection of one possible marked state |x any quicker, it would make detection of a different marked state, |y, slower. Since the algorithm should work equally well whichever state is marked, this solution is the best one.


4

One way of defining the diffusion operator is1 D=HnU0Hn, where U0 is the phase oracle

U0|0n=|0n,U0|x=|xfor|x|0n.

This shows that U0 can also be written as U0=I2|0n0n|, giving

D=2|++|I,
where |+=2n/2(|0+|1)n.

Writing a state |ψ=α|++β|+ where |+ is orthogonal to |+ (i.e. ++=0) gives that D|ψ=α|+β|+.

This gives2 that the diffusion operator is a reflection about |+

As the other part of Grover's algorithm is also a reflection, these combine to rotate the current state closer to the 'searched-for' value x0. This angle decreases linearly with the number of rotations (until it overshoots the searched-for value), giving that the probability of correctly measuring the correct value increases quadratically.

Bennet et. al. showed that this is optimal. By taking a classical solution to an NP-problem, Grover's algorithm can be used to quadratically speed this up. However, taking a language LA={y:xA(x)=y} for a length preserving function A (here, an oracle), any bounded-error oracle based quantum turing machine cannot accept this language in a time T(n)=o(2n/2).

This is achieved by taking a set of oracles where |1n has no inverse (so is not contained in the language). However, this is contained in some new language LAy by definition. The difference in probabilities of a machine accepting LA and a different machine accepting LAy in time T(n) is then less than 1/3 and so neither language is accepted and Grover's algorithm is indeed asymptotically optimal.3

Zalka later showed that Grover's algorithm is exactly optimal.


1 In Grover's algorithm, minus signs can be moved round, so where the minus sign is, is somewhat arbitrary and doesn't necessarily have to be in the definition of the diffusion operator

2 alternatively, defining the diffusion operator without the minus sign gives a reflection about |+

3 Defining the machine using the oracle A as MA and the machine using oracle Ay as MAy, this is a due to the fact that there is a set S of bit strings, where the states of MA and MAy at a time t are ϵ-close4, with a cardinality <2T2/ϵ2. Each oracle where MA correctly decides if |1n is in LA can be mapped to 2nCard(S) oracles where MA fails to correctly decide if |1n is in that oracle's language. However, it must give one of the other 2n1 potential answers and so if T(n)=o(2n/2), the machine is unable to determine membership of LA.

4 Using the Euclidean distance, twice the trace distance

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.