Apery新評価関数による棋力の向上
Silent Majority 1.1 とYaneuraOu 2016midはほぼ同じ棋力を持ち、ともにApery評価関数を用いています。デフォールトではAperyWCSC26の評価関数20160307版を用いていますが、現在、開発者の平岡氏がコミュニティーの力を借りて精力的に評価関数の改良を続けています。かなり強くなっているようなので遅まきながら調べてみようと思い始めました。対局相手は技巧で4スレ同士の対局ではSilent Majority, YaneuraOu共にレーティングが100以上離れていました。評価関数を新しいものにしたときにどのように対局結果が変わるのかを見ていこうと思います。それぞれ結果が出るたびにツィッターでつぶやき、それをこちらに追記していく形にしていこうと思います。棋譜はこちらに置いています。新評価関数に変更することによりApery評価関数を用いるているソフトはすべて強化されます。(Apery, Silent Majority, YaneuraOu 2016mid, god_whale_std4a, Usapyon2)。現段階(201600803)ですでにR100程度の向上が見られており、今後さらに伸びていくものと考えられます。
Aperyの新評価関数はAperyGenerateTeacherのページから最新バージョンを手に入れ、展開した後binディレクトリに入っている日付(20160803など)に入っています。これはもともとApery強化用に配布されているものですので、評価関数を使うときには、Apery強化にも協力いたしましょう。これらのフォルダーをフォルダーごとソフトが入っているフォルダにコピーし、ソフトの設定、Silent MajorityであればEval_Dir、でそのフォルダを指定します。YaneuraOuの場合は評価関数格納フォルダでそのフォルダを指定します。最初は5秒対局で調査をしましたが、時間がかかりすぎるのと結果があまり変わらないことが確認できたので一手1秒対局に移行することにしました。以下設定です。
テスト機材: CPU:Intel Core i7 6700 (Skylake), 3.4GHz, 4コア 8スレッド RAM: 16GB Windows 10 homeソフトの共通設定: 1手1秒、4スレッド、Hash 1GB, Ponder=off
技巧:Own book=on, Narrow book = on Tiny book =off, Byoyomi margin=0
Silent Majority 1.1 AVX2 : 定跡 book.bin, Best book move =off, Byoyomi margin=0
YaneuraOu 2016mid AVX2 v 3.44: 定跡:standard, narrow book on, NetworkDelay=0, NetworkDelay2=0
Apery新評価関数は関心が高く寄稿データをいくつかいただいています。設定は上記のものと違いますので設定は寄稿データのセクションでご確認ください。以下は私のところで行った対局データとまとめて表示します。備考欄がないのは上の設定で私が行った調査です。(SM = Silent Majority 1.1.02 AVX2, やね =YaneuraOu 2016mid 3.44 AVX2, やねS=YaneuraOu 2016mid 3.44 SSE4.2, やね*=YaneuraOu 2016mid 3.57 AVX2, 技巧=gikou160606)
追記 8/19: やねうら王の定跡ファイルはstandard_book.dbを用いていましたが、大定跡(yaneura_book1.db)を用いたほうが勝率がやや良い(20150805を用いた技巧戦ではR34)ことを認識しましたのでそちらにスイッチすることにいたします。インストールの方法はオリジナルサイトを参照してください。注意点としてはnarrow bookのオプションをoffにすることです。
ここまでのデータについてコメント
評価関数 20160803 Silent Majorityとの組み合わせで勝率0.494 で誤差の範囲で技巧と互角。やねうら王との組み合わせで勝率0.437。レート差44でわずかに及ばず?技巧から見た両者のレート差は約40。
評価関数 181_0020Gはやねうら王開発者磯崎氏が公開しているApery系ソフトで使用可能な28個の評価関数のうち最も強いとされるもの。やねうら王を用いた自己対局ではAperyWCSC26の評価関数に比べてR33程向上。技巧との対局ではやねうら王と用いるとあまり振るわず、Silent Majorityとの組み合わせでは技巧に互角に近い力を示しました。技巧から見た両者の差は約120で20160803と比べると評価関数とソフトの相性の違いのようなものが見えます。
評価関数20160810、私のデータでは技巧に対する勝率が落ちてしまっていますが、統計の範囲内か。寄稿していただいたデータではもっと拮抗していますね。
評価関数20160812 私のデータは帰省中のためNotePCで行った対局。2スレですがデスクトップの1スレ相当のNPS。私のデータはほぼ互角ですが、寄稿データはやや魔女が優勢に。
評価関数20160815 Silent Majorityが微差ながら技巧を上回るようになる。やねうら王もほぼ技巧と並んだ。もともとのAperyWCSC26の評価関数の時のレート差と比較すると、Silent Majorityが+146, やねうら王が+138で統計誤差の範囲で一致している。(8/18追記) 0810, 0812についても寄稿していただいた方のデータ。そちらの環境では私のところよりもSMがR20-R30ほど優勢になっているようです。(8/19追記) やねうら王の定跡ファイルをstandard_book.dbから大定跡yaneura_book1.dbに変更したところ勝率がR34上がり技巧にわずかに勝ち越し、Silent_Majorityと同じ強さになりました。(8/20 追記) 評価関数20160815でのSM vs やねの対局はほぼ互角という順当な結果。
評価関数20160822 変化は誤差に隠れてあまり見えていない。寄稿していただいたデータも同じような傾向でしょうか。
評価関数20160824 やねうら王の勝率が上がる一方でSMでは下がってしまった。やねうら王とSMはほぼ互角。寄稿していただいたデータではSMが優位。私のデータとはR40くらい違っている。いただいたデータの一手あたりのノード数は800-1000kノードに対して私のデータは2000-2600kノードと、読みの深さが2.5倍程度違うことが影響しているのか。SMは前バージョン1.1.0の方が若干勝率が良いように見える。(まふさんの指摘による)
評価関数20160903 やねうら王, SMともに勝率が上昇したが、やねうら王のR差64はこれまでで最も良い。寄稿データではSMも有意に伸びている。技巧の定跡設定をnarrow book offにしたところ、SMがR45勝ち越した。寄稿データの設定もnarrow book offだったのでデータの食い違いが定跡設定の違いによることが理解できた。narrow book on/offがR40という大きな違いを生みうるのは新しい認識。SMとやねは直接対局させると誤差の範囲で互角。微妙な差はあるもののこの傾向はどの評価関数でも同じ。9/8 Narrow book=on, Tiny book=onでの寄稿データ。誤差範囲で一致したと判断しています。Tiny book設定の影響はそれほど大きくないか。
評価関数20160908 私のデータは伸び悩み傾向。特にやねの勝率が下がった。寄稿データでは定跡設定を変えたにもかかわらずSM優位が出ている。
評価関数20160911 私のデータではSM、やね両方に対して技巧に対して最も良い成績を上げている。寄稿データはやや伸び悩んだものの私のデータとの差が縮まり統計誤差範囲に再び収まる。今回のupdateは対技巧に関してはわずかながら前に進んでいるように見える。(9/14追記) 技巧の評価関数は中終盤に強い一方で序盤に弱点があり、その部分を定跡がカバーしているのではないかと考え、序盤から定跡を外すとなるとどうなるか考えてみた。結果はSM、やね両方の戦績が向上してSMが技巧に対してR差95, やねが技巧に対してR差96となりほぼ同等な結果に。SM-やね-技巧は以前より三すくみ傾向がみられたが、SM vs やねは上のデータにあるように誤差の範囲内で全く互角( SMからみたやねへのR差は各評価関数に対して 0815: ΔR=8, 0821: ΔR=10, 0824: ΔR=-8, 0903: ΔR=3) で、技巧に対するR差も同じとなったので三すくみ関係が解消している。三すくみ現象の原因は各ソフトの定跡と評価関数の組み合わせに起因すると考えられる。やねうら王大定跡のon/offの影響が比較的小さかったのは、かなり早い段階で定跡から外れることが多い(10手前後)ため定跡offとの差がほとんどない、ということだったのではないだろうか。 (9/17追記) 持ち時間で勝率がどう変わるかを見るため一手5秒で定跡offでSMとやねうら王を技巧と対局させた。時間的制約のため対局数は500局まで到達できなかったが、SMで+54, やねで+9技巧に対するレート差が増えた。結果的に定跡を外して5秒対局をさせるとSMが技巧をR149上回る。これを仮にレーティング表に加えるとするとR3690, さらに8スレにするとR3750程度に来ることが予想される。電王トーナメント後のトップのフリーソフトはこの辺りに来るように思われる。また、SMとやねとで長時間の強さが違うように見えるが面白い問題として残った。
評価関数20160917 (10/1) 出張のため対局データが取れなかったが、一日だけ帰れたのでその間に仕込んでおいた。やねは1手5秒定跡offで技巧と対局。レート差が105から142に37アップ。この評価関数の優秀さが理解できた。もともとのApery WCSC26と比べるとレート差がマイナス145からプラス142にR287アップ。定跡を切るという裏技もあったけれどもこの上昇は素晴らしかった。
魔女のほうは電王Tも近いので大会ルール持ち時間15分秒読み10秒で対局。持ち時間があると技巧は序盤に時間をかけて序盤の欠点を補っているように見える。長い時間だと技巧が不利になるように予想できたが、結果的には初手より一手5秒の対局に比べるとレート差が縮まった。やねのレートの伸びの分だけ魔女も伸びたとすると1手5秒だとレート差が180くらいあってもよかったのが80に留まっている。序盤に時間を投資することでレート100くらい持ち直しているのではないか。
8月6日から始めたこのブログ記事も本日10月1日をもって終了。来週、電王Tも始まります。途中、寄稿データをいただいた方たちに感謝いたします。定跡設定のレーティングに対する寄与や持ち時間による強さの変化などいろいろ観察できて楽しい2か月間でした。
評価関数20160930 (10/6) 終了宣言後に新たな評価関数が公表。乗り掛かった舟なので、SMのみ一手5秒で対局させる。結果は20160917のやねとほぼ同じ。電王T後に発表されるApery本体と評価関数を楽しみにしております。