他の AI と競合する AI を作成する必要があります。
どちらの AI も同じハードウェアで実行され、処理時間とメモリ量は同じです。対戦相手の AI が、アルファ ベータ プルーニングを伴うミニマックス アルゴリズムを使用することはわかっています。
私の質問は、そのような相手を打ち負かすためのいくつかのアプローチは何ですか? 自分でミニマックスを使用すると、両方の AI が互いの動きを完全に予測し、ゲーム固有のプロパティ (最初の動きが勝つなど) に基づいてゲームが解決されます。
明らかな解決策は、より良い評価を可能にする可能性のある動きをどうにかして先に見ることです。プロセッサ時間は同じであるため、より深く評価することはできませんでした (反対の AI コードが等しく最適化されていると仮定して)。事前に計算されたツリーを使用してさらに利点を得ることができましたが、スーパー コンピューターがなければ、重要なゲームを「解く」ことはできませんでした。
アルファベータが剪定したような最適でないノードを意図的に選択することには、何らかの価値がありますか? これにより、対戦相手が戻ってツリーを再評価する必要があるため、CPU 時間のペナルティが発生する可能性があります。ペナルティが発生するだけでなく、ミニマックス ツリー + アルファ ベータを評価して、アルファ ベータが直接的な利益を得ることなくどのノードを削除するかを確認する必要があります。
そのような対戦相手に対して最適化するための他の戦略は何ですか?