SILENT MAJORITYがかなり強い [コンピュータ将棋]
くじらちゃんのメインで使われているというSILENT MAJORITYが強いと評判で、それはどうも以下のやつらしい
https://github.com/Jangja/apery
色んな人が使えるようにSSE2のバイナリが添付されているが、多分AVX2でビルドしたほうが評価関数の速度が10%ぐらい上がると思う(未確認)
とりあえず自分でビルドしてみたが、MSYS2だと何箇所か修正しないとビルドが通らなかった。(元の人はVisualStudioでビルド通していた模様)
一応MSYS用修正いれてプッシュした
https://github.com/woodyring/apery/commits/silent_majority
これのコミットは大胆で、Aperyの評価関係以外を完全にStockfish7で乗っ取るように作られている。
自分が1月ぐらいにやってみたときはApery残したまま取り入れようとしたのだが、結構差異があり、特にCounterMoveは入れるのが面倒だったので断念してすっかり放置してたのだが、これを作った人はがっつり入れ替えている。
・Searcher(Aperyが学習のために使うクラス)はStockfish7にないので入れない
・Stats(HistoryHeuristicなどに使う)のDropもStockfish7(Chess)に無いので入れない
・平岡流の命名規則もStockfish7に乗り換え
というすがすがしさ。
ところが、これで4コア1秒で大樹の枝と対戦させてみると7割近く勝っている。
4コア1秒200戦ぐらいだと 132-13-54
LazySMP4コアぐらいだとNPSはほとんど同じで速度的にはメリットがない。
Apery_WCSC26と大樹の枝を同じ評価関数(20151105)を使って1秒4スレッドのときは98-14-95と勝率5割程度。
速度的にNPSはほぼ同等の場合、勝率はほとんど変わらないと思っていたので、Apery同士の対局の勝率はわかるのだが、SILENT MAJORITYの勝率は正直理解できない。
将棋所のグラフを見てると妙に逆転率が高い気がする。
結構Apery食いしてる気がしてて自分だけの(何か設定による)現象かと思ってたが、そうでもないようだ
http://wdoor.c.u-tokyo.ac.jp/shogi/view/show-player.cgi?event=LATEST&filter=floodgate&show_self_play=1&user=Apery_WCSC26_6700K%2Be733237ce43ff50e9b128d6c1b20e0d2
http://wdoor.c.u-tokyo.ac.jp/shogi/view/show-player.cgi?event=LATEST&filter=floodgate&show_self_play=1&user=SILENT_MAJORITY_4770K%2Bf6bb59406cd0bc087f6797840e553ddc
Apery_WCSC26の成績が悪いのはSILENT MAJORITYに負けまくってるからで、全体としてSILENT MAJORITYのほうが強いことになる。
そこで、やねうら王フレームワークで0.1秒1コアで対戦させる。もしLazy SMP以外に良いところがあればここでも7割勝つはずであるが、この場合、大幅に負け越した。(データ失念)
また2chのスレでも2000~3000局対戦させて、55%程度という話もあり、何が要因か絞りかねている。
まあ、とにかく現状ではSILENT MAJORITYはオープンソース最強ではないかと思われるので、鉱脈がどこにあるかぼちぼち見ていきたい。
https://github.com/Jangja/apery
色んな人が使えるようにSSE2のバイナリが添付されているが、多分AVX2でビルドしたほうが評価関数の速度が10%ぐらい上がると思う(未確認)
とりあえず自分でビルドしてみたが、MSYS2だと何箇所か修正しないとビルドが通らなかった。(元の人はVisualStudioでビルド通していた模様)
一応MSYS用修正いれてプッシュした
https://github.com/woodyring/apery/commits/silent_majority
これのコミットは大胆で、Aperyの評価関係以外を完全にStockfish7で乗っ取るように作られている。
自分が1月ぐらいにやってみたときはApery残したまま取り入れようとしたのだが、結構差異があり、特にCounterMoveは入れるのが面倒だったので断念してすっかり放置してたのだが、これを作った人はがっつり入れ替えている。
・Searcher(Aperyが学習のために使うクラス)はStockfish7にないので入れない
・Stats(HistoryHeuristicなどに使う)のDropもStockfish7(Chess)に無いので入れない
・平岡流の命名規則もStockfish7に乗り換え
というすがすがしさ。
ところが、これで4コア1秒で大樹の枝と対戦させてみると7割近く勝っている。
4コア1秒200戦ぐらいだと 132-13-54
LazySMP4コアぐらいだとNPSはほとんど同じで速度的にはメリットがない。
Apery_WCSC26と大樹の枝を同じ評価関数(20151105)を使って1秒4スレッドのときは98-14-95と勝率5割程度。
速度的にNPSはほぼ同等の場合、勝率はほとんど変わらないと思っていたので、Apery同士の対局の勝率はわかるのだが、SILENT MAJORITYの勝率は正直理解できない。
将棋所のグラフを見てると妙に逆転率が高い気がする。
結構Apery食いしてる気がしてて自分だけの(何か設定による)現象かと思ってたが、そうでもないようだ
http://wdoor.c.u-tokyo.ac.jp/shogi/view/show-player.cgi?event=LATEST&filter=floodgate&show_self_play=1&user=Apery_WCSC26_6700K%2Be733237ce43ff50e9b128d6c1b20e0d2
http://wdoor.c.u-tokyo.ac.jp/shogi/view/show-player.cgi?event=LATEST&filter=floodgate&show_self_play=1&user=SILENT_MAJORITY_4770K%2Bf6bb59406cd0bc087f6797840e553ddc
Apery_WCSC26の成績が悪いのはSILENT MAJORITYに負けまくってるからで、全体としてSILENT MAJORITYのほうが強いことになる。
そこで、やねうら王フレームワークで0.1秒1コアで対戦させる。もしLazy SMP以外に良いところがあればここでも7割勝つはずであるが、この場合、大幅に負け越した。(データ失念)
また2chのスレでも2000~3000局対戦させて、55%程度という話もあり、何が要因か絞りかねている。
まあ、とにかく現状ではSILENT MAJORITYはオープンソース最強ではないかと思われるので、鉱脈がどこにあるかぼちぼち見ていきたい。
コメント 0