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

第33回 強化学習アーキテクチャ勉強会 強化学習ロボティクスの動向のサーベイ

Fumiya Simada
February 19, 2019

第33回 強化学習アーキテクチャ勉強会 強化学習ロボティクスの動向のサーベイ

ロボットアームなどの固定ロボットにおいて深層強化学習を適用した研究をサーベイした結果について報告する.ロボットの強化学習を難しくする要因の一つとして,現実での試行が時間的・安全性・コストの制約を受けることがあげられる.この問題に対するアプローチは二つに大別される.一つはサンプル効率の良い学習手法を用いること,もうひとつはシミュレーションを活用することである.前者については深層強化学習一般において様々な手法が考案されているが今回は実機へのデプロイに成功した研究を主に参照しモデルベース学習,教示データの活用,潜在空間の活用などのアプローチに対して実例[1][2]を交えながら紹介する.後者については シミュレーションと現実の差異reality-gapが問題になる.これを解決するアプローチとしては①シミュレータの精度自体を上げる②シミュレータを上手く現実に適合させる(Domain Adaptation)③シミュレータをランダム化してreality-gapにロバストな方策を獲得する.強化学習に際して行われるのは基本的に②,③のアプローチである.今回はDomain Randomizationを利用して直接実機へのデプロイに成功したOpen AIによる研究[3]を中心に関連研究を紹介する.

参考文献
[1]Levine, Sergey, et al. "End-to-end training of deep visuomotor policies." The Journal of Machine Learning Research 17.1 (2016): 1334-1373. [2]Zhu, Henry, et al. "Dexterous Manipulation with Deep Reinforcement Learning: Efficient, General, and Low-Cost." arXiv preprint arXiv:1810.06045 (2018). [3]Andrychowicz, Marcin, et al. "Learning dexterous in-hand manipulation." arXiv preprint arXiv:1808.00177 (2018).

Fumiya Simada

February 19, 2019
Tweet

More Decks by Fumiya Simada

Other Decks in Technology

Transcript

  1. Outline 1. 強化学習ロボティクスの難しさ 2. サンプル効率の良い学習法 1. モデルベース学習 2. 教示データの活用 3.

    状態圧縮による次元の削減 4. Soft-Actor Critic 3. シミュレーションの工夫 1. Domain Randomization 2. Domain Adaptation 4. まとめ 3
  2. 1 強化学習ロボティクスの難しさ • 現実での試行が高コストなこと • 安全性 • 様々なデータIOの設定 • ロボットが壊れやすい

    • ロボットがそもそも遅い • 初期配置を設定しなおさなければならない etc… • Reality-Gap • シミュレータと現実世界の間には大きなギャップ • 正確なモデリングをすること自体高コスト 5 極めて難しく,人間のチューニングを超えるような結果は出ていない
  3. 2学習の工夫 • 主に5つの目についた論文についてしゃべります • 学習の工夫次第で多少必要とするサンプル数を落とせる • モデルベース学習:系のダイナミクスのモデルを陽に持つ • PILCO: Gaussian

    Processingでモデルフィッティング • GPS: linear-Gaussian model/controllerを最適化して,そこから学習 • 教示の活用:人がある程度デモンストレーションする • DAPG:教示を方策学習に組み込むことで学習を加速 • 状態表現圧縮:Auto Encoderなどで次元を削減する • Deep Spacial AutoEncoder: 特徴点を学習 • その他一般的な強化学習法: 7
  4. 2.1 モデルベース学習 ・次の状態遷移を表す関数を学習する手法 1. ポリシーを実行しデータを集める 2. データを基にダイナミクス,′ = (, )を学習

    3. ポリシー を を基に最適化する 基本的には1~3を繰り返すことで学習する方法. • 予測構造を入れることでModel-freeなものよりサンプル効率が上が る • ダイナミクスをある種のシミュレータとして最適化が可能 8
  5. 2.1 PILCO(probabilistic inference for learning control)(1) • モデル:ガウス過程回帰 • Stateとactionから1ステップ先のstateを予測するモデルを学習

    • データはランダムなポリシーの実行や,ポリシーの実行によって得る • ガウス過程回帰なので“モデルの不確かさ”も評価できるのが強み • ポリシー:RBF networkなど • Moment Matchingを使った近似によって評価 • 解析的なグラディエントが出せるのでL-BFGSやCGで最適化 Deisenroth et al.(2010) PILCO: A Model-Based and Data-Efficient Approach to Policy Search 9
  6. 2.1 PILCO(2):応用例 • CartPoleなど • サンプル効率がとても良い • カートポールなら10回程度で学習 • ブロック積み上げ

    • ぐらつきが極めて大きい安いマニピュレーター($370)でブロックを積み上げるタスク • 末端は2㎝ぐらいぐらつきうる • 入力:Kinectハンドメイド特徴量による画像認識で物体の座標を把握 • 出力:サーボの出力 • 10トライアル程度で成功 Deisenroth et al.(2010) PILCO: A Model-Based and Data-Efficient Approach to Policy Search 10
  7. 2.1PILCO(4) • Rewardがかなり作りやすいタスクを対象としている(ロボットアームの 先端を目的の位置に移動する) • 計算量が大きい • Input: Q次元/Output: D次元/試行回数:

    Nに対して(222) • Baysian NNを用いたDeep PILCOもある • Gal et al.(2016) Improving PILCO with Bayesian Neural Network Dynamics Models • こちらは計算量が落ちる 12
  8. 2.1:Guided Policy Search(1) :概要 • 最適なControllerを模倣してPolicyを学習させる • Controller:簡単に最適化できるようなものをえらぶ( | )

    • Policy: 最終的に学習したいNNなどで表現される様々な初期値に対応できる 方策 • 危険なNNによる実機サンプリングを避けられる • コントローラー最適化によって報酬の高い領域を優先的に探索(Guided sampling) • Local Modelを活用する • (+1 | , )を各サンプル点付近でモデル化 • Globalモデルを学習するのに比べて簡単 13
  9. GPS(2):前提知識 • Linear Gaussianとは以下のような確率モデル +1 , = ( + +

    , ) • Linear Gaussianな(モデル,コントローラー)の組 はコスト関数が与えられた時に簡単に最適化することができる ⇒詳細はLinear Dynamical Systems and Quadratic Cost(LQR)/iLQR/Differential Dynamic Programming (DDP)の解説などを参照 14
  10. 2.1 GPS(3) • モデルはlinear Gaussianとして実機データからfitting • +1 , = (

    + + , ) • ベイズ線形回帰で得る • Globalなモデルを学習するより効率的 • 軌道が大幅にずれないように更新時にKL-divergenceで制約を入れる • モデルを基にコントローラーを最適化 • Time-varying Linear-Gaussian Contoroller • iLQG(iterative linear-quadratic-Gaussian regulator) • 初期状態に応じてコントローラーを何個か用意しておく • NNのモデルを実行データを使ってfitting • NNのモデルを実機で実行しないので安全 • 単なる教師あり学習になる 15 Levine et al. (2017) End-to-End Training of Deep Visuomotor Policies.
  11. 2.1 GPS(5):最適化 Levine et al. (2017) End-to-End Training of Deep

    Visuomotor Policies. 17 ・dual gradient descentの一種 ・方策の分布とコントローラーの一致を制約 に加えた,コスト関数の期待値から導出され るラグランジアンを使う ・確率分布の一致は一次のモーメントで近似 する ・であらわされる項はKL-divergence
  12. 補足:GPSの論文について Levineによって提案され,コアのアイデアは共通だがバリエーションがあ るので詳細を確認する際は注意が必要 • モデル既知のバージョン Guided Policy Search (Levine &

    Koltun, ICML 2013) • モデル未知のバージョン Learning Neural Network Policies with Guided Policy Search under Unknown Dynamics (Levine & Abbeel, NIPS 2014) • PR2を使った実機実験あり:Learning Contact-Rich Manipulation Skills with Guided Policy Search (Levine et al., ICRA 2015) • 理論解析:Guided Policy Search via Approximate Mirror Descent (William & Levine, NIPS 2016) • CNNを使い観測の不確定性も考えるバージョン(End-to-end training of deep visumotor policies)(Journal of Machine Learning Research 2017) 今回参照したのは赤字の部分です 21
  13. 2.2:教示の活用 • Imitation Learning • 教師を模倣するように学習する • Inverse Reinforcement Learning

    • 教師から報酬設計を学ぶ 省略 IRLはA Survey of Inverse Reinforcement Learning: Challenges, Methods and Progress (arxiv.org/abs/1806.06877) Imitation LearningはNeurIPS2018のWorkShop https://sites.google.com/view/nips18-ilr あたりが参考になるかも? 23
  14. 2.2 DAPG(1) • 人間の部分的な教示 • Natural Policy Gradient(NPG) を利用した手法. =

    ෍ , ∈ ∇ ln , + ෍ , ∈ ∇ ln , , = 0 1 max ′,′ ∈  (, ) 第一項:アドバンテージ関数を用いた,普通の方策勾配. 第二項:適宜重みづけをした,教示からの方策勾配 24 Rajeswaran et al.(2017) Learning Complex Dexterous Manipulation with Deep Reinforcement Learning and Demonstrations. Zhu et al.(2018) Dexterous Manipulation with Deep Reinforcement Learning: Efficient, General, and Low-Cost
  15. 2.2 DAPG(2) Dexterous Manipulation with Deep Reinforcement Learning: Efficient, General,

    and Low-Cost https://www.youtube.com/watch?v=mpGK4zbdi6g 25
  16. 2.2 DAPG Natural Policy Gradientについて = 1 ෍ =1 ෍

    =1 ∇ log መ ( , , ) = 1 σ =1 σ=1 ∇ log ∇ log +1 = + −1 −1 フィッシャー情報行列を用いて勾配を修正している 26 Zhu et al.(2018) Dexterous Manipulation with Deep Reinforcement Learning: Efficient, General, and Low-Cost
  17. 2.3 状態表現の圧縮の活用 • 高次元の入出力を避けたい(画像など) • Auto Encoder で状態圧縮する手法などが提案されている • Deep

    spacial autoencoders for visumotor learning (Finn, et al, 2015) • Auto Encoderで特徴点を学習させる • Encoderの最終層で画素ごとのsoftmaxをとることで特徴点の学習が可能に • GPSと組み合わせ合計100試行程度でレゴブロックの移動 • 前回(第32回)が世界モデルの話だったのでそちらの方が参考になるか も 28
  18. 2.4 : Soft Actor-Critic ・コントローラーのエントロピー最大化を目的に加える = E σ , −

    log( ) 第二項がポリシーのエントロピーに対応, 2018年12月版ではが自動で選ばれるようになり, よりロバストに ・方策はexp()のI-projectionとして求める ⇒四足ロボットの制御,バルブの回転に成功 • サンプル効率が良い • ハイパーパラメータ―依存性が低い • Off-Policy型である 29 Haarnoja et al.(2018)Soft Actor-Critic Algorithms and Applications
  19. 2.4: Soft Actor-Critic:実機例 Haarnoja et al.(2018)Soft Actor-Critic Algorithms and Applications.

    30 Ghost Roboticsの4足歩行ロボット さまざまな土地の状況に対応 400エピソード程度で学習 バルブを回すタスク カメラから20時間で学習
  20. 3: シミュレータの活用 • シミュレータを用いてのサンプリングは低コスト • シミュレータと現実は一致しない • 衝突やコンタクトのモデリングがとても難しい • ロボット自体の正確なモデリングも難しい

    • 現実はノイジー ・Domain Adaptation ⇒シミュレータを現実に近づける ・Domain Randomization ⇒現実でも動くようにシミュレータを多様化する 31
  21. 3.1 Learning Dexterous In-Hand Manipulation(1) • タスク • 立方体をうまく回転させる •

    設定1 • 入力:モーキャプした姿勢 • 設定2 • 入力:3つのカメラ画像 • 出力:上と同様 • ロボット • 24DoF(Degree of Freedom)のロボットハンド(Shadow Hand) • 20組のTendon(腱)で駆動される • ハード自体は2005年に開発されている • センサー • LEDマーカーによるモーションキャプチャ(指5本と箱) • RGBカメラ三台 32 OpenAI(2018) Learning Dexterous In-Hand Manipulation
  22. 3.1 Learning Dexterous In-Hand Manipulation(1) OpenAI(2018) Learning Dexterous In-Hand Manipulation

    34 • 結果 現実世界での追加の学習なしで,平均20連続近い回転に成功 ビジョンベースでも平均15連続の回転に成功
  23. 3.1 Learning Dexterous In-Hand Manipulation(3) 学習アルゴリズム ・Asymmetric Actor-Critic • ActorとCriticで使用する情報を変えている

    • 正確な状態価値を推定するため,価値関数により多くの情報を与える • 実行時は価値関数と独立した方策だけを使う • PPO • TRPOに近い方策ベースの手法 • Domain Randomization • シミュレーションのほぼすべての側面をランダム化 35 OpenAI(2018) Learning Dexterous In-Hand Manipulation
  24. 3.1 Learning Dexterous In-Hand Manipulation(4) PPO (Proximal Policy Optimization)(Schulman et

    al., 2017) • 大幅なポリシーのアップデートを防ぎながらAdvantage関数の最大 化を狙う手法TRPOを近似し,より最適化をしやすくした手法 • 以下のような関数を最大化する. = ෢ [min( መ , , 1 − , 1 + መ )] = መ : Advantage 36 Shculman et al.(2017), Proximal Policy Optimization Algorithms. arXiv:1707.06347
  25. 3.1 Learning Dexterous In-Hand Manipulation(5) • Domain Randomization (Tobin et

    al., 2017) • シミュレーションに十分なバリエーションを与えることで汎化した方策の学習を目指 す • 考えうる多くの要素をランダム化している (長さ,重さ,摩擦係数,ジョイントの硬さ,アクチュエータのパラメータ,バックラッシュ,モー ションキャプチャの失敗) Tobin et al. Domain randomization for transferring deep neural networks from simulation to the real world. arXiv:1703.06907, 2017. 37
  26. 3.1 Learning Dexterous In-Hand Manipulation(6) • 計算資源 • 8 NVIDIA

    V100 GPUs • 6144 CPU cores • 50時間 38 OpenAI(2018) Learning Dexterous In-Hand Manipulation
  27. 3.2 Domain Adaptation:例 Using Simulation and Domain Adaptation to Improve

    Efficiency of Deep Robotic Grasping: https://www.youtube.com/watch?v=-k0MdN7vW_M 41
  28. 3.2 Randomized-to-Canonical Adaptation Networks • 本物の画像をsimulatorに近づける • Randomized: Domain Randomizationで使われるようなランダム化された

    シミュレータのデータ • Real:実世界で取ったデータ • Canonical: 生成したい目的の画像(sim) • QT-Opt • 連続空間に対応したQ学習 • Cross Entropy Method(CEM) • Asynchronousに更新できる James et al. Sim-to-Real via Sim-to-Sim: Data-efficient Robotic Grasping via Randomized-to-Canonical Adaptation Networks (2018) arXiv:1812.07252 42
  29. 3.2 RCAN:ロボットと評価手法 • Kuka IIWA • 51000個のShape Netの物体,ランダムに生成した物体で学習 • 102個の未知の物体をグラスピングし,成功率で評価

    • 出力は手先座標と角度とグリッパーの角度(4次元) James et al. Sim-to-Real via Sim-to-Sim: Data-efficient Robotic Grasping via Randomized-to-Canonical Adaptation Networks (2018) arXiv:1812.07252 43
  30. 3.2 RCAN:実験結果 James et al. Sim-to-Real via Sim-to-Sim: Data-efficient Robotic

    Grasping via Randomized-to-Canonical Adaptation Networks (2018) arXiv:1812.07252 44 ・RCANはsim to realで70%の成功を収めた.Domain Randomization より良い結果に ・5000サンプルの現実での追加学習で580,000の現実での成功率を超 えた
  31. 4 今回紹介した手法のまとめ 手法 特徴 実行した現実タス ク 現実サンプルのオー ダー PILCO ガウス過程回帰で不確かさ含めダイナミ

    クスをモデリング Cart-Pole, ブロック積み上げ ~10 GPS 最適なコントローラーから教師あり学習 することでより一般的なポリシーを獲得 ペグインホール, プレイス ~30 DAPG 教示データを活用しつつNPGにより最 適化 バルブ回転 ~100 Soft Actor Critic エントロピー最大化に基づく手法 4足歩行,バルブ回 転 ~500 RCAN Domain Randomizationを教師に,現実 をシミュレーションに適合させる ピッキング 0~5000 Domain Randomization シミュレーションのほとんどの側面をラ ンダム化することでロバストな方策を獲 得させる 腱で駆動される複 雑なロボットハン ドでの立方体の回 転 全てシミュレーショ ン 46 ※ 今回扱った論文の内容に基づいた話
  32. 4: 雑感 • 共通ベンチマークがないので比較・差分が難しい • 扱っているロボット・タスクがバラバラで純粋に手法の評価ができているかは微妙 • 報酬設計が簡単なタスクでしか成功していない気がする • 迅速な意思決定が求められる不安定なタスクには対応していない?

    • ヒューマノイドロボットなどにはまだ適用は難しい? • ハードレベルでの最適化はしないのか? • 生物の進化を考えれば出来合いの身体よりもポリシーに合わせて身体の変化があっても いい気がする • ソフトロボティクス・進化ロボティクスなどの応用 • 無論安いロボットに高性能なソフトを積むことで問題が解決すればそれに越したことはない が… • 安全性・安定性の問題の議論は? • 現実で動く以上強く求められるはず • Adversarial Attack • 説明性の確保の重要性 47
  33. References • Marc Peter Deisenroth and Carl Edward Rasmussen "PILCO:

    A Model-Based and Data-Efficient Approach to Policy Search" International Conference on Machine Learning (ICML), 2011 Marc Peter Deisenroth, Carl Edward Rasmussen and Dieter Fox "Learning to Control a Low-Cost Manipulator Using Data-Efficient Reinforcement Learning " Robotics: Science and Systems (RSS), 2011 Sergey Levine, Chelsea Finn, Trevor Darrell, Pieter Abbeel. "End-to-End Training of Deep Visuomotor Policies" Journal of Machine Learning Research (JMLR) 17, 2016 Aravind Rajeswaran, Vikash Kumar, Abhishek Gupta, Giulia Vezzani, John Schulman, Emanuel Todorov, Sergey Levine "Learning Complex Dexterous Manipulation with Deep Reinforcement Learning and Demonstrations" Robotics: Science and Systems (RSS), 2017 Chelsea Finn, Xin Yu Tan, Yan Duan, Trevor Darrell, Sergey Levine, Pieter Abbeel "Deep Spatial Autoencoders for Visuomotor Learning" IEEE International Conference on Robotics and Automation (ICRA), 2016 Tuomas Haarnoja, Aurick Zhou, Kristian Hartikainen, George Tucker, Sehoon Ha, Jie Tan, Vikash Kumar, Henry Zhu, Abhishek Gupta, Pieter Abbeel, Sergey Levine "Soft Actor-Critic Algorithms and Applications" arXiv:1812.05905, 2018 OpenAI, Marcin Andrychowicz, Bowen Baker, Maciek Chociej, Rafal Jozefowicz, Bob McGrew, Jakub Pachocki, Arthur Petron, Matthias Plappert, Glenn Powell, Alex Ray, Jonas Schneider, Szymon Sidor, Josh Tobin, Peter Welinder, Lilian Weng, Wojciech Zaremba "Learning Dexterous In-Hand Manipulation", arXiv:1808.00177, 2018 Konstantinos Bousmalis, Alex Irpan, Paul Wohlhart, Yunfei Bai, Matthew Kelcey, Mrinal Kalakrishnan, Laura Downs, Julian Ibarz, Peter Pastor, Kurt Konolige, Sergey Levine, Vincent Vanhoucke "Using Simulation and Domain Adaptation to Improve Efficiency of Deep Robotic Grasping" IEEE International Conference on Robotics and Automation (ICRA), 2018 Stephen James, Paul Wohlhart, Mrinal Kalakrishnan, Dmitry Kalashnikov, Alex Irpan, Julian Ibarz, Sergey Levine, Raia Hadsell, Konstantinos Bousmalis "Sim-to-Real via Sim-to-Sim: Data-efficient Robotic Grasping via Randomized-to-Canonical Adaptation Networks" arXiv:1812.07252, 2018 48