Minimax は、すでに評価されたツリーを使用します。私の欠陥はどこにあるのでしょうか?

StackOverflow https://stackoverflow.com/questions/2237685

  •  19-09-2019
  •  | 
  •  

質問

ミニマックス/ネガマックス アルゴリズムを使用しようと試み始めたところ、良さそうなアイデアを思いつきましたが、誰も使用していないため、ロジックに欠陥がある可能性があります。

これをやってみませんか:

Depth=x の 3 を作成し、どの手を打つかを考えて、相手を待ちます。彼が移動した後は、すでに評価した移動のサブツリーを取得し、古いノードを使用しながらさらに深く構築し続けることができます。すでに評価されたノードの値を使用し、新しいより深いノードからの新しい値と重み付けすることができます。

新しい値は通常の方法ほど正確ではないかもしれませんが、より深く理解して利益を得ることができます。

私の文章が悪く、構造化されていない質問で申し訳ありませんが、私の考えを理解していただければ幸いです。

役に立ちましたか?

解決

ここであなたに欠けているものは次のとおりだと思います どうやって ミニマックスは機能します。Minimax は、指定された深さ D までのすべての可能性を列挙し、D のノード (ゲーム状態) にスコアを割り当て、ツリーを上に戻り、私が最大化しているかどうかに基づいて各深さの MAX または MIN ノードを返します。プレーヤーまたは最小化プレーヤー。

トップダウンで行うというあなたの提案は、より浅い深さのノードにスコアを割り当てる必要があることを意味し、結果として評価が低くなります。

他のヒント

このアイデアは使用されていますが、別の方法で使用されています。メモリを大量に消費する検索ツリーを保持する代わりに、評価スコアは転置テーブルに保持され、再利用されます。これにより、実行時の時間を節約できます 反復的な深化, 多くのポジションには以前の検索でキャッシュされたスコアがあるためです。したがって、古い検索結果を再利用すると、中間検索の一部に役立ち、移動順序を高速化できますが、エンジンが使用している末端検索の深さを問わず、リーフ ノードを評価する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top