Unity ML-Agents 実践ゲームプログラミング v2.2 対応版

ユニティエムエルエージェントジッセンゲームプログラミングバージョンニテンニタイオウバン

Unity ML-Agents 実践ゲームプログラミング v2.2 対応版の表紙
プログラミング
著者:
布留川 英一(フルカワヒデカズ)
出版社:
ボーンデジタル
出版日:
2022年12月20日
ISBN:
9784862465443
在庫:
在庫あり
0
中級者向け
機械学習強化学習ゲーム開発UnityAPI

なぜ注目されているか

言及数
309位
総合354位 ↑ 2 ランクアップ 言及 9 件
出版前出版日01220222023202420252026

書籍紹介

技術革新に乗り遅れるな! 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 カスタムサイドチャネル

技書の森解説

ゲームのキャラクターを人の手でルールを書き込むのではなく、試行錯誤から動き方を学ばせたい開発者向けの入門書です。『Unity ML-Agents 実践ゲームプログラミング v2.2 対応版』 (布留川 英一 著、ボーンデジタル、2022 年 12 月刊) は、Unity で機械学習の環境を構築するためのフレームワーク Unity ML-Agents を使い、強化学習 でキャラクターを鍛える方法を、仕組みの基礎からサンプルプログラムを使った実践まで解説しています。副題は「Unity ではじめる機械学習・強化学習」です。版元の紹介によると、2020 年 8 月に刊行した「v1.1 対応版」を改訂した版で、はじめて機械学習に取り組む読者から学べるように書かれています。判型は B5 変形のオールカラーです。

全 7 章の構成、ML-Agents の基礎から Python API まで

第 1 章「機械学習と Unity ML-Agents の概要」で、人工知能と機械学習、教師あり学習と教師なし学習と強化学習の違いを整理し、第 2 章「はじめての学習環境の作成」で開発環境とプロジェクトを準備して、学習と推論、学習の高速化までを一度通します。第 3 章「Unity ML-Agents の基礎」は、状態と観察、行動、報酬とエピソード完了、決定、学習設定ファイル、mlagents-learn、TensorBoard という並びで、エージェントを組み立てる部品を 1 つずつ確認する章です。第 4 章「さまざまな学習方法」では SAC、Discrete、Visual Observation、Raycast Observation、セルフプレイ、Curiosity、模倣学習、LSTM、カリキュラム学習、環境パラメーターのランダム化を扱います。第 5 章は 3DBall や GridWorld、Soccer、DungeonEscape などのサンプル学習環境を順に取り上げ、第 6 章「ゲーム開発における強化学習の活用」と第 7 章「Python API を使った学習環境の構築」へ進みます。

観察、報酬、学習方法の選び方が要点になる理由

強化学習のエージェントは、環境から受け取る観察をもとに行動を選び、その結果として得る報酬の合計が大きくなるように方策を更新していきます。ゲームに当てはめると、何を観察させるか (座標の数値か、カメラ画像か、周囲へ飛ばしたレイの当たり方か) と、どの行動にどれだけの報酬を与えるかの設計が、学習の成否をほぼ決めます。第 3 章が観察、行動、報酬を別々の節に分け、第 4 章で Visual Observation と Raycast Observation を並べているのは、この設計の選択肢を比べられるようにするためと読めます。また、報酬がめったに得られない課題では探索そのものに動機を与える Curiosity が、人の操作を手本にできる場合は模倣学習が、易しい課題から段階的に難しくする場合はカリキュラム学習が、それぞれ有効な手段になります。環境パラメーターのランダム化は、学習環境の条件を揺らして特定の状況だけに適応した方策になることを防ぐ考え方で、作ったエージェントを実際のゲームへ持ち込む前に知っておきたい技法です。

テストの自動化や対戦相手づくりへの応用例

第 6 章は、学習したエージェントをゲーム制作の現場でどう使うかを題材ごとに示します。ジャンプゲームでのテストの自動化、障害物避けゲームでのコンテンツのバランス調整のサポート、Puppo, The Corgi でのより自然な振る舞いを行う NPC、ドッジボールでの人間の代わりとなる対戦相手、AI ロボットサッカーでのロボットの強化学習という 5 つの事例です。強いキャラクターを作ることだけが目的ではなく、遊べるかどうかの検証やバランスの評価に学習エージェントを使うという視点は、ゲーム開発 の工程に機械学習を組み込みたい人にとって具体的な手がかりになります。第 7 章は Gym ラッパー、Python Low Level API、サイドチャネル、カスタムサイドチャネルを扱い、Unity の外にある Python 側から学習環境を制御する方法へ話を広げます。

v2.2 対応という前提と、向いている読者

本書の手順は ML-Agents の v2.2 に対応した内容です。ML-Agents のように開発の続くフレームワークでは、版が変わると設定ファイルの書き方や API が変わることがあるため、本書と異なる版を使う場合は手順の読み替えが必要になる点を前提にしておくと安心です。強化学習のアルゴリズムを数式から導出して理解したい人には、理論を主題にした専門書のほうが目的に合います。機械学習の本全体の中で次に何を読むかを考える際は、機械学習とディープラーニングの本の選び方 も参考になります。

Unity でゲームを作っていて、テストの自動化、バランス調整、対戦相手の用意に学習エージェントを使ってみたい人には、基礎の部品から第 5 章のサンプル環境、制作現場での応用例までを 1 冊で通せる本書は、最初の 1 冊として手堅い選択です。第 2 章で最初の学習を動かし、手応えを得てから第 4 章の学習方法へ進むと、全体像をつかみやすくなります。

言及した記事 (9 件)

この本に興味がある方におすすめ

関連する本

布留川 英一 の他の書籍

関連記事

関連用語

共有: