AlphaGo ( アルファ碁, アルファご ) の中身はどうなってるのかを調べるために色々ブログや記事などを読んでいたのですが、当時は難しいアルゴリズム説明がドンとくる不親切な情報しか見あたらなかったです。私みたいにゲームAIの背景知識が無い人にはとても理解出来ない。何を説明しているのか全く分からなかったので、結局AlphaGoの論文を直接読むことになりました。そこで分かったのが、これはゲームAIの背景知識が無いと理解しにくいことでした。AlphaGoがモンテカルロ木検索とDLを使って強くなったとは理解しましたが、これって何がすごいのかが全く伝わらないのです。
突然AlphaGoのアルゴリズムをドンと説明されても困る。そもそもなぜAlphaGoが今の形になったのか、従来のアルゴリズムと何が違うのか、性能はどれくらい上がったのかが全く見えなかったです。
結局私はゲームAIの歴史を含め、他の木探索系のアルゴリズムを調査しその違いを比較することになりました。
その背景知識を得た後にやっとなぜAlphaGoが今の形になったのか、どこがすごいのかが理解できたのです。
本資料の狙い
この資料は私のように、ゲームAIに関する背景知識は無いがAlphaGoの中身が知りたい人のための資料です。単純にアルゴリズムを説明するのではなく、古典的なゲームAIに比べAlphaGoはどう発展してきたのか、何がすごいのかを説明していきます。
この資料に書いている古典的ゲームAIは全てのゲームAIではないですが、AlphaGoの発展の方向性を理解するには十分だと思っています。本資料ではディープラーニングや強化学習の詳細については触れませんが、その詳細が知りたい人はAlphaGoの論文を直接読んだ方が絶対に分かりやすいと思いますので、論文をお勧めします。
本資料の目次
AlphaGo簡略紹介
ゲームAIの基層知識紹介
ゲーム木
完全ゲーム木
部分ゲーム木
効果的にゲーム木を計算するためのポイント
ミニマックス法 (1949年)
アルファ・ベータ法 (1958年)
古典的アルゴリズムの成功と失敗
チェスでの成功:Deep Blue、1997年
囲碁での失敗
モンテカルロ木検索 (1993年)
囲碁での進歩
AlphaGoのベースになるアルゴリズム
Deep Learningの登場 (2012年)
AlphaGoの登場 (2016年)
モンテカルロ木検索の改良
Policy Network
Value Network
Rollout Policy
強化学習
AlphaGoのアーキテクチャ
性能比較
まとめ
本資料は2016年の論文をベースにしてますが、現在のAlphaGoは仕組みがかなり変わったらしいですね。2017年末新しい論文が出るらしいですがすごく楽しみです。その論文が出る前に、この資料がたくさんの人の役に立てればと思っています。
ちなみに、技術職ではない私のかわいい妻に見せたら、何の問題もなく理解してくれたので、背景知識が無くても全然読めると思います。
では、また新しい論文がでるまで、みなさんお元気に!Read less