メインコンテンツへスキップ
見出し画像

書記が物理やるだけ#326 Groverのアルゴリズム

    探索アルゴリズムを量子コンピュータで解く方法として,Groverのアルゴリズムを見ていく。


    問題

    画像


    説明

    Groverのアルゴリズムは,1996年にLov Groverによって開発されたもので,O(√N)の計算時間しか消費せず,未整序データベース探索を行う量子アルゴリズムの中で最も速い。

    画像


    解答

    例えば線形検索では,O(N)の計算量を要する。

    画像


    Groverのアルゴリズムの手順について,まずは重ね合わせ状態を作る。

    画像


    次に,解をマーキングするために以下のオラクルを通す。

    画像


    ここで以下のような変換を考えることで,状態を解に近づけていく。これらの手順を一定数回繰り返すことで,確率的に解を得ることができる。

    画像


    実際に8個のデータから検索する問題を計算しておく。

    画像


    実装例は以下の通りで,1回の繰り返しでも十分高い確率が得られている。


    画像


    本記事のもくじはこちら:


    あなたへのおすすめ