๐From Simple to Complex Skills ๋ฆฌ๋ทฐ
Haozhi Qi, Brent Yi, Mike Lambeta, Yi Ma, Roberto Calandra, Jitendra Malik
- ๐ค In-hand object reorientation ์์ ์ ์ํด, ๋ณธ ๋ ผ๋ฌธ์ ๋ฏธ๋ฆฌ ํ์ต๋ ์ ์์ค skill๋ค์ ์ฌ์ฌ์ฉํ๋ ๊ณ์ธต์ ์ ์ฑ (hierarchical policy)์ ์ ์ํ์ฌ sim-to-real gap๊ณผ ํ์ต ํจ์จ์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
- ๐ฆพ ๋ํ, ์์คํ ์ ์ผ๋ฐํ ๊ฐ๋ฅํ ๊ฐ์ฒด ์์ธ ์ถ์ ๊ธฐ(generalizable object pose estimator)๋ฅผ ๋์ ํ๋ฉฐ, ์ด๋ ์ ์์ค skill ์ ์ฑ ์ ํผ๋๋ฐฑ๊ณผ ์์ฌ ๋์(residual action)์ ํ์ฉํ์ฌ ๋ณต์กํ ์กฐ์ ํ๊ฒฝ์์ ์ ํํ ์์ธ ์ถ์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- โจ ์คํ ๊ฒฐ๊ณผ, ์ ์๋ ์ ๊ทผ ๋ฐฉ์์ scratch๋ถํฐ ํ์ตํ๋ baseline๋ณด๋ค ๋ ๋น ๋ฅด๊ฒ ์๋ ดํ๊ณ ๋์ ์ฑ๋ฅ์ ๋ณด์ด๋ฉฐ, ๋ค์ํ ๊ฐ์ฒด์ ๋ํ ํ์ค ์ธ๊ณ sim-to-real transfer์์ ๊ฐ๋ ฅํ ๊ฒฌ๊ณ ํจ๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ์ ์ฆํ์ต๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
์ด ๋ ผ๋ฌธ์ ๋ก๋ด์ In-Hand Object Reorientation์ด๋ผ๋ ๋ณต์กํ ์์ ์ ์ํํ๊ธฐ ์ํด ๊ธฐ์กด์ ํ์ต๋(pre-trained) ์ ์์ค(low-level) ์คํฌ์ ์ฌ์ฌ์ฉํ๋ ๊ณ์ธต์ ์ ์ฑ (hierarchical policy) ์์คํ ์ ์ ์ํฉ๋๋ค. ์๋ฎฌ๋ ์ด์ ์์ ์ ์ฑ ์ ํ์ตํ๊ณ ์ค์ ์ธ๊ณ๋ก ์ ์ด(transfer)ํ๋ ๊ฒ์ด dexterous manipulation์์ ์ ๋งํ ์ ๊ทผ ๋ฐฉ์์ด์ง๋ง, ๊ฐ ์๋ก์ด ์์ ์ ๋ํด sim-to-real gap์ ๋ฉ์ฐ๋ ๋ฐ์๋ reward engineering, hyperparameter tuning, system identification๊ณผ ๊ฐ์ ์๋นํ ์ธ๊ฐ์ ๋ ธ๋ ฅ์ด ํ์ํฉ๋๋ค. ๋ณธ ์ฐ๊ตฌ๋ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ณ์ธต์ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค.
ํต์ฌ ๋ฐฉ๋ฒ๋ก (Core Methodology):
๋ณธ ์์คํ ์ ๋ ๊ฐ์ง ์ฃผ์ ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค: Planner Policy (\pi_{plan})์ Skill Policy (\pi_{skill}).
- Skill Policy (\pi_{skill}):
- ์ด๊ฒ์ ๋ฏธ๋ฆฌ ํ์ต๋ ์ ์์ค ์คํฌ๋ก, In-Hand Object Rotation ์ ์ฑ [6]์ ๊ธฐ๋ฐํฉ๋๋ค. ํน์ ํ์ ์ถ k์ ๋ํด ๊ฐ์ฒด๋ฅผ ํ์ ์ํค๋ ๋ฐฉ๋ฒ์ ํ์ตํฉ๋๋ค.
- \pi_{skill}์ ์ ๋ ฅ o_{skill_t}๋ ๋ก๋ด์ ๊ณ ์ ์์ฉ์ฑ(proprioception) ์ ๋ณด (๊ด์ ์์น \theta_{t-T:t} ๋ฐ ๋ช ๋ น๋ ๊ด์ ๋ชฉํ a_{skill_{t-T-1:t-1}})์ RGB-D ์นด๋ฉ๋ผ์์ ์ป์ ๊น์ด ์ด๋ฏธ์ง(depth image) ์๋ฒ ๋ฉ d_{t-T:t}๋ฅผ ํฌํจํ๋ ์๊ฐ์ ์ํ์ค(temporal sequence)์ ๋๋ค (์ฌ๊ธฐ์ T=30 ํ์์คํ ์ ๊ธฐ๋ก์ ์ฌ์ฉ).
- \pi_{skill}์ ๋ก๋ด์ ๋ํ ์์ ๊ด์ ์์น ๋ชฉํ(raw joint position targets) a_{skill_t}๋ฅผ ์ถ๋ ฅํ๋ฉฐ, ์ถ๊ฐ์ ์ผ๋ก ๊ฐ์ฒด์ ๋ฌผ๋ฆฌ์ ์์ฑ๊ณผ ํํ๋ฅผ ๋ํ๋ด๋ ํน์ง ๋ฒกํฐ z_t๋ฅผ ์ถ๋ ฅํฉ๋๋ค. ์ด z_t๋ ๊ณ ์์ค(high-level) ์ ์ฑ ์ ๋ํ ํผ๋๋ฐฑ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. z_t๋ ์๊ฐ ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ฒด์ ๊ธฐํํ์ ์ ๋ณด๋ฅผ ์ธ์ฝ๋ฉํฉ๋๋ค.
- Planner Policy (\pi_{plan}):
- ์ด๊ฒ์ ๊ณ ์์ค ์ ์ฑ ์ผ๋ก, a_{plan_t} = \pi_{plan}(o_{plan_t}, q_{goal_t}, z_t)์ ๊ฐ์ด ์ ์๋ฉ๋๋ค.
- \pi_{plan}์ ์
๋ ฅ o_{plan_t}๋ ๋ค์๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค:
- ๊ฐ์ฒด์ ์ํ ์ํ์ค s_{t-5:t} (3D ์์น p_t ๋ฐ ๋จ์ ์ฟผํฐ๋์ธ(unit quaternion) q_t๋ก ํํ๋ ๋ฐฉํฅ).
- ๊ฐ์ฒด์ ๋ชฉํ ๋ฐฉํฅ ์ฌ์ด์ ์๋์ ๋ณํ \zeta_{t-5:t} = \Delta(q_t, q_{goal_t}) = q_{goal_t} \cdot \bar{q}_t.
- ์ด์ ํ์์คํ ์ planner action a_{plan_{t-6:t-1}}.
- ๊ฐ์ฅ ์ค์ํ ๊ฒ์, ์ ์์ค ์คํฌ ์ ์ฑ ์ธ \pi_{skill}์์ ์ ๊ณตํ๋ ํผ๋๋ฐฑ z_t์ ๋๋ค. ์ด๋ \pi_{plan}์ด ์ ์์ค ์คํฌ์ ๋ฐ์์ ์ธ์งํ๊ณ ์ค๋ฅ๋ฅผ ์์ ํ๋ ๋ฐ ๋์์ ์ค๋๋ค.
- \pi_{plan}์ 3๊ณ์ธต MLP(Multi-Layer Perceptron) ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉฐ, ELU(Exponential Linear Unit) ํ์ฑํ ํจ์๋ฅผ ๊ฐ์ง๋๋ค.
- \pi_{plan}์ ์ถ๋ ฅ์ 7์ฐจ์ ๋ฒ์ฃผํ ๋ถํฌ(categorical distribution)๋ก, ์ฌ์ฏ ๊ฐ์ ์ ๊ท ํ์ ์ถ (\pm x, \pm y, \pm z) ์ค ํ๋์ ์ถ๊ฐ์ ์ธ STOP ๋ช ๋ น์ ํด๋นํฉ๋๋ค. ์ฟผํฐ๋์ธ์ ๋คํธ์ํฌ ์ ๋ ฅ ์ 6D representations์ผ๋ก ๋ณํ๋ฉ๋๋ค.
- Residual Actions (a_{rest}): \pi_{plan}์ ์ ํ๋ ํ์ ์ถ ์ธ์, ์ ์์ค ์คํฌ์ ์ถ๋ ฅ์ ๋ณด์์ ์ธ ์์ฌ ๋์(residual action) a_{rest}๋ฅผ ์ถ๋ ฅํฉ๋๋ค. ์ต์ข ์ ์ผ๋ก ๋ก๋ด์๊ฒ ์ ๋ฌ๋๋ ๋์์ a_t = a_{rest} + a_{skill_t}์ ๋๋ค. ์ด a_{rest}๋ planner policy๊ฐ low-level skill์ ํ๊ณ๋ฅผ ๋ณด์ํ๊ณ ์ถ๊ฐ์ ์ธ ์ค๋ฅ ๋ณด์ ์ ์ํํ ์ ์๋๋ก ํฉ๋๋ค.
ํ์ต ๋ฐ ๋ณด์:
- \pi_{plan}์ ์๋ฎฌ๋ ์ดํฐ์์ ์ ๊ณต๋๋ ground-truth ๊ฐ์ฒด ์ํ q_t๋ฅผ ์ฌ์ฉํ์ฌ ํ์ต๋ฉ๋๋ค.
- ๋ณด์ ํจ์๋ r = 1/(d(q_t, q_{goal_t}) + \epsilon) + \lambda_s \mathbb{1}(Success)๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ฌ๊ธฐ์ d(q_t, q_{goal_t})๋ ํ์ ๊ฑฐ๋ฆฌ ๋ณด์์ด๋ฉฐ, \mathbb{1}(Success)๋ ์ฑ๊ณต ๋ณด๋์ค์ ๋๋ค. ๊ธฐ์กด ์ฐ๊ตฌ์ ๋นํด ๋ณด์ ํจ์๊ฐ ํจ์ฌ ๋จ์ํ๋ฉฐ, ์ด๋ ์ ์์ค ์คํฌ์ด ์ด๋ฏธ ์ ํ๋๋์ด ์๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฅํฉ๋๋ค.
Generalizable State Estimator:
- ์ค์ ์ธ๊ณ๋ก ์ ์ฑ ์ ์ ์ดํ๊ธฐ ์ํด, ์์คํ ์ ๊ฐ๊ฑดํ ๊ฐ์ฒด ์์ธ ์ถ์ ๊ธฐ(pose estimator)๋ฅผ ํ์๋ก ํฉ๋๋ค.
- ์ ์๋ ์์ธ ์ถ์ ๊ธฐ๋ ์ ๊ฒฝ๋ง \phi๋ก ๊ตฌํ๋ ์ฌ๊ท์ ์ํ ์ถ์ ๊ธฐ(recursive state estimator)์ ๋๋ค.
- ์ ๋ ฅ์ ๊ณ ์ ์์ฉ์ฑ, ๋์, ์ ์ด ์ค๋ฅ, ์ ์์ค ์คํฌ ํผ๋๋ฐฑ(z_t), ๊ทธ๋ฆฌ๊ณ ์ด์ ์ ์ถ์ ๋ ๊ฐ์ฒด ์ํ ์ํ์ค์ ๋๋ค.
- \phi๋ ๋ค์ ํ์์คํ ์ ๊ฐ์ฒด ์ํ \hat{s}_t๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
- ์ด ์ถ์ ๊ธฐ๋ Transformer ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ฉฐ, ํน์ง ์ํ์ค f_t = [q_t, a_{t-1}, q_t - a_{t-1}, \hat{s}_{t-1}, z_t]๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ \hat{s}_t๋ฅผ ์์ธกํฉ๋๋ค.
- ํ์ต์ ์๋ฎฌ๋ ์ด์ ์์ \pi_{plan}์ ์ฌ์ฉํ์ฌ ๋กค์์(rollout)ํ๋ฉฐ, ์์ธก๋ ์ฟผํฐ๋์ธ๊ณผ ground-truth ์ฟผํฐ๋์ธ ์ฌ์ด์ ํ์ ๊ฑฐ๋ฆฌ๊ฐ 0.8 ๋ผ๋์์ ์ด๊ณผํ๊ฑฐ๋ ์์ธก๋ ๊ฐ์ฒด ์์น๊ฐ 3cm ์ด์ ๋ฒ์ด๋๋ฉด ์ํผ์๋๋ฅผ ๋ฆฌ์ ํ๋ ๋ฐฉ์์ผ๋ก \ell_2 distance๋ฅผ ์ต์ํํฉ๋๋ค.
์คํ ๋ฐ ๊ฒฐ๊ณผ:
- ์ ์ฑ ํ์ต ์ฑ๋ฅ: ์ ์์ค ์คํฌ์ ์ฌ์ฉํ ๊ณ์ธต์ ์ ์ฑ ์ ํ์ต์์ scratch๋ถํฐ ํ์ตํ๋ baseline ์ ์ฑ ๋ณด๋ค 8๋ฐฐ ๋ ๋น ๋ฅด๊ฒ ์๋ ดํ๋ฉฐ, ๋ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํฉ๋๋ค. ํนํ ๊ฐ์ฒด ์ํ ์ ๋ณด์ ๋ ธ์ด์ฆ๊ฐ ์ฆ๊ฐํ ์๋ก baseline์ ๋ถ์์ ํด์ง๊ณ ์๋ ด์ ์คํจํ๋ ๋ฐ๋ฉด, ์ ์๋ ๋ฐฉ๋ฒ์ ์์ ์ ์ธ ์ฑ๋ฅ์ ์ ์งํฉ๋๋ค. ์ด๋ ๋ฏธ๋ฆฌ ํ์ต๋ ๋ชจ๋ธ์ด ํ์ ๊ณต๊ฐ์ ๊ตฌ์กฐํํ๊ณ ์๋ฏธ ์๋ ๋ฌด์์ ํ๋์ ์ค์ฌ์ฃผ๊ธฐ ๋๋ฌธ์ ๋๋ค.
- Out-of-Distribution Robustness: ์ ์๋ ์ ์ฑ ์ ๊ด์ธก ๋ ธ์ด์ฆ, ๋ฌผ๋ฆฌ์ ๋ฌด์์ํ(physical randomizations), ๊ฐ์ฒด ํํ ๋ณํ์ ๊ฐ์ out-of-distribution ์๋๋ฆฌ์ค์์ baseline๋ณด๋ค ํจ์ฌ ๊ฐ๊ฑดํจ์ ๋ณด์ฌ์ค๋๋ค.
- Generalizable State Estimation: ํ์ต๋ ์์ธ ์ถ์ ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ, ์๋ฎฌ๋ ์ด์ ์์ ์์ธก๋ ๊ฐ์ฒด ์ํ๋ฅผ ๋ฐํ์ผ๋ก ์ค์ ์ธ๊ณ์ ์ ์ฑ ์ ์ฑ๊ณต์ ์ผ๋ก ์ ์ดํฉ๋๋ค. ์ ์๋ ๋ฐฉ๋ฒ์ baseline๋ณด๋ค policy smoothness์ energy metrics์์ ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์ฌ, ๋ ์์ ์ ์ธ ๊ฐ์ฒด ์กฐ์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- Ablation Experiments:
- Residual Actions ๋ฐ Low-Level Skill Feedback: ์ด ๋ ์์๊ฐ ์์ผ๋ฉด ์ฑ๋ฅ์ด ํฌ๊ฒ ์ ํ๋ฉ๋๋ค. Residual actions๋ ๋ฏธ์ธํ ์ค๋ฅ ๋ณด์ ์ ์ ๊ณตํ๊ณ , z_t๋ฅผ ํตํ ์ ์์ค ์คํฌ ํผ๋๋ฐฑ์ \pi_{plan}์ด low-level skill์ ๋ด๋ถ ์ํ์ ๊ฐ์ฒด ์์ฑ์ ์ดํดํ๋ ๋ฐ ํ์์ ์์ ์ ์ฆํฉ๋๋ค.
- Planner Policy Inputs: ์ฟผํฐ๋์ธ ์ฐจ์ด๋ง ์ฌ์ฉํ๋ ๊ฒ๋ถํฐ ์์ํ์ฌ, ๊ฐ์ฒด ์์น, ๊ด์ธก ๊ธฐ๋ก, ์ด์ planner actions, ๊ทธ๋ฆฌ๊ณ ๊ณ ์ ์์ฉ์ฑ ์ ๋ณด๋ฅผ ์์ฐจ์ ์ผ๋ก ์ถ๊ฐํ๋ฉด์ ์ ์ฑ ์ฑ๋ฅ์ด ์ ์ง์ ์ผ๋ก ํฅ์๋จ์ ๋ณด์ฌ์ค๋๋ค. ์ด๋ planner์ ์ ์์ค ์คํฌ ์ ์ฑ ๊ฐ์ closed-loop feedback์ ์ค์์ฑ์ ๊ฐ์กฐํฉ๋๋ค.
- ์ค์ ์ธ๊ณ ์คํ: Allegro Hand ๋ก๋ด์ ์ฌ์ฉํ์ฌ ํ๋ จ ๋ฐ์ดํฐ์ ์์๋ (out-of-distribution) 6๊ฐ์ง ๋ค์ํ ์ค์ ๊ฐ์ฒด์ ๋ํด ์ฑ๊ณต์ ์ธ in-hand reorientation์ ์์ฐํ์ต๋๋ค. ํนํ ์์ ํ๋ธ์ ๊ฐ์ ์กฐ์ํ๊ธฐ ์ด๋ ค์ด ๊ฐ์ฒด์๋ ์ ์ผ๋ฐํ๋๋ ๋ชจ์ต์ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
๊ฒฐ๋ก ๋ฐ ํ๊ณ:
๋ณธ ์ฐ๊ตฌ๋ ๋ฏธ๋ฆฌ ํ์ต๋ ์ ์์ค ์คํฌ์ ํ์ฉํ์ฌ in-hand object reorientation์ ์ํ ๊ณ์ธต์ ์ ์ฑ ์ ๊ตฌ์ถํ๊ณ , ๊ฐ๊ฑดํ๊ณ ์ผ๋ฐํ ๊ฐ๋ฅํ ์ํ ์ถ์ ๊ธฐ๋ฅผ ํ์ตํจ์ผ๋ก์จ, ํ๋ จ ํจ์จ์ฑ, ๊ฐ๊ฑด์ฑ, ์ผ๋ฐํ ๊ฐ๋ฅ์ฑ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์์ ์ ์ฆํ์ต๋๋ค. ํ๊ณ์ ์ผ๋ก๋ ์ ์์ค ์ ์ฑ ์ ํจ๊ณผ์ฑ์ ์์กดํ๋ฉฐ, ์๊ฐ๋ฝ๊ณผ ๊ฐ์ฒด ์ฌ์ด์ ๋ฏธ๋๋ฌ์ง(slipping)์ด ๋ฐ์ํ์ง ์๋๋ค๋ ๊ฐ์ ์ด ์์ต๋๋ค. ๋ํ, ํ์ฌ ์์ธ ์ถ์ ์ค์ฐจ๊ฐ ์๊ฐ์ ๋ฐ๋ผ ๋์ ๋ ์ ์์ต๋๋ค. ํฅํ ์ฐ๊ตฌ๋ก๋ ์ด๊ฐ ์ผ์(tactile sensing)๋ฅผ ํตํฉํ๊ณ ์๊ฐ(vision)๊ณผ ์ด๊ฐ(touch)์ ๊ฒฐํฉํ์ฌ ์ ํํ๊ณ ์ฅ๊ธฐ์ ์ธ ์์ธ ์ถ์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๋ฐฉํฅ์ ์ ์ํฉ๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
- Planner๊ฐ ์ ์์ค ์ ์ฑ ์ ํผ๋๋ฐฑ์ ๋ฐ์ residual action์ผ๋ก ์ค์ฐจ๋ฅผ ๋ณด์ ํ๋ ๊ตฌ์กฐ๊ฐ ํต์ฌ
- ๊ณ ์ ์์ฉ๊ฐ๊ฐ ํผ๋๋ฐฑ๊ณผ ์ ์์ค ์คํฌ ์์ธก์ ํ์ฉํ ์ผ๋ฐํ ๊ฐ๋ฅํ ๋ฌผ์ฒด pose estimator ์ ์
- Easy ์กฐ๊ฑด์์ baseline๊ณผ ๋๋ฑํ ์ฑ๋ฅ์ ๋ณด์ด๋ฉด์ ์๋ ด ์๋ 8๋ฐฐ ํฅ์
- Distribution shift ์กฐ๊ฑด์์ baseline์ด ์์ ์คํจํ๋ ๋ฐ๋ฉด ๋ณธ ๋ฐฉ๋ฒ์ 80% ์ฑ๊ณต๋ฅ ์ ์ง
- ์ค์ ํ๊ฒฝ์์ 6๊ฐ์ง ๋ค์ํ ๋ฌผ์ฒด๋ก ํ ์คํธ, 37.5%~93.3% ์ฑ๊ณต๋ฅ ๋ฌ์ฑ
- ๋์นญ์ ์ด๊ณ ํ ์ค์ฒ๊ฐ ์๋ ๋ฌผ์ฒด์ ์กฐ์๋ ์ง์