モンテカルロ法を用いた 立体四目並べの対戦プログラム

Slides:



Advertisements
Similar presentations
コンピュータ囲碁における Root 並列化について 発表者 副島 佑介. 目次 研究背景 – 囲碁の難しさ – モンテカルロ木探索について – 並列化手法の先行研究 提案手法 – Root 並列化における合議制 実験結果 まとめ.
Advertisements

1 高速フーリエ変換 (fast Fourier transform). 2 高速フーリエ変換とは? – 簡単に言うとフーリエ変換を効率よく計算 する方法 – アルゴリズムの設計技法は分割統治法に基 づいている 今回の目的は? – 多項式の積を求める問題を取り上げ、高速 フーリエ変換のアルゴリズムを用いた解法.
Voronoi Game on Graph and its Complexity 寺本 幸生 上原 隆平 (JAIST)
HBSP モデル上での 行列積を求めるアルゴリ ム 情報論理工学 吉岡健太.
G 問題 コードアート オンライン 原案:西出 ライタ:伊藤 テスタ:西出. 問題概要 0 大きさのさまざまな n 個の円に多角形 m 個を入れら れるか判定する問題 0 ただし、同じ円に複数の多角形を入れることはでき ない 0 もし、入れられる場合は、辞書順最小の入れ方を出 力 ① ② ③ ① ②.
 C 川船 美帆.  強い人工知能の作成 o 「遺伝的アルゴリズム」  「どうぶつしょうぎ」のアプリケーショ ン作成 o スマートフォン向けアプリケーション.
2行+αチョンプに関する考察 京都大学 ○後藤順一 伊藤大雄.
3次元nクイーン問題の 解に関する研究 論理工学研究室 伊藤精一
人工知能概論 第4回 探索(3) ゲームの理論.
Problem H: Queen’s case
いろいろな確率を求めてみよう。.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
コンピュータ囲碁の仕組み ~ 将棋との違い ~
ゲーム理論・ゲーム理論Ⅰ (第6回) 第4章 戦略形ゲームの応用
四路の碁アプリ開発 情報論理工学研究所 高倉秀斗.
半順序集合ゲーム周期性定理の拡張 京都大学情報学研究科 ○後藤順一 伊藤大雄.
有効数字 有効数字の利用を考える.
リバーシの並列化 並列化するときに起こる問題を定義しろ おぷてぃまいざー SSAIとMSAIは比較しろ  前田昂寛.
Extremal Combinatrics Chapter 4
遺伝アルゴリズムによる NQueen解法 ~遺伝補修飾を用いた解探索の性能評価~
先端論文紹介ゼミ Role-based Context-specific Multiagent Q-learning
モンテカルロ法によるミニ囲碁 増井拓視 情報理論工学研究所.
 Combinations(2)        古川 勇輔.
モンテカルロ法と囲碁・将棋ソフトの人知超え
数独パズルの難易度判定 ~解法ロジックを用いた数値化の提案~
単位 おねだり ☆オセロ おねだり隊☆D班.
碁石ゲームに関する考察 4目並べ講座 パターン生成ゲームの楽しみ 徳山 豪 (東北大学) .
近畿大学理工学部情報学科 情報論理研究室 井藤 雄太
モンテカルロ碁 電気通信大学 村松研究室 下川和也.
UCB+ 法を用いた Big Two AI の研究
s a b f c e d 2016年度 有限幾何学 期末試験 問1:15点
JAVAでつくるオセロ 伊東飛鳥、宮島雄一 長畑弘樹、ソギ原直人.
モデリングシミュレーション入門(井庭崇)
研究集会「組合せゲーム・パズル」,豊橋技術科学大学
~オセロゲーム~ アルゴリズムとそのプログラム
シャノンのスイッチングゲームにおけるペアリング戦略について
シャノンのスイッチングゲームにおけるペアリング戦略の複雑さについて
~ 「スポーツにおけるゲーム分析」について ~
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
Bridge It と Connections の 必勝法について
佐藤のゲーム とその仲間たち (完全可解ゲームの話) 関西学院大学  川中 宣明 数理科学研究センター談話会    2011年6月29日.
モデルの逆解析 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
リーダー 亀山奈央 プレゼンター 橘貴志 アルゴリズム 古森愛美 プログラマー 中島宏基 パワーポイント 公文ゆい
4人版リバーシYoninの解析 情報論理研究室 藤本 侑花
BLACK JACKの作成 ブラックジャックのルール 概要 勝敗の判定 開発中の問題点 Aの扱いについて 配り直し(DEAL) 工夫した点
G班メンバー リーダー 橋本望 SE 北本理紗と服部友哉 PPT作成 橋本望と山田侑加
京都大学大学院情報学研究科 宮川博光 伊藤大雄
意外と身近なゲーム理論 へなちょこ研究室 p.
Bridge It と Connections の 必勝法について
25. Randomized Algorithms
近畿大学理工学部情報学科 情報論理研究室 松浦 美里
アルゴリズムとプログラミング (Algorithms and Programming)
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
ファジィ制約充足問題への 連続領域の導入 Introducing continuous domains to
近畿大学理工学部情報学科 情報論理工学研究室 赤井 隆純
情報論理工学 研究室 第7回: 強い手の選択.
3次元Nクイーン問題の 解の存在の検証 07-1-037-0106 前波 大貴 情報論理工学研究室 宜しくお願いします。
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
重み付き投票ゲームにおける 投票力指数の計算の高速化
近畿大学 理工学部 情報学科 情報論理工学部研究室 潘小月
数値解析ⅡーI ~オセロゲームのプログラム~
F班 メンバー 班長 雨堤 智宏 アルゴリズム解析 角田 泰彬 竹林 秀高 ppt作成 清水 貴史
囲碁プログラム 彩の仕組み 山下 宏 2008年9月4日 FIT2008.
数値解析Ⅱ ~五目並べのプログラミング~ C班.
近畿大学理工学部情報学科 情報論理工学研究室 段野健太
実験計画法 Design of Experiments (DoE)
Othello G班         山崎 木下 山本 上手      .
情報論理工学 研究室 第8回: ミニマックス法.
人工知能概論 第4回 探索(3) ゲームの理論.
京都大学 情報学研究科 通信情報システム専攻 高田智史 joint work with 伊藤大雄 中村義作
Presentation transcript:

モンテカルロ法を用いた 立体四目並べの対戦プログラム 中央大学 理工学部 情報工学科 4年 林 佳佑

目次 研究の目的 立体四目並べのルール 各プログラムの紹介 ErdösとSelfridgeの定理の紹介 マス目の重要度の利用 計算機実験結果 結論 今後について

研究の目的 立体四目並べにモンテカルロ法を適用し、勝率と処理 時間の点に優れたプログラムを作成する。

立体四目並べのルール 棒が16本4×4のマス目状になっている盤面を用いる。 プレイヤーは2人で、交互に自分の色の玉を盤面の棒 のいずれかに入れる。 先に縦横斜めいずれかに、自分の色の玉を4つ並べ たプレイヤーの勝利となる。

立体四目並べのルール 玉を空中に置くことはできず、必ず棒の1番下から積 み上げなければならない。 すでに4つの玉が入った棒には、玉を置くことはできな い。 全ての玉を置き終わっても勝敗が決定しない場合は、 引き分けとする。

各プログラムの紹介 モンテカルロ法を使ったプログラム お互いランダムに、玉を置ける棒を選んで、 玉を置いていき、決着までプレイすることを プレーアウトと呼ぶ。 各候補手に対して、たくさんの  プレーアウトをして、勝率の  最も高い候補手を選択する。 右図は、ある局面で15回の  プレーアウトが終わったときの  イメージである。 プレーアウト 回数 5回 勝利数 4回 1回 2回 黒勝利 黒敗北 黒勝利 黒敗北 プレーアウト 回数 勝利数 1回 0回 2回 1回 0回 1回 0回 1回 0回 0回 1回 0回

各プログラムの紹介 原始モンテカルロ UCB1モンテカルロ UCTモンテカルロ プレーアウト改善UCTモンテカルロ(提案)

各プログラムの紹介 原始モンテカルロ モンテカルロ法を使ったプログラム 各プログラムは、プレーアウトを するときの、調べる候補手の 選び方が異なる。 原始モンテカルロ   候補手からランダムに   選んでプレーアウトする。 プレーアウト 回数 5回 勝利数 4回 1回 2回 黒勝利 黒敗北 黒勝利 黒敗北 プレーアウト 回数 勝利数 1回 0回 2回 1回 0回 1回 0回 1回 0回 0回 1回 0回

各プログラムの紹介 UCB1はP. Auerら(2002) によるアルゴリズム UCB1のアルゴリズム 初期化:各候補手を1回ずつプレーアウトする。 繰り返し:各候補手に対して、      が最も大きい黒 の候補手を選択し、プレーアウトする。 nはそれまでの総プレーアウト回数 mはある候補手のプレーアウト回数 wはある候補手の勝利数 UCB1値 プレーアウト 回数 5回 勝利数 4回 1回 2回

各プログラムの紹介 UCB1モンテカルロ モンテカルロ法を使ったプログラム P. Auerら(2002) のUCB1という アルゴリズムを利用して、 それまでのプレーアウト結果から、 勝率の高い、もしくはあまり選ば れていない手を優先的に選んで プレーアウトする。 プレーアウト 回数 10回 6回 9回 勝利数 2回 4回 黒敗北 黒勝利 黒敗北 UCB1値 プレーアウト 回数 勝利数 1.151 1.158 1.164 1.285 1.026 1.017 1.034 1.007 1.267 1.294 1.140 1.257 6回 7回 4回 4回 5回 6回 4回 1回 3回 2回

各プログラムの紹介 UCTモンテカルロ モンテカルロ法を使ったプログラム  UCTはSylvain Gelly(2006)らによるアルゴリズム。 UCB1を利用して、ある候補手のプレーアウト回数が閾値に達 すると、その手をさらに深く探索する。 10回 プレーアウト 回数 8回 勝利数 プレーアウト 回数 5回 勝利数 2回 1回 プレーアウト 回数 5回 10回 勝利数 2回 1回 8回 UCTの閾値は10 0回 プレーアウト 回数 勝利数

プログラムの改善を考える 好手、悪手を短い処理時間でおおまかにでも判断でき ればプログラム改善の助けになるだろう。 マス目の重要度という考え方を導入する。 マス目の重要度は、Erdös-Selfridge(1973)の定理の証 明に使われている。

ErdösとSelfridgeの定理 この定理で扱うのはMaker-Breakerゲームである。 MakerとBreakerの2人でプレイし、Makerはm目並べたら勝利、 BreakerはMakerがm目並べるのを阻止したら勝利となる。

ErdösとSelfridgeの定理 有限個のマス目からなる集合をVとする。 勝利集合をWとする。 3×3の3目並べの場合 a b c d h i

ErdösとSelfridgeの定理 先手がBreakerで、後手がMakerのとき、次の性質が 成り立つ。 勝利集合の数が  未満ならば、先手のBreakerは、 後手のMakerの勝利を阻止できる。(Breakerに必勝手 順が存在する)

ErdösとSelfridgeの定理 上図のようにマス目に数字を割り当てる。 ある勝利集合W∈Wについて、勝利集合Wの重みを、   W中のマス目に対応する数字を全て掛け合わせたも のをする。 勝利集合すべての重みの総和を、その盤面のポテン シャルと呼ぶことにする。Makerが勝利している状態で は、少なくとも1つの勝利集合は重みが1となるので、 ポテンシャルは1以上となる。 × ○ 1 ½

ErdösとSelfridgeの定理 最上段{a,b,c} の勝利集合の重みは1×1/2×1=1/2 となる。 ○ 1 ½ 最上段{a,b,c} の勝利集合の重みは1×1/2×1=1/2 となる。 マス目x∈Vがまだどちらのプレイヤーにも取られてい ないとき、xの重要度を「xを含む勝利集合全ての重み の総和」とする。

ErdösとSelfridgeの定理 マス目bの重要度は1×1/2×1+1/2×0×1/2=1/2 となる。 ○ 1 ½ マス目bの重要度は1×1/2×1+1/2×0×1/2=1/2                となる。 Breakerが「重要度の最も大きいマス目を取る」という 戦略をとると、ある局面からBreakerとMakerが一手ず つプレイした場合(Breakerが先)、盤面のポテンシャ ルは同じかより小さくなる。

ErdösとSelfridgeの定理 定理の条件『勝利集合の数|W|が 未満』が成り立 つと、ゲームの開始状態でのポテンシャルは となる。           となる。 Breakerが常に重要度最大のマス目を取れば、Maker がどんなマス目を選んでもポテンシャルは同じか減少 する。 Makerが勝利したと仮定すると、勝利した状態のポテ ンシャルは1以上となるので矛盾する。

マス目の重要度の利用 ErdösとSelfridgeの定理では、マス目の重要度を考える ために各マス目に数字を割り当てる。 本研究では数字の割り当て方によって、2種類のマス 目の重要度を考える。

マス目の重要度の利用 Makerの重要度 自分の取ったマス目を2、相手の取ったマス目を0、どちらも 取っていないマス目を1とする。 求めるマス目の重要度は                                となる。 ○ ● 2 1

マス目の重要度の利用 Breakerの重要度 自分の取ったマス目を0、相手の取ったマス目を2、どちらも 取っていないマス目を1とする。 求めるマス目の重要度は                                となる。 ○ ● 2 1

マス目の重要度の利用 プレーアウトの改善 これまで お互い、ランダムに合法手を選択して、決着までプレーさせる。 マス目の重要度を利用したもの  お互い、ランダムに合法手を選択して、決着までプレーさせる。 マス目の重要度を利用したもの  お互い一手ごとに、1/2の確率で Makerの重要度とBreakerの 重要度の和が最大のマス目を選択し、1/2の確率でランダム に合法手を選択することを繰り返して、決着までプレーさせる。

各プログラムの紹介 原始モンテカルロ UCB1モンテカルロ UCTモンテカルロ プレーアウト改善UCTモンテカルロ(提案)

計算機実験結果 原始モンテカルロとUCB1モンテカルロの場合 原始モンテカルロ UCB1モンテカルロ 手番 プレーアウト 回数(回) 勝利数 処理時間 (秒) 先手 10000 42 0.6030 後手 58 0.6623 20000 52 1.222 48 1.356 50000 50 2.994 3.327 34 0.5918 66 0.6803 35 1.171 65 1.342 38 2.796 62 3.228

計算機実験結果 UCB1モンテカルロとUCTモンテカルロの場合 UCB1モンテカルロ UCTモンテカルロ 手番 プレーアウト 回数(回) 勝利数 (回) 処理時間 (秒) 先手 10000 33 0.6651 後手 67 0.7330 20000 38 1.335 62 1.533 50000 22 3.403 78 4.084 28 0.6766 71 0.7714 24 1.371 76 1.595 7 3.520 93 4.236

プレーアウト改善UCTモンテカルロ(提案) 計算機実験結果 プレーアウトの改善を施したプログラムの対戦結果 プレーアウト改善UCTモンテカルロ(提案) UCTモンテカルロ 手番 プレーアウト 回数(回) 勝利数 (回) 処理時間 (秒) 先手 20000 58 3.567 後手 50000 42 3.651 47 3.688 53 3.829 UCTモンテカルロ 手番 プレーアウト 回数(回) 勝利数 (回) 処理時間 (秒) 先手 20000 44 1.446 後手 50000 56 3.812 22 1.441 77 3.758

結論 プレーアウト回数が同じ場合、UCTモンテカルロ、 UCB1モンテカルロ、原始モンテカルロの順に勝率の 点で優れていることがわかる。 プレーアウト改善UCTモンテカルロは、UCTモンテカ ルロのプログラムと比較して、勝率や処理時間の点で 優れていると言える。

今後について 今後の課題として、プレーアウトの改善が考えられる。 プレーアウトの質はモンテカルロ法を利用したプログ ラムの強さそのものである。 しかし1回のプレーアウトに時間がかかると処理時間 が膨大になってしまうため、計算量は少ないプレーア ウトが求められる。

おわり

ご清聴ありがとうございました