MicroSoftのゲームのアイテム毎に強化学習する論文を読む
テニス2時間 英語:できず
(1) ゲームのアイテム毎に強化学習する論文を読む
「Hybrid Reward Architecher for Reinforcement Learning」https://arxiv.org/abs/1706.04208
(1.1) 論文の意図
DQNは画面からDNNで直接特徴量を読み取り、特徴量の変化と得点で強化学習を行うが、複雑な場面の場合には特徴量の変動が読み取り難く容易に学習が進まない。そこでゲームを特徴付けているアイテム毎に分解して強化学習すれば特徴量の変動が簡単に補足でき、効果的な学習ができるとの考えである。
具体的にはパックマン・ゲームの場合、パックマン、ペレット、ゴースト毎に強化学習を行う実験をしている。
(1.2) HRA(Hybrid Reward Architecture)の手法
状態価値関数は重み付き加重加算とする
論文によると、下記の場合はモデルを分解できるとしている。
・報酬と特徴量のペアが独立している場合。具体例としては複数の果物を集める迷路モデルでは、各果物とその環境は分解できる。
・報酬を得られない終末状態は分離して計算しない。
・特徴量が認識しやすい擬似的な報酬を作って分離する
分解されたモデルをHeadと称する
(1.3)実験結果
・果物を集めるゲーム
画面を10分割するHRAモデル以外に下記の機能(右端図)を追加している
HRA+1:果物と無関係な特徴量を削除
HRA+2:果物の獲得できない状態の削除
HRA+3:10箇所の位置に分割して擬似的な報酬をGVFsで生成
GVFs(General Value Function)
・Packman
パックマン、ペレット、ゴースト毎に分割して強化学習している。
このモデルではHRA以外にDeepMindが採用して効果があった下記のモデルを追加して導入している
・diversification:最初の50ステップではランダムにQ学習する
・Count-based: 画像の変化が多いと報酬を加算する
・executive-memory: 過去の成功事例を記憶して再利用する
(1.3) 評価
・汎用的なDQNと比べゲームの特性に沿ってモデル化しており、当然性能が向上するのは当然と思われる。逆に課題に応じてモデルを分割する戦略が有効である事を示している。
・状態価値関数は加重加算となっているが、この重みの調整は手動であり適切に推定する方法が示されていない。