GMOインターネット
次世代システム研究室
勝田 隼一郎
2018/7/20 立教大学
深層強化学習で
マルチエージェント学習
(後篇)
2
スライドの内容
前篇のスライドのつづき。
目的、実験環境などは前篇を参照。
前篇のスライド:
https://www.slideshare.net/
JunichiroKatsuta/ss-108099238
3
後篇の内容をまとめたブログが以下にあります
(動画が見られるので、わかりやすいはず)。
「深層強化学習でマルチエージェント学習して
みた」
https://recruit.gmo.jp/engineer/jisedai/blog/multi-
agent-reinforcement-learning2/
実験結果の詳細はgithubにあります。
(maddpg/experiments/my_notes/のexp7か
らexp11)
https://github.com/jkatsuta/exp-18-1q
²4
Outline(後篇)
1. 実験3(自作実験環境2: wanderer1_1a)
2. 実験4(自作実験環境3: wanderer2_2a)
3. 実験5(自作実験環境4: wanderer2_4a)
4.まとめ&余談
 エージェントの振舞いと人間社会の類似点
ここではMAPEを用いて自作した3つのゲー
ム(自作環境2-4)についての結果を話す。
5
自己紹介
勝田 隼一郎
• 大学時代:
ボートに熱中しすぎ留年
• 東京大学大学院理学系
研究科物理学 修了(博士)
• Stanford大学と広島大学で
ポスドク(日本学術振興会;
高エネルギー宇宙物理学)
2016.4: GMOインターネット
次世代システム研究室
データサイエンティスト兼アーキテクト
6
次世代システム研究室
http://recruit.gmo.jp/engineer/jisedai/
1. お客様の笑顔のため
2. No.1 サービスを目指し
3. GMO インターネットグループの重要なプロジェクトの
成功を技術面でサポートする部署
7
主にアドテクをやってます。
GMOアドマーケティング社のサービスである
アドネットワークやDSPの広告配信最適化の
モデルの構築など。
やってること
8
Multi-agent
Reinforcement Learning
9
前篇から引続き、MAPEでゲームを自作。
前篇と異なり、MADDPGは使わず、DDPGを
使う。
→この違いをざっくり言えば、各agentは、神
の視点はなく、個々のagentの持つ視点だけで
強化学習をする。
→これは、人間や動物が学習する場合に近い
設定。
実験3–5
10
実験3
(自作の実験環境2:
wanderer1_1agent)
11
Game: wanderer1_1agent
構成要素:1 agent + 1 goal
観測情報:
•agent自身の速度 + “agentからゴールへの方
向”(注:下記参照)
• スタート時のagentは視界がないため、ゴールの方向はわ
からない。
• Agentは”energy”という変数を内部に持つ。
• “energy”を消費した分だけ、agentの周囲の視界が広く
見えるようになっていく。
• 視界の範囲内にゴールが入ると「ゴールの方向」が情報と
して入力される。
12
Game: wanderer1_1agent
行動:
•移動 (上 or 下 or 左 or 右 or ニュートラル) +
energy消費の選択(A or B)
• A: “energy”を消費 (energy -= 1)
• B: 何もしない
報酬:
•agentがgoalに近づくほど高い報酬
•“energy”の累積消費分だけ負の報酬
• -1 * PENALTY_WEIGHT * energy累積消費。
“PENALTY_WEIGHT”はパラメータで、”energy”消費の
ペナルティの重みを調整
13
実験3–1
PENALTY_WEIGHT=0
energy消費のペナルティ
なし
14
実験3–1: 図の説明
• 動いている大きな丸: Agent
• 黒色の小さな点: ゴール
• Agentの周囲に広がる半透明の円: Agentの”視
界”(前出のスライド参照)
最初、agentの視界はなし。時間経過(step)
ごとに視界が広がる。
視界が十分に広がり、ゴールを視界に捉えると
agentがゴールに向かって動く。
15
実験3–1: 考察
• PENALTY_WEIGHT=0なので、energyをいくら
消費してもペナルティ(負の報酬)なし。
• energyを使いまくって視界をガンガン広げるの
が得策。
• →そのように学習されているのを確認。
16
実験3–2
PENALTY_WEIGHT=0.02
energy消費のペナルティ
の大きさ:”中”
17
実験3–2: 考察
• 視界を確保しないことにはゴールの位置がわから
ないので、最初はガンガンenergyを消費して視
界を広げる。
• ゴールを見つけた後は、それ以上の視界はいらな
いのでenergyの消費ストップ。
• PENALTY_WEIGHT>0なのでenergyを消費した
分、負の報酬が増える。
• →無駄な消費をしなように学習。
18
実験3–3
PENALTY_WEIGHT=0.1
energy消費のペナルティ
の大きさ:”大”
19
実験3–3: 考察
• PENALTY_WEIGHTが大きすぎるため、energy
を消費することによる負の報酬の方が、ゴールに
近づく報酬よりも大きくなった。
• → Agentはenergyを消費してゴールを探すのを
やめて、その場から動かなくなった。
20
実験3まとめ
• 1 agentの場合で、問題なく動いているかを
チェックした。
• →期待通りに学習していることを確認。
21
実験4
(自作の実験環境3:
wanderer2_2agents)
22
Game: wanderer2_2agents
構成要素:2 agents + 1 goal
観測情報:
•agent自身の速度 + agentからゴールへの方向
+ “他のagentへの方向”(注:下記参照)
• 「agentからゴールへの方向 」の特性は変化なし
(energyも)。
• Agentは”energy”の他、”attention”という変数も内部
に持っている。
• “attention”を消費した時だけ「他のagentへの方向」が
情報として入力される。
23
Game: wanderer2_2agents
行動:
•移動 (上 or 下 or 左 or 右 or ニュートラル) +
消費の選択(A or B or C)
• A: “energy”を消費 (energy -= 1)
• B: ”attention”を消費 (attention -= 1)
• C: 何もしない
24
wanderer2_2agents
報酬:
•agentがgoalに近づくほど高い報酬
•“energy”の累積消費分だけ負の報酬
• -1 * PENALTY_WEIGHT * energy累積消費。
“PENALTY_WEIGHT”はパラメータで”energy”消費のペ
ナルティの重みを調整
•“attention”の累積消費分だけ負の報酬
• -1 * PENALTY_WEIGHT2 * attention累積消費。
“PENALTY_WEIGHT2″はパラメータで、”attention”消
費のペナルティの重みを調整
25
wanderer2_2agents
注意点
•energy消費→ゴールを見るための視界が広がる
•attention消費→(その次のstepだけ)他の
agentの位置が完全にわかる
とそれぞれのパラメータの消費で異なる振る舞い
•energyとattentionの消費は同時にはできない
(どちらか一方orどちらも消費しない、から選択)
26
実験4–1
•PENALTY_WEIGHT=0
•PENALTY_WEIGHT2=0
•energy消費のペナルティ
なし
•attention消費のペナル
ティなし
27
実験4–1: 考察
• このパラメータセットでは、attentionを消費せ
ずにenergyを消費した方が良いようだ。
• →ペナルティを受けないならenergyをとにかく
消費して視界を広げ、直接ゴールを見る方が(報
酬の期待値が)良いらしく、そのように学習。
28
補足(advanced)
• 複数回(異なるseedで)学習すると、学習結果
が若干異なることが、強化学習ではよくある。
• 定量的に評価するときなどは、多くのseedで学
習した結果の平均値などを使う事が多い。
• この実験では厳密な評価をするのが目的ではない
ので、そこまではしません。
• 実際の実験では異なるseedで3回学習して、ここ
では代表的な1つを選んで説明。
• 最初に紹介したgithubには3回分の結果あり。
29
実験4–2
•energy消費のペナルティ
中程度
•attention消費のペナル
ティなし
•PENALTY_WEIGHT=0.01
•PENALTY_WEIGHT2=0
30
実験4–2: 考察
• 2つのagentともenergyとattentionどちらも適
度に消費しながらゴールを目指すように学習。
• 相手がゴールを先に見つけていた場合、相手に近
づくことで(自分の視界にゴールがなくても)
ゴールに近づける。
• energy消費にペナルティがあるため、一人でガ
ンガンenergy消費して視界を広げるより、(相
手もゴールを探していると期待して)相手に近づ
くことで、ゴールを(少ない負の報酬で)見つけ
ようという戦略。
31
実験4–3-1
•energy消費のペナルティ
中程度
•attention消費のペナル
ティ=energy消費の半分
•PENALTY_WEIGHT=0.01
•PENALTY_WEIGHT2
=0.005
32
実験4–3–1: 考察
• 若干attentionを消費して相手の位置を探る場合
があるが、energy消費が主。
• attention消費にペナルティがついた分、実験4–
2に比べattentionを使うモチベーションが下
がった。
• →期待通り
33
実験4–3-2
•実験4-3-1と同じ。
•学習時のseedだけ異なる。
34
実験4–3–1: 考察
• agent1(緑)がほぼenergyを消費せず(=自力
でゴールを探そうとせず)agent0(赤)に追従
• 相手に乗っかる戦略
• → 囚人のジレンマみたい
• ただしこのパラメータセットの場合、agent0
(乗っかる戦略)の方がagent1より報酬の平
均値は小さくなるようで、基本的にはこの”
乗っかり戦略”を学習するケースは少ないよう
に見える。
35
実験4まとめ
1. independent:主にenergyを消費して(他の
agentは気にせず)独立してゴールを目指す。
2. follower:主にattentionを消費して、ゴー
ルの位置を知る他のagentに追従してゴールを
目指す。
3. hybrid:energyとattentionをどちらも適度
に消費。相手の位置も利用しながら、自分の視
界も広げゴールを目指す。
Agentが取る戦略を大雑把に分けると、
36
実験4まとめ
•実験2-1:agentはどちらもindependent戦略
•実験2-2:hybrid戦略
•実験2-3:
•最初のケース:independent戦略
•2つ目のケース:independent + follower
followerの期待値がindependent/hybrid より
小さいからか、followerはあまり出現せず。
37
実験4まとめ
実験4においては、パラメータセットごとに最
適の戦略(independent / hybird)があるよう
で、2つのagentとも同じ最適戦略に収束して
いく傾向が見えた。
38
実験5
(自作の実験環境4:
wanderer2_4agents)
39
実験5–1
•energy消費のペナルティ
なし
•attention消費のペナル
ティなし
•PENALTY_WEIGHT=0
•PENALTY_WEIGHT2=0
40
実験5–1: 考察
• 1 independent(緑エージェント) + 2 hybrid
(オレンジ、青エージェント) + 1 follower
(赤エージェント)
• ←independent等の用語は、実験4のまとめ
(p.35)参照
• independent戦略のみだった2agentの場合(実
験2-1)と比べると多様性が発現。
• followerが得ている報酬の期待値が高い。
followできるagent数が増えたことで、ゴールを
見つける確率が上がったと考えられる。
41
実験5–2
•energy消費のペナルティ
中程度
•attention消費のペナル
ティなし
•PENALTY_WEIGHT=0.01
•PENALTY_WEIGHT2=0
42
実験5–2: 考察
• 2 hybrid(赤、青) + 2 follower(緑、オレン
ジ)
• 実験3-1よりenergy消費を抑える傾向になり、
independentなし。
• 4agentsのうち半分がfollower戦略。
• 実際の実験では3回(別seedで)学習してみた
が、いずれの場合も2~3 followerが現れた。
43
なぜfollowerが増えたか?
学習曲線
44
なぜfollowerが増えたか?
学習過程がキーポイント
•→前ページの学習曲線を観察。
•学習初期、全てのagentは(energy消費はペナル
ティがあり)attention消費はペナルティがない
ため、attentionを消費する事を学習。
•しかし全員attentionを消費しても、energy消費
をしていないので視界が広がらずゴールがわから
ないので、報酬は小さいまま。
45
なぜfollowerが増えたか?
•ある時点でいくつかのagentが「energy消費をす
ると視界が広がってゴールが見つけられるんじゃ
ね?」と気づく。
•→energy消費を学習→報酬増
•一方で、相変わらずattentionのみ消費する
agentもいる。
•ゴール位置を知っているagent(independent /
hybrid)に追従するので、追従先の報酬が上がる
と自分の報酬も上がる。
46
なぜfollowerが増えたか?
学習初期に、偶然にもenergy消費を覚えたagent
が現れ、変化せずそれに追従することを選ぶ
agentと共存することになる。
→学習が進むにつれてhybridとfollowerへと生態
が分化。なんか生物の進化みたいで面白い。
47
実験5–3
•energy消費のペナルティ
中程度
•attention消費のペナル
ティ=energy消費
•PENALTY_WEIGHT=0.01
•PENALTY_WEIGHT2
= 0.01
48
実験5–3: 考察
• attention消費のペナルティはenergy消費と同
じで、別に得でもないが、この場合でも
follower戦略をとるagentあり。
• followerの報酬はindependentに匹敵。
• このケースでも、followerは悪くない戦略のよ
うだ。
49
実験5まとめ
•2 agentsの場合の比べ4 agentsにエージェン
ト数が増えたことで、多様性が発現。
•他のagentにただ追従するfollowerが多くの
ケースで発生。
•followerの報酬期待値はindependent /
hybridの場合よりも高い場合もある。
50
実験5まとめ
我々の社会も似ている?
independent / hybridがいないことには全agent
の報酬が上がることはない。だから彼らは絶対に
必要な存在。
一方で彼らに乗っかるfollowerは他のagentには
貢献しない。にも関わらず、彼らよりも高い報酬
を受取る場合がある。
51
実験5まとめ
一生懸命働くことで良い成果を出すagentが増え
ると、それに乗っかるagentを生み出すことにな
る。しかもfollowerの方が高い報酬を得る場合が
ある。
だからといって全員乗っかろうとすると、全員の
報酬が大きく下がる結果になる。
→ジレンマ
52
まとめ+余談
53
まとめ
•OpenAIによって開発されたマルチエージェント
の実験環境用のMAPEとMADDPGを用いて新し
いゲームwanderer1とwanderer2を作り、実験
を行った。
以下、余談なので眉唾で聞いてください。
54
•実験の結果、agent数が1→2→4と増える毎
にagentの振る舞いに多様性が発現。
•面白いのは全てのagentは完全に同じ(平等)
である、という点。
•例えば人間社会を考えると、もって生まれた能
力(才能)も違うし教育機会なども違う。だか
ら他人と自分が異なるのは当然で、そのため人
間社会は多様になる、と思いがち。
55
•しかし、この実験の場合、全てのagentは学習
するネットワーク構造(= 才能)は同じで、学
習環境(=教育機会)も(ランダムに初期位置
を変えているだけなので)期待値としては平
等。→agentは全くの同一・平等。
•にも関わらず、学習途中のランダムに配置され
た位置とか、学習する際のランダム性によっ
て、学習途中でagentの戦略が分化。
•→全く平等な集団のagentにおいても、agent
数が多い場合は多様性が発現。
56
•多様性というのはマルチエージェントなシステ
ムに必然的に内包されたもの。
•→人間社会が多様なのも、個々人の才能・環境
の違いだけでなく、そもそも自然の本性として
内包されたものなのでは?
•生命が多様なのも同じ解釈ができる?
57
•他に面白い点は、戦略の移行が難しい場合があ
るようだ。たとえば一度followerなどの戦略を
取ってしまうと、その戦略からhybridなど別の
戦略に移行するのは難しいように見える。
•たとえfollowerよりhybridの期待報酬が高くて
も、分化した後にさらに学習して移行するのは
難しい。
•follower→hybridの途中の戦略の報酬が低く
なっていまうため、gapができてしまい移行が
難しくなるから?
58
•これも人間社会でもありがち
•今の職場では先が見えているので別の職場に移
動したいけど、今の職場に最適化してしまい、
違う職場に適応するにコストが発生するため動
くに動けない、みたいな(笑)
59
今回の実験で、ものすごく単純なルールであって
もマルチエージェントにして学習することで、
色々な知見が得られることがわかった。
複雑に見える我々の社会も、意外と単純な原理で
動いているのかもしれない。
そう思うとワクワクしませんか?
60
ご清聴ありがとうございました!

深層強化学習でマルチエージェント学習(後篇)