少し前にdlshogiの先手勝率について調べた。
今回は、dlshogiの学習時の自己対局での先手勝率について調べた。
開始局面
現在、dlshogiの自己対局は、floodgateの16手目までの出現頻度が99パーセンタイル以上の局面を初期局面集として、そこからさらに16手MCTSの訪問回数に応じた確率で手を選択(ただし、価値が最善手の0.9以下は除く)した局面を開始局面としている。
したがって、開始局面は、16手目~32手目の局面になる。
開始局面をこのようにした場合、生成される局面は、87%がユニークな局面になる。
なお、対局中の指し手の選択では最善手と次善手の訪問回数が僅差の場合は、訪問回数に応じた確率で選択することで、ランダム性を加えている。
水匠4改とのリーグ戦
自己対局中に、32/384の割合で、水匠4改との対局も行っている。
開始局面での手番はランダムに選択している。
対局条件
dlshogi | 1万プレイアウト(探索延長あり) |
---|---|
水匠4改 | 510万ノード |
この条件で、dlshogiと水匠4改の勝率は、50.46%でほぼ互角になる。
なお、以前にdlshogiと水匠のNPSの違いについて記事にしたときに、dlshogiのNPSは水匠の1/338であったが、強化学習ではdlshogiも水匠もシングルスレッドで動作しているため、互角となるノード数の条件が変わってくる。
先手勝率
259,873対局のデータについて調べたことろ、自己対局と、水匠4改との対局での、先手勝率は以下の通りであった。
自己対局 | 0.534 |
---|---|
dlshogi対水匠4改(dlshogi先手) | 0.547 |
dlshogi対水匠4改(dlshogi後手) | 0.537 |
以前の平手開始局面からの調査では、dlshogi対水匠4の先手勝率は57.55%であったが、それよりもやや低い値となっている。
まとめ
floodateの頻出局面ら一定手数のランダムプレイを行った局面から開始すると、先手勝率は、約53%であることがわかった。
平手開始局面から測定した場合の勝率と比べると、やや低い値となった。
なお、水匠4改との対局では、dlshogiの先手勝率が54.7%とやや高かった。dlshogiがfloodgateでの先手勝率が高いことと関連していそうである。
調査時のログ
F:\hcpe3>python -m dlshogi.utils.stat_hcpe3 F:\hcpe3\selfplay_pre8_resnet15_swish_b4096lr004-008_floodgate16_s4k_po10000-20.hcpe3 moves black win draw nyugyoku opponent count 259873.000000 259873.000000 259873.000000 259873.000000 259873.000000 mean 118.161009 0.496596 0.071223 0.016343 0.109519 std 45.420141 0.499989 0.257198 0.126790 0.412878 min 23.000000 0.000000 0.000000 0.000000 0.000000 25% 90.000000 0.000000 0.000000 0.000000 0.000000 50% 113.000000 0.000000 0.000000 0.000000 0.000000 75% 139.000000 1.000000 0.000000 0.000000 0.000000 max 508.000000 1.000000 1.000000 1.000000 2.000000 black win rate 0.5346779138562503 moves black win draw nyugyoku opponent count 240890.000000 240890.000000 240890.000000 240890.000000 240890.0 mean 116.860110 0.494753 0.073623 0.013155 0.0 std 43.384848 0.499974 0.261157 0.113940 0.0 min 23.000000 0.000000 0.000000 0.000000 0.0 25% 90.000000 0.000000 0.000000 0.000000 0.0 50% 113.000000 0.000000 0.000000 0.000000 0.0 75% 138.000000 1.000000 0.000000 0.000000 0.0 max 508.000000 1.000000 1.000000 1.000000 0.0 black win rate 0.5340727297170128 moves black win draw nyugyoku opponent count 9505.000000 9505.000000 9505.000000 9505.000000 9505.0 mean 130.786007 0.516465 0.038927 0.050395 1.0 std 62.515211 0.499755 0.193431 0.218769 0.0 min 23.000000 0.000000 0.000000 0.000000 1.0 25% 87.000000 0.000000 0.000000 0.000000 1.0 50% 116.000000 1.000000 0.000000 0.000000 1.0 75% 163.000000 1.000000 0.000000 0.000000 1.0 max 499.000000 1.000000 1.000000 1.000000 1.0 black win rate 0.5373836891078271 moves black win draw nyugyoku opponent count 9478.000000 9478.000000 9478.000000 9478.000000 9478.0 mean 138.563304 0.523528 0.042625 0.063199 2.0 std 64.715036 0.499472 0.202021 0.243333 0.0 min 23.000000 0.000000 0.000000 0.000000 2.0 25% 92.000000 0.000000 0.000000 0.000000 2.0 50% 127.000000 1.000000 0.000000 0.000000 2.0 75% 173.000000 1.000000 0.000000 0.000000 2.0 max 483.000000 1.000000 1.000000 1.000000 2.0 black win rate 0.5468371170376901 positions candidates avr max candidates visits avr top visits avr count 259873.000000 259873.000000 259873.000000 259873.000000 259873.000000 mean 96.200879 11.320640 35.235723 5597.170238 4018.777710 std 43.629254 2.362279 20.427705 538.479582 267.355648 min 3.000000 4.272727 5.000000 3062.600000 1552.294118 25% 69.000000 10.040816 23.000000 5261.786885 3935.833333 50% 92.000000 10.864865 28.000000 5519.361963 4062.797619 75% 118.000000 11.906250 40.000000 5834.141026 4172.319149 max 490.000000 44.182692 263.000000 13453.400000 5747.750000 sum positions 25000011 unique positions 21749595 unique positions / sum positions 0.8699834172072964