fbpx
维基百科

格罗弗算法

格罗弗算法(英語:Grover's algorithm)是一種量子算法,於1996年由電腦科學家洛夫·格罗弗提出。假設現在有一個未知的函數,格罗弗算法只需測試此未知的函數次,其中為此未知函數的定义域的大小,即可以很高的概率找到一特定的輸入值,此輸入值能使此未知函數輸出特定的值。

同樣的問題在經典運算下,需要至少做 次測試(因為在最壞的情況下,可能第個定義域裡的值才是正確答案)。在格罗弗發表他的算法前後,Bennett, Bernstein, Brassard, 和 Vazirani 在相近的時間證明了,任何量子算法解決此問題都最少需要對此未知的函數做 次測試,因此格罗弗算法是渐进最优的。[1]

非局域隱變量量子計算機已經被證明可以在最多 步內實現在N個條目的數據庫裡的搜索,這比格罗弗算法的 還快,然而這些搜索算法並不能使量子計算機在多項式時間內解決NP-Complete 問題。[2]

不像其他的量子算法可能會比相應的經典算法有指數級的加快,格罗弗算法二次方的加快,不過當很大時二次方的加快也相當可觀。格罗弗算法可以在大約 264次迭代內窮舉破解一個128比特的對稱密鑰,在大約 2128次迭代內窮舉破解一個256比特的密鑰。因此,有人提倡對稱密鑰的長度應該加倍以因應未來的量子攻擊。[3]

像其他的量子算法一樣,格罗弗算法是概率性的,意味著這個算法以小於1的概率給出正確答案。雖然實際上對於需要多少次重複才能給出正確的答案並沒有一個上界,但是期望的重複次數並不隨成長。在格罗弗發表此算法的原始論文中稱此算法為數據庫搜索算法,此說法至今仍普遍。此處數據庫相當於是一張存有未知函數的所有輸出值的表,以對應的輸入值為索引。

應用

雖然格罗弗算法的用處一直被認為是數據庫搜索,但是它也可以被認為是函數取反。

設定

考虑一个有N个元素的无序数据集,我们设函数 。我们假设,在所有的下标x中,有且仅有一个下标x有 ,我们记这个下标x为 ,并且称 为这个搜索问题的解。而格罗弗算法的目标便是找到下标 。为此,我们构建一个酉算子 ,如下

 

或者可以简写为

 

事实上,我们一般构建另一种酉算子 ,如下所示

 

我们一般将 作用在态矢量和 的叠加态上,以实现相回传(Phase Kickback),具体流程如下

 

与一般的 相比, 使用了一个辅助的qubit。

算法步驟

 
格罗弗算法的量子电路表示

格罗弗算法的步骤如下

  1. 构建量子叠加态
 
2. 做 次“格罗弗迭代”,具体操作如下
  •  作用在 
  •   作用在 
其中, 被称为格罗弗扩散算子
3. 测量 ,得到求得的结果

一般而言, 的值会很大程度上影响得到正确结果的概率,且并不是 越大得到正确结果的概率越大。分析表明最优的  ,因而格罗弗算法的复杂度为 

正确性证明

几何直观证明

格罗弗算法使用的技巧为振幅减枝(Amplitude amplification),实则是通过将其他态的振幅转移为解的振幅,而是在测量时使得坍塌为解的概率增加。具体如下

代数证明

考虑,我们将态矢量改为以 为基,其中 为解。写作

 

在这种表示下,我们可以将  表示为

 
 

 

我们可以通过设 ,将上式改写为(所谓Jordan form)

  where  

作用r次  则将得到

 

注意到,我们的目的是区别解以及其他一般的数据,而为了达到这个目的,我们使 的振幅差别越大越好,换言之,要使得2rt和−2rt的差别足够大,便有 , 或  . 这样以来,就有

 

作用在初始态上将会有

 

简短的计算表明,格罗弗算法将具有 量级的误差.

参见

  • Amplitude amplification英语Amplitude amplification
  • 秀爾演算法

參考資料

  1. ^ Bennett C.H.; Bernstein E.; Brassard G.; Vazirani U. The strengths and weaknesses of quantum computation. SIAM Journal on Computing英语SIAM Journal on Computing. 1997, 26 (5): 1510–1523 [2019-06-12]. arXiv:quant-ph/9701001 . doi:10.1137/s0097539796300933. (原始内容于2016-03-06). 
  2. ^ Aaronson, Scott. Quantum Computing and Hidden Variables (PDF). (原始内容 (PDF)于2020-12-03). 
  3. ^ Daniel J. Bernstein. (PDF). 2010-03-03 [2019-06-12]. (原始内容 (PDF)存档于2010-10-10). 

外部链接

  • Davy Wybiral. . [2017-01-13]. (原始内容存档于2017-01-16). 
  • Craig Gidney. Grover’s Quantum Search Algorithm. 2013-03-05 [2019-06-12]. (原始内容于2020-11-17). 
  • François Schwarzentruber. Grover's algorithm. 2013-05-18 [2019-06-12]. (原始内容于2020-11-16). 
  • Alexander Prokopenya. Quantum Circuit Implementing Grover's Search Algorithm. Wolfram Alpha. [2019-06-12]. (原始内容于2020-11-20). 
  • Hazewinkel, Michiel (编), Quantum computation, theory of, 数学百科全书, Springer, 2001, ISBN 978-1-55608-010-4 
  • Roberto Maestre. Grover's Algorithm implemented in R and C. 2018-05-11 [2019-06-12]. (原始内容于2021-10-17). 

格罗弗算法, 本條目存在以下問題, 請協助改善本條目或在討論頁針對議題發表看法, 此條目可参照英語維基百科相應條目来扩充, 2019年6月12日, 若您熟悉来源语言和主题, 请协助参考外语维基百科扩充条目, 请勿直接提交机械翻译, 也不要翻译不可靠, 低品质内容, 依版权协议, 译文需在编辑摘要注明来源, 或于讨论页顶部标记, href, template, translated, page, html, title, template, translated, page, translated, page, 标签. 本條目存在以下問題 請協助改善本條目或在討論頁針對議題發表看法 此條目可参照英語維基百科相應條目来扩充 2019年6月12日 若您熟悉来源语言和主题 请协助参考外语维基百科扩充条目 请勿直接提交机械翻译 也不要翻译不可靠 低品质内容 依版权协议 译文需在编辑摘要注明来源 或于讨论页顶部标记 a href Template Translated page html title Template Translated page Translated page a 标签 此條目可能包含原创研究或未查证内容 2019年6月12日 请协助補充参考资料以改善这篇条目 详细情况请参见讨论页 此條目需要补充更多来源 2019年6月12日 请协助補充多方面可靠来源以改善这篇条目 无法查证的内容可能會因為异议提出而移除 致使用者 请搜索一下条目的标题 来源搜索 格罗弗算法 网页 新闻 书籍 学术 图像 以检查网络上是否存在该主题的更多可靠来源 判定指引 格罗弗算法 英語 Grover s algorithm 是一種量子算法 於1996年由電腦科學家洛夫 格罗弗提出 假設現在有一個未知的函數 格罗弗算法只需測試此未知的函數O N displaystyle O sqrt N 次 其中N displaystyle N 為此未知函數的定义域的大小 即可以很高的概率找到一特定的輸入值 此輸入值能使此未知函數輸出特定的值 同樣的問題在經典運算下 需要至少做 O N displaystyle O N 次測試 因為在最壞的情況下 可能第N displaystyle N 個定義域裡的值才是正確答案 在格罗弗發表他的算法前後 Bennett Bernstein Brassard 和 Vazirani 在相近的時間證明了 任何量子算法解決此問題都最少需要對此未知的函數做 W N displaystyle Omega sqrt N 次測試 因此格罗弗算法是渐进最优的 1 非局域隱變量量子計算機已經被證明可以在最多 O N 3 displaystyle O sqrt 3 N 步內實現在N個條目的數據庫裡的搜索 這比格罗弗算法的 O N displaystyle O sqrt N 還快 然而這些搜索算法並不能使量子計算機在多項式時間內解決NP Complete 問題 2 不像其他的量子算法可能會比相應的經典算法有指數級的加快 格罗弗算法二次方的加快 不過當N displaystyle N 很大時二次方的加快也相當可觀 格罗弗算法可以在大約 264次迭代內窮舉破解一個128比特的對稱密鑰 在大約 2128次迭代內窮舉破解一個256比特的密鑰 因此 有人提倡對稱密鑰的長度應該加倍以因應未來的量子攻擊 3 像其他的量子算法一樣 格罗弗算法是概率性的 意味著這個算法以小於1的概率給出正確答案 雖然實際上對於需要多少次重複才能給出正確的答案並沒有一個上界 但是期望的重複次數並不隨N displaystyle N 成長 在格罗弗發表此算法的原始論文中稱此算法為數據庫搜索算法 此說法至今仍普遍 此處數據庫相當於是一張存有未知函數的所有輸出值的表 以對應的輸入值為索引 目录 1 應用 2 設定 3 算法步驟 4 正确性证明 4 1 几何直观证明 4 2 代数证明 5 参见 6 參考資料 7 外部链接應用 编辑雖然格罗弗算法的用處一直被認為是數據庫搜索 但是它也可以被認為是函數取反 設定 编辑考虑一个有N个元素的无序数据集 我们设函数f 0 1 N 1 0 1 displaystyle displaystyle f 0 1 ldots N 1 to 0 1 我们假设 在所有的下标x中 有且仅有一个下标x有f x 1 displaystyle f x 1 我们记这个下标x为w displaystyle omega 并且称w displaystyle omega 为这个搜索问题的解 而格罗弗算法的目标便是找到下标w displaystyle omega 为此 我们构建一个酉算子U w displaystyle U omega 如下 U w x x for x w U w x x for x w displaystyle displaystyle begin cases U omega x rangle x rangle amp text for x omega U omega x rangle x rangle amp text for x neq omega end cases 或者可以简写为U w x 1 f x x displaystyle U omega x rangle 1 f x x rangle 事实上 我们一般构建另一种酉算子U f displaystyle U f 如下所示U f x y x y f x displaystyle U f x rangle y rangle x rangle y oplus f x rangle 我们一般将U f displaystyle U f 作用在态矢量和 displaystyle rangle 的叠加态上 以实现相回传 Phase Kickback 具体流程如下U f x U f x 0 1 2 1 2 x 1 x 0 for x w 1 2 x 0 x 1 for x w 1 f x x displaystyle begin aligned U f x rangle rangle amp U f x rangle left frac 0 rangle 1 rangle sqrt 2 right amp begin cases frac 1 sqrt 2 x rangle 1 rangle x rangle 0 rangle amp text for x omega frac 1 sqrt 2 x rangle 0 rangle x rangle 1 rangle amp text for x neq omega end cases amp 1 f x x rangle rangle end aligned 与一般的U w displaystyle U omega 相比 U f displaystyle U f 使用了一个辅助的qubit 算法步驟 编辑 格罗弗算法的量子电路表示 格罗弗算法的步骤如下 构建量子叠加态 s H N 0 N 1 N x 0 N 1 x displaystyle s rangle H oplus N 0 rangle oplus N frac 1 sqrt N sum x 0 N 1 x rangle 2 做p N displaystyle p N 次 格罗弗迭代 具体操作如下 将U w displaystyle U omega 作用在 s displaystyle s rangle 上 将U s 2 s s I displaystyle U s 2 s rangle langle s I 作用在 s displaystyle s rangle 上 其中 U s displaystyle U s 被称为格罗弗扩散算子 3 测量 s displaystyle s rangle 得到求得的结果一般而言 p N displaystyle p N 的值会很大程度上影响得到正确结果的概率 且并不是p N displaystyle p N 越大得到正确结果的概率越大 分析表明最优的p N displaystyle p N 有p N p 4 N displaystyle p N leq Big lceil frac pi 4 sqrt N Big rceil 因而格罗弗算法的复杂度为O N displaystyle mathcal O sqrt N 正确性证明 编辑几何直观证明 编辑 格罗弗算法使用的技巧为振幅减枝 Amplitude amplification 实则是通过将其他态的振幅转移为解的振幅 而是在测量时使得坍塌为解的概率增加 具体如下 代数证明 编辑 考虑 我们将态矢量改为以 x w displaystyle x rangle omega rangle 为基 其中w displaystyle omega 为解 写作 s a w b x displaystyle s rangle a omega rangle b x rangle 在这种表示下 我们可以将U s displaystyle U s 和U w displaystyle U omega 表示为 U s a w b x w x 1 0 2 N 1 a b displaystyle U s a omega rangle b x rangle mapsto omega rangle x rangle begin bmatrix 1 amp 0 2 sqrt N amp 1 end bmatrix begin bmatrix a b end bmatrix U w a w b x w x 1 2 N 0 1 a b displaystyle U omega a omega rangle b x rangle mapsto omega rangle x rangle begin bmatrix 1 amp 2 sqrt N 0 amp 1 end bmatrix begin bmatrix a b end bmatrix U s U w 1 0 2 N 1 1 2 N 0 1 1 2 N 2 N 1 4 N displaystyle U s U omega begin bmatrix 1 amp 0 2 sqrt N amp 1 end bmatrix begin bmatrix 1 amp 2 sqrt N 0 amp 1 end bmatrix begin bmatrix 1 amp 2 sqrt N 2 sqrt N amp 1 4 N end bmatrix 我们可以通过设t arcsin 1 N displaystyle t arcsin 1 sqrt N 将上式改写为 所谓Jordan form U s U w M e 2 i t 0 0 e 2 i t M 1 displaystyle U s U omega M begin bmatrix e 2it amp 0 0 amp e 2it end bmatrix M 1 where M i i e i t e i t displaystyle M begin bmatrix i amp i e it amp e it end bmatrix 作用r次U s displaystyle U s U w displaystyle U omega 则将得到 U s U w r M e 2 r i t 0 0 e 2 r i t M 1 displaystyle U s U omega r M begin bmatrix e 2rit amp 0 0 amp e 2rit end bmatrix M 1 注意到 我们的目的是区别解以及其他一般的数据 而为了达到这个目的 我们使 x w displaystyle x rangle omega rangle 的振幅差别越大越好 换言之 要使得2rt和 2rt的差别足够大 便有2 r t p 2 displaystyle 2rt approx pi 2 或 r p 4 t p 4 arcsin 1 N p N 4 displaystyle r pi 4t pi 4 arcsin 1 sqrt N approx pi sqrt N 4 这样以来 就有 U s U w r M i 0 0 i M 1 displaystyle U s U omega r M begin bmatrix i amp 0 0 amp i end bmatrix M 1 作用在初始态上将会有 w x U s U w r 0 1 w x M i 0 0 i M 1 0 1 w 1 cos t x sin t cos t displaystyle omega rangle x rangle U s U omega r begin bmatrix 0 1 end bmatrix approx omega rangle x rangle M begin bmatrix i amp 0 0 amp i end bmatrix M 1 begin bmatrix 0 1 end bmatrix omega rangle frac 1 cos t x rangle frac sin t cos t 简短的计算表明 格罗弗算法将具有O 1 N displaystyle O left frac 1 N right 量级的误差 参见 编辑Amplitude amplification 英语 Amplitude amplification 秀爾演算法參考資料 编辑 Bennett C H Bernstein E Brassard G Vazirani U The strengths and weaknesses of quantum computation SIAM Journal on Computing 英语 SIAM Journal on Computing 1997 26 5 1510 1523 2019 06 12 arXiv quant ph 9701001 doi 10 1137 s0097539796300933 原始内容存档于2016 03 06 Aaronson Scott Quantum Computing and Hidden Variables PDF 原始内容存档 PDF 于2020 12 03 Daniel J Bernstein Grover vs McEliece PDF 2010 03 03 2019 06 12 原始内容 PDF 存档于2010 10 10 外部链接 编辑维基语录上的格罗弗算法语录Davy Wybiral Quantum Circuit Simulator 2017 01 13 原始内容存档于2017 01 16 Craig Gidney Grover s Quantum Search Algorithm 2013 03 05 2019 06 12 原始内容存档于2020 11 17 Francois Schwarzentruber Grover s algorithm 2013 05 18 2019 06 12 原始内容存档于2020 11 16 Alexander Prokopenya Quantum Circuit Implementing Grover s Search Algorithm Wolfram Alpha 2019 06 12 原始内容存档于2020 11 20 Hazewinkel Michiel 编 Quantum computation theory of 数学百科全书 Springer 2001 ISBN 978 1 55608 010 4 Roberto Maestre Grover s Algorithm implemented in R and C 2018 05 11 2019 06 12 原始内容存档于2021 10 17 取自 https zh wikipedia org w index php title 格罗弗算法 amp oldid 71033570, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。