決定的アルゴリズムとは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 情報 > コンピュータ > アルゴリズム > 決定的アルゴリズムの意味・解説 

決定的アルゴリズム

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/09 08:27 UTC 版)

決定的アルゴリズム(けっていてきアルゴリズム、: deterministic algorithm)は、計算機科学におけるアルゴリズムの種類であり、その動作が予測可能なものをいう。入力を与えられたとき、決定的アルゴリズムは常に同じ経路で計算を行い、常に同じ結果を返す。決定的アルゴリズムは最も研究の進んでいるアルゴリズムであり、その多くは実際のコンピュータで効率的に実行できる実用性を備えている。決定性アルゴリズムと言うことも多い。


  1. ^ Gary McGraw and John Viega. Make your software behave: Playing the numbers: How to cheat in online gambling. http://www.ibm.com/developerworks/library/s-playing/#h4


「決定的アルゴリズム」の続きの解説一覧

決定的アルゴリズム

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/10 15:53 UTC 版)

ミラー–ラビン素数判定法」の記事における「決定的アルゴリズム」の解説

ミラー-ラビン素数判定法は、Gary L. Miller最初に開発したMillerテストマイケル・ラビン無条件確率的アルゴリズム修正したのである。元となったMillerテストはある限度以下の全ての a を調べるという、未だ証明されていない拡張リーマン予想基づいた決定的アルゴリズムである。とはいえ拡張リーマン予想全体を必要とするわけではなく平方ディリクレ指標について拡張リーマン予想成り立てばよい。 Millerテストは未証明拡張リーマン予想を必要としていることや、それを修正したミラー-ラビン素数判定法許容出来誤判確率から判定時間調整でき速度面で有利であることから実際に使われていない。また同じく決定的アルゴリズムであるAKS素数判定法の方が、証明されていない予想依存してないぶんだけMillerテストよりも強い。 Millerテストには、判定信頼できるものにするには限度をどう決めたらよいかという問題がある。 判定対象の数 n が合成数なら、n と互いに素な「強い嘘つき」の a は群 ( Z / n Z ) ∗ {\displaystyle \left(\mathbb {Z} /n\mathbb {Z} \right)^{*}} の真の部分群含まれる。つまり ( Z / n Z ) ∗ {\displaystyle \left(\mathbb {Z} /n\mathbb {Z} \right)^{*}} の生成元集合の全 a について判定するとき、その中には必ず n の合成性証拠となる数が含まれる拡張リーマン予想が真であると仮定すると、ミラーが既に指摘したように O((ln n)2) より小さい元から、この集合生成されることがわかっている。big O記法の定数Eric Bach によって 2 まで減らされた(1990年)。このことから、次のような素数判定アルゴリズム導かれる: 入力: n > 1; 判定対象奇数 出力: n が合成数なら compositeさもなくば prime返す。 n − 1 {\displaystyle n-1} を 2 のべき乗で割って2 s ⋅ d {\displaystyle 2^{s}\cdot d} の形式にする。 以下を [ 2 , min ( n − 1 , ⌊ 2 ( ln ⁡ n ) 2 ⌋ ) ] {\displaystyle [2,\min(n-1,\lfloor 2(\ln n)^{2}\rfloor )]} の範囲全ての a について繰り返す:ad mod n ≠ 1 かつ [0, s − 1] の範囲全ての r について a d2 r {\displaystyle a^{d\cdot 2^{r}}} mod n ≠ −1 なら、composite返すprime返す。 このアルゴリズム実行時間は Õ((log n)4) である。 判定対象の数 n が十分小さければ、全ての a < 2(ln n)2 を調べる必要はなく、もっと小さ証拠可能性のある数の集合で十分である。例えば、Jaeschke (1993) は以下を検証した。 もし n < 4,759,123,141 なら、a = 2, 7, 61 について調べればよい。 もし n < 341,550,071,728,321 なら、a = 2, 3, 5, 7, 11, 13, 17 について調べれば十分である。 もちろん、a < n の場合だけ調べる。この種の基準については を参照されたい。このような結果活用することで、ある範囲の数については非常に高速決定的な素数判定が可能である。 しかし、全ての合成数についてはこのような有限集合では不十分である。Alford、Granville、Pomerance は、合成数 n について合成性証拠となる最小の数が ( ln ⁡ n ) 1 / ( 3 lnlnln ⁡ n ) {\displaystyle (\ln n)^{1/(3\ln \ln \ln n)}\;} より大きい合成数無数に存在する、 X が十分大きいときには X 以下のそのような合成数個数少なくとも X 1 / ( 35 lnlnln ⁡ X ) {\displaystyle X^{1/(35\ln \ln \ln X)}} であることを示した。また彼らはヒューリスティック的に、w 以下の合成性証拠となる数のある n 以下の合成数について w のオーダーを Θ ( ln ⁡ n lnln ⁡ n ) {\displaystyle \Theta (\ln n\,\ln \ln n)} であると示唆した

※この「決定的アルゴリズム」の解説は、「ミラー–ラビン素数判定法」の解説の一部です。
「決定的アルゴリズム」を含む「ミラー–ラビン素数判定法」の記事については、「ミラー–ラビン素数判定法」の概要を参照ください。

ウィキペディア小見出し辞書の「決定的アルゴリズム」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



決定的アルゴリズムと同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「決定的アルゴリズム」の関連用語

決定的アルゴリズムのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



決定的アルゴリズムのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの決定的アルゴリズム (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのミラー–ラビン素数判定法 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS