人工生命・人工知能・ディープラーニング

AI がカーリングの戦術を考える

Twitter カーリングAIじりつくん アカウント
https://twitter.com/jiritsukun_
 
note カーリングAIじりつくん アカウント
https://note.com/jiritsukun_
 

自律系工学研究室では,カーリングというスポーツへの貢献を目指して,大きく分けて2つの方向性で研究を行っています.この研究については,Twitterアカウント「カーリングAIじりつくん」で,情報発信をしています.
 
一つは,実際のカーリングの世界大会や国内大会の試合データを分析して,チームやプレイヤの戦術支援に役立ててもらおうとするものです.こちらは,例えば,得点差と残りエンド数,次のエンドの後攻/先攻が与えられる局面における期待勝率を算出しています.世界トップチームの過去2000試合以上の得点経過のデータからその状況から実際にどれだけの割合で勝てるかを表しています.
 
もう一つは,電気通信大学の伊藤毅志先生のグループが,カーリングの戦術を解析するために,カーリングストーンの挙動をシミュレートするデジタルカーリングというコンピュータゲームを開発しました.このゲームは人間またはAIがプレイヤとなり,2人で対戦を行います.AIは,現在の局面(盤面状態)に対し,次の投球をどのように行うか(投球情報)を出力するプログラムのことを指します.このデジタルカーリングにおいて強いAIを開発することができれば,現実世界におけるカーリングの戦略考案への貢献が期待できます.こちらの研究については,関連リンクをご覧ください.
 
カーリングAI「じりつくん」では,不確定性を考慮したExpectimax法を用いたゲーム木探索を利用しています.その特徴は,(a) ニューラルネットワークによる評価関数の学習,(b) 最善手(ショット)の探索,に大きく分けられます.
 
(a) 「じりつくん」では,5層のニューラルネットワークによる学習で評価関数を自動生成しており,この学習のために,人手によって作られた評価関数を利用した旧バージョンの「じりつくん」を利用しています.まず,最初に後攻の8投目,すなわち,エンドの最終ショット時の局面を考えます.ここで,そのエンドの得点を最大化するショットを旧「じりつくん」によって探索を行い,そのショットを最善手としてシミュレートを行います.シミュレートには2次元の正規乱数が含まれているため,実際に何度も実行すると異なる結果が得られる.後攻8投目の後は得点計算が可能なため,実際に得られた得点を記録していきます.このようなシミュレーションを多数行うことで,その局面における最善手を行ったあとの期待得点分布が得られることになります.
  
局面を左右反転したものも含めて100万局面を生成し,そのうち90万局面を使って学習を行い,残りの10万局面で評価を行っています.ニューラルネットワークの入力は,各ストーンについて,座標値(x, y),プレイエリア内にあるか,ハウス内にあるか,保有プレイヤー,からなる5入力をハウスの中心に近い順番で与えています.また,出力は,エンド終了時の期待得点分布を表しており,−8点から0点を含んで+8点まで17出力とします.
 
(B) 上記(a)で得られた評価関数を使って,最善ショットの探索を行います.インターン/アウトターンそれぞれについて,4,800種類のショットを生成して,シミュレーションによって結果を得た局面に対して,学習した評価関数を用いて期待得点分布を算出し,それぞの得点/失点となった場合の期待勝率を勝率テーブルから求めて,その局面の期待勝率を求めることができます.全9,600ショットの中で,最も期待勝率の高いショットが最善のショットとなります.



これまで,デジタルカーリングにおける公式大会は二回行われており,一回目は準優勝,二回目は優勝しています.

PHP Code Snippets Powered By : XYZScripts.com