SlideShare a Scribd company logo
1 of 13
Download to read offline
機械学習による
球面リバーシ(オセロ)AIの開発
• 球面オセロ
– 端の無いオセロ
– 全ての点に8方向のつながり
• 球面オセロの棋譜データ収集
• 棋譜データでの学習によるAI開発
1
球面リバーシ(オセロ)
8方向=縦、横、斜め
の方向を持つ点を球面上に描く
2
画鋲を打つ場所
基本線6本の円周を12等分する
これらの点(48個)に画鋲を打てば完成
3
𝒄
𝟐𝟐 𝒄
𝟐𝟐
𝒄
𝟐𝟐
𝒄
𝟐𝟐
𝒄
𝟐𝟐
𝒄
𝟐𝟐
球面オセロ(48点版)の作り方の一例
球の最大の円周(=大円)が
𝑐 の場合
大円から対象の位置に
𝑐
24
の
間隔で基本線を1本ずつ引く
6本の基本線上の12等分した点を
各コマを置く点であるとする
𝒄
𝟏𝟏
4
5
・・・
・・・
・・・
・・・
平面オセロAIの探索木
: 対戦相手の人間(先手)
: AI(後手)
初期状態
対戦相手の選択した手
AIの手の
候補
局面に対する評価関数
||
最終石差予測関数
の出力
すべて白 白石-黒石=5 すべて黒
・・・
・・・
・・・
・・・
・・・
・・・
・・・
・・・
・
・
・
・
6最善手
素性 f3
=
= 真
隅にある自分の
石の数 = 1
素性 f5 = 左上隅2✕2並び
=
= 真
平面オセロの局面に対する
素性表現(一部のみ)および評価関数
素性 f4 = 対角線3個並び
=
素性 f2 = 相手が打てる手数 = 3 = 真
:対戦相手の人間(先手)
:AI(後手)素性 f1
= AIが後手
= 真
= 真
7
素性 f3
=
= 真
隅にある自分の
石の数 = 1
素性 f5 = 左上隅2✕2並び
=
= 真
平面オセロの局面に対する
素性表現(一部のみ)および評価関数
素性 f4 = 対角線3個並び
=
素性 f2 = 相手が打てる手数 = 3 = 真
:対戦相手の人間(先手)
:AI(後手)素性 f1
= AIが後手
= 真
全素性f1,f2,・・・,fn
の値に基づき、次式の
評価関数によって
各局面の最終石差を予測
𝐹  =   �  𝑤𝑖  𝑓𝑖
𝑖
回帰分析により学習
予測石差 重み 素性
✕
= 真
8
オセロAIにおける局面評価関数の学習
訓練用棋譜データ 局面に対する素性表現
6
回帰分析により
𝐹 = � 𝑤𝑖 𝑓𝑖
𝑖
最終石差予測関数
を学習
最終石差=その局面から双方が最善手を打った場合の結果
の最終石差
6
の最終石差
2
・・・
f1,f2,・・・,fn
9
素性 f3
=
= 真
隅にある自分の
石の数 = 1
素性 f5 = 左上隅2✕2並び
=
= 真
素性 f4 = 対角線3個並び
=
素性 f2 = 相手が打てる手数 = 3 = 真
素性 f1
= AIが後手
= 真
= 真
球面オセロの場合の素性表現(1)
球面オセロでは利用不可
球面オセロでは
利用不可
球面オセロでは
利用不可
10
素性 f3
=
= 真
隅にある自分の
石の数 = 1
素性 f5 = 左上隅2✕2並び
=
= 真
素性 f4 = 対角線3個並び
=
素性 f2 = 相手が打てる手数 = 3 = 真
素性 f1
= AIが後手
= 真
= 真
球面オセロの場合の素性表現(1)
球面オセロでは
辺と隅が存在しないため、
平面オセロの素性の一部のみ
利用可能
球面オセロで利用可能な素性
の詳細な調査が必要
球面オセロでは利用不可
球面オセロでは
利用不可
球面オセロでは
利用不可
11
AIの石のうち最大の
周囲の空きマス
の数 = 6
素性 f4
素性 f2
12
:対戦相手の人間(先手)
:AI(後手)
:配置可能点
素性 f1
= AIが後手
= 真
素性 f5
=
球面オセロの場合の素性表現(2)
素性 f3
相手が打てる手
の数 = 2
相手がひっくり返せる
石の数の最大値 = 1
= 真
=
= 真
=
= 真
相手の石の割合
= 60 %
=
= 真
※ この他に配置パターンの素性も用いる
・回帰分析による評価関数の学習
・球面オセロAIの評価
球面オセロの
棋譜データ
AI同士の対戦による
棋譜データ収集
球面オセロ用AIの
学習・評価
各素性の重みを
ランダムに変化
させて評価関数
を使用
第一段階
収集された棋譜データの
偏りを分析し、人手によ
り各素性の重みの分布
を調整した上でランダム
に変化させて使用
第ニ段階
球面オセロ用AI vs. 球面オセロ用AI
球面オセロAIの研究全体の流れ
棋譜データを
自動で蓄積
教師データ
として利用
13

More Related Content

More from utsuro_lab

検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
utsuro_lab
 
音声を検索するための索引付け方式の紹介(専門家向け)
音声を検索するための索引付け方式の紹介(専門家向け)音声を検索するための索引付け方式の紹介(専門家向け)
音声を検索するための索引付け方式の紹介(専門家向け)
utsuro_lab
 
音声を検索するための索引付け方式の紹介(初心者向け)
音声を検索するための索引付け方式の紹介(初心者向け)音声を検索するための索引付け方式の紹介(初心者向け)
音声を検索するための索引付け方式の紹介(初心者向け)
utsuro_lab
 
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
utsuro_lab
 

More from utsuro_lab (20)

ウォーゲーム:StarCraftの戦略推薦
ウォーゲーム:StarCraftの戦略推薦ウォーゲーム:StarCraftの戦略推薦
ウォーゲーム:StarCraftの戦略推薦
 
乳幼児の認知発達を誘発する売れ筋絵本を推薦する
乳幼児の認知発達を誘発する売れ筋絵本を推薦する乳幼児の認知発達を誘発する売れ筋絵本を推薦する
乳幼児の認知発達を誘発する売れ筋絵本を推薦する
 
社会センサーとしての検索エンジンを用いて市場シェアを予測しよう
社会センサーとしての検索エンジンを用いて市場シェアを予測しよう社会センサーとしての検索エンジンを用いて市場シェアを予測しよう
社会センサーとしての検索エンジンを用いて市場シェアを予測しよう
 
ゲーム攻略サイトを網羅的に収集し、攻略情報を集約する
ゲーム攻略サイトを網羅的に収集し、攻略情報を集約するゲーム攻略サイトを網羅的に収集し、攻略情報を集約する
ゲーム攻略サイトを網羅的に収集し、攻略情報を集約する
 
ゲームのレビューから収集した意見の集約
ゲームのレビューから収集した意見の集約ゲームのレビューから収集した意見の集約
ゲームのレビューから収集した意見の集約
 
ウェブ検索者の情報要求観点の集約と俯瞰に関する研究
ウェブ検索者の情報要求観点の集約と俯瞰に関する研究ウェブ検索者の情報要求観点の集約と俯瞰に関する研究
ウェブ検索者の情報要求観点の集約と俯瞰に関する研究
 
「みんなが調べた」のに「Wikipediaには書いてない」ことを集約・俯瞰する
「みんなが調べた」のに「Wikipediaには書いてない」ことを集約・俯瞰する「みんなが調べた」のに「Wikipediaには書いてない」ことを集約・俯瞰する
「みんなが調べた」のに「Wikipediaには書いてない」ことを集約・俯瞰する
 
検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
検索エンジン・エンハンスト・サジェスト・・・サジェストを補足する
 
音声を検索するための索引付け方式の紹介(専門家向け)
音声を検索するための索引付け方式の紹介(専門家向け)音声を検索するための索引付け方式の紹介(専門家向け)
音声を検索するための索引付け方式の紹介(専門家向け)
 
音声を検索するための索引付け方式の紹介(初心者向け)
音声を検索するための索引付け方式の紹介(初心者向け)音声を検索するための索引付け方式の紹介(初心者向け)
音声を検索するための索引付け方式の紹介(初心者向け)
 
ニュース・ツイッター間の対応を考慮したバースト・トピックの同定
ニュース・ツイッター間の対応を考慮したバースト・トピックの同定ニュース・ツイッター間の対応を考慮したバースト・トピックの同定
ニュース・ツイッター間の対応を考慮したバースト・トピックの同定
 
大規模ブロガー空間からブロガーを収集し、ブロガー・コミュニティを自動生成・自動拡張する
大規模ブロガー空間からブロガーを収集し、ブロガー・コミュニティを自動生成・自動拡張する大規模ブロガー空間からブロガーを収集し、ブロガー・コミュニティを自動生成・自動拡張する
大規模ブロガー空間からブロガーを収集し、ブロガー・コミュニティを自動生成・自動拡張する
 
時系列トピックのバーストを同定するシステムの紹介 (初心者向け)
時系列トピックのバーストを同定するシステムの紹介 (初心者向け)時系列トピックのバーストを同定するシステムの紹介 (初心者向け)
時系列トピックのバーストを同定するシステムの紹介 (初心者向け)
 
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
 
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
大規模ブロガー空間において、関心事項ごとのコミュニティを発見する
 
質問・回答サイトにおけるトラブル相談事例の分析
質問・回答サイトにおけるトラブル相談事例の分析質問・回答サイトにおけるトラブル相談事例の分析
質問・回答サイトにおけるトラブル相談事例の分析
 
Wikipediaの知識を総動員して、話題の分布を俯瞰する
Wikipediaの知識を総動員して、話題の分布を俯瞰するWikipediaの知識を総動員して、話題の分布を俯瞰する
Wikipediaの知識を総動員して、話題の分布を俯瞰する
 
音声言語対話を介した人間と機械のコミュニケーション技術
音声言語対話を介した人間と機械のコミュニケーション技術音声言語対話を介した人間と機械のコミュニケーション技術
音声言語対話を介した人間と機械のコミュニケーション技術
 
複数人と対話可能な音声対話ロボットの構築
複数人と対話可能な音声対話ロボットの構築複数人と対話可能な音声対話ロボットの構築
複数人と対話可能な音声対話ロボットの構築
 
日中時系列ニュースにおけるトピックモデルの推定と二言語間対応の同定
日中時系列ニュースにおけるトピックモデルの推定と二言語間対応の同定日中時系列ニュースにおけるトピックモデルの推定と二言語間対応の同定
日中時系列ニュースにおけるトピックモデルの推定と二言語間対応の同定
 

機械学習による球面リバーシ(オセロ)AIの開発