Skip to content

第4回世界将棋AI電竜戦本戦バージョン (V0.2.7)

Latest
Compare
Choose a tag to compare
@Lefu777 Lefu777 released this 03 Dec 14:19
· 8 commits to main since this release

エンジン設定

時間制御に関する設定

  • 思考時間 < min(minimum_thinking_time, 思考時間 * minimum_thinking_time_ratio_x100 / 100) の時、探索を強制的に続行。

  • 思考時間の限界 = 残り時間 / max(div_init - 手数, g_div_final)

  • 次善手の勝率が、最善手の勝率のextend_time_sf_ratio_x100% より高ければ探索延長をする。

その他の設定

オプション名 説明
stochastic_ponder 確率的ponderを有効にするか否か
network_delay 通信の遅延時間の目安。切れ負けしないようにこの分だけ早めに指す。
print_pv_per_playout このプレイアウトごとにPVを表示
is_fp16 fp16を用いるか否か。有効にしておくことを推奨。
book_check_depth_limit_last 有効な場合、まず評価値だけで最善手を探して、最後にdepth_limitを満たすか判定する。無効にした場合、depth_limitを満たす指し手の中から最善手を探す。
dfpn_self_hash_size 詰将棋エンジンで手番側の局面を探索する際の置換表のサイズ。
dfpn_enem_hash_size 詰将棋エンジンで相手側の局面を探索する際の置換表のサイズ。
root_dfpn_threads root局面を探索する詰将棋エンジンのスレッド数
pv_dfpn_threads PV上を探索する詰将棋エンジンの合計スレッド数
pv_dfpn_threads_per_node PV上を探索する詰将棋エンジンが1局面当たり何スレッド割くか。1が推奨値。

※特に説明が必要と思われるオプションのみを抜粋。

注意事項など

  • 手元の環境(RTX4090, i9-13900K) では正常に動作しましたが、環境によっては正常に動作しない場合があるようです。その場合はプロジェクトから直接ビルドして下さい。

  • このバイナリが動作するには、AVX2 に対応していることが必要です。古いCPU では動かない可能性があります。

  • 末尾に_dr4と付いている方は、電竜戦の最初の玉の往復運動に対応したバージョンです。(電竜戦以外ではもう一方のバイナリを使用して下さい。)

  • デフォルトの設定では私が大会で使っていたパラメータそのままとなっています。適宜環境に合わせて変更して下さい。

  • 使用スレッド数 = threads + root_dfpn_threads + pv_dfpn_threads_per_node

  • 使用メモリサイズ(MB) = dfpn_self_hash_size + dfpn_enem_hash_size + PUCT探索で食うメモリ(未知)
    PUCT 探索で別途メモリを必要とするので、メモリには余裕を持たせてください。