Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Guided policy search

Shunichi09
June 10, 2019

Guided policy search

高橋研究室Model based RL勉強会第5回です。
モデルベース強化学習の代表手法の1つである、Guided Policy Searchについてまとめています。

Shunichi09

June 10, 2019
Tweet

More Decks by Shunichi09

Other Decks in Research

Transcript

  1. 高橋研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
  2. 勉強会の目的 2019/6/10 -2- 「最適制御」×「強化学習」という分野の最先端の研究を理解 • Model based RLの大枠の理解 • Model

    based RLの代表手法の理解 • GPS, PILCO, iLQR, IOC, … • その他の手法の理解 • TRPO(PPO)
  3. 本日の流れ • 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
  4. 内容に入る前に • 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- 今回は一番上の基本形についてです
  5. Recap • 第一回(PILCO):ダイナミクスを学習して,方策勾配を計算 ダイナミクス未知,報酬関数は既知 • 第二回(TRPO):方策勾配をデータから推定 ダイナミクス未知,報酬関数も未知 • 第三回(IOC/IRL):demo(最適方策)から,報酬を推定 ダイナミクス基本既知,報酬関数はもちろん未知※

    • 第四回(iLQR):ダイナミクス+報酬関数から方策を計算 ダイナミクス既知,報酬関数既知 2019/6/10 -5- ※基本的にはパラメータが未知になります.関数形は既知 今回(GPS)は,与えられたdemoと報酬関数を使って,方策勾配を計算
  6. まずは概要 2019/6/10 -6- Guided Policy Search とは… “Guided sampleを用いて,局所最適に落ちることなく, 複雑な方策を学習する手法“

    疑問点 • Guided sampleの作り方は? Max entropy model, iLQR • Guided sampleを使った方策勾配計算は? Policy gradient, Importance sampling ※簡単な方策であれば,通常の方策勾配法で十分
  7. GPS理解に必要な知識 • Policy Gradient • Importance Sampling • Information-projection •

    Maximum entropy model • Iterative LQR (DDP) 2019/6/10 -7- なんと基本的にはすべてがすでに学習済み! (計画通りです) ですが,復習もかねて,振り返りしていきます
  8. 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 :予測時間
  9. 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では拡張した評価関数を用います
  10. 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もあります
  11. 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      :確率変数 :特性関数 :係数
  12. 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 線形の場合:
  13. GPSの導出 2019/6/10 -13- STEP 1 : • Guided Sampleの作り方は? Maximum

    entropy model, iLQR • Guided Sampleを使った方策勾配計算は? Policy Gradient, Importance sampling STEP 2 : (論文と順番が逆になってます!!)
  14. 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ダイバージェンス
  15. 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 
  16. 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の定義式に代入
  17. 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で求めた最適入力
  18. 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).
  19. 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に!
  20. 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!!
  21. 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の軌道
  22. STEP1  STEP2 • STEP1 で算出できたもの ‐ “適切な”Guided Sample •

    STEP2 でやりたいこと ‐ Guided Sampleを使った方策更新の方法 2019/6/10 -24- 報酬の高い領域をカバーしながらも,高い密度がそこに載りすぎないような分布
  23. 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
  24. 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と発想は似てますかね...?
  25. 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        対数の微分: 積の微分:
  26. 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                        求めたい勾配 よって,
  27. 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つ
  28. 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/
  29. STEP1 + STEP2 = ? 2019/6/10 -32- STEP 1 :

    • Guided Sampleの作り方は? Maximum entropy model, iLQR • Guided Sampleを使った方策勾配計算は? Policy Gradient, Importance sampling STEP 2 : この2つを組み合わせれば良い!
  30. 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 サンプル抽出
  31. 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で作成した方策をなぜ使わないのか?
  32. Appendix A: Policy gradientの導出 B: Maximum entropy modelの導出 C: Maximum

    causal entropy modelの紹介(導出) D: Inverse optimal control quadratic caseの導出
  33. 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 
  34. 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                    対数取る
  35. • 算出する勾配が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 更新が更新前に依存 報酬に定数(取った に依存しない)が足し算されたとして, 
  36. 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
  37. 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 :特性関数
  38. 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          とすると, 確率分布の形が決まったイメージ ガウス分布など
  39. 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
  40. 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
  41. 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 期待値の定義
  42. 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”と言われています
  43. 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で求めた最適入力
  44. 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 になる
  45. 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 仮定 前提
  46. 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 ダイナミクスを用いて算出 一部導出できた
  47. 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
  48. 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 導出できた
  49. 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 よって!
  50. 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
  51. 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