CSA将棋とインタフェース成功

うさぴょんのsikou.cppを参考に、CSA将棋とインタフェースできるDLLの開発が成功。
これで、GUIで操作できるようになった。
おまけにshogiサーバーにログインもできるので、
さっそく


http://wdoor.c.u-tokyo.ac.jp/shogi/


に接続してgps-1500-0と対戦させてみた。
角打ちの両成りをさばけず、完敗‥‥
でも対戦が自動なので、これは楽だ‥‥
こんなサーバーも運用されてるとは助かるなあ。

※対戦の棋譜はここに
http://wdoor.c.u-tokyo.ac.jp/shogi/LATEST/html/gps-misaki.html


CSA将棋接続で、棋譜がCSA形式で保存できるし、
CSA形式の棋譜を読み込んで、自分の思考ルーチンから利用できるので、
棋譜から統計学習するプログラムも作りやすくなった。


http://www.sgtpepper.net/kaneko/diary/
GPSの開発日誌を読むと、ゲーム学会の発表で、N-Gramで将棋の棋譜の手筋を
統計的に処理して、手筋として利用するという発表があったらしい。
このへんは自然言語処理マルコフ連鎖とかやってたときもあったけど、
将棋だって、手筋が連鎖してできてることに変わりは無いわけで。
文章は一次元で位置は単調に増えるけど、将棋は二次元で9x9の範囲なら自由に移動できるということで。
しかし、ngramを取り出すといっても局面によって動ける場所など制約は変わるので、
そのまま無理でしょうけど、
でも、定跡をそのまま比較するより、はるかに一般化ルールに近いのは確か。
まず、そもそも打てる手か? を調べて、探索して良い手だと確認してみればいいのだ。


それに頻出度は、実現確率と考えてもいいと思う。それなら頻出度に応じて、探索数を延長すればいいのだ。
YSSの0.5手延長論文を読むと、けっきょく上手くいかないってことだったけど、
手を延長する工夫をしないと、強くするのは絶対無理と思う。
あの短い秒数であそこまで深く読むbonanzaは延長はしてるんだろうと思うけど‥‥
KFEndの共謀数は何度読んでも意味がわからない(^-^;)
詰め将棋で、王の逃げられる手が少なくなる手を優先探索するってのは判りやすいけど‥‥



GPSもライブラリを公開されてるし、一日ぐらいかけてじっくり読んでみようと思う。
http://gps.tanaka.ecc.u-tokyo.ac.jp/gpsshogi/pukiwiki.php?GPSshogi