[過去ログ]
【オセロ,将棋】ボードゲーム Part2【囲碁,War】 (1002レス)
【オセロ,将棋】ボードゲーム Part2【囲碁,War】 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
149: 535 [sage] 2017/12/11(月) 22:31:43.51 ID:fAOHhVpN うーんまだまだだなぁ。 >>146はたまたまかorz. http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/149
150: 535 [sage] 2017/12/12(火) 19:50:54.43 ID:sU/cgenP 新しいパソコン欲しいな〜 現実的な線でいってもメモリ64GBくらい積みたい。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/150
151: 535 [sage] 2017/12/12(火) 23:05:56.72 ID:sU/cgenP DB作成をマルチスレッド化したいな〜 でもMCTSのマルチスレッド化って結構難しんだよな〜 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/151
152: 310 [sage] 2017/12/13(水) 00:38:18.63 ID:oWC3TnL7 MCTSのマルチスレッド化は簡単だと思う… マルチコンピュータは難しいけど。 強化学習がなんかおかしい感じだったので、記譜学習で上書きしたら かなり過学習になってしまった。強化学習で戻せばよいかと思ったけど なんかなかなか戻らないorz 強化学習どっかおかしいのかもしれない。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/152
153: 535 [sage] 2017/12/13(水) 20:33:14.21 ID:6thdoy0s えーそうですか? 排他制御とかしたら性能出なさそう http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/153
154: 535 [sage] 2017/12/13(水) 21:57:53.75 ID:3yqEn+ak ID違うと思うけど535です。 DBがTXTで1.7GBに。 実行時7GB程になりました。 std::mapを別のコレクションに変えたらメモリ使用量減らないかな〜? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/154
155: 535 [sage] 2017/12/13(水) 22:15:01.22 ID:3yqEn+ak unordered_mapにしてみたけどあんま変わんないやorz http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/155
156: 310 [sage] 2017/12/14(木) 00:19:28.11 ID:9pKHf6s7 排他制御は、まあ普通にしてますけど、PPLのcritical_sectionでlockしたり、 int型ならatomic<int>していたりで、並列ライブラリにお任せです。 またVirtual Lossという方法があって、ツリーを下っていく時は、先に負けた事にして 降りて行って、末端から戻ってくる時に正しい勝敗に置き換える事で、並列探索 の各スレッドが同じ枝に集中しないようにして、排他がかかる可能性を減らしてます。 あとは、排他制御が必要な領域を細かい単位に分割する事ですかね。 #と思って、ソース見たらVirtual Drawになっていた(汗 あ、そうか。DB化しているって事は、合流ありだし、盤面をキーにしなきゃならないから そうなるとちょっとややこしいのかな? 自分は合流無視で、各ノードに盤面情報を保持していません。直前着手のみ持って いて、ノードをたどる時に盤面情報を更新しながら降りていきます。着手もBITBOARD の64bitは無駄なので、char型にしちゃってます(内部的にはintなんだろうけど)。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/156
157: 535 [sage] 2017/12/14(木) 21:56:41.20 ID:IX7WwuCO PPLなんてのがあるんですね。 頭の片隅に入れておきます。 とりあえず、子ノードへのポインタが結構メモリを食ってるような気がします。 これを無くして毎回子局面を計算するようにしてメモリ節約するという手もありますがあんまりやる気がしないなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/157
158: 310 [sage] 2017/12/15(金) 10:32:05.09 ID:+7BwQo/4 PPLはVC++専用の並列処理ライブラリです。 Intel TBBとかと中身はほぼ同じだと思います。 かなり抽象されていて、わかりやすいです。 自分はこれなしでは並列化できません(汗 ツリー構造だと子ノードへのポインタが一番大事な情報になっちゃいますね。 その場合ポインターと直前着手があれば盤面情報は不要になります。 一方で、ハッシュテーブル構造だと、子ノードポインタ不要で、キー(と衝突検出) のために盤面情報が必須になります。 DB化するんならハッシュテーブルとかの方が向いていますよね。 自分はMCTSでツリーを作ったり消したりなので、ツリー型にしています。 shared_ptr使って、不要になったノードはシステム任せで自動的に削除して貰って います。ハッシュテーブルだと、そう簡単にはいきませんね。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/158
159: 310 [sage] 2017/12/17(日) 00:21:31.98 ID:qILmYkkQ ノートPCの冷却用(動作周波数に結構影響する)にUSB扇風機使ってましたが、 結構サイズでかくて持ち運び面倒だし、ノートPCのUSBポートに刺していると 安全装置が働いてしまうので、別途電源取っていました。 で、どうせ強化学習回しておくだけで暇だったので、専用のクーリングファンを 自作してみました。 タカチのアルミケースをぴったりサイズに切り欠いて、USBコネクタと5Vの クーリングファンをセット。ノートPCに装着するとファンが回って冷却開始。 製作時間1時間程度。材料費は3000円くらい。 雑に作った割にはうまくできた。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/159
160: 310 [sage] 2017/12/17(日) 02:09:30.95 ID:qILmYkkQ EigenのSparseMatrixのサイズ制限を変える方法が見つかりました。 現在、簡易版と詳細版の2種類の評価関数を学習していますが、 これにより詳細版を完全にBuroさんモデルにする事ができるように なりました。 というわけで、詳細版は再度学習し直しです。 簡易版は、多少癖があるようだけど、そこそこまともになっています。 一方、詳細版は何度もやり直し中(汗 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/160
161: 535 [sage] 2017/12/17(日) 19:24:13.96 ID:QB4rs7DZ DBはメモリの勝負になる。 やはりCNNなどでメモリを圧縮する必要がある。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/161
162: 535 [sage] 2017/12/17(日) 20:37:59.85 ID:QB4rs7DZ うお、試行回数0回のデータ削除したらメッチャメモリ使用量減ったw これで当分DBで押せるww http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/162
163: 535 [sage] 2017/12/18(月) 21:48:20.69 ID:2VaG9uC3 ちょっとづつ良くなってるとは思うけど今一歩だな〜 もうちょっとヒューリスティック入れたほうがいいかな〜 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/163
164: 310 [sage] 2017/12/19(火) 00:06:06.27 ID:jyMFUoq3 気が付いたらTensorFlowがWindows対応になってるね。 New PC欲しい病再発の兆し・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/164
165: 535 [sage] 2017/12/19(火) 22:55:01.32 ID:BAiqwtex とりあえず、ヒューリスティックのアイディアが2つあるんだが、 下手に手を加えないでDB肥大化で押したほうが、 真の棋理に近づくのかもしれないなどとも思ったり。 悩ましい。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/165
166: 535 [sage] 2017/12/20(水) 00:23:35.05 ID:S+Iz2Vgy ヒューリスティック一個仮組みしてみたけど上手くいかないや。 がっかりorz. http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/166
167: 535 [sage] 2017/12/20(水) 22:02:26.64 ID:S+Iz2Vgy ちなみに仮組したヒューリスティックの内容は 適当な回数プレイアウトして7連が一番多くできたところ付近にしぼって モンテカルロ木を展開するというもの。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/167
168: 535 [sage] 2017/12/21(木) 20:13:56.96 ID:TDrdSCuN 序盤はそんなに悪くないんだけど終盤がなぁ やっぱ9路でも必至、詰めろルーチンいるなぁ http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/168
169: 535 [sage] 2017/12/21(木) 20:14:37.01 ID:TDrdSCuN でも遅くなるの見えてるからちょっとなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/169
170: 535 [sage] 2017/12/22(金) 21:57:55.17 ID:fGil/O5L なんか落ちるバグがあるな。 そういえば直してなかった。 は〜 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/170
171: 310 [sage] 2017/12/23(土) 09:08:48.88 ID:V4gvcHPy ノードを完全読み切りまで展開した時に、末端ノードの評価が狂う時があるという バグが以前ありました。おそらく並列処理による2重更新問題だろうと言う事で、 UCT探索の排他部分を強化して対応していましたが、ここにきてまた発生。 昨日原因が判明しました。まさかの、浮動小数点誤差の問題でした。 スコアの合計値と、試行回数を持っていて、合計値÷試行回数で平均スコアを 計算しているのですが、合計値が3500万を超えたあたりで+2をしてもfloat的 には、その2差を表現できる精度が無くなって、少しづつ合計値が不足していく 状態になっていました。 とりあえずfloatをdoubeにしてみましたが、案の定メモリーを消費する速度が大幅 増加してしまいました。小数点以下1桁もあれば十分なのでintに10倍値を持つ ようにしてみようかなぁと思っています。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/171
172: 310 [sage] 2017/12/24(日) 00:22:00.25 ID:XlhSPCGK intに変更。桁溢れが無ければ、これで大丈夫だと思います。 ついでに速度アップしている分だけ、自己対局の探索時間を短くしました。 評価関数を簡易版・詳細版2種類使っていましたが、詳細版も十分に学習 できたようなので、詳細版一本に絞りました。というか、そろそろ追い抜いた と思えるようになってきました。とはいえ自己対局の評価値を見ていると 30手目以後はそこそこまともな感じですが、序盤はまだデタラメかなぁ。 完全読み切りですが、30手より前に遡る事がなかなかできません。評価関数 の精度のためか、残り28手あたりから急激に読み切り時間がかかるようになり ます。評価関数の精度が悪いのでオーダリングが正しくできていないからでは 無いかと想像しています。強化学習で補えるかと思っていますが、まだまだの ようです。 現在、記譜学習は完全読み切りができている盤面しか使用していませんが、 せめてMCTS探索が始まって以後の盤面も学習に使用してみようか悩み中。 これ以上の精度を求めると、やはりDLに行かざるを得ないですね。 今の探索でもツリーがメモリー内に収まるギリギリに係数を設定しているので 探索延長が起きるとあっという間にスワップ開始になってしまいます。 というわけで大きなメモリーが欲しい今日この頃です。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/172
173: 535 [sage] 2017/12/25(月) 21:28:02.81 ID:iTZFwLsg すっごい微妙な駆け引きができるようになって会心の勝利! と思いきや勝利目前でバグが出てパス2回した後エラーはいて落ちたorz くそくそくそくそ! いい加減直さなきゃだけど再現性低いからバグ潰すの難しいんだよなぁ ( ;FF[1]GM[1]SZ[9] ;B[ee];W[dc];B[de];W[ce];B[ge];W[df] ;B[hc];W[fg];B[gd];W[gf];B[cf];W[eg] ;B[gg];W[gh];B[cd];W[fe];B[fd];W[dd] ;B[ff];W[hg];B[be];W[cg];B[];W[gg] ;B[];W[dg]) http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/173
174: 535 [sage] 2017/12/26(火) 21:57:37.38 ID:vTaELiqs 勝利が目前に近づくとパスする。 マジ原因がわからんorzorzorz ログでも仕込むか? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/174
175: 535 [sage] 2017/12/26(火) 22:08:58.18 ID:vTaELiqs 石を取って必勝形になる形だとパスするのか? 条件絞り込みがムズイ。 とりあえず、ログかなぁ? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/175
176: 535 [sage] 2017/12/27(水) 20:40:10.55 ID:SLxZ+o46 ログ仕込んだら計ったように再現しなくなったwwww しばらく対局しまくるしかないか http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/176
177: 535 [sage] 2017/12/27(水) 21:31:50.30 ID:SLxZ+o46 バグの原因わかりました。 ノードに盤面情報登録し忘れてるパスがあった。 これで落ちずに連続対戦できるようになるかな。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/177
178: 535 [sage] 2017/12/27(水) 22:15:38.79 ID:SLxZ+o46 連続対戦上手く動いてるっぽいです。 今のところ黒番で8勝2敗 かなりいい感じ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/178
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 824 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s