Slide 1

Slide 1 text

慶應義塾大学 杉浦孔明研究室 是方諒介 DoorGym: A Scalable Door Opening Environment and Baseline Agent Yusuke Urakami1, Alec Hodgkinson1, Casey Carlin1, Randall Leu1, Luca Rigazio1,2, Pieter Abbeel3 (1Panasonic Beta, 2Totemic Inc., 3University of California Berkeley) NeurIPS 2019 Deep Reinforcement Learning Workshop Yusuke Urakami, Alec Hodgkinson, Casey Carlin, Randall Leu, Luca Rigazio, Pieter Abbeel. "DoorGym: A Scalable Door Opening Environment and Baseline Agent.“ NeurIPS 2019 Deep Reinforcement Learning Workshop.

Slide 2

Slide 2 text

概要 背景 ✓ 「ドア開閉」は生活支援ロボットの基本スキル 提案 ✓ Domain Randomizationに対応したシミュレータ ✓ Unityを用いたphoto-realisticなレンダリング ✓ 強化学習を用いたベースライン手法 結果 ✓ sim2real transferで一定の成功率を達成 2 https://github.com/PSVL/DoorGym/blob/master/imgs/DoorGym.gif

Slide 3

Slide 3 text

背景:「ドア開閉」は生活支援ロボットの基本スキル ◼ 例:Habitat Rearrangement Challenge 2022 (@NeurIPS22) ◼ 物体を初期位置から目標位置へ配置 ◼ 棚や冷蔵庫の開閉を伴うケースも存在 3 https://twitter.com/MetaAI/status/1558213193066983424 https://aihabitat.org/challenge/rearrange_2022/

Slide 4

Slide 4 text

関連研究:頑健性/写実性が不十分 ◼ 強化学習ベースの手法に関心 ◼ 欠点 ✓ 多様な環境設定(ドア/ドアノブ/光の条件)に未対応 ✓ sim2real transferに課題 4 Method Detail [Gu+ ICRA17] 複数のロボット間でアルゴリズム並列化し、学習時間を短縮 [Rajeswaran+ RSS18] 人間による少数のデモ動作を利用し、サンプルの複雑さを軽減 [Gu+ ICRA17] [Rajeswaran+ RSS18]

Slide 5

Slide 5 text

提案手法:DoorGym ◼ Domain Randomizationに対応したドア開閉タスク用シミュレータ ◼ OpenAI Gym [Brockman+ 16] フレームワーク/Unity Game Engineに基づく ◼ 強化学習を用いたベースライン手法を提供 ① ドアノブの中心座標予測 ② 各アクチュエータの行動選択 5 学習パイプライン

Slide 6

Slide 6 text

Domain Randomization:環境の汎化で頑健性向上に寄与 ◼ ドア/ドアノブ/光の条件を多様なパラメータで調整 ◼ XML形式で記述 6 pull / lever / round ランダム化 大きさ/摩擦/光源等の変化

Slide 7

Slide 7 text

Unity Game Engine:レンダリング品質の向上 ◼ 実機への転移のため、よりphoto-realisticな影やテクスチャを実現 7 MuJoCo [Todorov+ IROS12] Unity >

Slide 8

Slide 8 text

Vision Network:2視点画像からドアノブの中心座標を予測 ◼ ResNet, Global Average Pooling, FC層から成るシンプルなネットワーク 入力:ドアの上面/正面の2視点RGB画像 出力:ドアノブの中心座標 (x, y, z) ◼ 損失関数 ① 座標のground truthとの平均二乗誤差 ② heatmap同士の交差エントロピー誤差 8

Slide 9

Slide 9 text

Policy Network:各アクチュエータの行動を選択 ◼ ①と②の差分から得た方向ベクトルと③を連結後、FC層×2 入力:①ドアノブの中心座標、②ハンドの座標、③各関節の座標と速度 出力:各アクチュエータの出力 or トルク ◼ 強化学習アルゴリズム ◼ on-policy:Proximal Policy Optimization (PPO) [Schulman+ CoRR17] ◼ off-policy:Soft Actor Critic (SAC) [Haarnoja+ PMLR18] 9

Slide 10

Slide 10 text

報酬 𝑟𝑡 :行動に応じてGym環境から取得 10 𝑟𝑡 = −𝑎0 𝑑𝑡 − 𝑎1 log 𝑑𝑡 + 𝛼 − 𝑎2 𝑜𝑡 − 𝑎3 𝑢𝑡 2 + 𝑎4 𝜙𝑡 + 𝑎5 𝜓𝑡 𝑑𝑡 :ハンドとドアノブの中心座標との距離 𝑜𝑡 :ハンドの方向とドアノブを掴む理想的な方向との差分 𝑢𝑡 :制御入力 𝜙𝑡 :ドアの開閉角度 𝜓𝑡 :ドアノブの角度(lever, round使用時のみ) 𝑎0 , 𝑎1 , 𝑎2 , 𝑎3 , 𝑎4 , 𝑎5 , 𝛼:ハイパーパラメータ 1回の試行例 https://github.com/PSVL/DoorGym/blob/master/imgs/DoorGym.gif 𝑑𝑡 が小さくなったときの正確性向上 𝑎0 = 𝑎1 = 𝑎2 = 𝑎3 ≪ 𝑎4 < 𝑎5 とすることで、ドア開閉を促す

Slide 11

Slide 11 text

実験設定 (1/2):ドアノブの形状/ハンドの異なる3タスク ◼ Task1 11 https://github.com/PSVL/DoorGym/blob/master/imgs/doorgym_video.gif ◼ Task2 ◼ Task3 pull knob/floating hook lever knob/floating hook pull knob/BLUE-with-gripper

Slide 12

Slide 12 text

実験設定 (2/2):2つの評価指標 ◼ 試行回数:100回(それぞれ異なるドア環境) 12 平均成功率↑:𝑟ASR = 1 100 σ𝑖=1 100 𝕝𝑖 平均実行時間↓:𝑟AT = 1 𝑛 σ𝑖=1 𝑛 𝑡𝑖 𝑡𝑖 :実行時間(成功時のみ) 𝑛:成功回数 𝕝𝑖 = ቊ 1 if 𝜙𝑖 > 0.2 rad and 𝑡𝑖 < 20 0 otherwise 𝜙𝑖 :ドアの開閉角度(pullタスク時のみ) 𝑡𝑖 :実行時間

Slide 13

Slide 13 text

定量的結果 (1/2):最大成功率95%を達成するも、ばらつき大 ◼ Ground Truth Position:シミュレータから得られる値を利用 ◼ + 𝑁(0, 𝜎):PPOのpretraining時に、Vision Networkの誤差を考慮するためのノイズ ◼ 考察 ✓ pull knobよりlever knobの難易度が高い ✓ 学習により時間を要するPPOが、SACより優位 ✓ Vision Networkの利用で 𝑟ASR が低下 -> ドアノブの座標予測精度が重要 13

Slide 14

Slide 14 text

定量的結果 (2/2):実機への転移を実現 ◼ zero-shotのsim2real transfer ◼ ドアノブの形状:pull knob ◼ ハンド:Baxter (gripper) ◼ 強化学習アルゴリズム:PPO ◼ 考察 ✓ 成功率が低下するものの、過半数の割合を維持 ✓ 実行時間が約3.5倍増加 14 https://github.com/PSVL/DoorGym/blob/master/imgs/baxter.gif

Slide 15

Slide 15 text

まとめ 背景 ✓ 「ドア開閉」は生活支援ロボットの基本スキル 提案 ✓ Domain Randomizationに対応したシミュレータ ✓ Unityを用いたphoto-realisticなレンダリング ✓ 強化学習(PPO, SAC)を用いたベースライン手法 結果 ✓ sim2real transferで一定の成功率を達成 15 https://github.com/PSVL/DoorGym/blob/master/imgs/DoorGym.gif

Slide 16

Slide 16 text

Appendix:Ablation Study ◼ Domain Randomizationの頑健性向上への寄与を調査 ◼ 考察 ✓ 単一環境で学習した場合、ランダムな環境で成功率が大幅に低下 ✓ ランダムな環境で学習した場合、頑健性が向上 16

Slide 17

Slide 17 text

Appendix:sim2real transferにおけるMuJoCoとUnityの定量的比較 ◼ ドアノブの中心座標の予測における誤差を比較 ◼ 考察 ✓ Domain Randomizationだけではなく、Unityも頑健性向上に寄与 17 Sim2real transferに用いたドアノブ

Slide 18

Slide 18 text

Appendix:PPOにおける全36通りの定量的結果 ◼ 2 × 6 × 3 = 36(通り) ◼ 開閉 × ハンドの種類 × ドアノブの形状 18

Slide 19

Slide 19 text

Appendix:SACにおける全36通りの定量的結果 19 ◼ 2 × 6 × 3 = 36(通り) ◼ 開閉 × ハンドの種類 × ドアノブの形状

Slide 20

Slide 20 text

Appendix:学習のハイパーパラメータ ◼ PPO 20 ◼ SAC

Slide 21

Slide 21 text

Appendix:Domain Randomizationのパラメータ ◼ 3種類に大別 ① Door Physical, ② Robot Physical, ③ Vision 21