Presentation is loading. Please wait.

Presentation is loading. Please wait.

Quantum Search Algorithms for Multiple Solution Problems EECS 598 Class Presentation Manoj Rajagopalan.

Similar presentations


Presentation on theme: "Quantum Search Algorithms for Multiple Solution Problems EECS 598 Class Presentation Manoj Rajagopalan."— Presentation transcript:

1 Quantum Search Algorithms for Multiple Solution Problems EECS 598 Class Presentation Manoj Rajagopalan

2 Outline 1.Recap of Grover’s algorithm for the unique solution case 2.Grover’s algorithm for multiple solutions: multiplicity known 3.Quantum search algorithm for multiple solutions: multiplicity unknown 4.Quantum counting to determine multiplicity

3 References 1.Quantum Computing and Quantum Information textbook 2.“A fast quantum mechanical algorithm for database search”, LK Grover, 1996 3.“Tight bounds on quantum searching”, M Boyer, G Brassard, P Hoyer, 1996 4.“Quantum counting”, G Brassard, P Hoyer, A Tapp, 1998

4 1.n = # qubits in the system 2.N = # of possible values of n qubits = 2 n 3.M = multiplicity of solution 4.k = probability amplitude of system in solution state 5.l = probability amplitude of system in non-solution state 6.A = set of indices that denote solutions (good states) 7.B = set of indices denoting bad states 8.  = rotation angle corresponding to Grover operator Notation

5 Given F:{0,1} n  {0,1}, find i 0  F(i 0 )=1 and  i  i 0 F(i)=0 1.Set up initial state |0   n 2.Apply the Hadamard transform H  n |0   |  = Let i 0 be the solution:|  = k |i 0  + 3.Grover operator made of 4 steps Apply the oracle Apply H  n Conditional phase shift: Apply H  n Grover’s Algorithm for Unique Solution Case

6 Unique Solution Case Recap (…contd) 4.Apply the Grover operator. After j iterations, Need bound on the number of iterations

7 Unique Solution Case Recap (…contd) Let sin 2  = 0 <   For k m = 1, (2m+1)  =  /2 => For large N,   sin  =  m 

8 Multiple Solutions: Multiplicity known Given F:{0,1} n  {0,1}, find all i  {0,1} n  F(i)=1 M = number of solutions > 1 Define ‘good states’ A = {i | F(i) = 1}|A| = M ‘bad states’ B = {j | F(j) = 0 }|B| = N - M Suffices to tackle good and bad states as groups k = probability amplitude of each solution (element of set A) l = probability amplitude of each element of set B Mk 2 + (N-M)l 2 = 1

9 Multiple Solutions: Multiplicity known Grover’s algorithm for the multiple solution case Structurally the same as that in the case of unique solution 1.Set up initial state |0   n 2.Apply the Hadamard transform 3.Apply Grover operator repeatedly Apply the oracle Apply H  n Conditional phase shift Apply H  n Differs in the oracle implementation: Oracle lends a relative phase shift of –1 to all solutions

10 Multiple Solutions: Multiplicity known Define After j iterations:

11 Multiple Solutions: Multiplicity known Let m = upper bound on number of iterations We want l m = 0 cos ((2m+1)  ) = =>  | cos(2m+1)  |  | sin  |  Probability of failure after exactly m iterations (N-M) l m 2 = cos 2 ((2m+1)  )  sin 2  = Negligible for M << N

12 Multiple Solutions: Multiplicity known For M << N,   sin  Knowing M, we can predetermine the upper bound on the number of iterations, m. Unique solution problem is a special case of this for M=1.

13 Multiple Solutions: unknown Multiplicity Number of iterations required to obtain a solution with significant confidence depends on the solution’s multiplicity. If M is not known, then there is no way of telling how many iterations will suffice. Take m = to be on the safe side? (max # iterations) No! Probability of success minuscule when M = 4a 2 where a is a small integer.

14 Multiple Solutions: unknown Multiplicity Modified procedure for unknown M: 1.Initialize m = 1 and = 8/7 (actually 1 < < 4/3) 2.Choose integer j such that 0  j  m 3.Apply j iterations of Grover’s algorithm 4.Measure and let outcome be i 5.If F(i) == 1 then solution found: exit program 6.Else m = min( m, ): goto step #2 Theorem: This algorithm finds a solution in O( )

15 Multiple Solutions: unknown Multiplicity For M > 3N/4 constant expected time by classical sampling For 0 < M  3N/4, runtime = O( ) For M << N, runtime < 6 times runtime_if_M_were_known Knowing the number of solutions helps in reducing runtime. This motivates quantum counting

16 Quantum Counting Aim: To determine the number of solutions M to an N item unstructured search problem Classical computing consults the oracle  (N) times to determine M Quantum computing can combine Grover’s algorithm and phase estimation to determine M much faster! Why count? Fast estimation of M => rapid solution detection Is there a solution at all? NP-Complete problems

17 Quantum Counting Recall: The computational bases can be partitioned into two subsets, the ‘good states’ set A containing all the solutions, and Letting we get in the basis.

18 Quantum Counting Eigenvalues of G are e i2  and e i(2  -2  ) The value of  can be determined by phase estimation From , the value of M can be calculated PHASE ESTIMATION Given a unitary operator U and one of its eigenvectors, the phase  of its corresponding eigenvalue e i2  is determined

19 Quantum Counting Complexity of phase estimation algorithms Probability of success Error in M Absolute, max Runtime, P Evaluations of F P  4


Download ppt "Quantum Search Algorithms for Multiple Solution Problems EECS 598 Class Presentation Manoj Rajagopalan."

Similar presentations


Ads by Google