履歴メモ(これは大会後公開予定で大会前に作成したものです。乱筆注意)

2017年の履歴を簡単に

2月下旬くらいから3月下旬くらいまで,空いてる計算機でやねうら王の評価関数生成を見よう見まねで少しやってみた。少し成果が出た気でいる。実際はゴミ。

同時期にディープラーニングをはじめてみた。GPU自体はVRでもやってみようかと購入しておいたものだ。画像系から入る。

4月に入って統計データや画像処理じゃないものをはじめてみようという辺りで以前も書いた山岡さんのblogに当たり将棋のルーチンも作成してみた。勝ち負け以前のレベルのものが,つまり反則負けが多いものが一応完成?

5月,第27回世界コンピュータ将棋選手権は結構見ていた。過去には電王トーナメントもそこそこ見ていたが前月から自作したプログラムもあり,観戦の真剣度が上がる。

クジラちゃんのノードとして参戦。62番のノードだった記憶。

大会後,選手権参加者が情報公開をしたためネット上で開発ネタが盛り上がる。個人的にもソースを読んで改良の余地があるように感じ,とうとう開発に手を出す。

相手番のときにクラスタ構成で複数手を先読みする,shotgunというコードネームはここから。

6月末,ある程度動くようになったのでfloodgate参戦。プログラムの不具合などで負けることが多い。明らかに格下の相手には短時間で勝てる。既存の技巧2ややねうら王には劣る。レーティング3000未満。

7月,sg_test02で対戦後自動感想戦システムを組み込む。03,04,05は探索部の変更・改良。03aはプロセス空間を割らずに同じハッシュテーブルを使うモデル。05aは時間の使い方を大幅変更。

8月,sg_test06くらいで大会用の原型は大凡完成。同時に技巧2とやねうら王の学習部のソースを眺める。内輪対戦で技巧2といい勝負ができるようになる。floodgateで3300くらいのレーティングが出るようになる。

9月,GPU利用の再検討を始める。これは空振る。定跡整備および探索スレッドの負荷割合の変更を進める。これは当たる。レーティング3500に近づく。

9月末,プログラム中に探索スレッドの一部が停止する致命的なデッドロックが見つかる。Win32APIを叩いたり,プロセス間通信の状態を見たりしたが最も安易な大き目のバッファに頼るというオチで終わっている。長考に入ると再発するかもしれないが決勝に残る予定はない。

10月,大会用のマシンスペックも公開されたこともあり,種々のベンチマークにより変則的な調整をしてみるが07,08は空振り。

08aがそこそこ活躍。先読み手の枝狩りが効いてるのか?

対技巧2,3分切れ負け,95勝5敗(うち3敗が切れ負け)

切れ負けはマズいので,ちょっと調整

対技巧2,5分切れ負け,98勝2敗(負けは後手番相掛かりと横歩)

対技巧2(定跡off),5分切れ負け,97勝3分け(分けは全て後手番千日手

対技巧2(定跡最大延長),5分切れ負け,96勝4敗(負けは全て後手番角交換)

floodgateのレーティングは上がってないんだがなぁ?

対技巧に過学習してる感があるが一週間切るとどうしようもない。

ーーー

追記:

最後に何故技巧2で対戦させてるかというと大会直前の追い込み及び確認として行ったんだけど,これがやねうら王エンジンで同じ評価関数だとほぼ全てのponderが当たって負けます。そういう意味で,やねうら王ライブラリ勢最弱の予定でした。

逆に技巧2には圧勝します。そういうこと。