|
タイトル |
Unity ML-Agents 実践ゲームプログラミング v2.2対応版(ユニティエムエルエージェントジッセンゲームプログラミングバージョンニテンニタイオウバン) |
|
技術革新に乗り遅れるな!AI活用でナンバーワン・ゲームを目指そう
本書は、2020年8月に刊行した「v1.1対応版」を最新版へのアップデートを行った改訂版です。
「Unity ML-Agents」(Unity Machine Learning Agents)は、Unityで「機械学習」の環境を構築するためのフレームワークです。ゲームに登場するキャラクターを「強化学習」で鍛えることで、人間の代わりになる対戦相手としたり、ゲームバランスの評価に活用したりなど、ゲームAIはさまざまなゲーム制作の場面で活用することができます。
本書では、はじめて「機械学習」にチャレンジする方から学んでいただけるように、機械学習の仕組みや学習方法の基礎から、サンプルプログラムを使った実践まで、ていねいに解説しました。また、AIを組み込んで活用する応用事例も多数掲載しており、ゲーム開発の現場ですぐに役立てることができます。
第1章 機械学習とUnity ML-Agentsの概要
1-1 人工知能と機械学習
1-2 教師あり学習と教師なし学習と強化学習
1-3 強化学習
1-4 Unity ML-Agentsの概要
第2章 はじめての学習環境の作成
2-1 開発環境の準備
2-2 プロジェクトの準備
2-3 はじめての学習環境の作成
2-4 学習と推論
2-5 学習の高速化
第3章 Unity ML-Agents の基礎
3-1 状態と観察
3-2 行動
3-3 報酬とエピソード完了
3-4 決定
3-5 学習設定ファイル
3-6 mlagents-learn
3-7 TensorBoard
第4章 さまざまな学習方法
4-1 SAC
4-2 Discrete
4-3 Visual Observation
4-4 Raycast Observation
4-5 セルフプレイ
4-6 Curiosity
4-7 模倣学習
4-8 LSTM(Long Short-Term Memory)
4-9 カリキュラム学習
4-10 環境パラメータのランダム化
第5章 サンプルの学習環境
5-1 サンプル学習環境の準備
5-2 3DBall
5-3 GridWorld
5-4 PushBlock
5-5 Pyramids
5-6 WallJump
5-7 Hallway
5-8 Worm
5-9 Crawler
5-10 Walker
5-11 FoodCollector
5-12 Basic
5-13 Match3
5-14 Sorter
5-15 Soccer
5-16 CooperativePushBlock
5-17 DungeonEscape
第6章 ゲーム開発における強化学習の活用
6-1 ゲーム開発での強化学習エージェントの活用
6-2 ジャンプゲーム - テストの自動化
6-3 障害物避けゲーム - コンテンツのバランス調整のサポート
6-4 Puppo, The Corgi - より自然な振る舞いを行うNPC
6-5 ドッジボール - 人間の代わりとなる対戦相手
6-6 AIロボットサッカー - ロボットの強化学習
第7章 Python APIを使った学習環境の構築
7-1 Python APIを使った学習
7-2 Gymラッパー
7-3 Python Low Level API
7-4 サイドチャネル
7-5 カスタムサイドチャネル