{"title":"Speeding up Grover’s algorithm","authors":"Stefan Creemers","doi":"10.1016/j.ejor.2025.02.034","DOIUrl":null,"url":null,"abstract":"To find one of the <mml:math altimg=\"si338.svg\" display=\"inline\"><mml:mi>M</mml:mi></mml:math> target entries in an unstructured database that has <mml:math altimg=\"si337.svg\" display=\"inline\"><mml:mi>N</mml:mi></mml:math> entries, Grover’s algorithm performs <mml:math altimg=\"si3.svg\" display=\"inline\"><mml:mrow><mml:mfrac bevelled=\"true\"><mml:mrow><mml:mi>π</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:mfrac><mml:msqrt><mml:mrow><mml:mfrac bevelled=\"true\"><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt></mml:mrow></mml:math> iterations. In each iteration, a function is called that evaluates whether an entry is a target entry. Compared to a classical procedure, that requires <mml:math altimg=\"si339.svg\" display=\"inline\"><mml:mfrac bevelled=\"true\"><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:mfrac></mml:math> evaluations, Grover’s algorithm achieves a quadratic speedup. This quadratic speedup, combined with its general applicability as a search algorithm, have made Grover’s algorithms one of the most important (quantum) algorithms available today. A study to improve its runtime is more than justified. For this purpose, we investigate two speedup strategies: (1) reducing the number of iterations that are performed in each run of Grover’s algorithm and (2) partitioning the database. For each of these strategies, we not only execute Grover’s algorithm in parallel, but also explore the possibility to execute Grover’s algorithm in series on a single Quantum Processing Unit (QPU) as well as on multiple QPUs. For each combination of execution mode (serial, parallel, and serial/parallel) and speedup strategy, we show how to obtain optimal policies using closed-form expressions and a gradient-descent procedure. For a single QPU we obtain a speedup factor of 1.1382 when compared to a textbook implementation of Grover’s algorithm. If multiple QPUs are at our disposal, we obtain a speedup factor of at most <mml:math altimg=\"si5.svg\" display=\"inline\"><mml:mrow><mml:mn>1</mml:mn><mml:mo>.</mml:mo><mml:mn>1382</mml:mn><mml:msqrt><mml:mrow><mml:mi>Q</mml:mi></mml:mrow></mml:msqrt></mml:mrow></mml:math>, where <mml:math altimg=\"si279.svg\" display=\"inline\"><mml:mi>Q</mml:mi></mml:math> denotes the number of QPUs. In addition, we show that the dominant policies that minimize the expected number of Grover iterations also minimize the expected number of iterations that are performed per qubit.","PeriodicalId":55161,"journal":{"name":"European Journal of Operational Research","volume":"9 1","pages":""},"PeriodicalIF":6.0000,"publicationDate":"2025-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"European Journal of Operational Research","FirstCategoryId":"91","ListUrlMain":"https://doi.org/10.1016/j.ejor.2025.02.034","RegionNum":2,"RegionCategory":"管理学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"OPERATIONS RESEARCH & MANAGEMENT SCIENCE","Score":null,"Total":0}
引用次数: 0
Abstract
To find one of the M target entries in an unstructured database that has N entries, Grover’s algorithm performs π4NM iterations. In each iteration, a function is called that evaluates whether an entry is a target entry. Compared to a classical procedure, that requires NM evaluations, Grover’s algorithm achieves a quadratic speedup. This quadratic speedup, combined with its general applicability as a search algorithm, have made Grover’s algorithms one of the most important (quantum) algorithms available today. A study to improve its runtime is more than justified. For this purpose, we investigate two speedup strategies: (1) reducing the number of iterations that are performed in each run of Grover’s algorithm and (2) partitioning the database. For each of these strategies, we not only execute Grover’s algorithm in parallel, but also explore the possibility to execute Grover’s algorithm in series on a single Quantum Processing Unit (QPU) as well as on multiple QPUs. For each combination of execution mode (serial, parallel, and serial/parallel) and speedup strategy, we show how to obtain optimal policies using closed-form expressions and a gradient-descent procedure. For a single QPU we obtain a speedup factor of 1.1382 when compared to a textbook implementation of Grover’s algorithm. If multiple QPUs are at our disposal, we obtain a speedup factor of at most 1.1382Q, where Q denotes the number of QPUs. In addition, we show that the dominant policies that minimize the expected number of Grover iterations also minimize the expected number of iterations that are performed per qubit.
期刊介绍:
The European Journal of Operational Research (EJOR) publishes high quality, original papers that contribute to the methodology of operational research (OR) and to the practice of decision making.