Submit Search
Upload
東方ゲームAIとその歴史
•
Download as PPTX, PDF
•
0 likes
•
2,634 views
I
ide_an
Follow
2018/01/20 第3回東方発表会
Read less
Read more
Technology
Report
Share
Report
Share
1 of 32
Download now
Recommended
東方紅魔郷AI
東方紅魔郷AI
aki33524
確率ロボティクス第13回
確率ロボティクス第13回
Ryuichi Ueda
Autowareの紹介と物体検出
Autowareの紹介と物体検出
Yuhki Iida
確率ロボティクス第二回
確率ロボティクス第二回
Ryuichi Ueda
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
UnityTechnologiesJapan002
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
MobileRoboticsResear
5分でわかるベイズ確率
5分でわかるベイズ確率
hoxo_m
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
Youichiro Miyake
Recommended
東方紅魔郷AI
東方紅魔郷AI
aki33524
確率ロボティクス第13回
確率ロボティクス第13回
Ryuichi Ueda
Autowareの紹介と物体検出
Autowareの紹介と物体検出
Yuhki Iida
確率ロボティクス第二回
確率ロボティクス第二回
Ryuichi Ueda
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
UnityTechnologiesJapan002
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
MobileRoboticsResear
5分でわかるベイズ確率
5分でわかるベイズ確率
hoxo_m
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
Youichiro Miyake
15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学
Ken'ichi Matsui
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
Ryuichi Ueda
ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出
Tetsutaro Watanabe
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
Preferred Networks
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Yuki Anzai
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門
michiaki ito
Motpy ros rosjp
Motpy ros rosjp
RayAr3
HCI分野の紹介と最新研究
HCI分野の紹介と最新研究
ota42y
tf,tf2完全理解
tf,tf2完全理解
Koji Terada
粒子フィルターによる自動運転
粒子フィルターによる自動運転
Masato Nakai
ドロネー三角形分割
ドロネー三角形分割
Yusuke Matsushita
Testing machine learning development
Testing machine learning development
yusuke shibui
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
Satoshi Makita
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
Masaya Kaneko
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
第41回関東CV勉強会 CNN-SLAM
第41回関東CV勉強会 CNN-SLAM
邦洋 長谷川
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
Deep Learning JP
Ponanzaにおける強化学習とディープラーニングの応用
Ponanzaにおける強化学習とディープラーニングの応用
HEROZ-JAPAN
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
デジタルゲームにおける人工知能のワークフローと導入フロー
デジタルゲームにおける人工知能のワークフローと導入フロー
Youichiro Miyake
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
エピック・ゲームズ・ジャパン Epic Games Japan
More Related Content
What's hot
15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学
Ken'ichi Matsui
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
Ryuichi Ueda
ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出
Tetsutaro Watanabe
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
Preferred Networks
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Yuki Anzai
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門
michiaki ito
Motpy ros rosjp
Motpy ros rosjp
RayAr3
HCI分野の紹介と最新研究
HCI分野の紹介と最新研究
ota42y
tf,tf2完全理解
tf,tf2完全理解
Koji Terada
粒子フィルターによる自動運転
粒子フィルターによる自動運転
Masato Nakai
ドロネー三角形分割
ドロネー三角形分割
Yusuke Matsushita
Testing machine learning development
Testing machine learning development
yusuke shibui
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
Satoshi Makita
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
Masaya Kaneko
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
第41回関東CV勉強会 CNN-SLAM
第41回関東CV勉強会 CNN-SLAM
邦洋 長谷川
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
Deep Learning JP
Ponanzaにおける強化学習とディープラーニングの応用
Ponanzaにおける強化学習とディープラーニングの応用
HEROZ-JAPAN
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
What's hot
(20)
15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門
Motpy ros rosjp
Motpy ros rosjp
HCI分野の紹介と最新研究
HCI分野の紹介と最新研究
tf,tf2完全理解
tf,tf2完全理解
粒子フィルターによる自動運転
粒子フィルターによる自動運転
ドロネー三角形分割
ドロネー三角形分割
Testing machine learning development
Testing machine learning development
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
ロボットにぴったりの物体操作や作業の方法を探求する / Appropriate approaches to robotic manipulation
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
第41回関東CV勉強会 CNN-SLAM
第41回関東CV勉強会 CNN-SLAM
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
Ponanzaにおける強化学習とディープラーニングの応用
Ponanzaにおける強化学習とディープラーニングの応用
【解説】 一般逆行列
【解説】 一般逆行列
Similar to 東方ゲームAIとその歴史
デジタルゲームにおける人工知能のワークフローと導入フロー
デジタルゲームにおける人工知能のワークフローと導入フロー
Youichiro Miyake
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
エピック・ゲームズ・ジャパン Epic Games Japan
人工知能とゲーム(前篇)
人工知能とゲーム(前篇)
Youichiro Miyake
[Unite 2016 Tokyo]Unityを使った個人ゲーム開発における「収益化」の現状と未来
[Unite 2016 Tokyo]Unityを使った個人ゲーム開発における「収益化」の現状と未来
Takaaki Ichijo
About IGDA Japan 0906
About IGDA Japan 0906
IGDA Japan
クリエイティブな人のための哲学塾
クリエイティブな人のための哲学塾
Youichiro Miyake
開催趣旨・00年代イントロ・パネルディスカッション資料
開催趣旨・00年代イントロ・パネルディスカッション資料
IGDA Japan
誰でも今日から実践できるUnity x PlayFab(Demoパート)
誰でも今日から実践できるUnity x PlayFab(Demoパート)
YutoNishine
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
Hiroyuki Ishikawa
Unityを使わずHoloLensアプリを作ってみた
Unityを使わずHoloLensアプリを作ってみた
Kiyokazu Kawaharada
可視化法学(Found it project#9)
可視化法学(Found it project#9)
(shibao)芝尾 (kouichiro)幸一郎
次世代QAとAI 〜ゲーム開発におけるAI活用に正しく向き合うために〜
次世代QAとAI 〜ゲーム開発におけるAI活用に正しく向き合うために〜
dena_genom
日本のゲーム開発,海外のゲーム開発
日本のゲーム開発,海外のゲーム開発
syamane
ゲームAI入門(前半)
ゲームAI入門(前半)
Youichiro Miyake
JJUG Oracle Code One 2018 報告会 LT(@nishino_chekhov)
JJUG Oracle Code One 2018 報告会 LT(@nishino_chekhov)
Daisuke Nishino
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
Koichi Ota
AI技術の現状と課題 〜aiboおよび自然言語処理〜
AI技術の現状と課題 〜aiboおよび自然言語処理〜
Naoki Fujiwara
Qa tech night_mori
Qa tech night_mori
Yukihito Morikawa
ゲームAIと学習する人工知能エージェント
ゲームAIと学習する人工知能エージェント
Youichiro Miyake
ゲームAI製作のためのワークショップ(I)
ゲームAI製作のためのワークショップ(I)
Youichiro Miyake
Similar to 東方ゲームAIとその歴史
(20)
デジタルゲームにおける人工知能のワークフローと導入フロー
デジタルゲームにおける人工知能のワークフローと導入フロー
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
Unreal engine4を使ったVRコンテンツ製作で 120%役に立つtips集+GDC情報をご紹介
人工知能とゲーム(前篇)
人工知能とゲーム(前篇)
[Unite 2016 Tokyo]Unityを使った個人ゲーム開発における「収益化」の現状と未来
[Unite 2016 Tokyo]Unityを使った個人ゲーム開発における「収益化」の現状と未来
About IGDA Japan 0906
About IGDA Japan 0906
クリエイティブな人のための哲学塾
クリエイティブな人のための哲学塾
開催趣旨・00年代イントロ・パネルディスカッション資料
開催趣旨・00年代イントロ・パネルディスカッション資料
誰でも今日から実践できるUnity x PlayFab(Demoパート)
誰でも今日から実践できるUnity x PlayFab(Demoパート)
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
Unityを使わずHoloLensアプリを作ってみた
Unityを使わずHoloLensアプリを作ってみた
可視化法学(Found it project#9)
可視化法学(Found it project#9)
次世代QAとAI 〜ゲーム開発におけるAI活用に正しく向き合うために〜
次世代QAとAI 〜ゲーム開発におけるAI活用に正しく向き合うために〜
日本のゲーム開発,海外のゲーム開発
日本のゲーム開発,海外のゲーム開発
ゲームAI入門(前半)
ゲームAI入門(前半)
JJUG Oracle Code One 2018 報告会 LT(@nishino_chekhov)
JJUG Oracle Code One 2018 報告会 LT(@nishino_chekhov)
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
AI技術の現状と課題 〜aiboおよび自然言語処理〜
AI技術の現状と課題 〜aiboおよび自然言語処理〜
Qa tech night_mori
Qa tech night_mori
ゲームAIと学習する人工知能エージェント
ゲームAIと学習する人工知能エージェント
ゲームAI製作のためのワークショップ(I)
ゲームAI製作のためのワークショップ(I)
Recently uploaded
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
keikoitakurag
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
ssuserbefd24
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
Ayachika Kitazaki
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
Recently uploaded
(10)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
東方ゲームAIとその歴史
1.
東方ゲームAIとその歴史 2018/01/20 第3回東方発表会 @ide_an
2.
自己紹介 • HN: ide_an
(いで) • Twitter: @ide_an • Mastodon: ide_an@gensokyo.town • 某社プログラマ • 東方界隈でツールを作ってます • 花映塚AI自作ツール 「花AI塚」 • http://usamimi.info/~ide/programe/touhouai/ • サークルチェックツール 「trivial-circlecheck」 • http://trivial-circlecheck.herokuapp.com/ • ダブルスポイラー リプレイずれ修正パッチ 「hanakopatch」 • https://bitbucket.org/ide_an/hanakopatch/src/
3.
今回の主張 •東方ゲームAIというものがある! •しかも結構ある!!!
4.
東方ゲームAIとは?
5.
東方ゲームAIとは? • 東方のゲーム作品を対象としたゲームAI • 紅魔郷や文花帖などのSTG •
萃夢想や緋想天などの格闘ゲー • 今回の発表ではデフォルトCPUは対象外(花映塚など) • 実際に見た方が早い • デモ動画(拙作の地霊殿AI) • https://www.youtube.com/watch?v=tufZQTRX_WQ
6.
ゲームAIの仕組み ・・・の前に、 まずは人間のゲームプレイを考えてみる
7.
人間のゲームプレイ ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 自機はどこ? 敵弾は? 自機狙いだな 右にちょん避け しよう 自機位置、 敵、弾、 etc… 右に低速移動
8.
ゲームAIの仕組み ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 いい感じに弾の位 置などを認識する いい感じに移動 経路などを考える キー入力を シミュレート プレイの各フェーズを プログラムで実現する
9.
ゲームAIの仕組み ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 いい感じに弾の 位置などを認識する いい感じに移 動経路などを考える キー入力をシ ミュレート
10.
ゲームAIの仕組み ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 いい感じに弾の位 置などを認識する いい感じに移動 経路などを考える キー入力を シミュレート
11.
「ゲーム状態の認識」のアプローチ • 画像処理 • ゲーム画面から自機や 弾などを認識する •
内部情報へのアクセス • ゲームプログラムの メモリから自機や弾な どの情報を取り出す 例:画面から 弾っぽいやつ抽出 弾1: x=100,y=200,r=128 弾2: x=120,y=250,r=128 弾3: x=140,y=300,r=128 弾4: x=160,y=250,r=128 … 例:メモリから 弾情報抽出
12.
ゲームAIの仕組み ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 いい感じに弾の位 置などを認識する いい感じに移動 経路などを考える キー入力を シミュレート 画像処理 内部情報へのアクセス
13.
「次の行動の選択」のアプローチ • ルールベース • ゲームプレイでの思考 を考察して、アルゴリズ ムに落とし込む •
例:「弾が少ないところ に移動する」、 「被弾しそうならボムる」 • 機械学習 • ゲームプレイのデータ から行動ポリシーを学 習する • リプレイを正解として学 習 (教師あり学習) • AI自身がゲームをプレ イして学習 (強化学習)
14.
ゲームAIの仕組み ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 ゲーム状態の更新 いい感じに弾の位 置などを認識する いい感じに移動 経路などを考える キー入力を シミュレート 画像処理 内部情報へのアクセス ルールベース 機械学習
15.
なぜ東方ゲームAIを作るのか? • 楽しい!!! • せやな。 •
良き対戦相手が欲しい • デフォルトCPUでは合わない • 強すぎる、弱すぎる、人間のプレイとの乖離 • オフライン対戦は手軽じゃない • 相手がいないなら「作れば」いいじゃない
16.
東方ゲームAIの歴史
17.
凡例とおことわり • 凡例 • 画:
画像処理 • 内: 内部情報へのアクセス • ル: ルールベース • 学: 機械学習 • ツ: AI作成ツール • おことわり • AI作成ツールで作成した個々のAIは記載していません • そもそも追跡できてない
18.
原作 STG AI
黄昏フロ作品 AI 2002 紅魔郷 2003 妖々夢 2004 萃夢想、永夜抄 2005 花映塚、文花帖 th075Booster (yK8Yp05c) 内学ツ 2006 2007 風神録 2008 緋想天、地霊殿 th105_ai (sweetie) 内ルツ 2009 星蓮船、非想天則 永夜抄AI (sizukuisi) 内ル th123_ai (sweetie) 内ルツ 2010 ダブルスポイラー、 妖精大戦争 永夜抄AI (Gandalph) 画ル 花映塚AI (K.Sakai et al.) 画ル 2011 神霊廟 Touhoubot Project 内ル ダブルスポイラーAI (trial-run) 画ル 2012 地霊殿AI (ide_an) 内ル 2013 心綺楼、輝針城 TouhouPlayer (feinomenon) 画ル th135_ai (sweetie) 内ルツ 2014 弾幕アマノジャク 紅魔郷AI (aki33524) 内ル 花AI塚 (ide_an) 内ルツ 2015 深秘録、紺珠伝 AI_touhou (nobu-knellfox) 画ル 2016 紺珠伝AI (imenurok) 画学 紅魔郷AI (td2sk) 画学 紺珠伝AI( ntddk) 画学 TouhouCV (Netdex) 画ル 2017 天空璋、憑依華 Twinject (Netdex) 内ル 画: 画像処理、 内: 内部情報へのアクセス、 ル: ルールベース、 学: 機械学習、 ツ: AI作成ツール
19.
原作 STG AI
黄昏フロ作品 AI 2002 紅魔郷 2003 妖々夢 2004 萃夢想、永夜抄 2005 花映塚、文花帖 th075Booster (yK8Yp05c) 内学ツ 2006 2007 風神録 2008 緋想天、地霊殿 th105_ai (sweetie) 内ルツ 2009 星蓮船、非想天則 永夜抄AI (sizukuisi) 内ル th123_ai (sweetie) 内ルツ 2010 ダブルスポイラー、 妖精大戦争 永夜抄AI (Gandalph) 画ル 花映塚AI (K.Sakai et al.) 画ル 2011 神霊廟 Touhoubot Project 内ル ダブルスポイラーAI (trial-run) 画ル 2012 地霊殿AI (ide_an) 内ル 2013 心綺楼、輝針城 TouhouPlayer (feinomenon) 画ル th135_ai (sweetie) 内ルツ 2014 弾幕アマノジャク 紅魔郷AI (aki33524) 内ル 花AI塚 (ide_an) 内ルツ 2015 深秘録、紺珠伝 AI_touhou (nobu-knellfox) 画ル 2016 紺珠伝AI (imenurok) 画学 紅魔郷AI (td2sk) 画学 紺珠伝AI( ntddk) 画学 TouhouCV (Netdex) 画ル 2017 天空璋、憑依華 Twinject (Netdex) 内ル 画: 画像処理、 内: 内部情報へのアクセス、 ル: ルールベース、 学: 機械学習、 ツ: AI作成ツール ~2008 STG AI 登場以前 2009~2010 STG AI 登場 2010~2015 知見の公開化 2016~ Deep Learning
20.
~2008 STG AI登場以前 •
東方ゲームAIは、まず黄昏フロ作品で登場 • th075Booster • 萃夢想AI作成ツール • 作者: yK8Yp05c 氏 • 萃夢想ネット対戦パッチ作者でもある • 確認できる限り最初の東方ゲームAI • リプレイから学習する • 次に学習型AIが登場したのは2016年 • オーパーツ • th105_ai • 緋想天AI作成ツール • 作者: sweetie 氏 • 非想天則、心綺楼AIツールも作っている • スクリプトで自由にルールを組める 原作 STG AI 黄昏フロ作品 AI 2002 紅 2003 妖 2004 萃、永 2005 花、文 th075Booster (yK8Yp05c) 内学ツ 2006 2007 風 2008 緋、地 th105_ai (sweetie) 内ルツ
21.
なぜSTG AIが生まれなかったか? • A.
STGは対戦ゲームじゃないから • 対戦ゲームではAIのニーズが強い • 「良き対戦相手が欲しい」というニーズがある • AIと戦う、AI同士で戦わせるなど、AIの楽しみ方が多様 • 一人プレイのSTGではAIのニーズが弱い • AIのプレイを眺める以外に、AIの楽しみ方がない • (花映塚は対戦ゲーじゃんと思った人はあとで質問し てください)
22.
2009~2010 STG AI登場 •
動画サイトを中心にSTG AIが現れる • 永夜抄AI • 作者: sizukuisi 氏 • ニコニコ動画上で公開 • 永夜抄Lunaクリアを達成 • 永夜抄AI • 作者: Gandalph 氏 • Youtube上で公開 • 最初の画像処理ベースAI • 弾の認識がうまくいってない? • STG AIが登場してきたが、動画のみで細かい仕組みが分 からなかった 原作 STG AI 黄昏フロ作品 AI 2009 星、非 永夜抄AI (sizukuisi) 内ル th123_ai (sweetie) 内ルツ 2010 DS、 妖大 永夜抄AI (Gandalph) 画ル 花映塚AI (K.Sakai et al.) 画ル
23.
2010~2015 知見の公開化 • STG
AIの知見が同人誌やスライドなどでまとめられ始める • 花映塚AI (K. Sakai et al.) • ICAI2010 論文 • ダブルスポイラーAI (trial-run) • 同人誌 • 僕がAIを作り始めたきっかけの本 • 地霊殿AI (ide_an) • Webに記事公開 • 紅魔郷AI (aki33524) • IT系勉強会で発表 + ニコ動で公開 • 紅魔郷Exノーショットノーミスクリア • 花AI塚 (ide_an) • 記事公開 • AI作成ツール公開 原作 STG AI 黄昏フロ作品 AI 2010 DS、 妖大 永夜抄AI (Gandalph) 画ル 花映塚AI (K.Sakai et al.) 画ル 2011 神 Touhoubot Project 内ル ダブルスポイラーAI (trial-run) 画ル 2012 地霊殿AI (ide_an) 内ル 2013 心、 輝 TouhouPlayer (feinomenon) 画ル th135_ai (sweetie) 内ルツ 2014 弾ア マ 紅魔郷AI (aki33524) 内ル 花AI塚 (ide_an) 内ルツ 2015 深、 紺 AI_touhou (nobu-knellfox) 画ル
24.
2016~ Deep Learning •
2016年にDeep Learningを使ったAIが相次いで登場 • 紺珠伝AI • 作者: imenurok 氏 • Qiitaで公開 • 紺珠伝AI • 作者: ntddk 氏 • 同人誌で発表 • いずれも、画像処理 + 機械学習の組み合わせ • STG AIにも機械学習の時代が来た 萃夢想AIから11年・・・ 原作 STG AI 黄昏フロ作品 AI 2016 紺珠伝AI (imenurok) 画学 紅魔郷AI (td2sk) 画学 紺珠伝AI( ntddk) 画学 TouhouCV (Netdex) 画ル 2017 天、憑 Twinject (Netdex) 内ル
25.
DQN (Deep Q-Network) •
先述のAIはいずれもDQNを採用 • DQN = 強化学習 + Deep Learning • 行動ポリシーだけでなく、 ゲーム画面をどう認識するかも学習する • どうやって弾の位置を認識するかなども 勝手に学習してくれる • 2015年にDQNのゲームAIデモが話題になったのが背景 • https://wired.jp/2015/02/28/google-deepmind-atari/ ゲーム状態の認識 次の行動の選択 ゲーム操作の入力 両方まとめて 学習 スクショそのまま 突っ込む
26.
まとめ • 東方ゲーム作品を対象としたゲームAIが有志によって 作られている • STG
AIは2009年以降、毎年作られている • ここ最近は画像処理 + 機械学習のアプローチが現れ ている • より人間に近いAIが出てくるかも? • こういう歴史をまとめてみるのも面白いよね
27.
Reference / Appendix 会場で読ませる気がない細かさなので、あとで読んでくだしあ
28.
花映塚AIはなぜ生まれなかった? A. ネット対戦に先を越されたから • ネット対戦はAIとシェアを奪い合 う •
ネット対戦も「良き対戦相手が欲し い」のソリューション • 萃夢想AIの登場は・・・ • 萃夢想ネット対戦パッチより前 • 花映塚ネット対戦対応より後 • もし萃夢想AIが2ヶ月早かったら、 花映塚AIも生まれていたかも? 花映塚関連 萃夢想関連 2004/12 萃夢想 ver 1.00 2005/8 花映塚 ver 1.00 2005/10 花映塚 ver 1.50で ネット対戦対応 2005/11 th075Booster (萃夢想AI)公開 2005/12 th075_net (AVC氏、 ネット対戦パッチ) 公開 2006/2 th075Caster (yK8Yp05c 氏、ネット対戦パッチ) 公開
29.
「ゲーム状態の認識」のアプローチ比較 • 画像処理 • メリット •
人間のプレイと同じ条 件 • 作品をまたいで適用で きる汎用性 • デメリット • 認識誤差が生じる • 処理時間がネック • 認識精度と処理時間 のトレードオフ • 画像処理の知識が必要 • 内部情報へのアクセス • メリット • 情報が正確 • 高速 • デメリット • 対象ゲームごとに解析 が必要 • 同じゲームでもバー ジョンアップの度に解 析と修正が必要 • 人間と同じ土俵じゃない ズルさ • リバースエンジニアリン グの知識が必要
30.
「次の行動の選択」のアプローチ比較 • ルールベース • メリット •
ホワイトボックスである • 不具合の原因を特定 しやすい • デメリット • 人間離れしがち • 花映塚CPUの「電動歯 ブラシ」 • うまく言い表せない行動 ポリシーはルールベー スに落とし込めない • 無意識にうまくやって いること • 機械学習 • メリット • うまく言い表せない行動 ポリシーも獲得できる (理想的には) • デメリット • ブラックボックスである • 「なぜ」が分からない • 学習のためのデータや 環境の準備が困難 • Deep Learningだと GPU必須
31.
東方格闘ゲーAI • th075Booster (yK8Yp05c) •
http://wiki.mizuumi.net/w/Immaterial_and_Missing_Power/th075booster • 初出 http://jbbs.shitaraba.net/bbs/read_archive.cgi/computer/6306/1127170527/#7 17 • 開発者回顧録 https://www26.atwiki.jp/th075c/pages/20.html • Archive http://web.archive.org/web/20090122055540/http://www.crystal.rm.st/njm45 59/r_board/r_board.cgi • 現在はrollCaster (mauve)に組み込まれている • th105_ai(のちにth123_ai) (sweetie) • http://resemblances.click3.org/product_list/index.cgi/detail/52 • th135_ai (sweetie) • http://resemblances.click3.org/product_list/index.cgi/detail/54 • 機械学習で緋想天AI構想 (作者不明) • その後実現したのかは不明。sweetie氏とは別人。 • http://jbbs.shitaraba.net/bbs/read_archive.cgi/game/44334/1211630896/#627
32.
東方STG AI • 永夜抄AI
(sizukuisi) • http://www.nicovideo.jp/watch/sm7270634 • 永夜抄AI (Gandalph) • https://www.youtube.com/watch?v=4wKmtWpcHnA • 花映塚AI (K. Sakai et al.) • Sakai, Kazuhiko & Okada, Yoshihiro & Muraoka, Yoichi. (2010). Developing AI for Playing Shooter Games - Touhou Kaeizuka.. Proceedings of the 2010 International Conference on Artificial Intelligence, ICAI 2010. 2. 748-752. • 国会図書館関西館にproceedings収蔵 • ダブルスポイラーAI (trial-run) • http://trial-run.net/archives/2235 • TouhoubotProject (Adephtand Tsar IoannXIII) • https://web.archive.org/web/20160812123435/http://th bot.kt15.ru/ • プレイ動画 https://www.youtube.com/watch?v=6xWvr- TAR1w • 地霊殿AI (ide_an) • http://usamimi.info/~ide/programe/touhouai/ • TouhouPlayer (feinomenon) • https://github.com/feinomenon/TouhouPlayer • 紅魔郷AI (aki33524) • http://www.kernelvm.org/ima-made-no-matome/kaneru- vm-tan-jian-dui-guan-xi-6hui-mu • https://www.dropbox.com/s/hy0tvgocxourltw/%E6%9D% B1%E6%96%B9AI.pdf?dl=0 • プレイ動画 http://www.nicovideo.jp/watch/sm23043946 • 花AI塚 (ide_an) • http://www.usamimi.info/~ide/programe/touhouai/ • AI_touhou (nobu-knellfox) • https://github.com/nobu-knellfox/AI_touhou • 紺珠伝AI (imenurok) • http://qiita.com/imenurok/items/c6aa868107091cfa509c • 紅魔郷AI (td2sk) • http://www.nicovideo.jp/watch/sm28442889 • 紺珠伝AI (ntddk) • https://ntddk.booth.pm/items/245254 • プレイ動画 https://www.youtube.com/watch?v=KcnvVepob2o • TouhouCV (Netdex) • https://github.com/Netdex/TouhouCV • Twinject (Netdex) • https://github.com/Netdex/twinject
Editor's Notes
紅魔郷や永夜抄、黄昏フロ作品である萃夢想や緋想天などが対象 収集にとりなど二次創作は対象外 実際の動画が欲しい
行動選択のアプローチにはルールベースと機械学習の2つがある。 ルールベースは、プログラマがゲームプレイのときに考えていることをコードに落とし込むというもの。 たとえば「弾が少ないところに移動する」「被弾しそうならボムる」など普段のプレイで考えるので、それをコード化する。 機械学習はゲームプレイのデータから行動選択のポリシーをゲームAI自身に自動的に獲得させるというもの。 プログラマ自身が考えるのではなく、ゲームAIに学習してもらうというのが違い。
2005年に萃夢想AIが登場したのが最初。 STG AIは2009年になってやっと登場。 2009年以降は毎年誰かしらSTG AIを作っている 技術的な傾向で言うと、ゲーム状態の取得方法は画像処理と内部情報アクセスが拮抗している。 行動選択ポリシーの方はルールベースが多いが、最近になって機械学習も出てきた。
Download now