学習ルーチンの分散コンピューティング化を検討中
GA将?の学習ルーチンは、ミニバッチサイズ(1回のパラメータ更新に使用する、自己対局の棋譜の数)を大きくすると、学習が安定する傾向があります。
ただ、私のPC(Core i7 5960X)では、マシンパワーの関係上ミニバッチサイズは500~1000程度が限界です。
という訳で、マシンパワーを提供してくださる方がみえれば、その力をお借りしてミニバッチサイズを2~3桁上げれないかと検討中です。
当面は5五将棋モードで学習する予定ですが、将来的には本将棋でも同様の事をしてみようと検討しています。
動作環境は下記の通りです。
- OS:Windows 8.1/10 x64(エディション問わず)
- CPU:POPCNT命令をサポートしたCPU(Intel製であれば、Core iシリーズ以降)
- RAM:4GB以上(実行するスレッド数に応じて増加します。)
- その他:Javaの実行環境(JRE*1のインストール必須)
学習の流れとしては、下記の様な感じで考えています。
- 初期パラメータファイルを、各クライアントにネットワーク経由で配布。
- 10分程度、各クライアントが自己対局を実施。
- 全クライアントから、パラメータ更新に必要なデータをサーバに送付。
- サーバ上でパラメータ更新。
- 全クライアントに、最新のパラメータファイルを配布。
- 2.に戻る。
金銭的なお礼は出来ませんが、5.で配布したパラメータファイルはユーザ様がGA将?相手に対局する為に使用可能にしてはどうかと思います。(UEC杯で上位入賞が狙えそうなパラメータファイルを、早期に入手可能になります。)
また、ユーザ様の提供してくださったマシンパワーを、GA将?のウェブサイトでランキング形式で公開してみようと検討中です。(こちらに関しては、現在検討中ですので、場合によっては非公開とさせて頂く可能性もあります。)
https://twitter.com/MoriokaYuichi/status/1213718758335795200 でアンケート実施中です。ご興味がありましたら、投票をお願いします m(_,_)m