ここ一週間ほどの進捗等
学習ルーチンを色々いじってみたのものの、結局今年1月2日に対ssp勝率75.6%を記録したのを超えられませんでした。
んで、現在はその最高記録達成時の設定に戻して再度学習中。多分、これがUEC杯に向けての最後のお願いになるはず。
それから、思考時間制御関連のデータ収集&分析は完了。こっちは単純作業なんで順調に行きました。試しに20局ほど20分切れ負けでsspとスパーリングしましたが、10~15分程度で終局するみたいなんで、まぁ悪くない感じかと。
最後に、探索ルーチンの改良。今更Stockfishを真似ても面白くないんで、実現確率探索&遷移確率の学習ルーチンを実装して色々やってます。
軽く1時間ほど走らせた結果、0.17秒で10~15手ほど*1読める様になりましたが、その割にはあんまし強くなってない印象。どっかで読み抜けしてるんでしょうねぇ。
という訳で、「ほぼ進展無し」ってのが総括でしょうか。
Windows 10でキーボード入力が出来なくなった場合の対処
今日Windows 10 Proの開発用マシンを触っていたら、突然キー入力を受け付けなくなりました。
現象としては下記の通り。
- 画面描画は正常に行われている(時計の秒針やタスクマネージャーは動いている)。→フリーズでは無いらしい。
- マウスクリックは認識したりしなかったり。
- キー入力が一切出来ない。←一番致命的。
んで、再起動って手も考えたんですが、ちょっと時間のかかるデータ収集中だったんで、それはしたくなくて、色々試してみました。
まずは「フィルターキー」という機能がONになってしまった可能性があると考えて、これをOFFにしようとしました。が、そもそもマウスクリックを認識せず、コントロールパネルすら開けない。
でもって、色々やった挙げ句Ctrl-Alt-Deleteでタスクマネージャーを起動したら、何故か正常に戻りました。
本当に謎だけど、Windowsってのはそ~ゆ~モンだと思って解決済みとしました。
UEC杯までにやるべき事
- 評価関数パラメータの学習
- 思考時間制御のパラメータ調整
- Ponderの検証
1.は今の学習ルーチンが良い感じなので、ジックリ時間をかけてやれば良いはずです。
2.に関しては、大会が20分切れ負けなので、最大思考時間を90秒か120秒に設定。んで、思考開始から1秒毎に最善手と合議での票の割れ方をログに出しといて、それをベースに「n秒でm票しか割れていなかったら、ほぼ最善手*1と一致する」という統計を出し、思考時間制御のパラメータを決める予定です。
ログ出力に関しては合議用のコードをちょっといじって実装して、統計を出すプログラムの方はJavaで実装する予定。現在は1.の学習結果待ちなので、その間にこっちを実装していきます。
3.に関しては、以前「Ponder有効にすると弱くなる」って現象があったんで、それの検証。
*1:最大思考時間まで探索した結果
Adam、まだバグ持ち?
PGLeaf DreiにAdamを組み込んでみたんですが、RMSProp+Momentumより明らかに性能劣化しています。
まだどっかにバグが残っているかもしれないので、今からテストしてみます。
Adam実装完了&PGLeaf Dreiに組み込み完了
RMSProp+Momentumが思いの外良い感じだったんで、それならいっその事と思い、Adamを実装。
簡単にテストしてOKだったんで、PGLeaf Dreiに組み込んで学習用マシンに投入しました。
対ssp(ハンディキャップマッチ)で勝率80%、行けるかなぁ? 結果が出るのは早くて3~4日後、ひょっとしたら1週間~10日かかるかもです。