力まかせ探索の高速化とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 力まかせ探索の高速化の意味・解説 

力まかせ探索の高速化

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2015/08/21 17:51 UTC 版)

力まかせ探索」の記事における「力まかせ探索の高速化」の解説

力まかせ探索アルゴリズム高速化する方法として、その問題特有のヒューリスティクス使って探索空間(すなわち解候補集合)を狭める方法がある。 例えば、エイト・クイーン場合考えてみよう。2つ上のクイーンを同じマス置けないという事実を使えば考慮すべき組合せ64個のマスから8個のマスを選ぶことに他ならず、解候補数は 64!/56!/8! = 4,426,165,368 となる。 さらにもっと考察すれば、2つクイーンが同じ行や列に配置されていれば、解にはならないということ言える。従って、さらに解候補制限することができ、クイーン1は行1に、クイーン2は行2に、というようにそれぞれ別の行になるよう配置すればよい。このような配置をするには、配置を8要素配列(c[1] から c[8])で表しそれぞれの要素は 1 から 8 までの値をとるようにする。従って、c[1] にはクイーン1の列番号、c[2] にはクイーン2列番号というふうに格納する。さらに、これらの値は全て違う値でなければならないので、解候補数は 1 から 8 までの整数順列にまで削減される。つまり 8! = 40,320 であり、これは当初の解候補数の10万分の1である。 この例で判るとおり、ちょっとした問題分析で解候補数が劇的に削減できることが多く解けない問題簡単な問題になる。またこの例では、制限された解候補数え上げる方法firstnext で順に解候補生成する方法)もオリジナル比較して複雑化ていない場合によっては、問題分析によって解候補全て妥当な解となるような制限発見できることもある。すなわちそれは、全ての解を列挙できる新たなアルゴリズムであり、力まかせ探索とは異なるものである。例として、2つ単語互いアナグラムかどうかチェックする問題考えてみよう。単純に力まかせ探索を行うなら、一方単語文字全ての可能な並べ替え生成することになるだろう。しかし、この問題それぞれの単語文字ソートしたり字種ごとにカウントすることで簡単に比較可能となり、力まかせ探索を必要としない

※この「力まかせ探索の高速化」の解説は、「力まかせ探索」の解説の一部です。
「力まかせ探索の高速化」を含む「力まかせ探索」の記事については、「力まかせ探索」の概要を参照ください。

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



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

辞書ショートカット

すべての辞書の索引

「力まかせ探索の高速化」の関連用語

力まかせ探索の高速化のお隣キーワード
検索ランキング

   

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



力まかせ探索の高速化のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの力まかせ探索 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS