kobanium / aobazero

Aoba Zero
Other
54 stars 8 forks source link

AobaZeroの自己対戦で投了するように #42

Open yssaya opened 3 years ago

yssaya commented 3 years ago

現在、developブランチで勝率10%以下で棋譜生成の自己対戦を投了するようにしています。 ただし、投了の間違い(最後まで指せば勝つのに投げてしまった)の割合が5%以下なのを確認するために 対戦の10%の棋譜では投了しないようにしています。 勝率10%で投了させることで間違う割合は1.23%ほどです。 投了させることで、囲碁の9路では棋力の向上があった、とのRayの小林さんの報告があります。 勝敗に影響のない局面(26%ほど)が減り、より重要な局面を学習できるためかもしれません。 この影響で平均手数も141手から132手に減ってます。aobazのバージョン13から適用されてます。、 Colabで動かすと投了が適用されます。近日中にv1.6にリリースも更新します。

投了勝率  全棋譜数  勝率で投げた数  間違った投了 割合  全手数    減る手数 割合
 1%      2926        2526              1( 0.04 %)  408681    57413( 14.0 %)
 2%      2926        2580              4( 0.15 %)  408681    64262( 15.7 %)
 5%      2926        2655              9( 0.33 %)  408681    79470( 19.4 %)
10%      2926        2668             33( 1.23 %)  408681   107107( 26.2 %)
15%      2926        2670             77( 2.88 %)  408681   132870( 32.5 %)
20%      2926        2677            152( 5.67 %)  408681   159443( 39.0 %)
25%      2926        2687            279(10.38 %)  408681   189917( 46.4 %)
30%      2926        2704            443(16.38 %)  408681   220909( 54.0 %)
35%      2926        2726            659(24.17 %)  408681   256285( 62.7 %)
bleu48 commented 3 years ago

対局は終局まで行うけど最終盤は学習棋譜に入れないというのが最も有効な対応に思いますが いかがでしょうか?計算機リソースの無駄でしょうか。

yssaya commented 3 years ago

ご指摘の通りだと思います。 その方が棋譜を使って学習される方も利用しやすいと思います。 現在の棋譜に勝率も付けておけば自動調整を含めて簡単だったのですが。 勝率の追加は少し大きな改良になるので、対応速度優先で今の形式にしています。

棋譜の生成速度は1.3倍程度なので、大事と言えば大事なのですが。

bleu48 commented 3 years ago

詰み探索か必至探索は面倒ですか? Bonanzaの探索部は丸ごとソースに入っているようですが

yssaya commented 3 years ago

3手詰専用関数やdfpnの詰探索はそのまま残ってるので 個々のノードで3手詰専用関数を呼んだり、ルートでdfpnを呼べば強くはなると思います。 必死は入ってないので大変かもしれません。