SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
猫には分からない
オセロAIの仕組み
自己紹介



       情報学群情報科学類一年
       ほつれ
       Twitter ID:hotsure_sj




            猫には分からないオセロAIの仕組み
概要

プログラミング未経験者でも分かるオセロAI
 の仕組み。ただし、猫には分からない( )
オセロとは
盤面評価の方法
評価値探索
ミニマックス法


            猫には分からないオセロAIの仕組み
オセロとは




  これ→




        猫には分からないオセロAIの仕組み
オセロとは


オセロは 二人零和有限確定完全情報ゲーム


ちなみに「オセロ」は商標なので...




            猫には分からないオセロAIの仕組み
盤面評価の方法

盤面評価とは、ある局面において、
どちらが有利かを判定すること


人間の場合、
勘とか感性とか経験とかで評価してんじゃね?


           猫には分からないオセロAIの仕組み
盤面評価の方法


AIの場合は
どちらが有利なのか
点数をつけて盤面評価




             猫には分からないオセロAIの仕組み
盤面評価の方法
               石の数 黒:12 白:8


 石の位置による評価
 石の数による評価
 パターン(定石)
 確定石を数える



              猫には分からないオセロAIの仕組み
評価値探索

何手か先を読んだ上で最善手を選ぶことを
評価値探索という

普通、AIは相手も最善手を打つと仮定して
評価値探索を行う
(一発逆転を狙うような手は打たない)


            猫には分からないオセロAIの仕組み
評価値探索

 ミニマックス法
 α-β法
 NegaScout探索法
 MTD(f)探索法
 その他



                 猫には分からないオセロAIの仕組み
ミニマックス法

LT本番では以下のURLから図を借用し解説し
ました。
「人工知能に関する断創録」さん
http://d.hatena.ne.jp/aidiary/20041226/127
4148758
「オセロ・リバーシプログラミング講座」さん
http://uguisu.skr.jp/othello/minimax.html
                      猫には分からないオセロAIの仕組み
まとめ

局面に応じた盤面評価法で評価値をゲット
↓
ミニマックス法などによる評価値探索で打つ手
を決める
↓
以後、これを繰り返す...

            猫には分からないオセロAIの仕組み
質問タイム

応えられなくても、泣かない(´・ω・`)




              猫には分からないオセロAIの仕組み
猫には分からない
オセロAIの仕組み
参考・引用

「人工知能に関する断創録」
http://d.hatena.ne.jp/aidiary/
「オセロ・リバーシプログラミング講座」
http://uguisu.skr.jp/othello/
猫イラストは「にゃいちもん無料素材」さんから
http://blog.livedoor.jp/nyaichimon/

                        猫には分からないオセロAIの仕組み

Más contenido relacionado

La actualidad más candente

Pythonのシグナル処理
Pythonのシグナル処理Pythonのシグナル処理
Pythonのシグナル処理Atsuo Ishimoto
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14Ryo Suzuki
 
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)HoloLensでONNXを使って推論(Custom Vision - Object Detection編)
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)Takahiro Miyaura
 
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjpChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjpK Kinzal
 
Scan Registration for Autonomous Mining Vehicles Using 3D-NDT
Scan Registration for Autonomous Mining Vehicles Using 3D-NDTScan Registration for Autonomous Mining Vehicles Using 3D-NDT
Scan Registration for Autonomous Mining Vehicles Using 3D-NDTKitsukawa Yuki
 
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理Toru Tamaki
 
Azure kinect DKハンズオン
Azure kinect DKハンズオンAzure kinect DKハンズオン
Azure kinect DKハンズオンTakashi Yoshinaga
 
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUI
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUIAR / VR / MRの世界に、置けるUI、置けないUI、置くべきUI
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUIKoichi Tanaka
 
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法モノビット エンジン
 
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~torisoup
 
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜Yusuke Naka
 
【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスター【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスターUnity Technologies Japan K.K.
 
TDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTCTDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTChironroinakae
 
Arithmer AIチャットボット
Arithmer AIチャットボットArithmer AIチャットボット
Arithmer AIチャットボットArithmer Inc.
 

La actualidad más candente (20)

Pythonのシグナル処理
Pythonのシグナル処理Pythonのシグナル処理
Pythonのシグナル処理
 
トリコの動かし方
トリコの動かし方トリコの動かし方
トリコの動かし方
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
 
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)HoloLensでONNXを使って推論(Custom Vision - Object Detection編)
HoloLensでONNXを使って推論(Custom Vision - Object Detection編)
 
WebP入門
WebP入門WebP入門
WebP入門
 
自動運転車両開発におけるUE4の活用事例 | UNREAL FEST EXTREME 2020 WINTER
自動運転車両開発におけるUE4の活用事例 | UNREAL FEST EXTREME 2020 WINTER自動運転車両開発におけるUE4の活用事例 | UNREAL FEST EXTREME 2020 WINTER
自動運転車両開発におけるUE4の活用事例 | UNREAL FEST EXTREME 2020 WINTER
 
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjpChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
 
5分でわかる Sensor SDK
5分でわかる Sensor SDK5分でわかる Sensor SDK
5分でわかる Sensor SDK
 
Scan Registration for Autonomous Mining Vehicles Using 3D-NDT
Scan Registration for Autonomous Mining Vehicles Using 3D-NDTScan Registration for Autonomous Mining Vehicles Using 3D-NDT
Scan Registration for Autonomous Mining Vehicles Using 3D-NDT
 
プログラムを高速化する話
プログラムを高速化する話プログラムを高速化する話
プログラムを高速化する話
 
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
 
Azure kinect DKハンズオン
Azure kinect DKハンズオンAzure kinect DKハンズオン
Azure kinect DKハンズオン
 
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUI
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUIAR / VR / MRの世界に、置けるUI、置けないUI、置くべきUI
AR / VR / MRの世界に、置けるUI、置けないUI、置くべきUI
 
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
 
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
 
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
 
Riderはいいぞ!
Riderはいいぞ!Riderはいいぞ!
Riderはいいぞ!
 
【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスター【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスター
 
TDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTCTDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTC
 
Arithmer AIチャットボット
Arithmer AIチャットボットArithmer AIチャットボット
Arithmer AIチャットボット
 

Destacado

ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用Shogo Takeuchi
 
球面リバーシ(オセロ)
球面リバーシ(オセロ)球面リバーシ(オセロ)
球面リバーシ(オセロ)utsuro_lab
 
機械学習による球面リバーシ(オセロ)AIの開発
機械学習による球面リバーシ(オセロ)AIの開発機械学習による球面リバーシ(オセロ)AIの開発
機械学習による球面リバーシ(オセロ)AIの開発utsuro_lab
 
未経験古本屋店員が エンジニアになっちゃった話
未経験古本屋店員が エンジニアになっちゃった話未経験古本屋店員が エンジニアになっちゃった話
未経験古本屋店員が エンジニアになっちゃった話Shuhei Yamashita
 
勉強会勉強会と勉強会カンファレンス
勉強会勉強会と勉強会カンファレンス勉強会勉強会と勉強会カンファレンス
勉強会勉強会と勉強会カンファレンスHiro Yoshioka
 
第1回アジャイルサムライ読書会 島根道場
第1回アジャイルサムライ読書会 島根道場第1回アジャイルサムライ読書会 島根道場
第1回アジャイルサムライ読書会 島根道場Yosuke Ubata
 
課題から紐解くアジャイル
課題から紐解くアジャイル課題から紐解くアジャイル
課題から紐解くアジャイルTakeshi Kakeda
 
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—陽一 滝川
 
20140626さあタスク管理に目覚めよう
20140626さあタスク管理に目覚めよう20140626さあタスク管理に目覚めよう
20140626さあタスク管理に目覚めようkishitaku
 
パタン・ランゲージからプロジェクト・ランゲージへ Part1
パタン・ランゲージからプロジェクト・ランゲージへ Part1パタン・ランゲージからプロジェクト・ランゲージへ Part1
パタン・ランゲージからプロジェクト・ランゲージへ Part1Takeshi Kakeda
 
アジャイルツアー2010 アジャイルコンサルタントの秘密
アジャイルツアー2010 アジャイルコンサルタントの秘密アジャイルツアー2010 アジャイルコンサルタントの秘密
アジャイルツアー2010 アジャイルコンサルタントの秘密tuyoshiushio
 
ひとくち勉強会②_メモを考える
ひとくち勉強会②_メモを考えるひとくち勉強会②_メモを考える
ひとくち勉強会②_メモを考える2G _KSK
 
Git道場を開催してきた
Git道場を開催してきたGit道場を開催してきた
Git道場を開催してきたHiromu Shioya
 
グローバルプロジェクト よくある問題共通点と解決チェックリスト
グローバルプロジェクト よくある問題共通点と解決チェックリストグローバルプロジェクト よくある問題共通点と解決チェックリスト
グローバルプロジェクト よくある問題共通点と解決チェックリストDice Itoga, PMP, ITIL Foundation CSM
 
スクラムプロジェクト逆計画ゲーム 状況カード
スクラムプロジェクト逆計画ゲーム 状況カードスクラムプロジェクト逆計画ゲーム 状況カード
スクラムプロジェクト逆計画ゲーム 状況カードYasui Tsutomu
 
スクラムプロジェクト逆計画ゲーム アクションカード
スクラムプロジェクト逆計画ゲーム アクションカードスクラムプロジェクト逆計画ゲーム アクションカード
スクラムプロジェクト逆計画ゲーム アクションカードYasui Tsutomu
 

Destacado (20)

ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用
 
球面リバーシ(オセロ)
球面リバーシ(オセロ)球面リバーシ(オセロ)
球面リバーシ(オセロ)
 
機械学習による球面リバーシ(オセロ)AIの開発
機械学習による球面リバーシ(オセロ)AIの開発機械学習による球面リバーシ(オセロ)AIの開発
機械学習による球面リバーシ(オセロ)AIの開発
 
未経験古本屋店員が エンジニアになっちゃった話
未経験古本屋店員が エンジニアになっちゃった話未経験古本屋店員が エンジニアになっちゃった話
未経験古本屋店員が エンジニアになっちゃった話
 
勉強会勉強会と勉強会カンファレンス
勉強会勉強会と勉強会カンファレンス勉強会勉強会と勉強会カンファレンス
勉強会勉強会と勉強会カンファレンス
 
20120508 アジャイルサムライ読書会 第3回
20120508 アジャイルサムライ読書会 第3回20120508 アジャイルサムライ読書会 第3回
20120508 アジャイルサムライ読書会 第3回
 
20120522 アジャイルサムライ読書会第5回
20120522 アジャイルサムライ読書会第5回20120522 アジャイルサムライ読書会第5回
20120522 アジャイルサムライ読書会第5回
 
20120515 アジャイルサムライ読書会 第4回
20120515 アジャイルサムライ読書会 第4回20120515 アジャイルサムライ読書会 第4回
20120515 アジャイルサムライ読書会 第4回
 
第1回アジャイルサムライ読書会 島根道場
第1回アジャイルサムライ読書会 島根道場第1回アジャイルサムライ読書会 島根道場
第1回アジャイルサムライ読書会 島根道場
 
課題から紐解くアジャイル
課題から紐解くアジャイル課題から紐解くアジャイル
課題から紐解くアジャイル
 
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—
20130423 #devlove 職場を劇的にさせる四十八手 —「n次請けSIerでも出来ること」のその続き—
 
20140626さあタスク管理に目覚めよう
20140626さあタスク管理に目覚めよう20140626さあタスク管理に目覚めよう
20140626さあタスク管理に目覚めよう
 
20120426 アジャイルサムライ読書会 第2回
20120426 アジャイルサムライ読書会 第2回20120426 アジャイルサムライ読書会 第2回
20120426 アジャイルサムライ読書会 第2回
 
パタン・ランゲージからプロジェクト・ランゲージへ Part1
パタン・ランゲージからプロジェクト・ランゲージへ Part1パタン・ランゲージからプロジェクト・ランゲージへ Part1
パタン・ランゲージからプロジェクト・ランゲージへ Part1
 
アジャイルツアー2010 アジャイルコンサルタントの秘密
アジャイルツアー2010 アジャイルコンサルタントの秘密アジャイルツアー2010 アジャイルコンサルタントの秘密
アジャイルツアー2010 アジャイルコンサルタントの秘密
 
ひとくち勉強会②_メモを考える
ひとくち勉強会②_メモを考えるひとくち勉強会②_メモを考える
ひとくち勉強会②_メモを考える
 
Git道場を開催してきた
Git道場を開催してきたGit道場を開催してきた
Git道場を開催してきた
 
グローバルプロジェクト よくある問題共通点と解決チェックリスト
グローバルプロジェクト よくある問題共通点と解決チェックリストグローバルプロジェクト よくある問題共通点と解決チェックリスト
グローバルプロジェクト よくある問題共通点と解決チェックリスト
 
スクラムプロジェクト逆計画ゲーム 状況カード
スクラムプロジェクト逆計画ゲーム 状況カードスクラムプロジェクト逆計画ゲーム 状況カード
スクラムプロジェクト逆計画ゲーム 状況カード
 
スクラムプロジェクト逆計画ゲーム アクションカード
スクラムプロジェクト逆計画ゲーム アクションカードスクラムプロジェクト逆計画ゲーム アクションカード
スクラムプロジェクト逆計画ゲーム アクションカード
 

Más de amusementcreators

Más de amusementcreators (20)

ライセンスの話
ライセンスの話ライセンスの話
ライセンスの話
 
空間分割
空間分割空間分割
空間分割
 
わたしのゲーミング
わたしのゲーミングわたしのゲーミング
わたしのゲーミング
 
曲線について
曲線について曲線について
曲線について
 
HTML5でゲームが作れます
HTML5でゲームが作れますHTML5でゲームが作れます
HTML5でゲームが作れます
 
C++11のつかいかた
C++11のつかいかたC++11のつかいかた
C++11のつかいかた
 
DUAL SHOCK2で遊ぼう
DUAL SHOCK2で遊ぼうDUAL SHOCK2で遊ぼう
DUAL SHOCK2で遊ぼう
 
Pythonでゲーム作る
Pythonでゲーム作るPythonでゲーム作る
Pythonでゲーム作る
 
ライフゲーム
ライフゲームライフゲーム
ライフゲーム
 
Lt nande linux_nano
Lt nande linux_nanoLt nande linux_nano
Lt nande linux_nano
 
Lt130123
Lt130123Lt130123
Lt130123
 
コルーチンを使おう
コルーチンを使おうコルーチンを使おう
コルーチンを使おう
 
20121212
2012121220121212
20121212
 
Kim120 lt 12_6
Kim120 lt 12_6Kim120 lt 12_6
Kim120 lt 12_6
 
かんたん作曲講座(2)
かんたん作曲講座(2)かんたん作曲講座(2)
かんたん作曲講座(2)
 
かんたん作曲講座(1)
かんたん作曲講座(1)かんたん作曲講座(1)
かんたん作曲講座(1)
 
コルーチンでC++でも楽々ゲーム作成!
コルーチンでC++でも楽々ゲーム作成!コルーチンでC++でも楽々ゲーム作成!
コルーチンでC++でも楽々ゲーム作成!
 
フォントのしくみ
フォントのしくみフォントのしくみ
フォントのしくみ
 
AVRマイコン入門
AVRマイコン入門 AVRマイコン入門
AVRマイコン入門
 
読みやすいプログラム、書き換えやすいプログラム
読みやすいプログラム、書き換えやすいプログラム読みやすいプログラム、書き換えやすいプログラム
読みやすいプログラム、書き換えやすいプログラム
 

猫には分からないオセロAIの仕組み