ランダム化がアルゴリズムを高速化するのはいつですか?


39

が含まれているというAdlemanの証明は、サイズ入力で時間で実行される問題のランダム化アルゴリズムがある場合、時間で実行される問題の決定論的アルゴリズムがあることを示していますサイズ入力に対する [アルゴリズムは、独立ランダム文字列でランダム化アルゴリズムを実行します。すべての適した繰り返しアルゴリズムにはランダム性が必要ですBPPP/polyt(n)nΘ(t(n)n)nΘ(n)2n可能な入力]。決定論的アルゴリズムは不均一です-入力サイズが異なると動作が異なる場合があります。したがって、Adlemanの議論は、均一性を気にしない場合、ランダム化は入力サイズが線形の係数だけアルゴリズムを高速化できることを示しています。

ランダム化が計算を高速化する具体的な例は何ですか(私たちの知る限り)?

1つの例は、多項式同一性テストです。ここで、入力はフィールド上でm変数の多項式を計算するnサイズの演算回路であり、タスクは多項式がゼロであるかどうかを調べることです。ランダム化されたアルゴリズムはランダムポイントで多項式を評価できますが、私たちが知っている最高の決定論的アルゴリズム(およびおそらく存在する最高のアルゴリズム)は多くのポイントで多項式を評価します。

Chazelleで最高の決定論的アルゴリズムは、時間で実行しながら、別の例は、カーガー-クライン- Tarjanで最高の無作為化アルゴリズムは線形時間(及び誤り確率が指数関数的に小さい!ある)された木を、最小全域さ(は逆アッカーマン関数であるため、ランダム化の高速化は非常に小さいです)。興味深いことに、最小スパニングツリーに不均一な決定論的線形時間アルゴリズムが存在する場合、均一な決定論的線形時間アルゴリズムも存在することがPettieとRamachandranによって証明されました。O(mα(m,n))α

他の例は何ですか?ランダム化の高速化が大きい場合、どの例を知っていますか?しかし、これはおそらく、十分に効率的な決定論的アルゴリズムがまだ見つかっていないからでしょうか?



ランダムジェネレーターを暗号品質の擬似ランダムジェネレーターに置き換えることにより、任意のランダム化アルゴリズムを決定論的アルゴリズムにいつでも変換できます。私たちの知る限りでは有効であるというもっともらしい暗号化の仮定の下では、これはうまく機能します。したがって、私の答えは「私たちの知る限りでは、答えは次のとおりです。そのような現実の問題はありません」。(言い換えれば、私たちの知る限り、実行時のギャップは、実際の根本的な違いではなく、実行時の厳しい境界を証明できないことを反映しています。)
DW

1
妥当な硬度の仮定の下で、疑似乱数ジェネレーターからアルゴリズムのランダム性を与えることができますが、実際に決定論的アルゴリズムを取得するには、可能なすべてのシードでアルゴリズムを実行する必要があります。これはランタイムを爆破します!
ダナモシュコヴィッツ

Danaのポイントに加えて、BPPのランダム化を解除するには、PRGを元のアルゴリズムよりも長い時間実行する必要があると思います(ギャップがどうあるべきかはわかりませんが)。また、これは確実と指数関数的に高い信頼性との間の(?基本的な)ギャップを示す可能性がある:それは、ランダム化アルゴリズム反復すればよい(任意の定数のための時間を得るために)正確確率はが、決定論的なバージョンでは、すべての多項式のシードをすべてチェックする必要があります。cc2O(c)
-usul

@DanaMoshkovitz、これを理論的観点から実践するか、開業医の観点からアプローチするかによって異なります。実務家の観点からは、いいえ、あなたはそれをする必要はありません。シードのみでアルゴリズムを実行するcs.stackexchange.com/a/41723/755の概要を参照してください。ランダムオラクルモデルの下では、漸近的な実行時間の増加はなく、アルゴリズムが間違った答えを生成するアルゴリズムへの入力を見つけることができる計算限界の敵はいない可能性があります。これはすべての実用的な目的におそらく十分に適しています。O(1)
DW

回答:


28

ランダム化が「すべき」か「すべきでない」かはわかりませんが、整数の素数テストは、ランダム化されたMiller-Rabinを使用して、時間内に実行できます。最もよく知られている決定論的アルゴリズムは、GRH(決定論的ミラー–ラビン)または無条件(AKSの変形仮定した)です。ON4ON6O~(n2)O~(n4)O~(n6)


最小の複合性の証人は、順序であると信じる理由がありますが、これはアルゴリズムを与えます。しかし、これはRHの変形のような標準的な数論的推測の下でも実証されていません。NlogNloglogNO~(n3)
エミールイェジャベクはモニカをサポートします

同様の問題は、有限体での多項式の既約性テストです。ここでも、既知の決定論的アルゴリズムはランダム化アルゴリズムよりも悪い境界を持っていますが、詳細は覚えていません。
エミールJeřábekはモニカ・サポート

19

古い例はボリューム計算です。メンバーシップオラクルによって記述されたポリトープを考えると、ファクターまでそのボリュームを推定するために多項式時間で実行されるランダム化アルゴリズムがありますが、決定論的アルゴリズムは無条件に近づくこともできません。1+ϵ

このようなランダム化された戦略の最初の例は、ダイアー、フリーズ、およびカンナンによるもので、決定論的アルゴリズムの難易度の結果は、バラーニーとフレディによるものです。Alistair Sinclairにはこれに関する素晴らしい講義ノートがあります

私は質問の「そしてそれはするべきではない」部分を完全に理解していると確信していないので、これが法案に適合するかどうかはわかりません。


1
私はMCMCメソッドを知っていましたが、この下限はありませんでした。私は非常に驚きました(わかっているのは#P-hardnessだけだと思いました)。この論文は、FürediのWebページからアクセス可能な「Computing the Volume is Difficult」であり、ボリュームを概算する方法について、基本的に下限を示しています。[n/logn]n
ジェレミーくん

9

これがあなたの質問に答えるかどうか(または少なくともその一部)知り​​ません。しかし、ランダム化がスピードアップを提供できる実際の例では、最適化の問題とフリーランチなし(NFL)の定理との関係があります。

「おそらく無料のランチではなく、少なくとも無料の前菜」という論文があり、ランダム化、(最適化)アルゴリズムを使用するとパフォーマンスが向上することが示されています。

抽象:

特に、最適化される目的関数についてあまり知られていない状況では、進化アルゴリズムは他の最適化手法よりも優れているとしばしば主張されます。それとは対照的に、Wolpert and Macready(1997)は、すべての最適化手法が同じ振る舞いを持っていることを証明しました-平均して、すべてので、とは有限集合です。この結果は[無料昼食定理なし]と呼ばれます。ここでは、最適化のさまざまなシナリオが示されています。昼食なしの定理が基づいているシナリオが実生活の最適化をモデル化しない理由は議論されています。より現実的なシナリオでは、最適化手法の効率が異なる理由について議論されています。小さな例では、この主張が証明されています。f:XYXY

参照:

  1. 最適化のためのフリーランチ定理なし(最適化のための元のNFL定理)
  2. おそらく無料のランチではなく、少なくとも無料の前菜
  3. 自由な昼食なしと説明の長さNFLの結果が、が置換、cupの下で閉じられている場合、可能なすべての関数のセットのサブセットを保持することを示します)FF
  4. 昼食なしの結果が成り立つ関数のクラスカップであるサブセットの割合が無視できるほど小さいことが証明されています)
  5. 昼食なしの結果が保持されない2つの広範なクラスの関数(関数の記述の長さが十分に制限されている場合、NFLの結果が関数のセットに適用されないことを示します)
  6. 連続昼食は無料であり、最適な最適化アルゴリズムの設計もあります(連続ドメインの場合、[公式バージョン] NFLは成り立たないことを示します。この無料昼食定理は、ランダムフィールドによるランダムフィットネス関数の概念の定式化に基づいています)
  7. 自由な昼食を超えて:任意の問題クラスの現実的なアルゴリズム(「.. [a]自由な昼食の定理のすべての違反は、カップである問題のサブセット上の非ブロック均一分布として表現できることを示します」)
  8. Swarm-Based Metaheuristic Algorithms and No-Free-Lunch Theorems( "[..t] forefore、non-revisiting time-ordered iterations for the case revisiting cases for the revisiting反復は重要な仮定を破るためNFL定理の証明に必要なカップ(Marshall and Hinton、2010) ")
  9. フリーランチとアルゴリズムのランダム性なし
  10. フリーランチとベンチマークはありませんcupに固有ではない基準に一般化された集合論的アプローチですが、(非自明な)ランダム化アルゴリズムは平均的に決定論的アルゴリズムよりも優れていることがあります。確率は、制約のない断言するには不十分であるNFLの一般的なケースで結果を[..]この紙放棄確率、「完全確率で分配することによって尺度論的制限を取り除くセット論的枠組みを好みます)

デイビッドH.ウォルパートによるノーフリーランチ(およびフリーランチ)の概要、ディナーの費用は?NFLタイプの定理は、証明のタイプのために実際の「価格」を指定しないことに注意しください

特に一般化最適化(GO)の場合:

  1. と 2つのスペース。たとえば、は入力、は出力の分布です。XZXZ

  2. フィットネス関数f:XZ

  3. m(おそらく繰り返される)サンプルポイント:ここで、、 各(おそらく確率的)関数f

    dm={dm(1),dm(2),...,dm(m)}
    t
    dm(t)={dmX(t),dmZ(t)}
    dmZ(t)f[dmX(t)]
  4. 検索アルゴリズムa={dtdmX(t):t=0..m}

  5. ユークリッドベクトル値コスト関数C(f,dm)

  6. 特定のタイプの最適化問題をキャプチャするために、問題構造の多くは表現されC(.,.)

NFLの定理は、を独立させることに決定的に依存します。がに依存している場合、無料のランチが可能です。例えば、でない限りから 独立した持ちます。CfCfC(f,dm)f=f

最後に、ランダム化(ある形式または別の形式)が厳密に決定的なアルゴリズムよりも優れたパフォーマンスを提供する理由について、簡単な(それほど簡単ではない)発言をします。

  1. 最適化のコンテキストでは(これには制限されませんが)、ランダム化された検索手順は、決定論的検索よりも平均的に 局所極値をエスケープし、グローバル極値に到達できます。
  2. (一般的な意味での)セットの順序付け、カーディナリティ、およびランダム化の間には、興味深い(しかし一見単純ではない)関係があります。冪集合の(およびそのカーディナリティ)は、intrinsicalyセット(の要素)の特定(staticaly)固定された順序に依存。(要素の)順序が(静的に)固定されていないと仮定すると(ランダム化はランダムな順序の形でここに入力できます)、セットは独自のpowersetを表すことができます(それを一種と考えるのに役立つ場合)動的な順序付けが一種の重ね合わせ原理を説明するような役割を果たしている古典的なセットの量子アナログの)。2AA A AAAAA

1

最良の例は、現時点でOWFの最良の候補と考えられている分野で、決定的に部分指数アルゴリズムが存在しないのに、驚くほど調理された人気のあるすべてのOWFがランダムな部分指数アルゴリズムを持っているようです(整数因数分解など)。実際、多くの場合、いくつかのアドバイス文字列を与えられた効率的なアルゴリズムがあります(暗号解析)。


-5

ランダム化を使用するアルゴリズムがある場合、いつでも擬似乱数を使用する決定論的アルゴリズムに置き換えることができます:問題の説明を取り、ハッシュコードを計算し、そのハッシュコードを優れた擬似乱数ジェネレータのシードとして使用します。実際には、誰かがランダム化を使用してアルゴリズムを実装すると、実際にそれが起こる可能性があります。

ハッシュコードを省略すると、このアルゴリズムと真のランダム化を使用するアルゴリズムの違いは、生成された乱数のシーケンスを予測できることであり、問​​題に適用される予測乱数が常に最悪の決定を下します。たとえば、擬似ランダムピボットを使用するQuicksortの場合、擬似ランダムピボットが常に配列内の可能な最大値を見つける入力配列を作成できます。真のランダム性では不可能です。

ハッシュコードを使用すると、擬似乱数が最悪の結果を生成する問題を構築することは非常に困難です。乱数はまだ予測できますが、問題を変更すると、擬似乱数のシーケンスが完全に変わります。それでも、私がそのような問題を構築できないことを証明することは不可能に近いでしょう。


私はcstheory.SEが初めてです。ダウンボッター-この回答の何が問題になっていますか?
-galdre

3
2つの問題があります。(1)一般に擬似乱数を構築する方法がわからない、(2)構築方法を知っていても計算コストが高い。実際に使用される擬似乱数は、理論的に機能することを保証されていません。わかっているのは、それらが経験的に機能しているように見えることです。(確かに、実際に使用されているのPRNGのほとんどは、あなたがそれらを特異的に侵入しようとしていない場合にのみ、彼らは、一般的に使用するため、実際に安全ではないので、分けることができます。)
のYuval Filmus

2
cstheory.seは、プログラミングの実践ではなく、理論的なコンピューターサイエンス* についてのものです。好むと好まざるとにかかわらず、2つの領域はまったく別のものです。
ユヴァルフィルマス

2
@YuvalFilmus:C. Guntherによって1987年に発明されたオルタネートステップジェネレーターはまだ壊れていません(まだ公開されていません。NSAも壊れていると思います)。28年は途切れることのない長い時間です。私はそのような単純なジェネレーター(3つのLFSRと1つのXORゲート、それはいかに単純ですか?)がまだ壊れておらず、より頻繁に使用されていないことに驚いています。
ウィリアムハード

2
@WilliamHird:「壊れた」の定義によっては、実際には壊れているようです(関連する、より効率的で、広く使用されているA5 / xファミリーとほぼ同じ程度)。crypto.stackexchange.com/a/342を参照してください 。
エミルイェジャベクはモニカをサポートします
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.