GA将?作ってます 〜強化学習一発芸!!!〜 RSSフィード

2018/05/17

[][]カルマンフィルタを用いた強化学習 17:46

 Kalman Temporal Differencesという、TD法とカルマンフィルタを組み合わせた手法は存在する様なのですが、方策勾配法でも同様の事が出来ないかと検討中。

カルマンフィルタの基礎

カルマンフィルタの基礎

 現在はこの本を買って勉強中ですが、制御理論に関してはズブの素人なので難しい事この上無いです。

 まぁ、1ヶ月程度かけてボチボチと理解していくつもりです。

 ちなみにこれはプランBで、これとは別のプランAも並行して実装中なんですが、そっちは実験が上手く行ったらブログに書きます。

トラックバック - http://d.hatena.ne.jp/Gasyou/20180517

2018/05/04

[]GA将!!!!!!!!!の選手権は終了しました&ライブラリ制度に関して思う所 09:24

 先程帰宅し、GA将!!!!!!!!!の第28回世界コンピュータ将棋選手権は無事終了しました。

 一昨日・昨日は非常に有意義な時間を過ごす事が出来ました。主催者並びに関係者・参加者の皆様に感謝いたします。

 結果はこちらから確認出来ますが、GA将!!!!!!!!!は4勝4敗で20位。ギリギリ上位半分に入りました。ただ、4勝のうち1つは相手が勝ちを読み切った後にバグって落ちた結果拾った勝ち星ですので、実質3勝5敗ですね。

 個人的に一番嬉しかったのは、「生ける伝説」あの山下さんのYSS Zeroに勝てた事ですね。新規に作り直したとの事ですので今回のYSS Zeroが山下さんの頂点とは思っていませんが、それでも山下さんのソフトに勝てたのは何よりの喜びです。

 ただ、将棋の内容的には、YSS Zero戦も他の対局もそうでしたが、終盤の寄せがぬるいとか*1玉をちゃんと囲わないとか、色々と課題の多い内容でした。

 さて、以下は毒吐きタイムです。

 今回2回戦でArgoCorse_IcSyoと当たったんですが、開発者の市村豊さん曰く「ほぼやねうら王のままです。AWSも使えませんでした。」との言葉には正直ガッカリしました。

 私にとって選手権は年1回の「お祭り」なんですよ。なのに、なんで自宅でも対局出来るライブラリと対局しないといけないのかと。強かろうが弱かろうが、開発者のポリシーが詰まったソフトと対局したいんですよ、私は。貴重な8局のうち1局をドブに捨てた気分です。

 氏のアピール文書から一部引用します。

「負けたとしても楽しかった」と負けた人に思わせるようなゲームじゃないとゲームとして成立しないんじゃないかと言うことを思う。

https://www.apply.computer-shogi.org/wcsc28/appeal/ArgoCorse_IcSyo/appeal.txt

 私は負けましたが、全く楽しく無かったです。不快感しか得られませんでした。

 更に「合法手生成を実装するのって面倒ですよね。」とも言っていました。これはもう、正気を疑うレベルです。それを面倒と思う程度の情熱しか無いのなら、いっその事ソフトを作らなければ良いのに、と言うのが正直な感想です。

 はっきり言って、ライブラリを使ったにもかかわらず何の改良も出来ていない人は、選手権の参加をキャンセルして欲しいですね。

 もしくは、ライブラリ使用者(本家除く)はCSAで事前審査して、例えば「ライブラリよりレーティングが200以上向上していない場合は、選手権への参加を認めない」とかして欲しいです。まぁ、これはCSAの負担が大きいので実現は難しいかもしれませんが。

 ライブラリ制度の本来の目的は「新しいアイデアを実装するにあたり、それ以外の部分の実装の負担を減らす事により、新規参入の敷居を下げる」事だったと思います。

 ですが、現状は「お手軽に手抜きしてでも良いから勝つ為の手段」として捉えている人が一定数いるのは確かだと思います。

 という訳で、個人的には現在のライブラリ制度And/Or選手権のルールには一部問題が有ると考えていますので、何とか改善して欲しい所です*2

[][]選手権で見えた課題とその対策 15:48

 まず、課題。

  1. 駒割を重視しすぎて指し手がヌルい。
  2. 圧倒的な学習時間(≒対局数)不足。
  3. テキトー過ぎる思考時間制御。

 1.に関しては「15年前の評価関数だね」という感じの有り難い助言を頂きました。本当にその通りで、ここは改善の余地ありです。

 2.ですが、5五将棋モードでは1年間でレーティングが300上昇していたので、本将棋モードでもちゃんと時間をかければ、もうちょっとマシになっていた可能性があります。ただ、今後は「少ない対局数でも効率良く学習可能」って方向に持って行きたいので、「半年かけてPGLeaf Zweiの学習を回す」とかはしない予定です。

 3.はまぁ…統計とかちゃんと採らずに、勘で思考時間制御のパラメータ調整していたんで、単に私の手抜きです。

 んで、対策。ほとんど正攻法で行くつもりです。

  1. L2正則化が強すぎた可能性が有るので、その辺をちゃんと実験・比較してみる。
  2. 新しい(PGLeaf系では無い)学習ルーチンの設計・実装。
  3. 思考時間と指し手の変化割合の統計を採って、それをベースにパラメータ調整する&最低思考時間を1秒から5秒程度に伸ばす。

 とりあえず、この辺は来年の選手権までにやりたいですね。

 スケジュールとしては、まず2.の学習ルーチンを確立させ、その後1.の最適なメタパラメータを探る。最後に思考時間制御の統計採取*3って感じで考えています。

[]Ver.10の表記は「GA将?」とします 15:54

 ちゃんと書かずにブログタイトルとTwitterアカウント名だけ変更していましたが、GA将 Ver.10は「GA将?」に決めました。

 '?'一個で'!'10個分という表記法としますので、Ver.11は「GA将!?」になる予定です。鬼が笑い死にする再来年の話ですが。

*1:相手玉の反対側にと金を3枚作ったりしてた

*2:この辺の話は参加者向けアンケートにも書きました。

*3:分析するツールは学習走らせてる間に実装する

トラックバック - http://d.hatena.ne.jp/Gasyou/20180504

2018/04/21

[][]ヤバい所の話じゃないかも 18:48

 ssp相手のスパーリングで、+3000点からの逆転負けとかが非常に多いです。目視している限りでも、負けパターンの半分はそんな感じ。

 三駒関係+αの重み*1を色々変えて実験中ですが、現時点でこれでは選手権は絶望的ですね。

 …最悪、Depth1で学習したパラメータで参戦になるかも。そうしたら、アピール文書の損失項の部分も訂正しないとですね。

*1BonanzaのFV_SCALEに相当する値

トラックバック - http://d.hatena.ne.jp/Gasyou/20180421

2018/04/16

[][]頓死が多い 17:47

 sspとスパーリングすると、大抵終盤で頓死します。どうも、三駒関係+αの重みが小さ過ぎる様です。

 という訳で、駒割以外をもうちょっと重視する様に設定変更して再度学習中。

[]てゆーか、間に合うのか、これ? 19:17

 Depth1でザッと学習するのに1日、そっから最低2週間程度はDetph2の学習に必要そうだし*1、まともなパラメータが出来上がるのは選手権直前かも。

*1:楽観的観測

トラックバック - http://d.hatena.ne.jp/Gasyou/20180416

2018/04/05

[][]VS Lesserkai(本将棋モード) 20:05

 負け無しの53連勝出来ました。

 という訳で、現在sspとスパーリング中。

トラックバック - http://d.hatena.ne.jp/Gasyou/20180405