SVRを使用したFutility Pruningのマージン決定
動的なマージンを用いるFutility Pruningという論文があるんですが、選手権後にこれを実装しようかと検討中。
んで、問題はマージン決定のフェーズと、決定したマージンを使用して探索するフェーズに分けなきゃいけないって所ですね。
今のGA将の学習方式だと、自己対戦学習時はごく浅い探索*1なので、多分マージン決定フェーズ中に探索が終わっちゃって、Futility Pruningの意味が無くなります。
という訳で思い付いたのが、マージン決定のフェーズは事前に実行しておいて、SVR*2でマージン決定出来ないかな、と。
SVRの訓練データとして局面情報とその時の最適なマージンを与えて学習し、後はSVRの出力するマージンを使用して自己対戦学習を行うという方法です。
学習の進行に従って最適なマージンが変化する可能性があるので、例えば1万局中100局はマージン決定フェーズとするとか、そういう方法も有効かもしれません。
まぁ何にせよFutility Pruningを実装してそれがちゃんと動かないと意味無いんで、まずはそこからですが。