gpsfishオリジナル vs gpsfish based on sf.2.2 [将棋]
■いきなり投了するバグの修正
2chのコンピュータ将棋スレに貼られてたが、さっそく対局やってみた人がいたようで、いきなり投了するとの書き込みを発見
そもそも動作確認は検討しかやってなくて、対局はやらせたことがなかったのでまったく見落し。
確かに初手でいきなり投了するので、コマンドを見てみると
bestmove 7?7? ponder resign
という文字が。オリジナル版はponder以下がない。
でコードを見てみると、次の手が入っている前提でponderを返すようになっていたが、平手の初期局面では間違いなくbookによるmoveなので入っていない。
値が入っていないmoveをoslのshow関数で変換するとイリーガルムーブのときは%TORYOになっていた。
なので、応手があるかどうかで判定してある場合は返すようにした。(コミット済み)
https://github.com/woodyring/Stockfish/commit/3fea5da1d464037b4de8d3be0d9f8afb1a51b674
まったく返さないとponder処理が動かないので。動いたところでちょっと動きがおかしい。
ponderを返すと将棋所に予想手が出る。で読みが当たった場合、1秒で応答してしまう。
そこはそのまま継続して読むべきではないか。
トータル時間が決まってるならありだが、n秒切れ負けで読まないというのは無い。
設定ミスかもしれないが。
■ベンチマーク
bonanzaとgpsfishの比較は意味が無いが、gpsfish同士なら意味があるだろうということでやってみた。
というか、動作確認はbenchでもやっていたが、時間がかかるのでたまにしかやっていなかった。
Core i7 4770 (4core + 4HT)
./gpsfish bench 1024 4 20 default time
GPSfish 0.2.1+r2837 gcc 4.6.3 osl wordsize 32 gcc 4.6.3
===============================
Total time (ms) : 320072
Nodes searched : 169939707
Nodes/second : 530942
GPSfish r2837 Stockfish 2.2.2 64bit
===============================
Total time (ms) : 320000
Nodes searched : 201746847
Nodes/second : 630458
8スレッドの場合
===========================
Total time (ms) : 320000
Nodes searched : 189518110
Nodes/second : 592244
CPU名とかメモリとかセッティングとかを表示させたいところ。
1割から2割ぐらい読んでるので普通に考えれば強いのではないかと思うところだが・・・
■強いのか
結論から書くと、読み抜けが多く中盤逆転されやすい(ので弱い)
特に短時間対戦には不向きに見える
・どっかで評価値が間違って更新されている可能性
・探索のカットが間違っている
などなど考えられることは山ほどある。頭を使わないでマージしたので。
幸い公開したので本家の人が直してくれる?ことを期待したい。
あと、2.1 -> 2.2のときのNPS表示方法を変えていたのを思い出したので、実は早くない可能性すらある
2chのコンピュータ将棋スレに貼られてたが、さっそく対局やってみた人がいたようで、いきなり投了するとの書き込みを発見
そもそも動作確認は検討しかやってなくて、対局はやらせたことがなかったのでまったく見落し。
確かに初手でいきなり投了するので、コマンドを見てみると
bestmove 7?7? ponder resign
という文字が。オリジナル版はponder以下がない。
でコードを見てみると、次の手が入っている前提でponderを返すようになっていたが、平手の初期局面では間違いなくbookによるmoveなので入っていない。
値が入っていないmoveをoslのshow関数で変換するとイリーガルムーブのときは%TORYOになっていた。
なので、応手があるかどうかで判定してある場合は返すようにした。(コミット済み)
https://github.com/woodyring/Stockfish/commit/3fea5da1d464037b4de8d3be0d9f8afb1a51b674
まったく返さないとponder処理が動かないので。動いたところでちょっと動きがおかしい。
ponderを返すと将棋所に予想手が出る。で読みが当たった場合、1秒で応答してしまう。
そこはそのまま継続して読むべきではないか。
トータル時間が決まってるならありだが、n秒切れ負けで読まないというのは無い。
設定ミスかもしれないが。
■ベンチマーク
bonanzaとgpsfishの比較は意味が無いが、gpsfish同士なら意味があるだろうということでやってみた。
というか、動作確認はbenchでもやっていたが、時間がかかるのでたまにしかやっていなかった。
Core i7 4770 (4core + 4HT)
./gpsfish bench 1024 4 20 default time
GPSfish 0.2.1+r2837 gcc 4.6.3 osl wordsize 32 gcc 4.6.3
===============================
Total time (ms) : 320072
Nodes searched : 169939707
Nodes/second : 530942
GPSfish r2837 Stockfish 2.2.2 64bit
===============================
Total time (ms) : 320000
Nodes searched : 201746847
Nodes/second : 630458
8スレッドの場合
===========================
Total time (ms) : 320000
Nodes searched : 189518110
Nodes/second : 592244
CPU名とかメモリとかセッティングとかを表示させたいところ。
1割から2割ぐらい読んでるので普通に考えれば強いのではないかと思うところだが・・・
■強いのか
結論から書くと、読み抜けが多く中盤逆転されやすい(ので弱い)
特に短時間対戦には不向きに見える
・どっかで評価値が間違って更新されている可能性
・探索のカットが間違っている
などなど考えられることは山ほどある。頭を使わないでマージしたので。
幸い公開したので本家の人が直してくれる?ことを期待したい。
あと、2.1 -> 2.2のときのNPS表示方法を変えていたのを思い出したので、実は早くない可能性すらある
コメント 0