1 / 19

Quantum Search Algorithms for Multiple Solution Problems

Quantum Search Algorithms for Multiple Solution Problems. EECS 598 Class Presentation Manoj Rajagopalan. Outline. Recap of Grover’s algorithm for the unique solution case Grover’s algorithm for multiple solutions: multiplicity known

johnhickman
Download Presentation

Quantum Search Algorithms for Multiple Solution Problems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

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

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

  7. Unique Solution Case Recap (…contd) Let sin2 = 0 <   For km = 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 Mk2 + (N-M)l2 = 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 • Set up initial state |0n • 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 lm = 0 cos ((2m+1)) = => • | cos(2m+1) |  | sin | • Probability of failure after exactly m iterations (N-M) lm2 = cos2((2m+1))  sin2 = 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 = 4a2 where a is a small integer.

  14. Multiple Solutions: unknown Multiplicity • Modified procedure for unknown M: • Initialize m = 1 and  = 8/7 (actually 1 <  < 4/3) • Choose integer j such that 0  j  m • Apply j iterations of Grover’s algorithm • Measure and let outcome be i • If F(i) == 1 then solution found: exit program • 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 ei2 and ei(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 ei2 is determined

  19. Quantum Counting Complexity of phase estimation algorithms

More Related