強化学習を用いたゲームエージェントの評価
リスク工学グループ演習 1 班
小清水亮太 宮澤一矢 原和希 HUANG YUMENG
アドバイザー教員 高安亮紀 遠藤靖典

1. 研究背景1.1. 第 3 次 AI ブームの到来
近年，AI の実用化が急速に進み，第 3 次AI ブームが到来している[1]．
「ビックデータ」と呼ばれる大量のデータを用いることで人工知能（AI）自身が自ら知識を獲得する「機械学習」の実用化や，知識を定義する要素（特徴量）を人工知能（AI）が自ら習得するディープラーニングの登場が，ブーム

近年では，強化学習を用いることで強いゲーム AI が提案されている．2015 年にはGoogle DeepMind 社によってコンピュータ囲碁プログラム AlphaGo が開発され，プロ囲碁棋士に対して勝利を収めた[5]．また，
2017 年には人工知能 Ponanza がプロの将棋棋士に勝利を収めている[6]．

2. 研究目的の背景にある．第 3 次 AI ブームの到来によ

近年では強化学習を用いた強いゲーム AIり，機械学習を用いた研究が多くなされてが作成されるようになっているが，その強いる．

化学習手法間の結果や特徴の違いを把握し，評価することは現実問題において適切な手

1.2. 強化学習
機械学習を用いた手法の一つとして強化法を選択できるようにするために重要である．

学習がある．強化学習とは，エージェント

そこで本研究では，Ms.Pacman というゲがある環境において経験から累積される報ームを題材とし，そのエージェントを作成

酬を最大にする行動を自主的に学習する機する．エージェントの作成に使う手法とし械学習の一種である．強化学習はシステムて，各種強化学習手法を用いる．そして各制御の分野で多く利用され，自動運転技術

種手法によるエージェントの獲得する得点や自律ロボットの行動選択などに応用されや特徴を評価する．ている[2][3]．強化学習はゲーム開発の分野でも，ゲームのリリース前に動作に不具

3. 手法合がないか確認するテスト作業や，適切な3.1. 強化学習モデル

難易度になっているかゲームバランスの確認を行う作業に利用され，ゲームの品質の向上につながっている[4]．

強化学習では，対象のタスクに対して行動や状態を以下のようにモデル化する．

- 状態 S：Environment(環境)から取得され改善していく．方策の代表例として，greedy

る現在の状態を示す（操作するキャラクタ法や局所解に陥るのを防ぐために確率 εーや敵の位置など）．

でランダムに行動し，確率 1-ε で greedy- 行動 A：行動を示す（左右に移動，ジャ法をとる ε-greedy 法などが存在する．

ンプするなどの行動）．
- 報酬 R：状態 S の時にある行動をした際に，得られた利益．

3.3. 行動価値関数
行動価値関数とは，状態 s での行動 a の価値を推定する関数である．この関数によ

状態遷移は，マルコフ性に基づいて遷移しって，状態 s を入力として，次に取るべきていく，つまり t+1 ステップ目における状行動として何が最適な行動なのかを推定・態は，t ステップ目での状態と行動のみに依評価することが出来る．この行動価値を得存して，𝑝(St+1 ∣ St , At )で決定する．以下のるための代表的な手法の 1 つが Q-Learning

手順で学習が進行する．

である．
Q-Learning では Q 値と呼ばれる，

1. Environment から時刻 t における状態𝑆𝑡ある状態 s において，ある行動 a を行ったを観測する

ときの価値を以下の式（1）に基づいて更新

2. Agent が方策 π(at ∣ st )に従って行動𝑎𝑡 をしていく．ここで状態は s, 行動は a,報酬を決定する

R, 時間割引率を γ, 学習率を α とする．

3. 行動𝑎𝑡 を行うことによって，状態遷移確率 p(st+1 ∣ st , a𝑡 )にしたがって未来の時刻t+1 における状態である𝑠𝑡+1が決定する
4. 行動𝑎𝑡 によって得られた報酬を返す報酬関数 R(st , at , s𝑡+1 )が決定する
5. 1 に戻り，同様に繰り返す

𝐐(𝐬, 𝐚) ← 𝐐(𝐬, 𝐚) + 𝛂 ( 𝐫𝒕+𝟏 + 𝛄𝐦𝐚𝐱 𝐐(𝐬𝒕+𝟏 , 𝐚𝒕+𝟏 )− 𝐐(𝐬, 𝐚))（1）r𝑡+1 + γmax Q(s𝑡+1 , a 𝑡+1 ) − Q(s, a) が報酬の期待値と現在の行動価値の誤差となっており，この値を 0 に近づけることを目的として式（1）を更新していく．この学習方法を TD学習と呼ぶ．そして，Q 値を求めていき，状態と行動による Q 値を示された Q-Tableと呼ばれる表を埋めていく．この Q-Tableに基づいて次に取るべき行動として最適な行動を決定することが出来るようになる．
図 2 の左側が Q-Table の例となる．

図 1 強化学習のフロー図

3.2. 方策
強化学習の目的は，可能な限り多くの報酬得られるように方策を最適化していくことである．つまり，Environment から取得される「報酬 R」と「状態 S」を元に方策を3.4. Deep Q Network (DQN)
Q-Table は取りうる状態空間を全て羅列する必要がある．状態数が少なければ，QTable 𝑄(𝑠, 𝑎)を構成することが可能であるが，複雑な実世界においては状態数が莫大になり，テーブル関数では表現することは困難となる. そこで Q-Learning における行動価値関数𝑄(𝑠, 𝑎)をディープニューラル

𝐭𝐚𝐫𝐠𝐞𝐭 𝑫𝑸𝑵 = 𝐑(𝐬, 𝐚) + 𝛄𝐦𝐚𝐱
𝐐𝛑 (𝐬 ′ , 𝐚′ )（3）′𝐚ネットワークにより近似する手法である
Deep Q Network(DQN)[7] が使用される．

したがって，誤差関数は式（4）のように定DQN では Q 値そのものを推定するのにニ義され，これを TD 誤差と呼ぶ．この誤差ューラルネットワークを使う．ニューラルを元に誤差逆伝播法を用いてニューラルネネットワークの重みパラメータであるθをットワークのパラメータである θ を最適用いて，行動価値関数を近似する．実際に化することによって，最適な Q 値を推定出は，Qθ (s, a)とQπ (s′, a′)の 2 つのニューラル来るようになる．

ネットワークを用いている．Qθ (s, a)は最適

𝟏
𝐋 = 𝐄 [ (𝐑(𝐬, 𝐚) + 𝛄𝐦𝐚𝐱
𝐐𝛉−𝟏 (𝐬 ′ , 𝐚′ ) − 𝐐𝛉 (𝐬, 𝐚)) ] （4）𝐚′𝟐𝟐

な行動を選択して，Q 関数を更新する役割を担っており，一方で，Qπ (s′, a′)は行動の3.5 Double DQN

結果の s′で取るべき行動 a′の価値を推定，

Double DQN(DDQN)[8]とは，DQN に評価する役割を担っている．式（2）が DQN

おける Target データ（式(3)）を改良した手の更新式となる．

法である．DDQN では，行動価値関数 Q に𝐐𝛉 ← 𝐐𝛉 + 𝛂 ( 𝐑(𝐬, 𝐚) + 𝛄𝐦𝐚𝐱
𝐐𝛑 (𝐬′, 𝐚′)′𝐚− 𝐐𝛉 (𝐬, 𝐚)) （2）対して，価値と行動を選択するニューラルネットワークと，その行動を評価するニュ

図 3 のように，状態を入力データとして，ーラルネットワークの 2 つに役割を分ける．

出力層の各ノードが各行動の行動価値つまこれによって，通常の DQN の計算では行り Q 値を推定するようになっている．また，動価値の推定が過大評価されてしまうとい

通常のニューラルネットワークでは，う問題に対して対応することが出来る．

Target となる正解データに基づいて θ の

Double DQN の計算では過大評価な推定を最適化を行うが，DQN では明確な正解デー抑えて，より正確に推定することが可能にタが用意されていないため，Target データ，なる．式（5）が DDQN における Target とつまり教師あり学習における正解データのなる式である．

代わりとして式（3）を使用する．

図 2 Deep Q-Network の例

𝒕𝒂𝒓𝒈𝒆𝒕𝑫𝑫𝑸𝑵

OpenAI Gym[11] を 使 用 し た ． OpenAI= 𝑹(𝒔, 𝒂) + 𝜸𝑸𝛑 (𝒔′ , 𝒂𝒓𝒈𝒎𝒂𝒙𝒂 𝑸𝛉 (𝒔′ , 𝒂))（5）Gym にはアメリカのアタリ社が開発した

まず DQN では，次状態 s′のもとで取るべき最善の行動の評価値maxQπ (s′, a′)用いてa′

家庭用ゲームである Atari2600 に対応したゲームが数多く含まれている．今回はその中でも Ms.PacMan というゲームを対象にQθ を更新する．つまり，次に取るべき行動実験を行う．図 3 がゲームの操作画面となの選択とその評価を 1 つのニューラルネッ

る．ゲームルールは，PacMan を操作してゴトワークQπ を用いて行っていることになーストから逃げつつ，画面上にある pill をる．一方で Double DQN は，次の状態 s′

食べ，クリア及び高得点を目指すゲームとで取るべき行動 a をニューラルネットワーなっている．通常の PacMan との大きな違′クQθ を用いて，argmax𝑎 Qθ (s , a)により決

いはゴーストの動きにランダム性が導入さ定する．そして，その行動 a の評価にはれており，絶対に安全であるルートが存在

DQN と同様にQπ を用いてQπ (s′, a)を求め，しないことである．

Qθ を更新する．これにより，次の行動選択をQθ で行い，その選択の評価をQπ で行うことが可能になるため，行動価値の推定が過大評価されるのを防ぐことが可能になる．

3.6 Dueling Network
Dueling Network とは DQN のアーキテ
クチャの 1 つである．Q 関数は，状態 s のみで決定することが可能な情報と行動 a に

図 3 Ms. PacMan の画面よって決定する情報に分離することが可能であることに着目し，これら 2 つの情報を分けて学習する手法である．これによって，ある状態 s 自体の価値を行動 a に対する評価を介することなく直接的に表現することが可能になる．Dueling Network は，DQN,DDQN などの手法と組み合わせて，収束を早める効果やパフォーマンスを向上する効果が期待出来る．

今回は強化学習の手法として，DQN[7], DDQN[8] ， Duel. DQN[9], Duel.
DDQN[9]の 4 つの手法をディープラーニ
ング実装ライブラリの 1 つである Keras お
よび Keras-RL[12]を用いて実装し学習，評価を行った．入力データとして図 3 のようなゲーム画面を畳み込みニューラルネットワーク（CNN）を使用して読み込むことにより，Q 値を求め，学習を行った．

4. 実験
4.1. 実験環境
本研究では，OpenAI[10]が開発した強化学習のシミュレーション用環境である

4.2. 実験結果
表 1 が各手法の実験結果となる．横軸が学習を行ったステップ数となっており，縦軸が学習後のモデルによって 10 回テストを行った平均獲得報酬となっている．

4.4. DQN vs Duel. DQN
次に DQN と Duel. DQN を比較する．

4.3. DQN vs DDQN

DQN は報酬の伸びがなだらかであり．
安定DQN と DDQN を比較するとほとんどしていることが見て取れる．一方で Duel.のステップ数にて，DQN の方が報酬を多くDQN は各ステップにおける報酬のばらつ獲得することが出来ていることが見て取れきが大きい．このことから，学習が不安定る．DDQN の提案されている論文[8]でもになっていると考えられる．これは，Duel.

DQN と DDQN の性能は全体では DDQN

DQN は DQN と比較して学習において調の方が優れている傾向にあるが，一部のゲ整すべきハイパーパラメータの数が多く，ームにおいては性能が悪化すると報告され今回の検討においては，ハイパーパラメーており，今回対象にした Ms. Pacman におタの調整が不足しているためであると考えいても悪化するという傾向を確認することられる．

が出来たと言えるだろう．しかしながら，また，Duel. DQN では，4,000,000 ステ

今回は比較のためにハイパーパラメータやップ程度で最高獲得報酬を記録し，それ以ニューラルネットワークのアーキテクチャ

降は過学習によって，報酬が低下しているは同様のものを使用したが，DDQN の提案特徴もみられる．実際に提案論文[9]においされている論文では各々最適なパラメータて，Duel. DQN は収束を早める効果があるの 探索 も行っ ており ， DDQN にお いてと報告されている．
本研究でも同様に DQN

Target network の更新間隔を調整することと比べて収束を早めることが出来ているこによってパフォーマンスが向上するというとを確認することが出来た結果であると言ことも報告されている．そのため，DQN のえ る だ ろ う ． 以 上 の こ と か ら ， Dueling

方が優れていると断言は出来ないと考える．

Network を使用することによって収束を早今後 DDQN のパラメータ調整を行っていめることが出来るが，学習をより安定させく必要があると考える．

るためには，ハイパーパラメータの探索を

表 1 比較結果(DQN, Duel.DQN, DDQN, Duel.DDQN)

行うことが重要であるという知見が今回の[4] 株式会社 BrainPad, 深層強化学習によるゲー検討によって得られた．

ム AI の開発支援, https://ai.brainpad.co.jp/casestudy/2631/

5. まとめ本研究では Ms.PacMan というゲームを対象に各種強化学習手法を用いて実験を行った．また，各種手法の実験結果の比較，考察を行った．結果として，今回の実験では[5] David Silver et al. “Mastering the game of Gowith deep neural networks and tree search”,
Nature529, 484-489(2016).
[6]HEROZ 株式会社, Ponanza における強化学習とディープラーニングの応用,
https://www.slideshare.net/HEROZJAPAN/ponanza-83900718

手法として DQN を用いて 5,000,000 ステ[7] Mnih, Volodymyr, et al. "Human-level control

ップ学習させたものが平均獲得報酬が最もthrough deep reinforcement learning." Nature大きいという結果となった．また，今回の518.7540 (2015)

問題における各手法の結果や特徴について[8] Van Hasselt, Hado, Arthur Guez, and David評価することができた．
今後の課題としては，まず今回実験してSilver. "Deep reinforcement learning with double
q-learning." Thirtieth AAAI conference onartificial intelligence. 2016.

いない手法についての実験，評価を行うこ[9]Wang, Ziyu, et al. "Dueling networkとがあげられる．例えば高精度を出す手法

architectures for deep reinforcement learning."

として Rainbow[13]という複数の手法を統

arXiv preprint arXiv:1511.06581 (2015).

合した手法が提案されている．このような[10]OpenAI，https://openai.com

今回実験できなかった手法についても評価を行う必要がある．
また，ハイパーパラメータや層の構成に[11]OpenAI Gym, https://gym.openai.com/[12] Matthias Plappert, keras-rl, GitHub
repository, ,https://github.com/keras-rl/keras-rl,[13] Matteo Hessel, Joseph Modayil, Hado van

より精度が変わることが考えられるため，Hasselt, Tom Schaul, Georg Ostrovski, Will

それらの適切なチューニングを行うこともDabney, Dan Horgan, Bilal Piot, Mohammad

検討する必要がある．

Azar, David Silver. “Rainbow: CombiningImprovements in Deep Reinforcement Learning ”

参考文献[1]総務省. 平成 28 年版 情報通信白書｜人工知能（AI）の研究の歴史,
http://www.soumu.go.jp/johotsusintokei/whitepa
per/ja/h28/html/nc142120.html .
[2]WAYVE, leaning to drive in a day.
https://wayve.ai/blog/learning-to-drive-in-a-daywith-reinforcement-learning[3] Andres El-Fakdi, Marc Carreras “Policy
gradient based Reinforcement Learning for realautonomous underwater cable tracking”, 2008
IEEE/RSJ International Conference on Intelligent
Robots and Systems(2008)

arXiv:1710.02298v1 [cs.AI] 6 Oct 2017