関連サイト
本書の関連ページが用意されています。
内容紹介
将棋と囲碁の次に人工知能が取り組むゲームは人狼です。――松原 仁氏(はこだて未来大学 副理事長・システム情報科学部教授/人工知能学会 前会長)
人を知り、人と遊び、人を出し抜く、人狼知能! ――三宅陽一郎 氏(日本デジタルゲーム学会理事/ゲームAI開発者)
人狼ゲームとは、村に紛れ込んだ人食い人狼を、自分自身の正体がばれないようにほかのプレイヤーと話し合いながら、村人チームと人狼チームの生き残りを競うゲームです。与えられる情報に限りがあり、さらにプレイヤーごとに情報量に偏りがあるという不完全情報ゲームで、騙す、嘘を見抜く、揺さぶるなど、心理的な駆け引きが重要になります。将棋や囲碁のように、お互いの情報が開示された完全情報ゲームにおける人工知能の研究は進んでおり、次のフロンティアは不完全情報ゲームであると目されています。
本書では、AI同士で人狼ゲームを行う「人狼知能」を通してAIプログラミングを学んでいきます。人狼ゲームを戦うプレイヤープログラム「人狼知能エージェント」の概要、機械学習入門とそれを活用したエージェントの作成方法、さらには自然言語処理の基礎とそれを組み込んだエージェントの作成方法まで、人狼知能エージェントを作成するための知識が網羅されています。
本書を参考に、強い人狼知能の開発や人狼知能大会への参加、さらには推論や自然言語によるコミュニケーションが可能なAIへと踏み出してください。また、人狼知能エージェント同士を戦わせる「人狼知能大会(プロトコル部門)」を連覇中の最強エージェントのアルゴリズム解説も掲載されているため、脅威の人狼発見率を誇るプログラムの実際を知り、自分のエージェントに組み込むことも可能です。
付録として、コマンドラインやツールの基本、Javaプログラミングの基礎やツールの活用、デバックの手法などが収められており、プログラミング初心者であっても、人狼知能エージェントの作成が学べる内容になっています。
本書は「人狼知能エージェントの作成」をテーマに、「機械学習や自然言語処理の入門的内容」を学んで「プログラミングする」という構成になっており、学習者に合わせて内容の一部を選ぶことで、大学などでのプログラミング教材となるようにも構成されています。
書誌情報
- 著者: 狩野芳伸, 大槻恭士, 園田亜斗夢, 中田洋平, 箕輪峻, 鳥海不二夫, 人狼知能プロジェクト
- 発行日: 2017-05-31 (紙書籍版発行日: 2017-05-31)
- 最終更新日: 2017-05-31
- バージョン: 1.0.0
- ページ数: 416ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
狩野芳伸
静岡大学情報学部行動情報学科准教授。博士(情報理工学)。2001 年東京大学理学部物理学科卒業、2007 年同大学院情報理工学系研究科博士課程単位取得退学。東京大学大学院情報理工学系研究科特任研究員、科学技術振興機構さきがけ研究者などを経て、2014 年より現職。大学入試の自動解答(ロボットは東大に入れるか)、電子カルテの処理と自動診断支援、文生成などの応用研究と、人狼知能プロジェクトなどの対話システムの構築を、人間により近いシステムという観点から自然言語処理の研究として進めている。
大槻恭士
山形大学学術研究院准教授。博士(工学)。1993 年東北大学大学院工学研究科情報工学専攻博士課程修了。統計的言語モデル、音声情報処理、知能ロボティクスなどの研究に従事。人狼知能プロジェクトではプラットフォーム開発を担当。ほかにAIWolf.NET(.NET 版人狼知能プラットフォーム)の開発も手がける。趣味は3 匹の愛猫たちとまったりすること。
園田亜斗夢
東京大学大学院工学系研究科在学中。大学では運動会ヨット部に所属し、現在も趣味で国内外のレースに参加している。夢は、人工知能が操船するヨットで世界一周すること。
中田洋平
システムエンジニア。業務系・組み込み系のシステム開発に携わり、現在はフリーで活動中。テクニカルエンジニア(ネットワーク)、データデーススペシャリストの資格を保有。第1 回、第2 回人狼知能大会に出場し、二連覇中。好きな役職は狩人。
箕輪峻
静岡大学大学院総合科学技術研究科情報学専攻在学中。人狼知能の自然言語部門において、人間らしく自然な発話をする自然言語エージェントについて研究を行っている。自然言語処理を活用したゲームを制作することが目標。
鳥海不二夫
東京大学大学院工学系研究科准教授。博士(工学)。2004 年東京工業大学大学院理工学研究科機械制御システム工学専攻博士課程修了。名古屋大学情報科学研究科助教を経て、現職。エージェントベースシミュレーション、ソーシャルメディア、計算社会科学などの研究に従事。人狼知能プロジェクト代表。人狼ゲームを研究すれば仕事中に人狼ゲームをやり放題だと思って始めたら、学生が一緒に遊んでくれなかったため、泣きながら人狼知能大会のプラットフォームをコーディングする毎日を送っている。
目次
第1章 人狼知能とは
- 1.1 人狼ゲームとは
- 1.2 人狼知能
第2章 人狼知能エージェントの基礎知識
- 2.1 人狼知能エージェント
- 2.2 人狼知能プラットフォーム
- 2.3 サンプルエージェントをプレイさせてみよう
- 2.4 ゲームログを読んでゲームの進行を理解する
- 2.5 人狼知能プロトコル
- 2.6 人狼知能APIリファレンスマニュアル
第3章 人狼知能エージェントプログラミング
- 3.1 人狼知能エージェントの作成
- 3.2 最強人狼知能「チーム饂飩」のエー
第4章 機械学習入門
- 4.1 機械学習とは
- 4.2 教師付き機械学習と教師なし機械学習
- 4.3 分類の基本
- 4.4 libSVM を試してみよう
- 4.5 評価とデータセット
- 4.6 サポートベクトルマシンとは
- 4.7 SVM のハイパーパラメータとlibSVMのパラメータチューニング
- 4.8 そのほかの機械学習手法
- 4.9 さらなる学習のために
第5章 機械学習を活用した人狼知能エージェント
- 5.1 SVMを使った人狼知能エージェント
- 5.2 SVMを使った人狼知能エージェント作成の準備
- 5.3 SVM を使った人狼知能エージェントの作成
- 5.4 libSVMにより人狼判定を行うエージェントの作成
- 5.5 さらに強いエージェントを目指して
- 5.6 エラーへの対応
第6章 自然言語処理入門
- 6.1 自然言語処理とツール
- 6.2 コーパスとアノテーション
- 6.3 さまざまなレイヤの自然言語処理
- 6.4 さらなる学習のために
第7章 自然言語処理を利用した人狼知能エージェント
- 7.1 自然言語の利用
- 7.2 自然言語エージェントの作成
- 7.3 より自然なエージェントにするために
付録A コマンドライン利用の基礎
- A.1 コマンドラインとは
- A.2 Cygwinのインストール
- A.3 コマンドラインの基本
- A.4 オープンソースツールのコンパイルとインストール
- A.5 プロセスとシェル
- A.6 環境変数とパス
- A.7 ファイル
付録B Javaプログラミングの基礎
- B.1 Eclipseの使い方
- B.2 クラスの利用とクラスパス
- B.3 変数
- B.4 制御構文と配列
- B.5 メソッドとライブラリ
付録C オブジェクト指向の基礎と効率的なプログラミング
- C.1 オブジェクト指向とクラスの作成
- C.2 例外処理(try, catch)
- C.3 Java 仮想マシン(JVM)の基本
- C.4 効率的なプログラミングの考え方
- C.5 追加されたJava言語仕様
付録 D Java標準ライブラリの利用
- D.1 Collections フレームワーク
- D.2 入出力関連のAPI
- D.3 文字列処理と正規表現
- D.4 正規表現
- D.5 XMLとXMLパーサー、リスナー
- D.6 その他のAPI