GPS将棋とBonanzaとではどちらが強いのですか?
評価関数の改善
序盤で穴熊に組むと1000点近くになっていた現象は消えた模様
対Bonanzaの勝率は一手15秒64 bit Linux, GPS将棋だけプロファイルフィードバック最適化コンパイルという有利な条件で0.47程度(1000局)
Windows配布版は、上記の実験より速度が劣る分だけ弱くなります。GPS将棋ダウンロード
http://gps.tanaka.ecc.u-tokyo.ac.jp/gpsshogi/index.php?%A5%C0%A5%A6%A5%F3%A5%ED%A1%BC%A5%C9
0.47ですか…。最新のGPS将棋でもBonanza6に負け越すようです。
GPS将棋の評価関数の設計や実装に天才的な設計能力と実装能力、そして恐ろしい手間暇がかかっているわりには報われていないなぁというのが私の感じるところです。
私はGPS将棋を応援するために、GPS将棋を改良して、改良パッチなどを提供して差し上げたいのですが、しかしVisual C++でビルド出来ない&ソース解読がしんどいのでなかなか容易ではありません。
そういう意味ではBonanzaはソースが平易で、Visual C++で簡単にビルドでき、多くの協力者に恵まれたというのはあると思います。
GPS将棋が数人で作っているのに対して、Bonanzaのほうは数十人でバグ探しをしたり改良したりしているのに等しく、本当はGPS将棋のほうがポテンシャルがあるのだとしても、Bonanzaの進化のスピードのほうがはるかに速く、Bonanzaに勝つのは容易ではありません。
それでまあ、そういう事情を廃して、GPS将棋の評価関数がどれくらい優秀なのかどうかを判断するため、Bonanzaと同ノード数の探索をさせてBonanzaに勝ち越すかどうかを見たいのですが、それ自体が大変なことでして。
いや、同ノード数ならば当然GPS将棋の評価関数を使ったほうが勝ち越すでしょうから、Bonanzaの評価関数を使う側とGPS将棋の評価関数を使う側とのノード数をどれくらいの割合にすれば互角になるのかを調べてみたい気はしています。
しかし、この問題について考えれば考えるほどBonanzaの3駒評価が決定打のように思えてきます。
GPS将棋のここ数年の進歩を見ていると、あれやこれやいろんな特徴因子を考えたり追加したり差分計算用のコードを書いたりする手間に全然見合っていないように思うからです。
だとしたら、Bonanzaの3駒評価を学習部を改良したり、入玉用に少しだけ改良したりするほうが正しいアプローチのような気がするのです。