【オセロ,将棋】ボードゲーム Part2【囲碁,War】
レス数が900を超えています。1000を超えると表示できなくなるよ。
比較的地味なボードゲーム専用のスレが欲しくて立ててみました。
前スレ
【オセロ,将棋】ボードゲーム【囲碁,War】
http://mevius.2ch.net/test/read.cgi/gamedev/1057763418/ 更に簡素化して10倍速くらいにしました。
ちょっと簡素化しすぎかも? 新バージョンで色々プログラム見直し。
探索部は全く改善していませんが、その他の部分が大幅にスピードアップ。
自動記譜作成時のオーバーヘッド(探索以外の時間)がかなり減った。
あとは学習の時間を減らしたい。 大きい方のネットワークの損失が3500位なのに対して小さい方のネットワークの損失が5300位。
さて、使い物になるかな? うおお,遅え!
モンテカルロに使おうと思ったらプレイアウト回数かなり減らさなきゃだめだな。 一回打ってみたけど打ち筋は決して悪くない。
だが激遅。
だかが300プレイアウトでここまで遅いとは… すごいな、こちらの打ち筋は相当改善されたのにLV3がその上を行ってくる。
奥が深い。 ん、まだ学習飽和してないみたい。
ジリジリ損失減ってる。 LV1と対戦させ始めてみたけど、かえって勝率落ちてるな?
まだ対戦回数少なすぎて結論出すのは早いけど、もっと50連勝くらいするかと思った。
対LV1
黒番 17勝 3敗 勝率85.0%
白番 13勝 3敗 勝率81.3% 勝率上がってるみたいです。やった!
対LV1
黒番 156勝 15敗 勝率91.2%
白番 109勝 8敗 勝率93.2% 小さいネットワークの損失も5180くらいまで減ってます!
次は本丸、LV3と決戦や! 対LV3 黒番
47勝 34敗 勝率58.0%
ふーむ、まあ悪くないけど、正直もっと期待していたw
400〜500戦くらいはしないとまだ結論は早いけど。 ほほう、6割行った。
120勝 80敗 勝率60.0% 291勝 231敗 勝率55.7%
ふーむ、まあ悪くないけど。
最終的には対LV3黒番勝率 70% を目指したい。 そういえば、勝率ばかり気にして肝心の棋譜をあまり見てなかったな。
どんな負け方してるのかちゃんと把握せねば。 GPU使いたいなぁ。
せっかくいいの買ったんだから。 ライフゲーム囲碁も平行で開発しようかなぁ。
アルファゼロアルゴリズムが心のどこかで捨てきれない。 ライフゲーム囲碁 コード書き始めました。
ルール実装が結構効率的な奴思い付いて、1000万プレイアウト/s位出ました。
並行でやるっつっても計算資源が問題だなぁ。
囲連星はアイディアないしちょっとお休みかなぁ。 うお、ついに人間(俺)に勝った!
内容的にも文句ない勝ち方だ!
(;SZ[19]
;B[jj];W[ji];B[ii];W[ih];B[ki];W[jh];B[kk];W[kh]
;B[lj];W[ij];B[hi];W[hk];B[hh];W[lg];B[gl];W[mg]
;B[gg];W[ff];B[gk];W[gj];B[ll];W[mm];B[fj];W[fi]
;B[gi];W[hj];B[hl];W[jk];B[ik];W[hj];B[gj];W[gf]
;B[gm];W[gh];B[fn];W[fh];B[lh]) ここまでくると囲連星はいったん公開してもいいかもな。
本当は白黒総合勝率でLV3に勝ってからが理想なんだけど。
あとDBのファイルサイズでかいんだよなぁ。 反応がなくて寂しい。。。
まあもともと過疎スレだからしかたないか。 すんまそん。
ダウンロードしたけど、記譜作成中なので、CPU食いたくなくて(汗 囲碁ディープラーニングプログラミングという本があったので買ってみた C#からC++を呼び出すの結構難しい。
マネージドコードとアンマネージドコードがどうたらとか、、、 囲碁ディープラーニングプログラム読んでるけどすっごい目が滑る
でも12章のactor critics法というのが面白そうで頑張って読みたい 俺のマザーボードRyzen3000シリーズに対応しないらしいorz
ショック うお、betago(>>868の本のプログラム)動いた。
そして意外と強い。 ん、終局の仕方がわからん。
終局は実装されてないのかな? 強化学習本興味あります。
棋譜作成がいまいち上手く行っていないので。 くそう、時間が欲しい。
金さえあればニートになるのにww これから仕事が忙しくなりそうな予感。
まあさすがに土日は休めるだろうけど。 うおお、目が滑りまくりorz
一日無駄になったorz 囲碁は完全に人工知能に負け人間が追いつくことはないとおもうが。
これや将棋は微妙な線で、人間に勝ち目あるかもしれん。
囲碁より勝ち方、有利のさせ方が分かりやすい差。
人工知能なしの人間技で、人工知能に勝てる方法あるんじゃないかと。 「来た!」「16コア来た!」「メイン16コア来た!」「これで勝つる!」 囲碁ディープラーニングプログラミング相変わらず目が滑ってるんだけど、
しつこく食らいついてたらすこしずつ目が滑らなくなってきてる。
何とかものにしたい。 githubのリポジトリbetagoとは別に囲碁ディープラーニングプログラミング用のやつがあんのか!
気が付かなかったぜ!
これで勝つる! 囲碁ディープラーニングプログラミングのgithubのコードいいかも。
マルチスレッドにも対応してるっぽいし。
これはかなり期待できる。 GPUが使えてないみたいだな。
tensorflow-gpuうまく入ってないみたいだ。 それにしてもZen2 スリッパが欲しい。
16C32Tじゃ足りない。
64C128Tが欲しいww ん、27000回学習を回した時点から過去のAIに対する勝率が10%〜30%位しか行かなくなったみたい。
なぜ?
こんなことってあるのか? ん、学習したネットワークと対戦する方法がわからんなぁ。
web_demo.pyあたりで行けそうな気もするが… human_v_bot.pyというのでランダムAIと対戦できるようなので、これをちょっといじれば自作AIと対戦できそう。 ヤバイ、待ってる時間がじれったい。
やはり zen2 スレッドリッパー買うしか… LifeGameGoのルールを早く移植したいけど、もうちょっとgithubコードの感触つかんでからかな。 ふーむ、まじで>>891の状態から抜け出せないな。
ネットワークが小さすぎるんだろうか? あかんな、遅すぎる。
うーん。アルファゼロに幻想持ちすぎかも知れんな。 囲碁よりもシンプルなLifeGameGoならもっと速く学習できるという可能背もありますが…
とりあえず、GPUを使えるように頑張るのが先かなぁ? Surface Pro2の液晶が割れたorz
仕事で使うPCなので慌ててPro6の発注をかけました。
一応コア数2倍の4コア8スレッド、メモリーも16Gになる予定。
そろそろスピードの限界を感じていたので、痛しかゆしなところ。
ようやくIntelの呪縛から解放されるAVX2対応のCPUがAMDから出るというのに、
専用新型PCが遠のきました。
どのくらいスピードアップするかなぁ…。 なんかちょっとモチベが落ちてます。
せっかく週末なのになぁ。 あああああ、だめだ完全に気持ちがしぼんでしまった。 つかやっぱpythonはちょっと厳しいんだよなぁ… あ、会社のPCです。流石に性能2倍なので、買うモチベーションが下がったのです。
現在液晶の表面パネルバキバキで、タブレット機能止めて、
セロテープで補強してだましだまし使ってますが、発熱によって
内部が歪んじゃっているみたいで、通常状態でも液晶が湾曲してます。
で、将棋の探索の深さが意味不明だったので、色々考えていましたが、
なんとなく想像がついてきました。多腕バンディット使って、反復深化と
絞り込みを行っているのではないかと思います。
現状中盤探索の速度がいまいち遅く、シングルプローブカットすると
何故かさらに遅くなるという状態。棋譜作成メインだったので、あまり
気にしていなかったのですが、新しいPC来たらちょっとトライしてみよう
かなと思っています。 新PCセットアップ中。
前回思いついた中盤探索ロジック。具体的に実装を考え始めたら、
MCTSでいいじゃんということに(汗
これからVisual Studioのダウンロードです。 セットアップ完了して、開発環境の移行も終わりました。
VS2017→VS2019でエラーチェックが厳格化したものがあったようで、ソース修正。
Win8→Win10でコマンドプロンプトがなんか変わって、CTRL-Sの動作がよくわからない。
などなど、細かい点はいくつかありますが、速度的には思いのほか効果が出ていて、
ほぼ倍速くらいな感じです。並列のオーバーヘッド増加分を、クロック他CPU単体の
パフォーマンスアップで吸収していると思われます。 倍速はなかなかいいですね。おめでとうございます。
俺も頑張らねば。。。 逃げちゃだめだ、逃げちゃだめだ、逃げちゃだめだ(pythonから) VMWareだとどうにもtensorflow-gpuが使えないのでネイティブubuntuを入れるか迷い中
SSD丸ごと1個あけて別ドライブにインストールすればwin10とも干渉しないはず… 一応ubuntu入ったっぽい。
でも環境構築する根性が湧いてこない。
あしたにするか。。。 あかん、ubuntuすっごい固まるorz
今日だけで4回フリーズしたorz ここまで固まられるとネイティブubuntuは正直、撤退かなぁ
うーん。惜しいなぁ。 VMWareのubuntuは固まらないんだよなぁ
バージョンが違うからかなぁ 50万局学習させても知性とは程遠い打ち筋orz
絶望した! AQZという囲碁AIが50万局の学習でプロに勝ったそうな。
なんで俺が試したプログラムとそんなに違うんだ? 徹夜してしまった
反省(反省するとは言っていない) 地味に改良&棋譜作成継続中。
評価値で黒番+2、白番−1くらいの差が生じているので、
評価関数にバイアス項を導入しました。
他、若干の高速化ネタ。
中盤探索でProbcutすると遅くなる問題を回避。本格修正するか悩み中。
というか、そもそもZebraより圧倒的に遅い原因がわからん。 ようやっと>>920のプログラムにライフゲーム囲碁のルールを実装しました。
python 超つらい… 計算がある程度進むと必ずOSごとフリーズするorz
きょうびOSごと落ちるってどういうことだよ? これはもうアルファゼロには手を出すなという神のお告げかもorz orz orz そもそも、気温が高すぎて留守にしてる最中計算回しっぱなしにするの怖いってのもあるんだよなぁ 中盤探索を改良。
一つは、普通に無駄な処理を見つけて修正。
もう一つは、評価値の計算に差分計算を取り入れました。
今まで並列処理で差分ってどうやるんだろうと思っていましたが、
単にDepth=1のところ(次がLeaf)で、順次評価値計算するのを
差分すればよかったのね。
この2つで、中盤探索で2手ほど深く読めるようになりました。 今、実家に帰省してるんですが>>865のAIを動かしてみようとしたけどdllが認識されませんね?
何が悪いんだろう? 小人閑居して不善をなす…。
思い切って、不要そうに思える棋譜をバッサリ削除してみました。
削除しすぎたかも。
いろいろ細かく修正と、デバッグ用表示の改良。
とかやっていたら、丸1日近く動かしたところで、なぜか急激にパフォーマンス低下。
もともと空きが少なかったSDDが一杯になっている…。とはいえ30Gはあったはず。
再起動していたらもとに戻った。原因不明。
対症療法で不要プログラムアンインストールしていたら、使っているOfficeを間違えて
アンインストールしてしまった。
HDD一杯が原因なのか、評価値のファイルが壊れていた。
ギリギリ間に合ってバックアップから復旧できた…と思う。 SDD一杯の犯人判明。
セキュリティー対策ソフトの監視対象管理DBのファイルが合計で400G越え(汗
ところが、管理者権限ないと停止できず、ファイル掴んでいるため削除できない。
今日は管理者休暇中。
logファイルを頻繁に追記しすぎて、ファイルサイズ変化する都度DBファイルが
作られているのではないかと想像。棋譜バッサリ削除して、一気に遡り探索やり直し
していて、これまでと比較にならないペースと数で追記処理が起きているので、
その影響の可能性が。
Officeは再インストールしてもらったけど、何故かセキュリティ解除キーの入力ができない。
来週月曜日は出張なので、来週火曜日までだましだまし行きます。
古い方のPCがまだ生きているので、Excel作業はそちらでやる事にしました。 囲碁は現在のコミで白番有利説もあるようですがどうなのか 棋譜の作り方全面改訂。
分岐のチェックで、以前は全ての分岐を棋譜化していたけど、今度のは軽い探索で
怪しい評価値(同一評価値〜−4程度まで)のものだけ棋譜化するようにして、
棋譜数を大幅節約。学習が楽になるという算段です。
棋譜づくりが順調になり暇ができると、細かく気になっていた、どーでもよいところを
改良し始めて、バグとりで棋譜づくりが滞るという悪循環orz
よくよく考えたら、PCのパワーアップしたので、またDCNNトライとかしてみようかな
とか思い始めた。tiny-dnnしか選択肢無いんだけど。 googleがminigoというオープンソースやってるらしいですね。
最近さぼりっぱなしだったけど、ちょっと見てみるか。 相変わらずしこしこ棋譜作って学習繰り返してます。
もう無いだろうと思いつつ、ちょこっとした事に気づいて修正を繰り返してます。
置換表のハッシュ関数を改良。
格納効率が結構良くなったので、衝突が減ったはず。
終盤探索の時にBOOK(確定)も参照して余計な探索を減らしました。
基本遡りで確定させているので、運が良い時に滅茶苦茶早くなりました。
無い時は今まで通り(汗
学習データが不足しているのではないかと、置換表内に残っているスコアが確定
した局面FIFOで貯めて、折々に学習に回してみました。1回探索で100〜500件
程度。これをFIFOで500万件。棋譜に残っていない局面で学習する事で、過学習
が防止できるかなと思っていますが…。
現在、27手確定局面で大体14000件の棋譜とその分岐で合計23万件ほどですが、
まだ棋譜が足りていない感じです。が、件数が増えすぎて手に負えません。
BOOKの確認ができるWindowsアプリ作ろうかと思い始めています。 このまま失踪しそうな感じです。
やっぱアルファゼロは手を出してはいけないかったんや。 DCNNになってから、一般人のPCでは手が出せなくなってるからね。
計算プロセス自体は、NNを極端に単純化したものが線形回帰だと思えば、
NNで生まれた計算ノウハウが流用できますよ。
というか、今の時代、ただのLRでDCNNとほぼ同じ強さ、とかの方がオシャレ
ではないかと思う、ひねくれものの僕。 所詮趣味なので、あまり無理せず、やる気になるときにやればよいかと思います。 うーむ、やりたい気持ちはあるのですが、いかんせん難しすぎて…
githubにもっと易しそうなのでてくるまで待つか?うーん。 気温が徐々に下がってますね。
そろそろ計算回しっぱなしにしてもいいかな。
つっても回せるプログラムがないけど。 レス数が900を超えています。1000を超えると表示できなくなるよ。