[過去ログ]
【オセロ,将棋】ボードゲーム【囲碁,War】 (1002レス)
【オセロ,将棋】ボードゲーム【囲碁,War】 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
405: 310 [sage] 2016/02/28(日) 01:10:48.52 ID:hQzoi2Tz 縦取り系は白番黒番試して、定石の評価値を修正してみました。 あと、AIの進行ごとのパラメータを試行錯誤して、なるべく負けないようにしてみました。 これにより、AIの読み時間が結構伸びて、1ゲームワーストケースで1手2分、トータル 5分くらい思考してしまいます。これは、反復深化などで、タイムアップをせずに、次の ステップに入る制限時間だけ決めているためです。 EDAX+Unified Book先生はレベル21で、黒番白番ともに引き分けになります。 こちらは20手前に定石が切れていますが、その後も最善手が打てているという事になり ます。こちらは何局打っても手を変えないので、EDAX先生のBookの進行に合わせた だけですが。一方zebra先生は比較的手をいろいろ変えてくるので、勝ち負けが発生します (もちろん、各アプリの設定次第ですが)。 序盤定石の評価値をそれなりにしたら、後は引き分け進行をひたすら登録していって、 相手が最善しか着手しないと信用すると負けないプログラムができちゃうのではないか と、ふと思いましたが・・・。トップ同士の対局が引き分けばかりになるのは、こういう事 なんでしょうね。というか、完全解析ってこれが完成した状態なのか。 EDAX先生のUnified Bookは、いくつかの引き分け進行棋譜の集合体のようですが、 元データが幸い既知のWthor形式なので、それをもらってしまうと、トップレベルになる のかなぁ。トップな人がBook構築に主眼を移したり、開発が止まったりする訳だと。 そろそろ、混とんとしているプログラムを綺麗に直して、パクリBook作って開発終了しちゃ おうかと思い始めています。速度的には、まだまだ改善の余地はありそうですが。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/405
450: 310 [sage] 2016/05/27(金) 00:36:10.52 ID:gIFpjm1c 早々に状況が判明しました。ここに書くと進むんだよなぁ。 mtd(f)+negaScoutで繰り返し探索しながら、置換表に置換データを置いて、更に それを並び替えに利用していたのですが、最初にPVを探索してしまうと、その後は 別の着手も評価値がαになってしまい、並び替えの意味が無くなっている感じです。 ちなみにPVだけは別ルートで必ず先頭に探索するようにしてあります。 というわけで、テスト的に初段のみ敢えて並び順を逆転させてmtd(f)を未使用にして ただのnegaScoutで、mpc99%→全探索をしてみたところ、探索ノード数がかなり減り ました。置換表使用の深さ全部で並び順を逆転させてみたら、mpcの99%ですら全く 終了する気配がなくなりました。 さて、どうやって実現しようかなと。 今のところ、mpcはかなり高速なので、これをnegaMaxにして。 いわゆる並び替え専用の浅い探査にしようかなと。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/450
486: 460 [sage] 2016/08/14(日) 16:41:37.52 ID:ALD5heTO 現在、終盤用MPCパラメータ作成中です。 23手完全読みのカットペアに入っています。24手読みの計算が終わったらいったん実装に入るつもりです。 >>310 YBWCに関して調べましたが、そうみたいですね。 MPCパラメータを作成している間に、なんとなくで適当に実装してみましたが なぜかエラーで落ちまくりでしたw 排他がかかっていない致命的な箇所があるのか・・・置換表は排他をかけたのですが・・・ PVライン生成あたりも怪しい、とりあえずもう少し調べてみないとダメそう。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/486
501: 496 [sage] 2016/08/22(月) 21:10:28.52 ID:WzxI/O2e 2000万ノード/sとかってsseやavx使って始めて可能になるレベル? オセロの合法手の実装になにかすごい効率的なビット演算やってるとか? http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/501
532: 310 [sage] 2016/09/05(月) 22:41:44.52 ID:KkVISbKe いかなディープラーニングでも評価関数をいきなり作るのは厳しい気がしてきてます。 ここはアルファ碁の学習の仕方にならって、最初は次の1手を学習させてみようかと。 で、今までは頭でわかったつもりになっていた、多クラス分類問題を調べてみると、 Softmax関数の微分(バックプロパゲーションで必要)がわからない事にあらためて 気が付きました。 幸い、Softmax関数の定義があるひな形プログラムがあったので、これから解読です。 人さまのプログラムを見ると、自分がいかにC++を知らないのか、思い知らされますorz http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/532
546: 310 [sage] 2016/09/12(月) 22:52:49.52 ID:5hD0Gf9W >>460さん、着実に進んでいてうらやましい。 自分はというと、だんだんとオセロの事は忘れて、ディープラーニングのプログラムの 確認修正、機能追加に頭がスイッチしちゃってる感じです。むむむ。 C++スキルも微妙に上がってきていますので、オセロ側に戻る時も、もう1回1から 全部コーディングしなおした方が良いかもw。ほとんどCの状態から始まって、もう3回 くらい書き直しているので、そんなに時間かからないと思うし。 と、どんどん脱線していくのであった。 >>545さん そのプログラム見てないですが、γというと、たいてい何かの係数パラメータじゃないかと。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/546
609: 310 [sage] 2016/10/15(土) 13:58:53.52 ID:iZ3eY/zy NPS低下問題はやはりハッシュ衝突のようで、ちょこっと直したら解消しました。 Connect4は手順前後しても同じ形になる事が多いゲーム(DAG問題多発)なので、 置換表を上手く使わないと、7兆種類あると言われている盤面を何度も重複探索して しまう事になります。が、置換表探索と登録のオーバーヘッドは結構大きく、メモリ パンクでスワップ多発の問題も起きます。 今の設定だと残り27手探索くらいなら難しい問題で1分程度で解けそうです。 NPSは20メガくらい。が、メモリパンクや重複探索の問題があるので、その速度を もとに完全解析に要する期間を推計するのは無理っぽい感じです。 というわけで、完全解析はこの辺にして、MCTSの方に行きます。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/609
826: 310 [sage] 2017/05/16(火) 09:54:31.52 ID:Vk+2t4O7 >>825 問答無用で後者です。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/826
873: 310 [sage] 2017/06/26(月) 23:49:18.52 ID:GJUXvwb3 藤井君凄かったね。 abemaの解説でも言ってたけど、互角のまま進行していたのに、 気が付いたら圧勝の情勢になるとか、AIチックな差し回しだよね。 じわじわとライブラリ構築中。 オセロ専用ライブラリはほぼ完成。 明日から終盤読み切り処理に取り掛かります。 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/873
938: 310 [sage] 2017/09/03(日) 08:52:20.52 ID:sEBlGL7A 相変わらず記譜集め中。 オセロの読み切り処理の並列化は、粒度がでかくて、待ち合わせロスが大きいので、 CPUがアイドルしている時間が長く気になります。そこで、スレッド数をチェックしてコア 数を下回っている時は、リーフに近いところでも並列探索に戻るようにしてみました。 PPL機能ではスレッド数は取得不可能で、結局自分で増減カウントしました。 リソースモニター上ではCPU使用率が100%近くに貼りついているいるので、待ち合わ せロスはほぼゼロになりましたが、早くなったかどうかは未確認です(汗 http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/938
971: 310 [sage] 2017/09/30(土) 23:21:48.52 ID:WQNilA4m フィルタ数は大きければ大きいほど良いのですが、学習に必要な時間が恐ろしく 長くなります。十分に多いフィルタ数で収束できる事を確認したうえで、だんだんと 減らして行くなんて作業になります。段数についても一緒。 ロースペックマシンだと1回試すのに下手すると数週間とかあり得るのです。 かといって、精度が出せないレベルの簡素なモデルで試しても、いつまでたって も収束せずに、まだかなみたいな。モデルの複雑さが足りているかいないかが わからない点が、困ったちゃんなのです。 さて、強化学習ですが、なんとなく学習しているようにも見えるし、最適解の周囲を 振動しているようにも見えます。ふと思い付いたのですが、最適化(SMORMS3って 奴を使用)をやめて、ただの学習率(もしくは、学習率の漸減)にした方が、動きが 素直になって良いのかも。 今のスピードは1時間に100万対戦。1億対戦するのに4日強かかるわけで。まだ 試行回数が足りていないかもしれないし、そもそもただの線形ではモデルが簡単すぎ るのかもしれません。 というわけで、CNN使わずに線形でやっても同じ問題が起きまするorz http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/971
979: 535 [sage] 2017/10/08(日) 00:36:58.52 ID:wvFd88H+ tensorflowを捨ててC++で使いやすい別のフレームワークを探そうかと思案中 でもtensorflow捨てるの勿体ないなぁとも思う http://mevius.5ch.net/test/read.cgi/gamedev/1057763418/979
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s