- ベストアンサー
チェス世界王者に勝つコンピュータの序盤・中盤のアルゴリズム?
チェス世界王者が敗北 コンピューター「ディープフリッツ」に という記事が今日出ていましたが、 こういうチェスのコンピュータソフトはどのような戦略で戦っているのでしょうか? 詰めの段階の計算速度はコンピュータは速いと思うのですが、序盤、中盤はどのように戦っているのでしょうか? ・過去の棋譜を大量に持っている? ・なんかすごいアルゴリズムがある?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ディープフリッツも基本的にはディプブルーと同じで、膨大な量の序盤データを統計的に解析したデータに、ヒューリスティックな加工を加えたものであると考えられます。 ヒューリスティックな加工をしていないものなら、いくつかの市販将棋ソフトでも採用していますが、まだまだのようです。 それより一歩進んで、序盤の場合だと曖昧検索による候補手生成なども取り入りてアマ四五段程度にまで指せる能力も身につけている励棋のデータベースもあります。 ちなみに励棋はチェスも指せますが、チェスの序盤データベースは、まだ提供していません。 中盤はmoritan2さんのおっしゃる通りです。
その他の回答 (3)
- moritan2
- ベストアンサー率25% (168/670)
チェスの探索方法はそれほど詳しくないので、私の専門の将棋(元専門家?)を例にお答えします。 終盤であるかどうかを特別に認識はする必要ありません。定跡からはずれた局面では、どんな局面でも寄せがあるかどうかは必ず調べます。この探索は評価関数を使わないので、非常に高速です。中盤ならこの探索はすぐに手が続かなくなるので、探索のコストはほとんどかかりません。 寄せが無いなら中盤なので、普通に評価関数を用いた探索を行います。
お礼
ありがとうございます。
- toyomimi
- ベストアンサー率32% (9/28)
A.NO2への回答です。 寄せがあるか、必至があるか、詰みがあるか、これが終盤ですね。 詰みに関しては低速のノートで1525手詰を15分程度で解けるようになりました。 某君のところでは24時間程度と聞いています。 どちらにしてもごく一部の天才以外の人類を超えましたね。
補足
ありがとうございます。 >寄せがあるか、必至があるか、詰みがあるか、これが終盤ですね。 はい、そう思います。 しかし、コンピュータは、どのようにして終盤に入ったと判断するのでしょうか? ●オープニングデータベースから外れた! →中盤(αβ法と評価関数などのアルゴリズムを使う) は分かったのですが、 ●????????? →終盤(詰みを探すアルゴリズムを使う) の?の部分が知りたいです。
- moritan2
- ベストアンサー率25% (168/670)
序盤はオープニング(定跡)データベースを使います。 オープニングデータベースから外れたらその先は中盤です。ここからは、αβ法と評価関数を使ったしらみ潰しの読みによって最善手を決定します。評価関数とは駒の損得やその他の形勢に関係する要因を分析して、ある局面がどの程度優勢(不利)なのかを数値で返す関数です。αβ法は代表的なゲームの木の探索アルゴリズムです。詳しくはgoogleなどを使って検索すればたくさんヒットすると思います。コンピュータは十数手先までの局面をαβ法を使ってしらみ潰しに読みます。
お礼
オープニングデータベース→中盤→という感じですね。 どのように「終盤」であることを発見するのでしょうか?
お礼
オープニングデータベース→中盤→という感じですね。 どのように「終盤」であることを発見するのでしょうか?