[過去ログ]
【オセロ,将棋】ボードゲーム Part2【囲碁,War】 (1002レス)
【オセロ,将棋】ボードゲーム Part2【囲碁,War】 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
477: 310 [sage] 2018/10/21(日) 22:20:35.21 ID:wV/AjJxk >>475 はじめまして。新規参入嬉しいですね。 50万記譜計画の記譜は今はHPからダウンロードできないですね。懐かしい。 評価関数が正しくないと、探索時間かかりますからね。 自分は今は、自作の記譜を後ろから順番に訂正していってます。 が、やはりすごく時間がかかりまするorz http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/477
478: 310 [sage] 2018/10/21(日) 22:39:45.97 ID:wV/AjJxk 先日、局面の偏りで反復深化で評価値がゼロになっていく件を書きましたが、 もっと大きな問題な気がしてきました。 マイナスの評価値になるはずの局面から、中盤探索を反復深化で深くしていく時、 途中で評価関数的に未知の局面に入って、評価値0を返すようになる事があります。 もともと期待される評価値はマイナスなので、評価値0のルートに乗り換えてしまい ます。どうもこの様な現象が起きる事で、探索を間違える事がありそうです。 これから、デバッグ用のプログラム書いて、現象を確認してみようと思います。 もしかしたら、評価関数の初期値をゼロから始めるのが、良くないのかもしれません。 初期値を−1にすると、未知の局面は−66点(パターンの種類)になるし、1つ2つ 混入したくらいでは、評価値への影響も小さいのかなと思っています。 評価関数のゼロデータを−1にして動かしてみる方が早いかなぁ? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/478
479: 310 [sage] 2018/10/22(月) 22:40:29.62 ID:cyPX+oid 一応、ゼロデータをすべて−1に置き換えてみたところ、それなりな感じで、 頻度はだいぶ減りました。が、まだ時々おかしな時があります。 デバッグ用のプログラムが案外簡単にできたので、評価値の計算を確認して みたところ、反復深化の計算のどこかにバグがありそうだという結論に…。 ただ、ほとんどのケースでは正しそうなんだなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/479
480: 310 [sage] 2018/10/22(月) 22:53:50.11 ID:cyPX+oid ソース見てたら、一瞬で判明(汗 ほぼtypoの類でしたorz これで探索少し早くなるかな? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/480
481: 310 [sage] 2018/10/23(火) 01:08:22.60 ID:rwBd0O0t ウェイトのゼロデータを−1にしてみましたが、関係なさそうなので0に戻しました。 原理的にはマイナス評価値の問題は起きそうなのですが、評価値ゼロはあまり 発生していない感じです。 残り27手読み切りあたりから今のやり方では追い付かなくなって来ていますので、 MPCモドキの導入を考えています。MPCのスレッショルドの計算を真面目に やると、それだけで日が暮れてしまいそうなので、あくまでモドキですが(汗 置換表から作り直しになるし、記譜作り直しで、まだ27手まで時間がたっぷりある ので、1週間くらいじっくり考えてから始めようかと思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/481
482: 535 [sage] 2018/10/28(日) 21:48:30.83 ID:X2c31b1r うう、やっぱPCに30万はおいそれと出せないorz orz orz しかし、何もしないままでただ時間が過ぎていくほうが怖いような気もする。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/482
483: 535 [sage] 2018/10/30(火) 23:21:10.12 ID:pl1cfUhR なんかRTXに不具合があるとか何とか マジ? もうしばらく様子見が正解か… http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/483
484: 310 [sage] 2018/11/01(木) 00:10:54.87 ID:D90j6hyj MPCですが、完全読み切りをIterative Wideningで速度アップするためのProbCutを 作ってます。とりあえずスレッショルド計算のところまでできました。線形近似と誤差の 標準偏差の計算ですが、以前はループでゴリゴリ計算してました。今回はEigen使って 行列で計算するようにしたら超簡単でびっくりするほど早くなりました。 結局、計算時間の大半は浅い探索になります。 で、結果を見れば見るほど、無理に計算しなくてよいのではないかと思えてきます(汗 誤差は1σ=4〜5程度の固定値。線形近似は、1次係数は1.0で0次の定数(バイアス) を、深さが偶数で+1〜+2、奇数−1〜−2くらい。探索の深さを変えると、誤差は 減っていきますが、あまり頑張るとオーバーヘッドになります。 そもそもIterative Wideningでは、探索精度ではなく、徐々に探索対象を広める事で、 置換表の精度を上げていく事で高速化をしますので、アドホックな値でも良いのかなと。 誤差やバイアスは今の自分の評価関数での値ですが、気が向いた時に再度チェック するくらいで良いのかなと思う次第。 というわけで、大幅に簡素化・定数化して、読み切り処理の方に移る事にしました。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/484
485: 535 [sage] 2018/11/02(金) 23:35:29.24 ID:1vnWpGba 9900K発売ですか。 かなり入手困難みたいですね。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/485
486: 535 [sage] 2018/11/04(日) 21:31:50.64 ID:AYd3OzR3 11/6にAMDからなにか発表があるとか ZEN2くるかなー? とりあえず今は待ちか。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/486
487: 535 [sage] 2018/11/08(木) 22:14:39.88 ID:l30eANOm 結局zen2は春ごろなんですかね? いまはRyzen 2700xを買っていつでも乗り換えられる体勢を取るのが正解かなぁ? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/487
488: 310 [sage] 2018/11/10(土) 22:53:18.40 ID:MAqAiuT/ ぬぬぬ。 ProbCutのバグ取りに時間がかかりました。というか、なかなか高速化できません。 むしろ倍以上時間がかかってしまいます。 もっとひどい事に、今までのやり方のうち、比較的単純なやつが最も早い可能性が 高いという事に気が付いてしまいました…。下手すると40%くらい早いかも。 ProbCut比では3〜4倍速いという事です。 もともとProbCu自体は中盤探索で前方枝刈するための仕組みです。 これを読み切りしながら順次探索範囲を広げる事でソート順を修正する方向で 活用しようとしているのですが、下位のところを何度も読むオーバーヘッドがあり、 そこを置換表で高速化と考えていましたが、どこかがおかしい…。 そうこうするうちに、評価関数の精度が上がって、反復深化で十分実用になる ソート順がセットできる事になった模様です。 まだバグの可能性は捨てきれませんが、一旦諦めようかな。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/488
489: 310 [sage] 2018/11/15(木) 23:13:39.64 ID:Gy98Zi+i ProbCutは一旦放置して、地道にSolverの速度アップを始めました。 作り直した時に、末端ノードの処理を結構簡素化しちゃったので、やり直しです。 で、Zebraの初期バージョンのオーダリングを日本語で解説した資料を見つけて 色々とノウハウを得まして、Fastest Fastの処理を見直したり、その他色々やった ところ、速度が倍になりました。 が、見たくない現実としては、まだZebraの当時のFFOテストより若干遅い感じです。 以前はFFO#20限定で0.3秒くらいまで行っていたのですが、まだ1〜2秒前後。 ちなみに、似たスペックのPCでの計測値が公表されているマスターオセロは、 更に10倍程度高速です。ぬぬぬ。 棋譜作って学習していくと、探索時間が地味に短くなっていくし、時にはオーダリング の間違いが直ってジャンプするように特定の盤面で高速化する事がありますので、 まだまだ辛抱かなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/489
490: 名前は開発中のものです。 [sage] 2018/11/17(土) 11:28:45.78 ID:8gp5y6uH なんとか棋譜訂正が終わりました それだけだと終盤探索にあまり効き目はなかったようです… これで終わりたくなくて色々見直したところ、なんとかFFO55が6000秒から2500秒切るレベルまで高速化されました ただ問題があって、空きマスリストを用意していない影響で、空きマスが2つになるまでビット演算で着手番号を取得してるので、NPSがかなり低くなっています ここを改善するだけでも20%ぐらいは高速化するのではないかと…今週はそのへんやってみようかと思います http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/490
491: 名前は開発中のものです。 [sage] 2018/11/17(土) 11:43:10.64 ID:8gp5y6uH テスト結果を載せます ここから2倍ぐらいになれば、MasterReversiの背中が見えてくるレベル・・・まだまだです YBWCとかやらないとなぁ Microsoft Windows 10 Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz キャッシュサイズ256MB FFO#40 ( Exact:(a2:+38) 1.19sec node: 12.33[Mn] nps:10323[Knps] ) FFO#41 ( Exact:(h4: +0) 2.99sec node: 35.31[Mn] nps:11825[Knps] ) FFO#42 ( Exact:(g2: +6) 2.86sec node: 39.98[Mn] nps:13961[Knps] ) FFO#43 ( Exact:(G3:-12) 2.49sec node: 25.47[Mn] nps:10236[Knps] ) FFO#44 ( Exact:(D2:-14) 4.08sec node: 40.86[Mn] nps:10006[Knps] ) FFO#45 ( Exact:(b2: +6) 29.92sec node: 449.45[Mn] nps:15022[Knps] ) FFO#46 ( Exact:(b3: -8) 7.48sec node: 87.43[Mn] nps:11687[Knps] ) FFO#47 ( Exact:(G2: +4) 3.71sec node: 49.65[Mn] nps:12851[Knps] ) FFO#48 ( Exact:(F6:+28) 18.78sec node: 216.42[Mn] nps:11523[Knps] ) FFO#49 ( Exact:(e1:+16) 53.12sec node: 655.97[Mn] nps:12350[Knps] ) FFO#50 ( Exact:(d8:+10) 141.11sec node: 1.39[Gn] nps: 9873[Knps] ) FFO#51 ( Exact:(E2:+6) 39.81sec node: 509.68[Mn] nps:12804[Knps] ) FFO#52 ( Exact:(a3:+0) 54.33sec node: 725.60[Mn] nps:13355[Knps] ) FFO#53 ( Exact:(d8:-2) 774.22sec node: 10.74[Gn] nps:13873[Knps] ) FFO#54 ( Exact:(c7:-2) 965.65sec node: 14.37[Gn] nps:14973[Knps] ) FFO#55 ( Exact:(G6:+0) 7124.95sec node: 105.41[Gn] nps:14794[Knps] ) FFO#56 ( Exact:(H5:+2) 244.72sec node: 3.22[Gn] nps:13475[Knps] ) FFO#57 ( Exact:(a6:-10) 926.60sec node: 11.06[Gn] nps:13352[Knps] ) FFO#58 ( Exact:(g1:+4) 551.11sec node: 8.16[Gn] nps:14803[Knps] ) FFO#59 ( Exact:(g8:+64) 0.94sec node: 5.28[Mn] nps: 5626[Knps] ) http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/491
492: 名前は開発中のものです。 [sage] 2018/11/17(土) 11:45:17.49 ID:8gp5y6uH 間違えて前のバージョンを載せてしまいましたw 今回はこちらです。比較になってちょうどよかったかも FFO#40 ( Exact:(a2:+38) 1.29sec node: 10.63[Mn] nps: 8244[Knps] ) FFO#41 ( Exact:(h4: +0) 2.97sec node: 25.54[Mn] nps: 8599[Knps] ) FFO#42 ( Exact:(g2: +6) 2.24sec node: 20.58[Mn] nps: 9189[Knps] ) FFO#43 ( Exact:(C7:-12) 2.54sec node: 19.23[Mn] nps: 7572[Knps] ) FFO#44 ( Exact:(B8:-14) 4.32sec node: 32.07[Mn] nps: 7418[Knps] ) FFO#45 ( Exact:(b2: +6) 27.68sec node: 294.61[Mn] nps:10644[Knps] ) FFO#46 ( Exact:(b3: -8) 7.56sec node: 68.56[Mn] nps: 9070[Knps] ) FFO#47 ( Exact:(G2: +4) 3.25sec node: 36.70[Mn] nps:11293[Knps] ) FFO#48 ( Exact:(F6:+28) 21.11sec node: 195.99[Mn] nps: 9286[Knps] ) FFO#49 ( Exact:(e1:+16) 34.84sec node: 346.90[Mn] nps: 9958[Knps] ) FFO#50 ( Exact:(d8:+10) 108.94sec node: 960.91[Mn] nps: 8820[Knps] ) FFO#51 ( Exact:(E2:+6) 36.21sec node: 378.54[Mn] nps:10453[Knps] ) FFO#52 ( Exact:(a3:+0) 63.95sec node: 730.82[Mn] nps:11429[Knps] ) FFO#53 ( Exact:(d8:-2) 545.77sec node: 6.17[Gn] nps:11304[Knps] ) FFO#54 ( Exact:(c7:-2) 626.09sec node: 7.42[Gn] nps:11848[Knps] ) FFO#55 ( Exact:(G6:+0) 2492.74sec node: 31.10[Gn] nps:12475[Knps] ) FFO#56 ( Exact:(H5:+2) 212.26sec node: 2.52[Gn] nps:11894[Knps] ) FFO#57 ( Exact:(a6:-10) 520.85sec node: 6.35[Gn] nps:12183[Knps] ) FFO#58 ( Exact:(g1:+4) 588.80sec node: 8.54[Gn] nps:14512[Knps] ) FFO#59 ( Exact:(g8:+64) 1.88sec node: 8.86[Mn] nps: 4722[Knps] ) http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/492
493: 535 [sage] 2018/11/17(土) 17:28:43.31 ID:s4ulT91Q うおお、ついに新PC買っちゃいました! http://s.kota2.net/1542443012.jpg http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/493
494: 535 [sage] 2018/11/17(土) 17:38:57.27 ID:s4ulT91Q なんか買っただけで満足してしまっている自分がいるwww http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/494
495: 名前は開発中のものです。 [sage] 2018/11/17(土) 18:39:02.10 ID:8gp5y6uH 空きマスリストを作る方式でやってみたのですがビット演算のほうが5%速かったみたいです こうなるとオーダリングのコストを下げるしか無くなってきました http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/495
496: 名前は開発中のものです。 [sage] 2018/11/17(土) 18:40:00.61 ID:8gp5y6uH RYZENですか 自分もi5なので、新しいPCが欲しいところ http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/496
497: 535 [sage] 2018/11/17(土) 19:32:43.11 ID:s4ulT91Q >>496 せっかくなのでなにか͡コテ名乗ってくれませんか? まあ無理強いはしませんが。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/497
498: 535 [sage] 2018/11/17(土) 20:03:37.36 ID:s4ulT91Q シネベンチマルチ1705CB うーん、壊れる前のマシンの倍くらいにはなってるんですかね? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/498
499: 535 [sage] 2018/11/17(土) 20:20:24.98 ID:s4ulT91Q さて本題のAI開発は何から始めようか?w 差しあたっての目標はAQをwindowsでビルドかな http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/499
500: 535 [sage] 2018/11/17(土) 22:39:28.71 ID:s4ulT91Q >>491 よくみたらキャッシュ256MBってどうゆうこっちゃw http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/500
501: 535 [sage] 2018/11/18(日) 00:16:59.82 ID:rI0UFOUu windowsでビルドするの結構難しそう。 気分転換にAQのあらかじめexeになってるものを落として動かしてみたら割とサクサク動く。 そして当たり前だけど強い。 これは期待が高まるw http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/501
502: 310 [sage] 2018/11/18(日) 01:01:51.11 ID:CiNHjYBr おお。大体僕の倍くらいの速度ですね。 なお、気が短いし、記譜訂正が26手目くらいまでしかできていないので、 今は#40-#44の5つしか計測していません。昔から#41がピンポイントで遅い。 空きマスのビット演算、ちょうどやったところです。 mobility使わずに、flip関数がゼロだと着手不能ってパターンです。 静的オーダリングを使っていますが、角優先×最後って事で。 パターン配列作ってループ回してAND版と、先に空きマスをpextで並び替えて、 テーブル引いて元に戻して着手する版と2種類トライしまいしたが、速度差は 誤差としか言いようが無いレベルでしたorz 元に戻す演算を思いついたらまたトライする予定。 本日はProbCutを再トライ。今度はちゃんと高速化しているようです。 スレッショルド1.0σで反復無しで、その結果を用いてアスピレーションウィンドウ サーチして、少し高速化できたかなぁと言う感じ。 ただ、投機的に高速化しているので、FFOで比較しても、苦手盤面がありそうです。 棋譜が揃って来たら投機のヒット率が上がると信じて、しばらく使ってみます。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/502
503: 310 [sage] 2018/11/18(日) 01:13:00.25 ID:CiNHjYBr 535さんニューマシンおめ! 自分はSurface3で、i7-4650Uの1.7GHz(2.29GHz)×4です。 キャッシュとかどこで見れるのかなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/503
504: 310 [sage] 2018/11/18(日) 01:19:18.37 ID:CiNHjYBr ちなみに、偶数理論は何度かトライしていますが、速度低下してしまうので 使えずにいます。 ZebraはUndo方式で空きマスリストを常時更新しているようです。 僕はCopy方式で、末端の該当ノードで空きマスリストを作ろうとしているので すが、なかなかうまくできません。 過去にpaint処理みたいな方法で完全な空きマスリストを作成しましたが、 当然オーバーヘッドが大きくて使い物になりませんでした。 最近は「どうせ4隅でしょ?」という事で、盤面を4分割して空きマス計算して いますが、それでも遅い。 「どうせ4隅」が良くないのか、偶数理論の理解が間違っているのか… http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/504
505: 535 [sage] 2018/11/18(日) 17:01:14.00 ID:rI0UFOUu 高負荷時のファンが意外とうるさいorz 熱風もなかなかorz あんまり連続実行しないほうがいいのかもorz http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/505
506: 535 [sage] 2018/11/18(日) 17:56:00.38 ID:rI0UFOUu なんかクロームがメモリ1GBとか使ってるんだがこれで平常運転なのか? メモリに余裕あるからってなめすぎじゃね? http://mevius.5ch.net/test/read.cgi/gamedev/1508056498/506
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 496 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s