【オセロ,将棋】ボードゲーム Part3【囲碁,War】 (636レス)
1-

278: 535 [sage] 2020/05/07(木) 20:59:06.64 ID:LRbJj7fv(4/8) AAS
ん、CPU使用率が上がらない?
ネットワークでかすぎたか?
279: 535 [sage] 2020/05/07(木) 21:03:55.67 ID:LRbJj7fv(5/8) AAS
GPUのメモリが溢れてるっぽいorz
しょうがない、小さくするか。
280: 535 [sage] 2020/05/07(木) 21:25:17.52 ID:LRbJj7fv(6/8) AAS
GTX 1080 でもメモリ足らんとかorz
気安くいってくれるぜ
281: 535 [sage] 2020/05/07(木) 21:27:42.59 ID:LRbJj7fv(7/8) AAS
バッチサイズもでかくしたのまずかったっぽい
282: 535 [sage] 2020/05/07(木) 22:52:16.50 ID:LRbJj7fv(8/8) AAS
うーん、もしかしたらCPUはあんま必要なくてGPUに金使ったほうがいいのかもしれないな。これは。
283: 535 [sage] 2020/05/08(金) 20:21:50.28 ID:vYlFFPu/(1) AAS
層増やしたけどあんまうまく行ってないのかなぁ。
それともまだまだ学習が足りないだけなのか…
284: 310 [sage] 2020/05/09(土) 00:56:41.26 ID:tOwbW1Pp(1) AAS
棋譜作成触りすぎるとなかなかはかどらなくなるので、しばし回しっぱなし。

そろそろBookが巨大化しすぎているので、メモリーからSDDに移せないか検討中。
concurrent_unordered_mapを自作した経緯があるので、同じような感じでランダム
アクセスなDB化をしてます。確定分は探索で使うのでメモリーにおいて、速度を
必要としないアクセスをDBにしようかなと。

巨大Bookの作成処理の類を並列処理にしているので、何とか並列にできないかと
色々やっていますが、色々と罠がある。複数プロセスからの並列更新はあきらめた
けど、単一プロセスからの並列更新でロック範囲がまだいまいち。

専門書買ってコード見て勉強した方が早いんだろうけど、まあ、しばらく楽しみます。
285: 535 [sage] 2020/05/12(火) 21:24:42.90 ID:autiDqQV(1/2) AAS
1ゲームすら勝てない…
何が悪いんだ?
286: 535 [sage] 2020/05/12(火) 21:56:06.70 ID:autiDqQV(2/2) AAS
いままで新旧のAIを比較するとき10戦中6勝以上でAI更新にしてたのを50戦中30勝以上で更新にしてみます。
もしかしたら試行回数が少なすぎて弱くなっていてもAI更新してたかもしれないので。
287: 310 [sage] 2020/05/12(火) 23:05:51.81 ID:AcB4a3UT(1) AAS
うぬぬ。DB化は並列諦めてみたけど、やはり更新が遅すぎる。
もうちょっと工夫してみるけど。
288: 535 [sage] 2020/05/14(木) 19:16:54.03 ID:7UgQPtyV(1) AAS
ただ待ってるだけってのもつらいな。
結果も出ないし。
289: 535 [sage] 2020/05/15(金) 18:59:37.53 ID:55GCUZ0E(1/3) AAS
心が折れそうorz
290: 535 [sage] 2020/05/15(金) 19:20:34.85 ID:55GCUZ0E(2/3) AAS
自己対局みてると結構強そうに見えるだけどな。
公式AIと対局すると勝てねんだよな。
291: 535 [sage] 2020/05/15(金) 19:53:09.72 ID:55GCUZ0E(3/3) AAS
ギブアップです。
何か次のこと考えよう。
292
(1): 名前は開発中のものです。 [age] 2020/05/16(土) 11:39:42.73 ID:n0PK2vlL(1) AAS
AlphaGoは計算資源をコスト度外視で使って1000年分対局してるから……
293: 名前は開発中のものです。 [] 2020/05/16(土) 15:42:40.24 ID:G8tru4l4(1) AAS
IT掲示板群 外部リンク[aspx]:x0000.net

学術の巨大掲示板群 - アルファ・ラボ 外部リンク:x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
外部リンク[aspx]:x0000.net
UIライブラリ (C#, 2D) を作ったよ
外部リンク[aspx]:x0000.net
連続と離散を統一した!
外部リンク[aspx]:x0000.net
4Dエンジン
外部リンク[aspx]:x0000.net
matrixのライブラリ
外部リンク[aspx]:x0000.net
ある強力なFor関数
外部リンク[aspx]:x0000.net
SQLライブラリ
外部リンク[aspx]:x0000.net
294: 535 [sage] 2020/05/16(土) 18:10:49.03 ID:BsSPHqoG(1) AAS
>>292

     / ̄⌒⌒ヽ
      | / ̄ ̄ ̄ヽ
      | |   /  \|
    .| |    ´ ` |
     (6    つ /   ちくしょう・・・
    .|   / /⌒⌒ヽ
      |    \  ̄ ノ
     |     / ̄

  ,冖 ,、  冖   / //      ,. - ―- 、
 `,-. -、'ヽ' └ァ --'、 〔/ /   _/        ヽ
 ヽ_'_ノ)_ノ    `r=_ノ    / /      ,.フ^ー- j
  ,冖 ,、   ,へ    /  ,ィ     /      \
 `,-. -、'ヽ'   く <´   7_//     /     _/^  、`、
 ヽ_'_ノ)_ノ    \>     /       /   /  _ 、,.;j ヽ|
   n     「 |      /.      |     -'''" =-{_ヽ{
   ll     || .,ヘ   /   ,-、  |   ,r' / ̄‐-..,フ!
   ll     ヽ二ノ__  {  / ハ `l/   i' i    _   `ヽ
   l|         _| ゙っ  ̄フ.rソ     i' l  r' ,..二''ァ ,ノ
   |l        (,・_,゙>  / { ' ノ     l  /''"´ 〈/ /
   ll     ,冖 ,、  >  >-'     ;: |  !    i {
   l|     `,-. -、'ヽ'  \ l   l     ;. l |     | !
   |l     ヽ_'_ノ)_ノ   トー-.   !.    ; |. | ,. -、,...、| :l
   ll     ,冖 ,、 |\/    l    ; l i   i  | l
   ll     `,-. -、'ヽ' iヾ  l     l   ;: l |  { j {
   |l     ヽ_'_ノ)_ノ  {   |.      ゝ  ;:i' `ー‐-' }
. n. n. n        l  |   ::.   \ ヽ、__     ノ
  |!  |!  |!         l  |    ::.     `ー-`ニ''ブ
  o  o  o      ,へ l      :.         |
295: 535 [sage] 2020/05/18(月) 18:55:35.95 ID:ErVFXYqV(1) AAS
次のアイディアもなくすっかりさぼりモード
296: 310 [sage] 2020/05/18(月) 21:57:15.59 ID:lyHQ6R5E(1/3) AAS
Hash関数変更
DBのハッシュキーの効率が悪かったので、ちょっと考えてみた。
今まではshuffle_epi8でバイト単位シャッフルしていたのを、BMIのpextでビット単位の
シャッフルと、rotateしたものを、xorでまとめていく方法。以前よりは、ちょっと良くなった
気がする。

何をもってよくなったかの指標が欲しくなり、ネットを探索したけど、数値指標みたいなの
は見つからない。確率論の誕生日問題の反対みたいな状況なのでしばらく考えてみる。
要するに、1万人くらいの生徒がいる学校で、誰一人誕生日ではない日が何%くらい存在
するのかという類の問題です。

また、そう考えてみると、現状では直観よりかなり未使用キーが多い気がしています。
xorを繰り返してビットのオンオフをすると、いずれ立っているビット数が32個を平均と
した正規分布(二項分布)になって、一様分布にならないのではないかという疑念が。
正規分布だと、中央に近いところは重複しやすく、立っているビット数が0とか64とか
の出現確率が下がる事になります。xor繰り返すと正規分布に本当に近づいていくのか、
ちょっと検証してみたい。
297: 310 [sage] 2020/05/18(月) 22:17:24.43 ID:lyHQ6R5E(2/3) AAS
DBの件
たぶんあるだろうとネットで検索してみたら、Kyoto Cabinetなるキーバリュー型の
簡易DBライブラリがある事が判明。ほかにもLevelDBとか、何種類かあるみたい。
RDB使うまでもないけど、データ量が多いとメモリーだとリソース勿体ないみたいな。
やはりみんな考える事は一緒だなと。せっかくなので導入の方向で検討。

DBの速度問題
また、おそらく1棋譜単位でのBook更新は速度的に問題ないのですが、DAG(合流)
時に、棋譜外の合流元の方の更新がされないという問題があり、学習前に一括で
再構築しています。この一括更新が件数の関係ですごく時間がかかる事が問題です。

一応、1棋譜単位で更新した時に、DAG分もちゃんと処理するロジックを検討中です。
バグさえなければ速度問題はかなり解消できるはず。とはいえ、何回もループを回す
処理となるため、速度に自信なし。
298: 310 [sage] 2020/05/18(月) 23:50:13.18 ID:lyHQ6R5E(3/3) AAS
DBの件…
確定探索の時にはメモリーに確定分だけおいとくと考えていましたが、
今件数確認したらおよそ2/3は確定分として確保しなきゃならない
事に気づきました(汗

棋譜作成時はメモリーでやるしかないかも。

1棋譜更新でのDAG問題回避はやりたいかな。
Book再構築にだいたい20分くらいかかる。
DAG回避で1棋譜分更新するのが1秒として1000棋譜追加でおよそ16分。
これ以下の時間で済むならやる価値ありそう。
299: 310 [sage] 2020/05/20(水) 01:15:22.70 ID:Xgj8E+2H(1/2) AAS
久々に完全読み切りでバグ発生。

ProbCutを広げながらmtd(f)している時に、どうもパス絡みで発生しているっぽい。
ProbCutによるIterative Wideningを止めたらちゃんと読み切る。

まあ、置換表絡みなんだとは思うけど、事例が少なすぎて(数か月に1回程度)、
前の記録消しちゃったので、とりあえず記録を残し、絆創膏当てて続行。

気が向いたらデバッグしてみる。可能性があるところはなんとなくわかっている
つもりだけど。

Book更新時のDAG回避は、かなり悩ましい。というか頭がこんがらがる。
未使用Hashの期待値計算も頭が未だにこんがらがってます。。
300
(1): 名前は開発中のものです。 [sage] 2020/05/20(水) 03:14:41.24 ID:kE3dJxL+(1) AAS
お姉さん問題で有名な、北大の湊教授のZDD を使えないの?

本も出てる
301: 535 [sage] 2020/05/20(水) 16:25:53.99 ID:BUng/tdF(1/2) AAS
katagoを使った9路囲碁の巨大Book作成、やってみようかなぁ。
難しそうだけど。
302: 310 [sage] 2020/05/20(水) 17:28:20.84 ID:Xgj8E+2H(2/2) AAS
Hash関数の効率判断基準できました。

同じキーにデータが8つくらい入っているようなものもあり、それが適正かどうか
判断できなくてゴチャゴチャしていましたが、昨夜しれっと書いたように未使用キー
の数の期待値に着目したら簡単でした。

キーサイズと、データ件数からExcelなどで簡単に計算できます。

3件程度調べてみましたが、理想的な一様ランダム値で生じる未使用キー数の
期待値との差は0.1%未満で、このHash関数も一様ランダム化するものと言って
良いレベルでした。

逆に言えば、自分の典型的な使用方法だと20〜30%のキーが未使用になる
という事のようです。これはこれで…。
1-
あと 334 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.023s