コンパイルの方法

g++とmakeが使える環境で、Rayのホームディレクトリに移動して、makeを実行すると実行ファイルが生成されます。

遊び方

実行ファイルrayをそのまま実行すると、1スレッドを使用して1手10秒考えます。
Rayには様々なコマンドがあり、施工時間や強さを変更できます。

コマンドラインオプション

オプション 概要 備考
--playout <プレイアウト回数> 1手あたりの探索回数を固定して着手を行います。 棋力を固定して遊ぶ場合に選択してください。
playout、time、const-timeオプションを同時に指定すると、最後に指定したもののみ有効になります。
--time <持ち時間(秒)> 1局持ち時間を指定します。 playout、time、const-timeオプションを同時に指定すると、最後に指定したもののみ有効になります。
--size <碁盤の大きさ> 碁盤のサイズを指定します。 GTP経由でboardsizeコマンドが送られてくる場合は指定不要です。
--const-time <思考時間(秒)> 1手の思考時間を固定して着手します。 playout、time、const-timeオプションを同時に指定すると、最後に指定したもののみ有効になります。
--thread <スレッド数> 探索で使用するスレッド数を指定します。
--komi <コミ> コミを指定します。 GTP経由でkomiコマンドが送られてくる場合は指定不要です。
--handicap <置き石の数> 置き石の数を指定します。 GTP経由でfixed_handicap、set_free_handicapが送られてくる場合は指定不要です。
--reuse-subtree 前の思考結果を再利用します。 着手を速く、強くしたい場合は指定することをお勧めします。
--pondering 相手の手番の時に予測読みをします。 着手を速く、強くしたい場合は指定することをお勧めします。
このオプションを指定した場合、自動的にreuse-subtreeオプションも有効になります。
--tree-size <ノード数> 探索木のノード数を2のべき乗で指定します。
(デフォルト値16384)
パワフルなPCで長時間考える際は大きめの値を設定してください。
--no-debug デバッグメッセージの出力を抑制します。 対局実験時には指定することをお勧めします。
--superko 超劫ルール(Positional Superko)を有効にします。

実際の遊び方

相当パワーのあるPCをお持ちの方で、フルパワーのRayと対局されたい場合は以下のオプションをお勧めします。

./ray --pondering --tree-size 65536 --thread <PCのコア数>