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

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

2011-08-01から1ヶ月間の記事一覧

やっちまったー

レポート収集系の再実装した時に、パラメータのセーブ機能を実装するの忘れてて、そのまま一晩走らせてました。 つまり、一晩分の学習結果×8がパー _| ̄|○ セーブを実装したんで、今からリトライします。

報酬の割引を実装したら、ちょっと改善

後手のみ学習で、例として下記局面での各手を指す確率をログ出力してみました。 ■■■■■ ■○× ■ ■○ ■ ■ ■ ■■■■■ 手番:後手 で、ログを眺めてると、○の2つ並んでるのを止めないといけないんだけど、止めた後の勝ち方をなかなか学習出来ていない(止めた後の手順…

まだまだ方策勾配法

三目並べでテストしてるんですが、片方のみ学習で変な現象が。 先手のみ学習だと100局かからずに勝率が100%になって、その後はごくまれに負ける位なんですが、後手のみ学習だと勝率が95%前後までしか行きません。 試しにソフトマックス方策の目標探査率を0…

三目並べ・リバーシでの実験結果

学習条件は下記の通り。 方策勾配法+ソフトマックス方策 初期温度0.02 温度可変、目標探査率0.05 学習しない側のプレイヤーは、合法手リストの最初の手を指す 先手のみ学習 後手のみ学習 両方学習 三目並べ ○(50局ほどでちゃんと収束) ○(50局ほどでちゃん…

昨夜から走らせた結果

テーブル形式の評価関数で先手だけ学習しても、ちゃんとした結果にはなりませんでした。 ログを見てると平均報酬とベースラインの関係がおかしい*1ので、その辺を一度調べてみます。 *1:相関係数が低い

もちょっと実装

引き続きレポート収集系の再実装。完成度80%位かな。 それと、今までリバーシは線形の評価関数でやって上手く動いてなかったんで、テーブル形式の評価関数に戻して一晩走らせてみます。これでOKなら評価関数の問題だし、NGなら多分それ以外の問題。

情報収集系の再実装中

前の実装だと生のデータ構造をそのまま外に見せてたりして、イマイチ使い勝手が悪いので再実装してます。 とりあえず基礎構造含めて50%位は完成したので、後はガシガシ書いてくだけです。 ついでに、エージェントの情報(方策勾配法の最小分散ベースライン…

しつこく方策勾配法

4x4のリバーシを関数近似あり・探索無しで学習させてみたんですが、変な現象発見。先後両方学習させるとちゃんと先手8石負けになるんですが、片方のプレイヤーだけ学習させると結果が変です。 具体的には、先手だけ学習すると双方最善を尽くすと引き分けって…

Mini-ITXマザーが4枚入るケース

http://akiba-pc.watch.impress.co.jp/hotline/20110827/etc_morex.html が発売されたらしいです。サイズは普通のATXケース並で、電源は150W×4個。 Core i7×4だと1ケースで32スレッドになりますが、発熱が大変な事になりそうですね。かと言ってAtomとかAMD E…

Xeon E5-2600シリーズの情報

http://blog.livedoor.jp/amd646464/archives/52212310.html 8コア・16スレッドモデルの最上位が2687Wの3.1GHzで、しかもTDPが150W。モデルナンバー的にこれより上が出る可能性は少ししか無さそうですし、Core i7 2600が3.4GHzという事と比較すると、ちょっ…

方策勾配法のデバッグ中

幾つか細かいバグは潰しましたが、それでもまだちゃんと動いてなさそうな感じです。三目並べで片方のプレイヤーだけ学習させても、勝率が100%になりませんし。 一番気になってるのはソフトマックス方策の温度設定なんですが、これがまずいのかなぁ…

Windows 7 x64のエクスプローラでトラックポイントのスクロールを有効にする方法

Vistaではスクロール出来ていたのが、7だとNGだったので調べてみました。主にこの辺を参考に。 まず、やった事。 http://www.synaptics.com/support/driversからv15.2.20のドライバをダウンロード&インストール C:\Program Files\Synaptics\SynTP\tp4table.…

方策勾配法のデバッグ中

とりあえず5五将棋で片一方のプレイヤーだけ学習させて、それでちゃんと勝率100%になるのを目指します。 とりあえず方策内でのムーブオーダリング絡みのバグ*1を潰して、学習しない側の設定を色々しつつ様子を見てみました。 んで、学習しない側が常に最初…

連続対戦テストの結果

学習後同一プロセス内だと556-4-418、将棋所だと394-0-295。勝率も95%信頼区間もほぼ一致したんで、セーブ・ロード周りには多分問題無しかと。 という訳で、方策勾配法に戻って学習再開。ちょっとだけ最適化したけど、基本今まで通りです。

続 連続対戦

自前のルーチンで連続対戦させて、347-2-244になりました。将棋所だと392-2-265(昨日の結果から)。 勝率も95%信頼区間もほぼ同じになったので、連続対戦ルーチンの問題は多分潰せたと思います。 という訳で、再度学習→そのまま連続対戦のテストをしてみま…

連続対戦の結果がおかしい理由、判明したかも

自前の連続対戦ルーチンで探索ルーチンに渡す情報に「秒読み1.7秒」って設定していて、探索ルーチン内で更に0.7秒足してた。 んで、結果として自前のルーチンだと2.4秒、将棋所だと1.7秒考えてるって事になって、そのせいで勝率が変だった可能性大。 とりあ…

連続対戦の結果

学習と同一プロセスだと538-1-267、将棋所だと392-2-265でした。 95%信頼区間はそれぞれ63.5〜70.1、55.8〜63.4なので、明らかに強さが違いますね。 セーブ・ロードまわりがおかしいのか、自前の連続対戦ルーチンがおかしいのか切り分けたいので、今度はセ…

連続対戦ルーチンのテスト

ssp対Lesserkaiだと強さに差がありすぎてテストにならなかったので、Lesserkai同士でテスト。 んで、自前のルーチンと将棋所の両方でほぼ同じ結果になったので、多分大丈夫って事でしょう。 という訳で、再度学習してその後連続対戦テストをしてみます。

連続対戦の設定、ミスってた

学習したプロセス内での連続対戦だと521-4-35で、パラメータを一旦セーブして将棋所で連続対局すると257-3-115でした。 ただ、将棋所の方だけPonder有効だったので、これが原因でGA将!!!!!の勝ち星が減っていた可能性があります。 という訳で、まずは自前の…

Windows 7上にLaTeX環境構築

http://www.hyuki.com/techinfo/texinit.htmlを参考にしました。 まず、http://www.math.sci.hokudai.ac.jp/~abenori/soft/からTeXインストーラ3 0.81r7をダウンロード。解凍して実行。選択肢はデフォルトのままでポンポンとボタンを押していって、5〜10分で…

初歩的なミスだったorz

上で書いた"426-1-449"の426勝は、GA将!!!!!が先手で、かつ、勝った場合のみのカウントでした。後手で勝った場合はカウント無し。 そりゃぁ結果が変になるはずです。納得。

さて、困った

学習してたプロセスでそのままLesserkai 1.3.3と対局させると426-1-449。一旦パラメータをファイルにセーブして将棋所でLesserkai 1.3.3と対局させると351-4-82。どちらも思考時間は1.7秒。 つまり、一度セーブ・ロードした方が強い…って結論は間違ってます…

Wikiを書いたりとか

http://www.usapyonsoft.jp/shogi/wiki/wiki.cgi?%b5%a1%b3%a3%b3%d8%bd%ac 機械学習を起点に色々書いてみました。分かりづらい部分があればご指摘お願いします。 …んでまぁ、そういうコトしてるって事は、開発が進んでないんですよねぇ。 一応、USIで入玉勝…

デバッグ途中経過

試しにGA将!!!!!側で"bestmove win"を最善手として返す様に修正してみたら、エラー発生時と同じ状況になりました。 という訳で入玉勝ち宣言の考慮漏れって線が濃厚なんですが、念の為棋譜をちゃんと打ち込んで確認してみます。 …エラー発生状況の見当が付い…

現在の状況

今のUSIの実装が適当すぎるので、ちゃんと実装する。具体的には、quitコマンドにすぐ反応しない事があるのと、Ponderに未対応なので、その辺の修正。多分、一から実装し直した方が楽なので、そうする予定。 シグモイド関数無しでの方策勾配法 実装は完了。現…

セーブ・ロードまわりのデバッグ中

TDLeaf(λ)で50,000局学習後、そのままUSIでLesserkai 1.3.3と連続対局させて、パラメータをセーブ・ロードして強さが変わってないかの調査中。 …なんですが、連続対局中にエラー発生。多分千日手の処理が抜けてたとかその辺だと思いますが、状況を再現する為…

方策勾配法の修正中

とりあえず最小分散ベースラインの計算が怪しかったので、その辺の細かい修正とか、パラメータを調整して良さそうな感じの値を探したりとか。 でも、相変わらずな結果で、三目並べや4x4のリバーシでもちゃんとした結果にならなかったりします。 あと、パラメ…