GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

2013-07-01から1ヶ月間の記事一覧

パラレルPGLeaf

とりあえず問題は見付からなかったので学習用マシンに投入。 ただし、連続王手の千日手判定がちと怪しいので、それに関しては開発用マシンでログを吐く様に設定変更して再現待ち。 …今日もあんまり開発進んでないなぁ。

あう…

ログ出力が足りてなかった _| ̄|○ はぁ、また25分かけてログ出さないとダメなのか…

今度はPGLeaf

なんか、ここ数日は日替わりで学習アルゴリズムを変えてます。 んで、パラレルPGLeaf*1でちょっと思い付いたアイデアがあるので、それを実装。現在テスト中(と言うか、アサーション有効で走らせてるだけ)。 やる事は割と単純で、相手の指し手の良し悪しを…

TDLeaf(λ)

今日までは収束速度重視で学習率0.01でしたが、これだと駒割の評価値が安定しないんで、0.001に変更。 後は適格度トレースを実装したり、レポート収集系を整備したり、温度調整したり。 今日は基本的に細々した改修・調整ばかりでした。 …今週末位には何かド…

ハイブリッドIAモードその2

今度はTDLeaf(λ)を並列で学習させるルーチンを実装してみました。PGLeafの方は駒割の学習にやや問題が見つかったので。 んで、とりあえずアサーション有効・無効の2設定で走らせてます。明日朝には結果が出るかな? という訳で、上手く学習出来ている様なら…

ハイブリッドIAモード

PGLeaf+免疫アルゴリズムでの学習ですが、ある程度動く様にはなってきました。 ただ、まだパラメータの初期値を乱数で開始して駒割をきちんと学習出来るレベルでは無いです。 という訳で、当面は細々したメタパラメータ調整等の地道な作業になりそうな感じ。…

評価値異常のバグだと思ってたやつ

は、単に評価関数のパラメータが大きくなりすぎて、「勝ち」の評価値を上回っていただけでした。 んで、それに付随してもう一個悩んでたバグも解消。ルートノードの1手目でβカットが起きた時に発生していた様です。 という訳でこいつらはもう解決したと見な…

あ・・・れ・・?

シングルスレッドでも評価値異常のバグは出る・・・ あーもう、やめやめ、今日はもういい加減寝ないと。

どっかバグってる

免疫アルゴリズムとPGLeafを組み合わせるのは実装完了して、現在テストがてら駒割の学習中。 んで、マルチスレッド化でどっかエンバグしたらしく、シングルスレッドだと起きないエラーが、マルチスレッド学習時は発生しています。 …手を抜いてOpenMPで並列化…

免疫アルゴリズムは実装完了

本将棋で対局して適応度計算・次世代の抗体群生成をする部分は完成して、一晩走らせてみました。(PGLeafはまだです。) …んで、結果。駒の価値が全部マイナスでした _| ̄|○ という訳でPGLeafで学習するルーチンを追加してみます。

今週末の予定

の前に、昨日書き忘れてた免疫アルゴリズム(IA)について。 基本となる学習ルーチンは完成して、多腕バンディット問題を解ける所までは行きました。 という訳で今週末。 強化学習+IAでの将棋の評価関数パラメータの学習を実装する。 USI対応する。 いい加減…

物欲の持って行き場が無い

当初はIvy Bridge-EPデュアルマシンを買うつもりでしたが、経済的な理由でこれは無しに。 んで、それならIvy Bridge-EPの12コアを1ソケットでってのも考えましたが、30万円かけて2.5倍にしか速くならないのは、何かコストパフォーマンスが悪い気がして来まし…

ぼくのかんがえたさいきょうのがくしゅうあるごりずむ

上で書いたGA+強化学習の大雑把な構成。GAはIAになるかもしれませんが、まぁ基本は一緒です。 ランダムな値で初期化した個体*1群を生成する。 個体群をスイス式で何回戦か*2対局させ、その後PGLeafでパラメータを修正する。 2.の対局結果(順位)を適応度*3…

どうにも行き詰まってるんで

遺伝的アルゴリズム+強化学習での評価関数パラメータの学習をやってみようかな。 前も書いた気がしますが、GAは種の進化を・強化学習は個体の成長をシミュレートすると考えると、この二つを組み合わせて学習させるのは自然な考えな気がします。 それから、G…

Futility Pruning

思考時間を1手10秒にすると、棋譜(1局)との一致率が25%から27.2%に向上しました。 1手1秒だと25%→23.8%と低下していたので、どうもFutility Pruningは思考時間が長いほど効果的みたいですね。 んで、現在は素のFutility Pruning(末端ノードの1手前での…

お知らせ

http://wdoor.c.u-tokyo.ac.jp/shogi/view/2013/07/06/wdoor+floodgate-900-0+SettaiHiyoko_1+Gasyou_Atom-D510_1c2t+20130706133007.csa SettaiHiyoko_1さんに負けた初のプログラムはこちらになります _| ̄|○

まずは駒割から

Futility Pruningはマージン調整が難しそうなので一旦保留。 んで、Futilityと並行して学習させていた結果ですが、どうもおかしな感じ。 通常とは異なり、駒割含めて全パラメータを0で初期化してから学習させてみました。 評価項目が駒割のみだとある程度ち…

Futility Pruningを実装

…しようとしたらSEE関連で盛大にバグってるのを発見して、そっちの修正。 結局、今日はFutility Pruningの実装はしましたが、パラメータ調整とかはまだ先になりました。残念。