- 1 名前:名前は開発中のものです。 [03/07/10 00:10 ID:6FQp6G+O.net]
- 比較的地味なボードゲーム専用のスレが欲しくて立ててみました。
私はc言語で作ったデータベースを使って人間と対戦できる将棋かチェス みたいなソフトを作りたいと思ってますが、グラフィックインターフェースの 作り方がわからなくてつっかえているレベルです。
- 785 名前:310 mailto:sage [2017/04/03(月) 20:36:38.16 ID:BqB2rFYT.net]
- パスがおかしくなる奴は、やはりデバッグルーチン限定で、かつ直すと本処理にも
大きな修正が必要になるので、当該デバッグ処理を削除して対処。 F5D6C4G5系をテストプレイしていてわかったのは、中盤ことごとく読みがZebraと 一致しない事。一致しないだけなら良いけど、そこがところどころ悪手になってるっぽい。 読みが一致しないと、事前に読んでいない枝で探索する事になり、浅い探索のまま 間違いが連鎖する感じ。Zebraの着手は、こちらAIが予想は評価値順で3番目以降に なっている。 これ、ロールポリシーが決めるプレイアウト割り当ての優先順位の問題か、それとも プレイアウトの精度の問題か、はっきりしませんが、要するに評価値が間違っている =弱いという事ですね。 で、この2点について、もう1ステップ先に進んでみようかと思います。 プレイアウトについては、強化学習で良いヒューリスティックを作れないか検討。 ロールポリシーについては、与えている棋譜のバラつきが原因かも知れないので、 強化学習の棋譜から自動生成する事を検討。 あと、終盤40手以降はほぼ間違えないので、Solverを削除してしまいました。 また、できれば、最終的には定石も無しにしたくなって来ました。 目指せピュアMCTS。
- 786 名前:310 mailto:sage [2017/04/03(月) 20:41:47.20 ID:BqB2rFYT.net]
- 忘れていた。
>>782の22手目は、Zebraの当初予想はG4でしたが、このターンに達した時に、 A6に変わりました。そこでここで強制的にG4を打たせて続行してみましたが、 +4でこちらのAIが勝利しました。Zebraが間違えたのは、もう少し前の場所の 可能性があります。
- 787 名前:310 mailto:sage [2017/04/05(水) 01:14:25.59 ID:4SaLkpgr.net]
- >>786
Zebraが間違えたのは14手目のB5だった模様。ここで引き分け手順から外れてます。 定石無しにしようと書いておきながら、少なくとも引分とわかっている盤面情報を活用 して、探索の省略ができないかと、あちこちに組み込んでみましたが、効果は不明。 効果がわからないというより、毎晩こつこつと評価関数のエポック数を稼いでいたところ、 どうも過学習に近い状況に陥っているみたいで、手の選択が変わってきて、むしろ、 どんどん弱くなりつつあります。むむむ。 一旦変な手を選んでしまうと、Zebraにしっぺ返しを食らって、せっかく読み貯めた プレイアウトの大半がボツになり、短いツリーで手を選択するうちに、どんどん 間違った手を打っていく模様。結果的に勝った時は、ツリーがどんどん伸びて行く のと対照的です。 で、結局、評価関数の良し悪しという話に逆戻りorz 評価関数から脱却するためにMCTS始めた頃が懐かしい・・・
- 788 名前:535 mailto:sage [2017/04/05(水) 23:08:13.71 ID:laANBz/U.net]
- 最新の対戦結果です。
LV2に白番で勝ち越したようです。 しかし、LV1に黒番で負け越している。 あとLV1とLV3で白番のほうが勝率がいいのが謎。 真面目に長連対策してないのが弱点になっているのだろうか? それにしてもLV3強すぎる。 LV1との対戦も100戦やる予定でしたが途中で固まってしまったようです。 100局目 黒(airandom.dll)の勝利回数: 2 白(ai-lv3.dll)の勝利回数: 98 100局目 黒(ai-lv3.dll)の勝利回数: 92 白(airandom.dll)の勝利回数: 8 100局目 黒(airandom.dll)の勝利回数: 77 白(ai-lv2.dll)の勝利回数: 23 100局目 黒(ai-lv2.dll)の勝利回数: 45 白(airandom.dll)の勝利回数: 55 86局目 黒(airandom.dll)の勝利回数: 41 白(ai-lv1.dll)の勝利回数: 45 83局目 黒(ai-lv1.dll)の勝利回数: 7 白(airandom.dll)の勝利回数: 76
- 789 名前:名前は開発中のものです。 mailto:sage [2017/04/08(土) 13:24:07.33 ID:mnzcHtDh.net]
- 2003年に立てられたスレが最近になって動いてる…w
がんばってくださいな。
- 790 名前:310 mailto:sage [2017/04/08(土) 17:26:32.31 ID:cxbXAKoL.net]
- 色々グチャグチャと改良(改悪)してましたが、一旦整理して、結局かなりシンプルな
形に落ち着きました。定石も無しにしましたので、2手目以後は考えます。プレイアウト に時間がかかるので、序盤は考える時間が長すぎです。点数ベースの評価関数を弄り 倒して勝率っぽい数字をでっちあげる事で、勝率の評価関数を使わなくなりました。 今のところ対Zebraは勝ったり負けたりで、強さ的には匹敵するところまで行けたかなと。 両者定石無しなので、純粋にAI部の強さ比較という事で良いのかなぁと自負。 たまにはAI白番(Zebra黒)の棋譜を。自作AIの+2勝ちです。 F5 D6 C4 D3 C3 F4 C5 B3 C2 E3 D2 C6 B4 A3 G4 F3 E6 F7 B5 A4 A6 B6 G3 F6 E7 F8 D7 C7 G6 H5 D8 C1 H6 H4 E8 C8 G5 H7 B1 A1 B2 E2 A2 H3 F1 D1 G7 H8 G8 A5 A7 F2 E1 G1 H1 B7 G2 H2 B8 A8 MCTSじゃあまり強くならないと思っていたのが、ここまで来れて正直本人がびっくり。 アルファ碁のNature論文のお蔭です。 次ステップで強化学習とか考えていたけど、まだ何からどうすれば良いのかわからない(汗
- 791 名前:535 mailto:sage [2017/04/09(日) 05:10:12.89 ID:h/eXLfOt.net]
- 相手に守りの手を強要させることが出来る有利な状態をいかに保ってゲームを進めるか。
終盤の要になりそうです。
- 792 名前:310 mailto:sage [2017/04/09(日) 20:11:13.36 ID:3mOyIMJx.net]
- 評価関数の評価値計算でmin-Maxの時にやっていたのに、今回はやっていなかった
手抜き箇所を修正し、速度アップを図りました。 プレイアウトの速度が劇的に速くなりました。 最低でも10万プレイアウト貯め無いと、変な答えを返す(だろう)という事で、最大試行 回数の手が最低プレイアウト数を超えていない時は探索延長していました。そのため 序盤で探索延長頻発していましたが、今回の改造でほぼ延長無しになりました。 あと、評価関数のステージ分割を細かくしまして、再計算を開始。 1手20秒設定でやっていますが(他にバックグラウンド探索あり)、10秒でも実用になるかなぁ。 MCTSなオセロとしては、ある程度できちゃった気がする。
- 793 名前:535 mailto:sage [2017/04/10(月) 22:56:16.99 ID:Sai+9C2+.net]
- もしかして>>310さんのAIは世界最強クラスってことですか?
凄すぎ…
- 794 名前:535 mailto:sage [2017/04/10(月) 23:19:01.03 ID:Sai+9C2+.net]
- 完成したら論文書いてwebで公開してくださいw
おねがいしますw
- 795 名前:310 mailto:sage [2017/04/11(火) 07:59:39.45 ID:KmgeOKfx.net]
- >>793
いや・・・それはないです。 オセロの場合、定石DBの学習が強さに直結するので、定石DBを持っていないAIは かなり不利というか、対戦したら勝ち目ありません。何回も対戦するうちに苦手な定石 に誘導されちゃうので、勝ち目なしは確信しています。 また、アルゴリズムの優越比較という意味で、Zebraの定石DBも無しにしましたが、 Zebraの中盤も一昔前のレベルで、決して強くはないという評価をWEBで見た事が あります。今回Zebraを使用したのは、対戦中に学習モードに切り替える事でどこで 間違えたかがわかりやすいからです。Edaxとはまだ対戦させません。 ただ、個人的に思い込みたいレベルでいうなら、MCTS系のオセロAIでは最強クラス なんじゃないかなぁと(願望)。なにせ、いまどきオセロAIを開発している人はいないし、 ましてモンテカルロ系で試そうなんて人もいなさそうですから。言ったもの勝ち(汗 アルファ碁の論文のDeepでNeural networkではない部分を適用する事で、min-Maxで なければ存在価値がないところまで行き着いていたオセロAIでもMCTSで結構強くなれる 事が証明できたかなぁと。本当にアルファ碁様様です。 ブログ作って解説でも作ろうかと準備していましたが、試しに開設したブログサービスでは アップロードができなかったので、一旦閉鎖しました。どこか良いところないかな。
- 796 名前:535 mailto:sage [2017/04/13(木) 22:33:44.03 ID:vVAZxoH8.net]
- いろいろ試してみてるけどなんか勝利手順DBを充実させるのが一番手っ取り早く強くなる気がする。
いま12万局分棋譜あるけど100万局くらいまで増やしてみるか… もっと計算リソースが欲しい。
- 797 名前:310 mailto:sage [2017/04/18(火) 01:24:07.08 ID:Ohai0OaC.net]
- 評価関数のエポックを更に進めたら180エポック近辺から勝てなくなってきました。
もしかしてたまたま間違ったところが、zebraの弱点をついていたのかも知れないし、 評価関数の値にメリハリがついてきて、逆に見落としが起きやすくなったのかも 知れないし。過学習かも知れないし。 評価関数をブラッシュアップするには、負け手順を棋譜化して、学習データに投入 しなきゃならん。 ところが、負け確定後に例の自爆モードが作動してしまいます。棋譜として使えるよう にするために、ソルバーを復活させました。ついでに色々やってたら、見なかった事 にしていたバグもとれました。ついでだからと偶数理論を実装したのですが、かえって 遅くなってしまった。他の人はどういう実装しているのだろう。 今の速度だと35手目から読み切らないといけない。今の速度だと時間の予測が難し いというか、軽く1時間はかかりそう。
- 798 名前:535 mailto:sage [2017/04/19(水) 21:59:17.68 ID:WjbK3YLE.net]
- Ponanzaがディープラーニング取り込みに成功したとかなんとか。
ハードもものすごいものを用意するそうですね。
- 799 名前:535 mailto:sage [2017/04/21(金) 20:55:54.67 ID:ZLYvyeQY.net]
- 大分勝率上がってきた。
思考時間長いから数こなせないのが厳しいですね。 25局目 黒(airandom.dll)の勝利回数: 8 白(ai-lv3.dll)の勝利回数: 17
- 800 名前:535 mailto:sage [2017/04/21(金) 22:05:48.97 ID:ZLYvyeQY.net]
- やっぱディープラーニング憧れるなぁ。
俺のAIにもブレークスルーを起こしてくれw
|

|