Slide 1

Slide 1 text

高橋研Model Based RL 勉強会 第5回 Guided Policy Search 2019/06/08 関口舜一 Twitter : https://twitter.com/ShunichiSekigu1 Github : https://github.com/Shunichi09 Qiita : https://qiita.com/MENDY

Slide 2

Slide 2 text

勉強会の目的 2019/6/10 -2- 「最適制御」×「強化学習」という分野の最先端の研究を理解 • Model based RLの大枠の理解 • Model based RLの代表手法の理解 • GPS, PILCO, iLQR, IOC, … • その他の手法の理解 • TRPO(PPO)

Slide 3

Slide 3 text

本日の流れ • Recap(Guided Policy Searchに必要なもの) • Guided Policy Search ‐ STEP 1: Guided sampleの導出 ‐ STEP 2: gradientの導出 • 今後について • Appendix ‐ A: Policy gradientの導出 ‐ B: Maximum entropy modelの導出 ‐ C: Maximum causal entropyの紹介 ‐ D: Inverse optimal control quadratic caseの導出 2019/6/10 3

Slide 4

Slide 4 text

内容に入る前に • Guided Policy Searchって実はたくさんある ‐ モデルが既知:Guided Policy Search (ICML 2013) ‐ モデルが未知:Learning Neural Network Policies with Guided Policy Search under Unknown Dynamics (NeurIPS 2014) ‐ 実機まで発展系:Learning Contact-Rich Manipulation Skills with Guided Policy Search (ICRA 2015) ‐ 解析:Guided Policy Search as Approximate Mirror Descent (NeurIPS 2016) ‐ 観測まで考慮した系:End-to-End Training of Deep Visuomotor Policies (JMLR 2016) 2019/6/10 -4- 今回は一番上の基本形についてです

Slide 5

Slide 5 text

Recap • 第一回(PILCO):ダイナミクスを学習して,方策勾配を計算 ダイナミクス未知,報酬関数は既知 • 第二回(TRPO):方策勾配をデータから推定 ダイナミクス未知,報酬関数も未知 • 第三回(IOC/IRL):demo(最適方策)から,報酬を推定 ダイナミクス基本既知,報酬関数はもちろん未知※ • 第四回(iLQR):ダイナミクス+報酬関数から方策を計算 ダイナミクス既知,報酬関数既知 2019/6/10 -5- ※基本的にはパラメータが未知になります.関数形は既知 今回(GPS)は,与えられたdemoと報酬関数を使って,方策勾配を計算

Slide 6

Slide 6 text

まずは概要 2019/6/10 -6- Guided Policy Search とは… “Guided sampleを用いて,局所最適に落ちることなく, 複雑な方策を学習する手法“ 疑問点 • Guided sampleの作り方は? Max entropy model, iLQR • Guided sampleを使った方策勾配計算は? Policy gradient, Importance sampling ※簡単な方策であれば,通常の方策勾配法で十分

Slide 7

Slide 7 text

GPS理解に必要な知識 • Policy Gradient • Importance Sampling • Information-projection • Maximum entropy model • Iterative LQR (DDP) 2019/6/10 -7- なんと基本的にはすべてがすでに学習済み! (計画通りです) ですが,復習もかねて,振り返りしていきます

Slide 8

Slide 8 text

Recap: Policy gradient(導出はAppendix A-1) 2019/6/10 -8-       , , , , 1 0 0 1 log | , N T T i t i t i t i t i t t J r N                              θ u x x u 問題点 方策勾配を算出したもの • On policyなので,学習が非効率 • 勾配の分散が大きく収束しない(Appendix参照) (Baseline,Actor-Critic..etc) N :サンプル数 T :予測時間

Slide 9

Slide 9 text

Recap: Importance Sampling 2019/6/10 -9-                                 ~ ~ x p x x q x E f x p x f x dx q x p x f x dx q x p x q x f x dx q x p x E f x q x                  q(x)の期待値に!       ~ J E r                      ~ ' J E r                  p(x)の期待値... “ のもとでのサンプル軌道 がなかった場合”    別の方策 においての期待値に変換  方策勾配更新をOff policyで 勾配算出は後で!なお,GPSでは拡張した評価関数を用います

Slide 10

Slide 10 text

Information-Projection • ある確率分布pのI-projection q 2019/6/10 -10-                           * argmin || argmin log argmin log log argmin log all all all all KL q q q q q q q q q q q D q x p x q x q x dx p x q x q x dx q x p x dx H E p x                        log q H q x q x dx   ※Moment-projectionもあります

Slide 11

Slide 11 text

Recap:Maximum entropy principle (導出はAppendix B-1) • ある拘束条件( )の元で,entropyを最大化する確率分布 2019/6/10 -11-           exp exp k k k k k x k f x P x f x       k f k  x     k x g p E f x      :確率変数 :特性関数 :係数

Slide 12

Slide 12 text

Recap: iterative LQR(導出は第4回スライド) • 報酬関数 を最大化する最適方策は, 2019/6/10 -12-   , t t t r x u      t t t t t t g     x u k K x x 1 t t t    uu u k Q Q 1 t t t    uu ux K Q Q 報酬関数と,モデルは二次近似できるものとする 1 1 T t t t t t T t t t t t       x x ux uu u xx xx ux uu ux V Q Q Q Q V Q Q Q Q 1 1 T t t t t T t t t t r f r f       x x x x u u u x Q V Q V 1 1 1 T t t t t t T t t t t t T t t t t t r f f r f f r f f          xx xx x xx x uu uu u xx u ux ux u xx u Q V Q V Q V     1 ˆ ˆ ˆ ˆ ˆ , , 1 1 ˆ ˆ ˆ ˆ ˆ ˆ 2 2 t t t t t T T t t t t t t t t T T T t t t t t t t t t f f r r r r r r r          x u x u xx xx ux x x x x u x u x u x x u u u x ˆ t t t   x x x ˆ t t t   u u u   t t t t g   x k K x 線形の場合:

Slide 13

Slide 13 text

GPSの導出 2019/6/10 -13- STEP 1 : • Guided Sampleの作り方は? Maximum entropy model, iLQR • Guided Sampleを使った方策勾配計算は? Policy Gradient, Importance sampling STEP 2 : (論文と順番が逆になってます!!)

Slide 14

Slide 14 text

Notation • 今回出てくる変数 2019/6/10 -14-  :軌道   | t t   u x :方策  :方策のパラメータ   , t t r x u :報酬関数 t u :入力(GPSの論文に合わせます) t x :状態(GPSの論文に合わせます)   1 1 , ,... , T T x u x u p H :確率分布pのエントロピー 1:t  :軌道   1 1 , ,... , t t x u x u   1:t p  :軌道 の確率   1 1 , ,... , t t x u x u   || KL D p q :KLダイバージェンス

Slide 15

Slide 15 text

STEP1: Guided sampleの導出 その1 2019/6/10 -15- 良いGuided sampleを定義 Guided sampleの導出方法の提案 Guided sampleの導出にiLQRが使える理由

Slide 16

Slide 16 text

STEP1: Guided sampleの導出 その2 • 良いGuided sampleとは? ‐ “An effective guiding distribution covers high-reward regions while avoiding large q(ζ) densities, which result in low importance weights.” ‐ 報酬の高い領域をカバーしながらも,高い密度がそこに 載りすぎないような分布が良い (Importance Samplingの重みが小さくなりすぎないように) 2019/6/10 -16- のI-projectionはどうでしょうか?     exp r 

Slide 17

Slide 17 text

STEP1: Guided sampleの導出 その3 2019/6/10 -17- 提案されたGuided sample のI-projection q     exp r                                    * arg min || exp arg min log exp arg min log log exp arg min all all all all KL q q q q q q q q q q q D q r q q d r q q d q r d H E r                                   minimize q q H E r         Rewardの高い領域はカバー Entropyは大きく なかなか良さそう...でもこのqどうやって算出するか I-projectionの定義式に代入

Slide 18

Slide 18 text

STEP1: Guided sampleの導出 その4 2019/6/10 -18-   minimize q q H E r         “この確率分布qは,iLQRを使って下記のように算出できる” なぜ?       1 | ; , g t t t t t g u g     uu u x x Q     t t t t t t g     x u k K x x iLQRで求めた最適入力

Slide 19

Slide 19 text

STEP1: Guided sampleの導出 その5 2019/6/10 -19- [1]や[2]において提案された内容における最適方策 は以下を最大化 (報酬だけでなく,ある分布,passive dynamicsとどの程度離れているのか)           , , | || | t t t t KL g t t t t r r D p    x u x u u x u x g  特に,pに一様分布を仮定した場合は,以下の式を最大化してることになる Passive dynamics       g g g E r E r H                                                      || log log log log KL x x x x x a x D a x U x a x U x a x a x a x U x H a x a x U x H a x a x C H a x C                  これはI-projectionになっている... (最大化と最小化が逆になってますが-をかけたら同じです) 一様分布 一様分布なので xによらない定数になる 確率の和は1   minimize q q H E r         [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy. [2] Dvijotham, K., & Todorov, E. (2010). Inverse optimal control with linearly-solvable MDPs. In Proceedings of the 27th International Conference on Machine Learning (ICML-10) (pp. 335-342).

Slide 20

Slide 20 text

STEP1: Guided sampleの導出 その6 2019/6/10 -20-       g g g E r E r H                この期待値を最大化する最適方策 は,ziebartさん[1]が次の形になると示した (Appendix Cを参照)         | exp , g t t t t t t t    u x Q u x V x この最適方策 は,線形のモデル+quadraticな報酬関数であれば, iLQRの最適入力を平均にもつ,以下のガウス分布になる!(Appendix Dを参照)       1 | ; , g t t t t t g u g     uu u x x Q g  g  [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy さらに これをguided sampleに!

Slide 21

Slide 21 text

STEP1: 補足 2019/6/10 -21- 提案されたguided sampleは報酬の高い領域をカバーできているのだけど 現在の方策を考慮できていない Adaptive Guiding Sampleを用いる (現在の方策での報酬期待値を最大化したguided sample)   exp E r              , , log | t t t t t t r r     x u x u u x DDPは以下を最大化するようにすれば良い これを最大化した方策からsampleすればok!!

Slide 22

Slide 22 text

STEP1: Guided sampleの導出 その7 2019/6/10 -22- Demoによって,軌道 を作成 軌道付近でiLQRを実行し,最適方策 を獲得 (ここでのiLQRのstepは1stepでも良いと言っている) ˆ t t t   u u u ˆ t t t   x x x g   与えられたdemoの軌道

Slide 23

Slide 23 text

Break

Slide 24

Slide 24 text

STEP1  STEP2 • STEP1 で算出できたもの ‐ “適切な”Guided Sample • STEP2 でやりたいこと ‐ Guided Sampleを使った方策更新の方法 2019/6/10 -24- 報酬の高い領域をカバーしながらも,高い密度がそこに載りすぎないような分布

Slide 25

Slide 25 text

STEP2: Gradientの導出 その1 2019/6/10 -25- “Guided sampleを使って方策を更新したい” Off policyで更新できるように評価関数を拡張 通常のPolicy gradientはOn policyなので他の方策のもとでのsampleが使えない 拡張された評価関数を微分

Slide 26

Slide 26 text

STEP2: Gradientの導出 その2 2019/6/10 -26- まず,Importance Samplingを使って評価関数を拡張               ~ ~q J E r E r q                                                          ~ ~ x p x x q x E f x p x f x dx q x p x f x dx q x p x q x f x dx q x p x E f x q x                  期待値を取るのが大変なのでsampleにして近似(mはsample数)                   1 ,1: 1 1 ,1: 1 1 , m i i i i T m i t i i t t t i i t J r Z q r Z q                     x u Guided sample Guided sampleでの期待値       1 m i i i Z q         にするとvarianceが小さくなる. (biasedではあるけど) Guided sampleに近いと(Z大) 大きな値で割る Guided sampleから遠いと(Z小) 小さな値で割る variance 小では? Z m  ではなく 過去の報酬は 未来の行動とは 関係がない! (variance小へ) (単純に量が小さくなる ので分散が小さくなる) Importance sampling

Slide 27

Slide 27 text

STEP2: Gradientの導出 その3 2019/6/10 -27-           ,1: 1 1 ,1: 1 , T m i t i i t t t i i t r Z q             x u     1 1 n j j q q n      Guided sampleは 各guided sampleの 平均とする(nはsample数) このまま勾配出してもlong-rolloutやcomplex policy だと上手くいかないよう(ISの重みが小さくなってしまう) 拡張された評価関数(最大化)             ,1: 1 1 ,1: 1 , log T m i t i i t t r t t i t i t r Z Z q                        x u       ,1: 1 ,1: m i t t i i t Z q           log r t Z   Guided sampleが取る確率が大きい軌道をとらないことを避けたい(Z小) r  は手動で調節(guided sampleとの離れ具合) TRPOと発想は似てますかね...?

Slide 28

Slide 28 text

STEP2: Gradientの導出 その4 2019/6/10 -28- 評価関数(最大化)ができたので後はパラメータ で微分 (本当に微分するだけなのでそんなに大事ではないけど練習のために追います!)                         ,1: ,1: 2 1 1 1 ,1: ,1: 1 , , T m m i t i t t t i i i i t t t t r t i i t t t i t i t Z Z r r Z Z Z q q                                     x u x u             ,1: 1 1 ,1: 1 , log T m i t i i t t r t t i t i t r Z Z q                        x u  積の微分 対数の微分       log t t t Z Z Z             2 1 t t t Z Z Z        対数の微分: 積の微分:

Slide 29

Slide 29 text

STEP2: Gradientの導出 その5 2019/6/10 -29-           ,1: 1 ,1: 1 m i t t i t t i t Z Z Z q                                     ,1: ,1: 2 1 1 1 ,1: ,1: 1 , , T m m i t i t i i i i t t t t t t r t i i t t t i t i t Z Z r r Z Z Z q q                                     x u x u       ,1: 1 ,1: m i t t i i t Z q         より,           ,1: 1 ,1: 1 , m i t i i t t t i t i t J r Z q          x u                                             ,1: ,1: ,1: 1 1 1 ,1: ,1: , , ,1: 1 1 , 1: ,1: 1: , 1 1 1 : 1 : 1 , 1 , 1 , 1 1 1 T m i t i i i i t t t t r t i t i t m m m i t i t i t i i i t t t i t i t i t T i i t t t r t m i t i t i t t i t r r Z q r J Z Z Z q q q Z q Z                                                                        x u x u x u         ,1: 1 ,1: 1 log , T i i t t t t i i r m t i t r J q                  x u (1) (2) ここで,   t J              ,1: ,1: ,1: ,1: ,1: ,1: log log i t i t i t i t i t i t                        求めたい勾配 よって,

Slide 30

Slide 30 text

STEP 2: Gradientの導出 その6 2019/6/10 -30-               ,1: ,1: 1 1 ,1: 1 log , T m i t i i i t t t t r t i t i t r J Z q                         x u     ,1: log log | i t t t t          u x 求めたい勾配 ここで, マルコフ過程なのと, 状態遷移確率pはパラメータに依存しない(appendix A-1を参照) これで通常のpolicy gradientのように更新しても良いが,一般的に大きなNNの場合は 出力を平均として使い,ガウス分布のように近似するとよいとのこと           2 ,1: 2 2 log logexp 2 t t i t t t t t t                           u x u x x 他のところの値が無視 通常 分布の近似 NNの出力   4 log | t   u x 1 u 2 u 3 u 4 u 5 u 6 u   t  x これは与えているはず NNの出力は1つ

Slide 31

Slide 31 text

STEP 2: Gradientの導出 その7 2019/6/10 -31-                 ,1: ' ' ' ' 2 1 1 ' ' ,1: ' 1 , i i T m T t t i t i i i t t t t r t i t t t i t r J Z q                           u x x x u 最終的に                 ,1: 2 1 1 1 ,1: 1 , i i m T T t t i t i i i t t t t r i t t t i t r J Z q                                           u x x x u Sergey levine講義 第五回資料[1] 現在の行動の良さは 過去の報酬には関係がない [1] http://rail.eecs.berkeley.edu/deeprlcourse/

Slide 32

Slide 32 text

STEP1 + STEP2 = ? 2019/6/10 -32- STEP 1 : • Guided Sampleの作り方は? Maximum entropy model, iLQR • Guided Sampleを使った方策勾配計算は? Policy Gradient, Importance sampling STEP 2 : この2つを組み合わせれば良い!

Slide 33

Slide 33 text

STEP1 + STEP2 = Guided Policy Search 2019/6/10 -33- 人のdemoからDDPを行う 最初に対数尤度最大化しておく Lbfgsでパラメータを最適化 評価 重みいじる (guided sampleによる or もっと探索させる)             ,1: 1 1 ,1: 1 , log T m i t i i t t r t t i t i t r Z Z q                        x u サンプル抽出

Slide 34

Slide 34 text

Guided Policy Searchの疑問 • “The issue is that πG is time- varying and only valid around a single trajectory, while the final policy can be learned from many DDP solutions in many situations.” • iLQRで作成した方策は,Demoの軌道(guided sample)回りでのみ有効だから! • “Guided policy search can be viewed as transforming a collection of trajectories into a controller.” • Guided Policy Searchは軌道の集合をコントローラーに落とし込む作業 2019/6/10 -34- Q:そもそもiLQRで作成した方策をなぜ使わないのか?

Slide 35

Slide 35 text

実験と評価 一例 2019/6/10 -35- トレーニングした道 ランダムな高さの道が来ても DDPやTBDPで上手く行っていない ところで,GPSは歩けている! (一般化された方策を獲得可能)

Slide 36

Slide 36 text

モデルなしの場合 • 基本的な考え方は同じですが 使っている手法が異なりますので 違う機会にまとめることにします 2019/6/10 -36-

Slide 37

Slide 37 text

今後について • 継続してもいいかなとは思うのですがどうしましょうか? • 今のところ読んでみたい論文 (最適制御×強化学習からは少し脱線?しそうですが...) ‐ Guided policy searchのモデルなし版 ‐ Guided cost learning ‐ VICE ‐ SOLAR ‐ Causal InfoGAN 2019/6/10 -37-

Slide 38

Slide 38 text

Appendix A: Policy gradientの導出 B: Maximum entropy modelの導出 C: Maximum causal entropy modelの紹介(導出) D: Inverse optimal control quadratic caseの導出

Slide 39

Slide 39 text

A-1: Policy gradientの導出 2019/6/10 -39-     * ~ argmax , t t p t E r x u              強化学習の目的           ~ J E r r d                     , t t t r x u              log log                           定理1(log) 定義!                   ~ log log J r d r d E r                                        強化学習の評価関数 評価関数の微分 期待値を取れる! 定理1(log)  d      :方策 のもとで,軌道 の確率分布における 報酬の和 の期待値      r 

Slide 40

Slide 40 text

A-1: Policy gradientの導出 2019/6/10 -40-         ~ log J E r                   続き       1 1 1 log lo | | , log g t t t T t t t p x p x x u u x                  マルコフ過程の変換 に関係なし        ~ 1 1 log | , T T t t t t t t E u x r x u                                   , , , , 1 0 0 1 log | , N T T i t i t i t i t i t t J u x r x u N                              θ 期待値計算したくないのでサンプル取得 ( をたくさん(N回)試して平均取る)  d                        1 1 1 1 1 1 1 1 , ,... , | | , log log log | log | , T T T t t t t t t T t t t t t t x u x u p x u x p x x u p x u x p x x u                    対数取る

Slide 41

Slide 41 text

• 算出する勾配がhigh-variance A-2: Policy gradientの問題点 2019/6/10 -41-       , , , , 1 0 0 1 log | , N T T i t i t i t i t i t t J u x r x u N                              θ 問題点(ほかにもあります) 原因(たくさんあるけどその一例) • CASE-1:報酬がすべて正の場合, 勾配の更新が変化 • CASE-2:良い軌道の報酬が0になった場合, 勾配の更新が右?左?が初期値に依存 軌道を1Dとして表現    r     r   更新前 更新後 更新前 更新後 CASE-1 CASE-2 :貰った報酬 :貰った報酬    r  更新前 更新後 通常 :貰った報酬    この2つは0 更新が更新前に依存 報酬に定数(取った に依存しない)が足し算されたとして, 

Slide 42

Slide 42 text

A-3: Policy gradientの改善 2019/6/10 -42-       , , , , 1 0 0 1 log | , N T T i t i t i t i t i t t J u x r x u N                              θ       , , , , 1 0 ' ' ' 1 log | , N T T i t t t i t i i i t t t J u x r x u N                              θ idea1:Reward to goの導入(単純に量が小さくなるから) idea2:Baselinesの導入(期待値はBaselineを入れても変わらない(unbiased in expectation!!)) idea2のextend ver:Actor Criticなどなど...       , , , , 1 0 ' ' ' 1 log | , N T T i t i t i i i t t t t t J u x r x b u N                               θ Reward to go

Slide 43

Slide 43 text

B: Maximum entropy modelの導出 2019/6/10 -43-   argmax p p H x     k k k g p g p     1 x p x     0 x p x   . . s t ちなみに は何でも良い :確率の定義 :何らかの拘束 解きたい問題(エントロピーを最大にする制約条件を満たす確率分布p) [1] http://bjlkeng.github.io/posts/maximum-entropy-distributions/ [2] https://sgfin.github.io/2017/03/16/Deriving-probability-distributions-using-the-Principle-of-Maximum-Entropy/ もし,なにも拘束なしだと一様分布, 期待値と分散の拘束にすると,ガウス分布が算出される[2]   k g p ここでは, とします(特性関数は1つ)     k x g p E f x F       k f :特性関数

Slide 44

Slide 44 text

B: Maximum entropy modelの導出 2019/6/10 -44-             0 1 log 1 n n n n n n n n L p x p x p x p x f x F                  素直にラグランジュ関数   n p x : の確率 n x F :拘束される値       0 1 log 1 0 n n n L p x f x p x               0 1 log 1 n n p x f x           0 1 1 n f x n p x e                 ' 1 ' n n n f x f x n f x n e e p x Z e           (1):ラグランジュ関数の微分が0 (2):問題設定   1 n n p x   (1)を(2)に代入       0 1 1 0 1 0 1 1 1 1 1 1 n n n f x n f x n f x n e e e e e                          0 1 1 1 1 : n f x n Z e e          とすると, 確率分布の形が決まったイメージ ガウス分布など

Slide 45

Slide 45 text

C: Maximum causal entropyの紹介 2019/6/10 -45- Maximum entropy modelを時系列へ拡張した問題 [1]のp72     1: 1: 1 { | , } argmax || t t t T T p A H  S A A S         , , , , p p E F E F          S A S A S A S A   1: 1: , 1: 1: 1 | , 0 t t t t t p A    S A S A . . s t   1: 1: 1 , 1: 1: 1 | , 1 t t t t t t A p A      S A S A       , 1: 1: 1 1 || log || | , T T T T T t t t t H E p H           A S A S A S A S A [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy       1 , || || T T T T p p p   A S A S S A     1: 1: 1 1 || | , T T T t t t t p p A     A S S A [1]の(4.12)式, 51p [1]の72p [1]の(4.13)式,51p causal entropyというらしい この問題を解くと? [1]の(6.1)式,72p

Slide 46

Slide 46 text

C: Maximum causal entropyの紹介 2019/6/10 -46-   1: 1: 1 1: 1: 1 | , , 1: 1: 1 , , | , t t t t t A t t t Z p A Z        S A S A S A   1 1: 1: , , 1: 1 1: 1 1: 1: 1 | , log | , , t t t t t St t t t p S Z A Z e         S A S A S A [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy 次のように再帰的に書くことができる[1]のp72 (導出できそうにないので誰か分かる方いたら教えてください..)   1: 1: 1 , , , T T T F Z e    S A S A   1: 1: 1 1: 1: 1 1: 1 1: 1 , , , , 1 1: 1: , , log log softmax | , log t t t t t t t t t A t t t A S Z Z p S Z                   S A S A S A S A     softmax log f x x x f x e  [1]の(6.2)式,p72 ややこしいのでマルコフ過程を置くとさらに簡単化可能 [1]の(6.2)式,p72

Slide 47

Slide 47 text

C: Maximum causal entropyの紹介 2019/6/10 -47- [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy マルコフ過程を組み込んだ場合は,もっと簡単に次のように書ける[1]のp74 [1]の(6.4)式,p74   | , , | t t t A S t t S Z p A S Z         1 1: 1: 1 | , | , t t t t t t p S p S S A    S A [1]の(6.4)式,p74       1 1 1 1 , | , 1 , , , , | , log log softmax | , log softmax log t t t t t t t t t t t t t t t t s A S A T t t t S S A A S T S S A p S S A A Z Z p S S A Z E Z                             f f     1 , , 1 1 , , | , 1 1 | , log | , log T t t t S S A t t t St t t T S S A p S S A t t t t t t p S S A Z A S E Z Z e e                   f f     softmax log f x x x f x e    , , t t t S A F   S A f あれこれ聞いたことありませんか?   , t t S A での即時の値   , t t S A で状態遷移する 次の状態での値 期待値の定義 で取り得る全ての で値の和 t S t A 期待値の定義

Slide 48

Slide 48 text

C: Maximum causal entropyの紹介 2019/6/10 -48-   | , , | , , log log log | a s t t st a s s t t t Z Z t t Z Z p a s e e         本論文にでてくる(右図の式)につながります (s,aがx,uになってます)       | 1 | , , 1 , log | , soft t t a s t t T soft t t t p s s a s a t t t t t Q a s Z E V s s a            f       , | soft soft Q s a V s p a s e          log softmax , soft t st soft t t at V s Z Q a s    [1]の(6.5), (6.6)式,p77 [1]のp77     softmax log f x x x f x e  [1] Ziebart, B. D. (2010). Modeling purposeful adaptive behavior with the principle of maximum causal entropy [2] Levine. S, (2013) guided policy search. [2] ここがmaxになるとベルマンバックアップ と同じになるので “Softened form”と言われています

Slide 49

Slide 49 text

C: Maximum causal entropyの紹介 2019/6/10 -49- ここまでで証明したのは,Maximum causal entropyでは次の確率分布が (時系列のデータでの期待値拘束)+(エントロピー最大)を達成       , | soft soft Q s a V s p a s e            g g g E r E r H                ここの橋渡しが必要     1: 1: 1 { | , } argmax || t t t T T p A H  S A A S         , , , , p p E F E F          S A S A S A S A   1: 1: , 1: 1: 1 | , 0 t t t t t p A    S A S A . . s t   1: 1: 1 , 1: 1: 1 | , 1 t t t t t t A p A      S A S A 本論文で述べられていたのは を最大化するのは       1 | ; , g t t t t t g u g     uu u x x Q     t t t t t t g     x u k K x x iLQRで求めた最適入力

Slide 50

Slide 50 text

D: Inverse optimal control quadratic caseの導出 -50-         | exp , t t t t t t t p   u x Q u x V x 線形のモデルとquadraticな報酬関数を仮定した場合 (第3回スライド)   1 , 2 T T t t t t t t t t t t t t t t t const                                  xx xu x ux uu u x Q Q x x Q Q u x u Q Q u u Q もquadraticな形だろうと予想できる[1]   1 2 T T t t t t t t t const    xx x V x x V x x V   , t t Q V       log exp , t t t t t t d   V x Q u x u どうせなら導出しましょう 仮定 [1] Levine, S. (2014). Motor skill learning with local trajectory methods (Doctoral dissertation, Stanford University).     1 | , t t t t t t p N      uu u x K x k Q になる

Slide 51

Slide 51 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -51- モデル(線形) 状態行動価値 となっているので,Qを計算   1 , t t t t t f f f     x u x x u x u             1 1 1 1 , , , t t t t t t t t t t t t t r r f         Q u x x u V x x u V x 行動確率(maximum causal entropyにおける定義)         | exp , t t t t t t t p   u x Q u x V x   1 , 2 T T t t t t t t t t t t t t t t t const                                  xx xu x ux uu u x Q Q x x Q Q u x u Q Q u u Q   1 2 T T t t t t t t t const    xx x V x x V x x V 仮定 前提

Slide 52

Slide 52 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -52-             1 1 1 1 1 1 , , , , 1 1 2 2 1 2 t t t t t t t t t t t t T T t t t t t t T T t t t t t t t t t t t T T t t t t t t t t t t r r f r r r const r r r r r r r                                                                        xx xu x xx x ux uu u xx xu ux uu Q x u x u V x x u V x u x x x x V x x V u u u x x x u u u       1 1 1 1 1 1 1 1 2 2 1 2 T T T T t t t t t u u t t t t t T T T T t t t t t t t t t t t t T T t t t t t t t t t t t r f f f f f f const r r f f r f f r f r f f r f f                                                                 x x u xx x u x u xx x xx x xu x xx u x ux u xx x uu u xx u x x x V V u u u x x x V V u u u V V 1 1 1 2 T t t T t t t T T t t t t t t t t t t t t const r f const                                            x x u u x xx xu x ux uu u V V x Q Q x x Q u Q Q u u Q 1 1 1 T t t t t t T t t t t t T t t t t t r f f r f f r f f          xx xx x xx x uu uu u xx u ux ux u xx u Q V Q V Q V 1 1 T t t t t T t t t t r f r f       x x x x u u u x Q V Q V ダイナミクスを用いて算出 一部導出できた

Slide 53

Slide 53 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -53-   1 1 1 , 2 1 1 2 2 1 1 2 2 T T t t t t t t t t t t t t t t t T T T T T t t t t t t t t t t t t t T T T T t t t t t t t t t t t t t t t const const                                               xx xu x ux uu u xx x uu u ux xx x xu uu ux xu uu u u x Q Q x x Q Q x u u Q Q u u Q x Q x x Q u Q u u Q u Q x x Q x x Q x Q Q Q x x Q Q Q Q Q         1 1 1 1 1 1 1 1 1 2 1 1 1 2 2 2 1 2 t t T t t t t t t t t t t t t t T T T T T T T t t t t t t t t t t t t t t t t t T t t t t t t t t t                        uu u uu ux uu u uu uu ux uu u xx x xu uu ux xu uu u u uu u uu Q u Q Q x Q Q Q u Q Q x Q Q x Q x x Q x Q Q Q x x Q Q Q Q Q Q u K x k Q u K x k ここのテクニックは難易度高めですが ガウス分布の形にするのであれば この形を算出できます 2次形式にしたい部分 に代入         | exp , t t t t t t t p   u x Q u x V x 1 1 t t t t t t       uu ux uu u K Q Q k Q Q

Slide 54

Slide 54 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -54-               1 1 1 | exp , 1 exp 2 1 1 exp 2 2 1 exp 2 1 exp 2 t t t t t t t T T t t t t t T T T T t t t t t t t t t t t t t t t t t T t t t t t t t t t T t t t t t t t t p                                             xx x xx x xu uu ux xu uu u u uu u uu uu u x Q u x V x x V x x V x Q x x Q x Q Q Q x x Q Q Q Q Q Q u K x k Q u K x k u K x k Q u K x     1 , t t t t t N             uu k K x k Q に関係あるのはこちらのみ t u 1 1 t t t t t t       uu ux uu u K Q Q k Q Q ガウス分布         1 1 1 , exp 2 2 T n N x x                   ガウス分布!     1 | , t t t t t t p N      uu u x K x k Q 導出できた

Slide 55

Slide 55 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -55-       1 | | , g t t t t t t t t p N        uu u x u x K x k Q この平均は,報酬を最大にする入力では?(iLQRでの最適入力と同じ) Maximum entropyのもとでの方策 報酬を最大にする入力(iLQR) つまり, 平均(期待値)だけみれば同じ!!       g g g E r E r H                を最大化するのは     1 | , g t t t t t t g       uu u x K x k Q よって!

Slide 56

Slide 56 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -56- ちなみに,     1 1 1 1 1 1 1 1 1 log exp 2 2 2 2 1 1 1 log exp 2 2 2 T T T T T T T T t t t t t t t t t t t t t t t t t t t t t t t t t t t t T T T T T T T t t t t t t t t t t t t t t t t d                             xx x xu uu ux xu uu u u uu u uu xx x xu uu ux xu uu u u uu V x Q x x Q x Q Q Q x x Q Q Q Q Q Q u K x k Q u K x k u x Q x x Q x Q Q Q x x Q Q Q Q Q        1 1 1 1 1 1 1 2 2 1 1 1 log 2 2 2 1 1 2 2 T t t t t t t t t t t t n T T T T T T T t t t t t t t t t t t t t t t t t t T T T T T T t t t t t t t t t t t t t t d                                        u uu xx x xu uu ux xu uu u u uu u uu xx x xu uu ux xu uu u Q u K x k Q u K x k u x Q x x Q x Q Q Q x x Q Q Q Q Q Q Q x Q x x Q x Q Q Q x x Q Q Q   1 2 1 log 2 1 2 n T t t t t T T t t t t t const                u uu u uu xx x Q Q Q Q x V x x V   1 2 1 1 exp exp 2 2 n T T T d                   b A b x Ax b x x A ガウス積分 よって 1 1 T t t t t t T t t t t t       x x ux uu u xx xx ux uu ux V Q Q Q Q V Q Q Q Q

Slide 57

Slide 57 text

MEMO

Slide 58

Slide 58 text

D: Inverse optimal control quadratic caseの導出 2019/6/10 -58-         | exp , t t t t t t t p   u x Q u x V x に算出したものをもう一度代入すると,         1 1 1 1 1 1 1 1 1 1 | 2 2 2 2 2 1 1 1 log 2 2 2 T T T T T T T T t t t t t t t t t t t t t t t t t t t t t t t t t t t t n T T T T T T T t t t t t t t t t t t t t t t t t t p                           xx x xu uu ux xu uu u u uu u uu xx x xu uu ux xu uu u u uu u uu u x x Q x x Q x Q Q Q x x Q Q Q Q Q Q u K x k Q u K x k x Q x x Q x Q Q Q x x Q Q Q Q Q Q Q             1 1 1 log log 2 2 2 1 1 log log 2 2 2 T n t t t t t t t t t t n T t t t t                              uu uu u uu u uu u K x k Q u K x k Q Q Q Q Q ここで,ある軌道 が与えられた場合,これはその軌道との差分を使って作られた確率分布 (いわば,ノミナル軌道(与えられた軌道)からの摂動を利用して作ったものになる) なのである軌道が与えられた場合,その軌道そのものをさすことになり,差分(摂動)は0 で に関する項は消去される(sergeyのthesisの26p) 1 1 t t t t t t       uu ux uu u K Q Q k Q Q  t u