概要
リバーシ/オセロを一般化したゲームです。何が一般化されているかというと、
ボードサイズは任意のサイズが選べるようになっており、
初期配置は交差型と平行型が選べるようになっています。
もちろん、従来のリバーシ/オセロも「ボードサイズ8の交差型」
として遊ぶことができます。
ファイル構成
- GeneralReversi.exe
本体。 - ReadMe.txt
説明書。 - FFO#40Moves.txt
リバーシ/オセロのソルバーを評価するベンチマーク用の棋譜として最も有名なもの[0]。
この棋譜をコピーして棋譜入力を行った後、
黒プレイヤーとしてソルバープレイヤーを選択し、
ソルバープレイヤーの深さを20に設定し、
ソルバープレイヤーの順序閾値と置換閾値を適当な値に設定して、
スタートすることによりベンチマークを実行することができます。
作者の環境では、SolverMTDf-20-6-9が最速になり、7.3秒です。
ログを見るとわかりますが、この7.3秒の間に820万回の終局石差計算を行い、
白プレイヤーが以後ノーミスでプレイしたとしても、
黒プレイヤーが38石勝ちできるということを見抜きます。
自分の環境でこのベンチマークを実行してみることをお勧めします。
速さはソルバープレイヤーの種別と順序閾値と置換閾値に依存するので、
これらを適切に調整することによって最速の設定を探します。
最速設定の探し方は以下の通りです。
- ソルバープレイヤーの種別はSolverTranspositionよりもSolverMTDfの方が高速なのでこちらを設定します。
- ソルバープレイヤーの順序閾値と置換閾値はまず深さである20に両者設定します。
- ソルバープレイヤーの順序閾値を20から順に小さくしていき、最速になる値で固定します。
- ソルバープレイヤーの置換閾値を20から順に小さくしていき、最速になる値で固定します。
任意の深さに対して適用することができます。