graph LR
A[์ฌ๋ ๋น๋์ค] --> B[1๋จ๊ณ: ์ฐธ์กฐ ๊ถค์ ์ถ์ถ]
B --> C[2๋จ๊ณ: ๊ถค์ ๊ฐ์ด๋ RL๋ก<br/>์ํ ๊ธฐ๋ฐ ์ ์ฑ
ํ์ต]
C --> D[3๋จ๊ณ: ์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ
ํ์ต<br/>BC ๋๋ Diffusion Policy]
D --> E[์ต์ข
์๊ฐ ์ ์ฑ
]
style A fill:#e1f5ff
style B fill:#fff5e1
style C fill:#ffe1f5
style D fill:#e1ffe1
style E fill:#ffe1e1
๐ViViDex ๋ฆฌ๋ทฐ
๐ Ping. ๐ Ring. โ๏ธ Dig. A tiered review series: quick look, key ideas, deep dive.
- Paper Link
- Project LInk
- Code:Sapein, Mujoco
- ๋ค์ํ ์์ธ์ ์ฌ๋ฌ ๋ฌผ์ฒด๋ฅผ ์กฐ์ํ๋ ๋ค์ง ๋ก๋ด ์์ ์ํ ํตํฉ๋ ๋น์ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ธ๊ฐ ๋น๋์ค๋ก๋ถํฐ ํ์ตํ๋ ViViDex ํ๋ ์์ํฌ๋ฅผ ์ ์ํฉ๋๋ค.
- ViViDex๋ ์ธ๊ฐ ๋น๋์ค์์ ์ถ์ถ๋ ๊ถค์ ์ ๊ถค์ ์๋ด ๋ณด์์ผ๋ก ์ฌ์ฉํ์ฌ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ํ๋ จํ๊ณ , ์ด ์ฑ๊ณต์ ์ธ ์ํผ์๋๋ค์ ํ์ฉํ์ฌ ํน๊ถ ์ ๋ณด ์์ด ํตํฉ๋ ์๊ฐ ์ ์ฑ ์ ํ์ตํฉ๋๋ค.
- ์คํ ๊ฒฐ๊ณผ, ViViDex๋ ๊ธฐ์กด ์ต์ฒจ๋จ ๋ฐฉ์์ ๋ฐ์ด๋๋ ์ฑ๋ฅ์ ๋ณด์ด๋ฉฐ, ๋ ์ ์ ์ธ๊ฐ ์์ฐ ๋น๋์ค๋ง์ผ๋ก๋ ๋ค์ํ ์กฐ์ ์์ ์ ์ํํ๊ณ ๋ฏ์ ๋ฌผ์ฒด์ ๋ํ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ์ค์ ๋ก๋ด ํ๊ฒฝ์์๋ ์ ์ฆํ์ต๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
์ด ๋ ผ๋ฌธ์ ์ธ๊ฐ ๋น๋์ค๋ก๋ถํฐ ๋ค์ง(multi-fingered) ๋ก๋ด ํธ๋์ vision-based Dexterous Manipulation ์ ์ฑ ์ ํ์ตํ๊ธฐ ์ํ ์๋ก์ด ํ๋ ์์ํฌ์ธ ViViDex๋ฅผ ์ ์ํฉ๋๋ค. ๊ธฐ์กด ์ฐ๊ตฌ๋ค์ ์ธ๊ฐ ๋น๋์ค์์ ์ถ์ถ๋ ๊ถค์ ์ ๋ ธ์ด์ฆ์ ์ง์ ์ง์ค ๊ฐ์ฒด ์ํ(ground-truth object states)์ ๊ฐ์ ํน๊ถ ๊ฐ์ฒด ์ ๋ณด(privileged object information)์ ๋ํ ์์กด์ฑ ๋๋ฌธ์ ์ฑ๋ฅ ํฅ์์ ์ ํ์ด ์์์ต๋๋ค. ViViDex๋ ์ด๋ฌํ ํ๊ณ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ธ ๊ฐ์ง ๋ชจ๋๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ฒซ ๋ฒ์งธ ๋ชจ๋์ Reference Trajectory Extraction์ ๋๋ค. ์ด ๋ชจ๋์ ์ธ๊ฐ ๋น๋์ค์์ ์ฌ๋์ ์๊ณผ ๊ฐ์ฒด์ ํฌ์ฆ(poses)๋ฅผ ์ถ์ถํ์ฌ ๋ก๋ด ํธ๋ ๊ถค์ ์ ๋ ํผ๋ฐ์ค๋ก ํ์ฉํฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์ฌ๋ ์์ ํฌ์ฆ์ ๋ชจ์์ MANO ๋ชจ๋ธ(\psi_h \in \mathbb{R}^{21 \times 3})๋ก ํํ๋๋ฉฐ, ์ด๋ฅผ ๋ก๋ด ํธ๋ ํฌ์ฆ๋ก ๋ฆฌํ๊ฒํ (retargeting)ํฉ๋๋ค. ์ด ๊ณผ์ ์ ๋ค์ ์ต์ ํ ๋ฌธ์ ๋ก ์ ์๋ฉ๋๋ค: \min_{q_t^r} \sum_{t=1}^T \Vert \hat{x}_{t,j}^r(q_t^r) - \psi_{t,j}^h \Vert_2^2 + \alpha \Vert q_t^r - q_{t-1}^r \Vert_2^2 ์ฌ๊ธฐ์ q_t^r๋ ๋ก๋ด ๊ด์ ํ์ ๊ฐ๋, \psi_{t,j}^h๋ ์ฌ๋ ์ ๋๊ณผ ์ค๊ฐ ์๊ฐ๋ฝ ๊ด์ ์์น, \hat{x}_{t,j}^r๋ ๋ก๋ด ๊ด์ ์์น๋ฅผ ๋ํ๋ ๋๋ค. ์ด ์ต์ ํ๋ฅผ ํตํด ๋ก๋ด๊ณผ ๊ฐ์ฒด์ ๋ชจ์ ์ ์๋ฎฌ๋ ์ดํฐ๋ก ๊ฐ์ ธ์ ์๊ฐ์ ์ผ๋ก๋ ๊ทธ๋ด๋ฏํ์ง๋ง ๋ฌผ๋ฆฌ์ ์ผ๋ก๋ ์์ง ํ๋นํ์ง ์์ ๋ ํผ๋ฐ์ค ๊ถค์ ์ ์์ฑํฉ๋๋ค.
๋ ๋ฒ์งธ ๋ชจ๋์ Trajectory-guided State-based Policy Learning์
๋๋ค. ์ด ๋ชจ๋์์๋ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๊ถค์ ์ ๋ณต๊ตฌํ๊ธฐ ์ํด ๋ ํผ๋ฐ์ค ๊ถค์ ์ ๋ณด์ ํจ์(reward function)์ ํ์ฉํ์ฌ ๊ฐํ ํ์ต(RL)์ผ๋ก state-based policy๋ฅผ ํ๋ จํฉ๋๋ค. state-based policy์ ๋คํธ์ํฌ ์ํคํ
์ฒ๋ ์กํฐ(actor) ๋ฐ ํฌ๋ฆฌํฑ(critic) MLP๋ก ๊ตฌ์ฑ๋๋ฉฐ, ๋ก๋ด๊ณผ ๊ฐ์ฒด ์ํ๋ฅผ ์
๋ ฅ๋ฐ์ ๋ก๋ด ์ ์ด ๋ช
๋ น์ ์์ธกํฉ๋๋ค. ๋ณด์ ํจ์๋ pre-grasp ๋จ๊ณ์ manipulation ๋จ๊ณ๋ก ๋๋ฉ๋๋ค. pre-grasp ๋จ๊ณ์์๋ ๋ก๋ด์ด ๋ฌผ๋ฆฌ์ ์ ์ด ์์ด ๊ฐ์ฒด์ ์ ๊ทผํด์ผ ํ๋ฉฐ, ์ฌ๋๊ณผ ์ ์ฌํ๊ฒ ์ ๊ทผํ๋๋ก ๋ค์ ๋ณด์์ ์ฌ์ฉํฉ๋๋ค: R_p = \sum_{t=1}^{T_p} 10 \cdot \exp(-10 \cdot \Vert x_{t,rt}^r(q_t^r) - \hat{x}_{t,rt}^r \Vert_2^2) ์ฌ๊ธฐ์ T_p๋ pre-grasp ๋จ๊ณ์ ๊ธธ์ด, \hat{x}_{t,rt}^r๋ ๋ ํผ๋ฐ์ค ๊ถค์ ์ ๋ก๋ด ์๊ฐ๋ฝ ๋ ์์น, x_{t,rt}^r๋ ํ์ฌ ๋ก๋ด ์๊ฐ๋ฝ ๋ ์์น์
๋๋ค. manipulation ๋จ๊ณ์์๋ ๊ฐ์ฒด๋ฅผ ์ํ๋ ํ๊ฒ ์ค์ (target configuration)์ผ๋ก ์กฐ์ํ๋ ๊ฒ์ด ๋ชฉํ์ด๋ฉฐ, ๋ก๋ด ๋ฐ ๊ฐ์ฒด ๋ชจ์
์ ํจ๊ป ์ ์ฝํ๋ ๋ค์ ๋ณด์์ ์ฌ์ฉํฉ๋๋ค: R_m = \sum_{t=T_p+1}^{T_r} \lambda_1 R_m^h + \lambda_2 R_m^o + \lambda_3 \mathbb{1}_{\text{cont}} + \lambda_4 \mathbb{1}_{\text{lift}} ์ฌ๊ธฐ์ T_r์ ๋ ํผ๋ฐ์ค ๊ถค์ ์ ๊ธธ์ด์
๋๋ค. R_m^h๋ ์ ๋ชจ์
์ ์ ์ฝํ๊ณ , R_m^o = \exp(-\alpha_1(\Vert x_t^o - \hat{x}_t^o \Vert_2^2 + \alpha_2 \phi(\theta_t^o, \hat{\theta}_t^o)))๋ ๊ฐ์ฒด ๋ชจ์
์ ์ ์ฝํฉ๋๋ค. x_t^o, \hat{x}_t^o๋ ํ์ฌ ๋ฐ ๋ ํผ๋ฐ์ค ๊ฐ์ฒด ์์น, \phi(\cdot)๋ ๊ฐ์ฒด ๋ฐฉํฅ์ ๊ฐ๋ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํฉ๋๋ค. \mathbb{1}_{\text{cont}}๋ ๊ฐ์ฒด์ ์ ์ดํ๋ ์๊ฐ๋ฝ ๋์ ์, \mathbb{1}_{\text{lift}}๋ ๊ฐ์ฒด๊ฐ ํ
์ด๋ธ์์ ๋ค์ด ์ฌ๋ ค์ก์ ๋ ๋ณด๋์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ, ๋ค์ํ ์ด๊ธฐ ๊ฐ์ฒด ์์น, ํ์ , ํ๊ฒ ์์น์ ์ผ๋ฐํํ๊ธฐ ์ํด ๋ ํผ๋ฐ์ค ๊ถค์ ์ฆ๊ฐ(reference trajectory augmentation) ์ ๋ต์ ๋์
ํฉ๋๋ค.
์ธ ๋ฒ์งธ ๋ชจ๋์ Unified Vision-based Policy Learning์
๋๋ค. state-based policy๋ ๋ก๋ด ๊ณ ์ ์ํ(robot proprioceptive states)์ ๊ฐ์ฒด ์ํ๋ฅผ ์
๋ ฅ์ผ๋ก ์๊ตฌํ์ง๋ง, ์ค์ ํ๊ฒฝ์์๋ ๊ฐ์ฒด ์ํ๋ฅผ ์ ๋ขฐ์ฑ ์๊ฒ ์ถ์ ํ๊ธฐ ์ด๋ ต์ต๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด, ์ต์ ํ๋ state-based policy์ ์ฑ๊ณต์ ์ธ ์ํผ์๋๋ฅผ ๋กค์์(rollout)ํ์ฌ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๊ถค์ ๊ณผ ๊น์ด ์นด๋ฉ๋ผ(depth camera)์์ ๋ ๋๋ง๋ 3D Scene Point Cloud(PC_w \in \mathbb{R}^{N \times 3})๋ฅผ ์์งํ๊ณ , ์ด๋ฅผ ์ด์ฉํ์ฌ visual policy๋ฅผ ํ๋ จํฉ๋๋ค. visual policy์ ์ฑ๋ฅ์ ํฅ์์ํค๊ธฐ ์ํด, ์
๋ ฅ 3D Point Cloud(PC_w)๋ฅผ target coordinate system(PC_t)๊ณผ hand-centered coordinate system(์๋ฐ๋ฅ ๋ฐ ์๊ฐ๋ฝ ๋ ๊ด์ ์ขํ๊ณ)์ผ๋ก ๋ณํํ๋ coordinate transformation์ ์ ์ํฉ๋๋ค. ์ด๋ ๊ฒ ๋ณํ๋ Point Cloud ํํ(PC \in \mathbb{R}^{N \times 3(j+3)})๊ณผ ๋ก๋ด ๊ณ ์ ์ํ๋ฅผ PointNet [76]์ ์
๋ ฅํ์ฌ ์๊ฐ์ ํน์ง์ ์ถ์ถํ๊ณ , ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ก๋ด ์ ์ด ๋ช
๋ น์ ์์ธกํฉ๋๋ค. visual policy๋ behavior cloning (BC) ๋๋ ์ต๊ทผ ์ ์๋ 3D Diffusion Policy [77, 78]๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ จ๋ฉ๋๋ค.
์คํ์ relocate, pour, place inside ์ธ ๊ฐ์ง ์กฐ์ ์์
์ ๋์์ผ๋ก ์๋ฎฌ๋ ์ด์
(Adroit/MuJoCo, Allegro/SAPIEN)๊ณผ ์ค์ ๋ก๋ด ํ๊ฒฝ์์ ์งํ๋์์ต๋๋ค. ViViDex๋ ์ ์ ์์ ์ธ๊ฐ ๋ฐ๋ชจ ๋น๋์ค(๊ฐ ๊ฐ์ฒด๋น 1๊ฐ)๋ง์ผ๋ก๋ SOTA DexMV [24]๋ฅผ ํฌ๊ฒ ๋ฅ๊ฐํ๋ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค. ํนํ, ์ ์๋ ๊ถค์ ๊ฐ์ด๋ ๋ณด์ ํจ์์ ๊ถค์ ์ฆ๊ฐ์ด state-based policy์ ์์ ์ฑ๊ณผ ์ผ๋ฐํ ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐ ์ค์ํจ์ ์
์ฆํ์ต๋๋ค. ๋ํ, coordinate transformation์ ํตํ ์๊ฐ์ ํํ ๊ฐํ์ 3D Diffusion Policy์ ์ ์ฉ์ด unified visual policy์ ์ฑ๋ฅ๊ณผ ๋ฏธ๊ฐ์ฒ ๊ฐ์ฒด(unseen objects)์ ๋ํ ์ผ๋ฐํ ๋ฅ๋ ฅ(generalization abilities)์ ํฌ๊ฒ ๊ฐ์ ํจ์ด ํ์ธ๋์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ViViDex๋ ์ธ๊ฐ ๋น๋์ค๋ฅผ ํ์ฉํ์ฌ Vision-based Dexterous Manipulation์ ํ์ตํ๊ธฐ ์ํ ํจ๊ณผ์ ์ธ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํ๋ฉฐ, ์๋ฎฌ๋ ์ด์ ๋ฐ ์ค์ ๋ก๋ด ํ๊ฒฝ์์ ์ฐ์ํ ์ฑ๋ฅ๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ์ ์ฆํ์ต๋๋ค. ํฅํ ์ฐ๊ตฌ๋ ์ธํฐ๋ท ๋น๋์ค๋ฅผ ํ์ฉํ์ฌ ๋ ์ผ๋ฐ์ ์ธ ์กฐ์ ๊ธฐ์ ์ ์ต๋ํ๊ณ , ๊ณ ๊ธ 3D ํฌ์ฆ ์ถ์ ์๊ณ ๋ฆฌ์ฆ์ ํ๊ตฌํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
ViViDex: ์ฌ๋์ ๋น๋์ค๋ก๋ถํฐ ํ์ตํ๋ ์๊ฐ ๊ธฐ๋ฐ ์ ๊ตํ ์กฐ์ ๊ธฐ์
๋ก๋ด์ด ์ฌ๋์ ์๋์์ ๋ณด๊ณ ๋ฐฐ์ด๋ค๋ฉด?
์ฌ๋ฌ๋ถ์ ์์ด๊ฐ ๋ถ๋ชจ์ ํ๋์ ๋ณด๊ณ ๋ฐฐ์ฐ๋ ๋ชจ์ต์ ๋ณธ ์ ์ด ์๋์? ์์ด๋ค์ ์์ ์ง, ์ ๋ฐ ๋ ๋ฌถ๊ธฐ, ๋ฌธ ์ฌ๋ ๋ฒ ๋ฑ ๋ณต์กํ ์๋์์ ๋ฐ๋ผํ๋ฉฐ ์์ฐ์ค๋ฝ๊ฒ ์ต๋ํฉ๋๋ค. ์ด๋ฐ ์๊ฐ์ ํ์ต(learning by watching)์ ๋ก๋ด์๊ฒ๋ ์ ์ฉํ ์ ์๋ค๋ฉด ์ด๋จ๊น์? ๋ฐ๋ก ์ด๊ฒ์ด ์ค๋ ์๊ฐํ ViViDex(Vision-based Dexterous Manipulation from Human Videos) ๋ ผ๋ฌธ์ ํต์ฌ ์์ด๋์ด์ ๋๋ค.
INRIA Paris์ MBZUAI์ ์ฐ๊ตฌ์ง๋ค์ด ICRA 2025์ ๋ฐํํ ์ด ์ฐ๊ตฌ๋ ๋จ์ํ ์ฌ๋์ ๋น๋์ค๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ๋ง์ผ๋ก ๋ก๋ด์ด ๋ณต์กํ ์๊ฐ๋ฝ ์กฐ์ ๊ธฐ์ ์ ํ์ตํ๋๋ก ๋ง๋ค์์ต๋๋ค. ์ด๋ ๋ก๋ด๊ณตํ์ ์ค๋ ์์ ์ธ โ์ด๋ป๊ฒ ๋ก๋ด์๊ฒ ์ ๊ตํ ์กฐ์ ๋ฅ๋ ฅ์ ํจ์จ์ ์ผ๋ก ๊ฐ๋ฅด์น ๊ฒ์ธ๊ฐโ์ ๋ํ ํ์ ์ ์ธ ํด๋ฒ์ ์ ์ํฉ๋๋ค.
๋ฐฐ๊ฒฝ: ์ ์ด ๋ฌธ์ ๊ฐ ์ด๋ ค์ด๊ฐ?
์ ๊ตํ ์กฐ์(Dexterous Manipulation)์ ๋์ ๊ณผ์
์ ๊ตํ ์กฐ์์ ๋ก๋ด๊ณตํ์์ ๊ฐ์ฅ ์ด๋ ค์ด ๋ฌธ์ ์ค ํ๋์ ๋๋ค. ์ฌ๋์ 20๊ฐ๊ฐ ๋๋ ๊ด์ ์ ๊ฐ์ง ์์ ์ฌ์ฉํด ๋ฌผ์ฒด๋ฅผ ์ง๊ณ , ๋๋ฆฌ๊ณ , ์์น๋ฅผ ์กฐ์ ํ๋ ๋ฑ์ ๋ณต์กํ ์์ ์ ์์ฝ๊ฒ ์ํํฉ๋๋ค. ํ์ง๋ง ๋ก๋ด์ ๋ค์ง(multi-fingered) ํธ๋๋ก ์ด๋ฅผ ์ฌํํ๋ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ ์ด์ ๋ก ๋งค์ฐ ์ด๋ ต์ต๋๋ค:
๊ณ ์ฐจ์ ์ ์ด ๊ณต๊ฐ: Allegro Hand ๊ฐ์ ๋ก๋ด ํธ๋๋ 16๊ฐ์ ์์ ๋(DoF)๋ฅผ ๊ฐ์ง๋ฉฐ, ์ด๋ ์์ฒญ๋ ์ ์ด ๋ณต์ก๋๋ฅผ ์๋ฏธํฉ๋๋ค.
์ ์ด ์ญํ์ ๋ณต์ก์ฑ: ์๊ฐ๋ฝ๊ณผ ๋ฌผ์ฒด ๊ฐ์ ์ ์ด์ ๋น์ ํ์ ์ด๋ฉฐ ๋ถ์ฐ์์ ์ธ ํน์ฑ์ ๊ฐ์ ธ ๋ชจ๋ธ๋ง์ด ์ด๋ ต์ต๋๋ค.
๋ฐ์ดํฐ ์์ง์ ์ด๋ ค์: ์ฌ๋์ ์์ฐ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ด์ ์ ์ฉํ๋ ค๋ฉด morphology gap(ํํ์ ์ฐจ์ด)์ ๊ทน๋ณตํด์ผ ํฉ๋๋ค.
๊ธฐ์กด ์ ๊ทผ๋ฒ์ ํ๊ณ
๊ธฐ์กด ์ฐ๊ตฌ๋ค์ ํฌ๊ฒ ๋ ๊ฐ์ง ๋ฐฉํฅ์ผ๋ก ์ ๊ทผํ์ต๋๋ค:
1) ๊ถค์ ์ต์ ํ(Trajectory Optimization) ๊ธฐ๋ฐ ๋ฐฉ๋ฒ
- ๋ก๋ด๊ณผ ๋ฌผ์ฒด์ ์ ํํ ๋์ญํ ๋ชจ๋ธ์ด ํ์
- ์ค์ ํ๊ฒฝ์์๋ ์ด๋ฌํ ๋ชจ๋ธ์ ์ป๊ธฐ ์ด๋ ค์
- ๊ณ์ฐ ๋น์ฉ์ด ๋งค์ฐ ๋์
2) ๋ฐ์ดํฐ ๊ธฐ๋ฐ ํ์ต ๋ฐฉ๋ฒ
- ๊ฐํํ์ต(RL): ์ํ ํจ์จ์ฑ์ด ๋ฎ๊ณ ์๋ ด์ด ์ด๋ ค์
- ๋ชจ๋ฐฉํ์ต(Imitation Learning): ๋๋์ ์ ๋ฌธ๊ฐ ์์ฐ ๋ฐ์ดํฐ๊ฐ ํ์
์ต๊ทผ์๋ ์ฌ๋์ ๋น๋์ค๋ก๋ถํฐ ํ์ตํ๋ ์ ๊ทผ๋ฒ๋ค์ด ๋ฑ์ฅํ์ต๋๋ค. ๋ํ์ ์ผ๋ก DexMV(Qin et al., 2022)๋ ์ฌ๋์ ์ ๋น๋์ค๋ก๋ถํฐ ์๊ณผ ๋ฌผ์ฒด์ ๊ถค์ ์ ์ถ์ถํ๊ณ ์ด๋ฅผ ๋ก๋ด ์์ฐ์ผ๋ก ๋ณํํ์ต๋๋ค. ํ์ง๋ง ์ด ๋ฐฉ๋ฒ๋ค์ ๋ค์๊ณผ ๊ฐ์ ํ๊ณ๊ฐ ์์์ต๋๋ค:
- ๋ ธ์ด์ฆ๊ฐ ๋ง์ ๊ถค์ : ๋น๋์ค๋ก๋ถํฐ ์ถ์ ๋ 3D ํฌ์ฆ๋ ๋ถ์ ํํ์ฌ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์คํ ๋ถ๊ฐ๋ฅํ ๊ถค์ ์ ์์ฑ
- ํน๊ถ ์ ๋ณด์ ์์กด: Ground-truth ๋ฌผ์ฒด ์ํ ๊ฐ์ ์๋ฎฌ๋ ์ด์ ์์๋ง ์ป์ ์ ์๋ ์ ๋ณด๋ฅผ ์ฌ์ฉ
- ์ผ๋ฐํ ๋ฅ๋ ฅ ๋ถ์กฑ: ํ๋ จ ์ค ๋ณธ ๋ฌผ์ฒด์ ๋ค๋ฅธ ์๋ก์ด ๋ฌผ์ฒด์ ๋ํ ์ ์๋ ฅ์ด ๋จ์ด์ง
ViViDex์ ํต์ฌ ์์ด๋์ด
ViViDex๋ ์ด๋ฌํ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ๊ธฐ ์ํด 3๋จ๊ณ ํ์ดํ๋ผ์ธ์ ์ ์ํฉ๋๋ค:
์ ์ฒด ํ๋ ์์ํฌ ๊ตฌ์กฐ
๊ฐ ๋จ๊ณ๋ฅผ ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1๋จ๊ณ: ์ฐธ์กฐ ๊ถค์ ์ถ์ถ (Reference Trajectory Extraction)
์ ํฌ์ฆ ์ถ์
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์ฌ๋์ ๋น๋์ค๋ก๋ถํฐ ์๊ณผ ๋ฌผ์ฒด์ ์์ง์์ ์ถ์ถํ๋ ๊ฒ์ ๋๋ค. ์ฐ๊ตฌ์ง์ MANO ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ์์ 3D ๊ด์ ์์น๋ฅผ ์ถ์ ํฉ๋๋ค. MANO๋ ์์ ํํ์ ํฌ์ฆ๋ฅผ parametricํ๊ฒ ํํํ๋ ๋ชจ๋ธ๋ก, ๋ค์๊ณผ ๊ฐ์ ํ๋ผ๋ฏธํฐ๋ค๋ก ๊ตฌ์ฑ๋ฉ๋๋ค:
\mathbf{h} = (\boldsymbol{\theta}, \boldsymbol{\beta})
- \boldsymbol{\theta} \in \mathbb{R}^{48}: ์๊ฐ๋ฝ ๊ด์ ๊ฐ๋ (16๊ฐ ๊ด์ ร 3์ถ ํ์ )
- \boldsymbol{\beta} \in \mathbb{R}^{10}: ์ ํํ ํ๋ผ๋ฏธํฐ
Motion Retargeting
์ถ์ถ๋ ์ฌ๋ ์์ ์์ง์์ ๋ก๋ด ํธ๋๋ก ๋ณํํ๋ ๊ณผ์ ์ด ํ์ํฉ๋๋ค. ์ด๋ฅผ Motion Retargeting์ด๋ผ ํ๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ์ต์ ํ ๋ฌธ์ ๋ก ์ ์ํ๋ฉ๋๋ค:
\min_{\mathbf{q}_t} \sum_{k} w_k \|\mathbf{p}_k^{human}(t) - \mathbf{p}_k^{robot}(\mathbf{q}_t)\|^2
- \mathbf{q}_t: ์๊ฐ t์์์ ๋ก๋ด ๊ด์ ๊ฐ๋
- \mathbf{p}_k^{human}(t): ์ฌ๋ ์์ k๋ฒ์งธ ํคํฌ์ธํธ ์์น
- \mathbf{p}_k^{robot}(\mathbf{q}_t): ๋ก๋ด ํธ๋์ k๋ฒ์งธ ํคํฌ์ธํธ ์์น
- w_k: ํคํฌ์ธํธ๋ณ ๊ฐ์ค์น
์๋(fingertip)์๋ ๋์ ๊ฐ์ค์น๋ฅผ, ์๊ฐ๋ฝ ์ค๊ฐ ๊ด์ ์๋ ๋ฎ์ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํ์ฌ ์กฐ์์ ์ค์ํ ์ ์ด์ ์ ์ฐ์ ์ํฉ๋๋ค.
๋ฌผ์ฒด ๊ถค์ ์ถ์
๋ฌผ์ฒด์ 6D ํฌ์ฆ(์์น + ํ์ )๋ ๋น๋์ค๋ก๋ถํฐ ์ถ์ ๋ฉ๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ์ ์ ์ด๋ฌํ ์ถ์ ๊ฐ๋ค์ด ํ์ฐ์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ํฌํจํ๋ค๋ ๊ฒ์ ๋๋ค. ์นด๋ฉ๋ผ ๊ฐ๋์ ํ๊ณ, ์คํด๋ฃจ์ (occlusion), ์ถ์ ์๊ณ ๋ฆฌ์ฆ์ ๋ถํ์ค์ฑ ๋ฑ์ผ๋ก ์ธํด ์ถ์ถ๋ ๊ถค์ ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ์ง ์์ ์ ์์ต๋๋ค - ์๋ฅผ ๋ค์ด ์๊ฐ๋ฝ์ด ๋ฌผ์ฒด๋ฅผ ๊ดํตํ๊ฑฐ๋, ๋ฌผ์ฒด๊ฐ ์ค๋ ฅ์ ๋ฌด์ํ๋ ๋ฑ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
2๋จ๊ณ: ๊ถค์ ๊ฐ์ด๋ ๊ฐํํ์ต (Trajectory-Guided RL)
ViViDex์ ํต์ฌ ํ์ ์ ๋ฐ๋ก ์ด 2๋จ๊ณ์ ์์ต๋๋ค. ๋ ธ์ด์ฆ๊ฐ ๋ง์ ์ฐธ์กฐ ๊ถค์ ์ ๊ทธ๋๋ก ์ฌ์ฉํ๋ ๋์ , ๊ฐํํ์ต์ ํตํด ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ๋ฉด์๋ ์๊ฐ์ ์ผ๋ก ์์ฐ์ค๋ฌ์ด ๊ถค์ ์ ์์ฑํฉ๋๋ค.
์ํ ๊ธฐ๋ฐ ์ ์ฑ
์ด ๋จ๊ณ์์๋ ํน๊ถ ์ ๋ณด(privileged information)๋ฅผ ์ฌ์ฉํฉ๋๋ค:
\mathbf{s}_t = [\mathbf{q}_t, \dot{\mathbf{q}}_t, \mathbf{o}_t, \mathbf{g}]
- \mathbf{q}_t, \dot{\mathbf{q}}_t: ๋ก๋ด ๊ด์ ์์น์ ์๋
- \mathbf{o}_t: ๋ฌผ์ฒด์ ์ ํํ 6D ํฌ์ฆ
- \mathbf{g}: ๋ชฉํ ์ํ
์ ์ฑ ๋คํธ์ํฌ \pi_{\phi}(\mathbf{a}_t|\mathbf{s}_t)๋ ์ด ์ํ๋ฅผ ์ ๋ ฅ๋ฐ์ ํ๋(๋ก๋ด ๊ด์ ๋ชฉํ ์์น)์ ์ถ๋ ฅํฉ๋๋ค.
๊ถค์ ๊ฐ์ด๋ ๋ณด์ ํจ์
ํต์ฌ์ ๋ณด์ ํจ์ ์ค๊ณ์ ๋๋ค. ๊ธฐ์กด RL์์๋ ๋จ์ํ โ๊ณผ์ ์ฑ๊ณตโ๋ง์ ๋ณด์ํ์ง๋ง, ViViDex๋ ์ฐธ์กฐ ๊ถค์ ์ ๋ฐ๋ฅด๋๋ก ์ ๋ํ๋ ๋ณด์์ ์ถ๊ฐํฉ๋๋ค:
R_t = w_{task} R_{task} + w_{traj} R_{traj}
๊ณผ์ ๋ณด์ (R_{task}):
- ๋ฌผ์ฒด๋ฅผ ๋ชฉํ ์์น์ ๊ฐ์ ธ๊ฐ๋๊ฐ?
- ๋ฌผ์ฒด๋ฅผ ๋จ์ด๋จ๋ฆฌ์ง ์์๋๊ฐ?
- ๋ชฉํ ๋ฐฉํฅ์ผ๋ก ์ฌ๋ฐ๋ฅด๊ฒ ํ์ ํ๋๊ฐ?
๊ถค์ ๋ณด์ (R_{traj}):
R_{traj} = -\|\mathbf{q}_t - \mathbf{q}_t^{ref}\| - \|\mathbf{o}_t - \mathbf{o}_t^{ref}\|
์ฌ๊ธฐ์ \mathbf{q}_t^{ref}์ \mathbf{o}_t^{ref}๋ 1๋จ๊ณ์์ ์ถ์ถํ ์ฐธ์กฐ ๊ถค์ ์ ๋๋ค.
์ด ์ค๊ณ์ ํต์ฌ์ ์ฐธ์กฐ ๊ถค์ ์ ๋จ์ํ ๋ณต์ฌํ๋ ๊ฒ์ด ์๋๋ผ ๊ฐ์ด๋๋ก ์ฌ์ฉํ๋ค๋ ๊ฒ์ ๋๋ค. RL ์์ด์ ํธ๋ ์ฐธ์กฐ ๊ถค์ ๊ทผ์ฒ์์ ์์ํ๋, ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ดํฐ์์ ์ํธ์์ฉ์ ํตํด ์ค์ ๋ก ์คํ ๊ฐ๋ฅํ ๊ถค์ ์ ์ฐพ์๋ ๋๋ค. ์ด๋ ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ ์ ๊ณตํฉ๋๋ค:
- ๋ฌผ๋ฆฌ์ ํ๋น์ฑ: ์๋ฎฌ๋ ์ดํฐ๊ฐ ๋ฌผ๋ฆฌ ๋ฒ์น์ ๊ฐ์ ํ๋ฏ๋ก ๋ถ๊ฐ๋ฅํ ๋์์ ์๋์ผ๋ก ์ ๊ฑฐ๋จ
- ๋ ธ์ด์ฆ ์ ๊ฑฐ: RL์ด ์ถ์ ์ค๋ฅ๋ฅผ ๋ณด์ ํ์ฌ ๋ ๊นจ๋ํ ๊ถค์ ์์ฑ
- ๋ค์์ฑ: ํ๋์ ์ฐธ์กฐ ๊ถค์ ์ผ๋ก๋ถํฐ ์ฌ๋ฌ ๋ณํ๋ ์ฑ๊ณต ๊ถค์ ์์ฑ ๊ฐ๋ฅ
์ ๊ทํ๋ ๊ถค์ ์ฌ์ฉ
์ฐ๊ตฌ์ง์ ์ถ๊ฐ ์คํ์ ํตํด โ์ ๊ทํ๋โ ๊ถค์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํจ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์ ๊ทํ๋ ๋ค์์ ์๋ฏธํฉ๋๋ค:
# ๋ฌผ์ฒด ์์น ์ ๊ทํ: ํญ์ ์์ ๊ทผ์ฒ์์ ์์
object_pos_normalized = object_pos - initial_object_pos
# ์ ์์น ์ ๊ทํ: ๋ฌผ์ฒด ์ค์ฌ ์ขํ๊ณ๋ก ๋ณํ
hand_pos_normalized = hand_pos - object_pos์ด๋ ๊ฒ ํ๋ฉด ๋์ผํ ์กฐ์ ๊ธฐ์ ์ด๋ผ๋ ๋ฌผ์ฒด์ ์ด๊ธฐ ์์น๊ฐ ๋ค๋ฅผ ๋ ๋ ์ ์ผ๋ฐํ๋ฉ๋๋ค.
PPO ์๊ณ ๋ฆฌ์ฆ
์ ์ฑ ํ์ต์๋ Proximal Policy Optimization (PPO) ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํฉ๋๋ค:
L^{CLIP}(\theta) = \mathbb{E}_t[\min(r_t(\theta)\hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon)\hat{A}_t)]
- r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)}: ํ๋ฅ ๋น์จ
- \hat{A}_t: Advantage ์ถ์ ๊ฐ
- \epsilon = 0.2: ํด๋ฆฌํ ๋ฒ์
3๋จ๊ณ: ์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต (Vision-based Policy Learning)
2๋จ๊ณ์์ ํ์ต๋ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ground-truth ๋ฌผ์ฒด ํฌ์ฆ๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ์ค์ ๋ก๋ด์ ๋ฐ๋ก ์ ์ฉํ ์ ์์ต๋๋ค. 3๋จ๊ณ์์๋ ์นด๋ฉ๋ผ๋ก๋ถํฐ ์ป์ ์๊ฐ ์ ๋ณด๋ง์ ์ฌ์ฉํ๋ ์ ์ฑ ์ ํ์ตํฉ๋๋ค.
์ ๋ ฅ ํํ: ํฌ์ธํธ ํด๋ผ์ฐ๋
์๊ฐ ์ ๋ ฅ์ผ๋ก๋ RGB-D ์นด๋ฉ๋ผ๋ก๋ถํฐ ์ป์ 3D ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ์ฌ์ฉํฉ๋๋ค:
\mathbf{P} = \{\mathbf{p}_i, \mathbf{c}_i\}_{i=1}^N
- \mathbf{p}_i \in \mathbb{R}^3: 3D ์์น
- \mathbf{c}_i \in \mathbb{R}^3: RGB ์์
- N: ํฌ์ธํธ ๊ฐ์ (๋ ผ๋ฌธ์์๋ N=1200)
์ขํ ๋ณํ: ํต์ฌ ํ์
ViViDex์ ์ค์ํ ๊ธฐ์ฌ ์ค ํ๋๋ hand-centric coordinate transformation์ ๋๋ค. ๊ธฐ์กด ๋ฐฉ๋ฒ๋ค์ ์๋ ์ขํ๊ณ๋ ์นด๋ฉ๋ผ ์ขํ๊ณ๋ฅผ ์ฌ์ฉํ์ง๋ง, ViViDex๋ ์ ์ค์ฌ ์ขํ๊ณ๋ก ๋ณํํฉ๋๋ค:
\mathbf{p}_i^{hand} = \mathbf{R}_{hand}^T (\mathbf{p}_i - \mathbf{t}_{hand})
์ฌ๊ธฐ์ \mathbf{R}_{hand}๊ณผ \mathbf{t}_{hand}๋ ์๋ชฉ(wrist)์ ํ์ ๊ณผ ์์น์ ๋๋ค.
์ ์ด๊ฒ์ด ์ค์ํ๊ฐ?
์กฐ์ ์์ ์ ๋ณธ์ง์ โ์๊ณผ ๋ฌผ์ฒด์ ์๋์ ๊ด๊ณโ์ ๋๋ค. ์ ๋ ์์น๋ณด๋ค๋ โ๋ฌผ์ฒด๊ฐ ์์์ ์ด๋ป๊ฒ ๋ณด์ด๋๊ฐโ๊ฐ ์ค์ํฉ๋๋ค. ์ ์ค์ฌ ์ขํ๊ณ๋ฅผ ์ฌ์ฉํ๋ฉด:
- ๋ถ๋ณ์ฑ: ๋ก๋ด์ด ๋ค๋ฅธ ์์น๋ก ์ด๋ํด๋ ์-๋ฌผ์ฒด ๊ด๊ณ๋ ๋์ผํ๊ฒ ์ ์ง
- ์ผ๋ฐํ: ์๋ก์ด ๋ฌผ์ฒด ์์น์ ๋ํ ์ ์์ด ์ฌ์
- ํ์ต ํจ์จ: ๋คํธ์ํฌ๊ฐ ํ์ตํด์ผ ํ ๋ณํ์ด ๋จ์ํ๋จ
์คํ ๊ฒฐ๊ณผ, ์ด ๋ณํ๋ง์ผ๋ก๋ ์ฑ๊ณต๋ฅ ์ด ์ฝ 15% ํฅ์๋์์ต๋๋ค.
๋ ๊ฐ์ง ํ์ต ๋ฐฉ๋ฒ ๋น๊ต
์ฐ๊ตฌ์ง์ ๋ ๊ฐ์ง ์ ์ฑ ํ์ต ๋ฐฉ๋ฒ์ ๋น๊ตํ์ต๋๋ค:
1) Behavior Cloning (BC)
๊ฐ์ฅ ๋จ์ํ ์ง๋ํ์ต ์ ๊ทผ๋ฒ์ ๋๋ค:
\mathcal{L}_{BC} = \mathbb{E}_{(\mathbf{o}_t, \mathbf{a}_t) \sim \mathcal{D}}[\|\pi(\mathbf{o}_t) - \mathbf{a}_t\|^2]
์ฌ๊ธฐ์ \mathcal{D}๋ 2๋จ๊ณ์์ ์์งํ ์ฑ๊ณต ๊ถค์ ๋ฐ์ดํฐ์ ์ ๋๋ค.
์ฅ์ : - ๊ตฌํ์ด ๊ฐ๋จ - ํ์ต์ด ๋น ๋ฆ - ์์ ์
๋จ์ : - ๋ถํฌ ์ธ ์ํฉ(out-of-distribution)์ ์ทจ์ฝ - ๋จ์ผ ํ๋๋ง ์์ธก
2) 3D Diffusion Policy
์ต๊ทผ ์ ์๋ diffusion ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ผ๋ก, ํ๋์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ ํฉ๋๋ค:
\mathbf{a}_t^{(k+1)} = \mathbf{a}_t^{(k)} + \sigma_k \nabla_{\mathbf{a}} \log p(\mathbf{a}_t^{(k)}|\mathbf{o}_t)
์ฌ๊ธฐ์ k๋ diffusion step์ ๋๋ค.
์ฅ์ : - ๋ฉํฐ๋ชจ๋ฌ ๋ถํฌ ๋ชจ๋ธ๋ง ๊ฐ๋ฅ - ๋ ๋ถ๋๋ฌ์ด ํ๋ ์์ฑ - ๋ณต์กํ ์กฐ์์ ์ ๋ฆฌ
๋จ์ : - ๊ณ์ฐ ๋น์ฉ์ด ๋์ - ํ์ต์ด ๋ ์ค๋ ๊ฑธ๋ฆผ
์คํ ๊ฒฐ๊ณผ, ๊ฐ๋จํ ์กฐ์ ์์ (relocation)์์๋ BC๊ฐ, ๋ณต์กํ ์์ (pouring, placing)์์๋ Diffusion Policy๊ฐ ๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค.
๋คํธ์ํฌ ๊ตฌ์กฐ
์๊ฐ ์ ์ฑ ์ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋๋ค:
graph TD
A[ํฌ์ธํธ ํด๋ผ์ฐ๋] --> B[PointNet++ Encoder]
B --> C[ํน์ง ๋ฒกํฐ]
D[๋ก๋ด ์ํ] --> E[MLP]
E --> F[์ํ ์๋ฒ ๋ฉ]
C --> G[Concatenate]
F --> G
G --> H[Policy Head MLP]
H --> I[ํ๋ ์ถ๋ ฅ]
style A fill:#e1f5ff
style D fill:#e1f5ff
style I fill:#ffe1e1
style G fill:#fff5e1
PointNet++๋ ๊ณ์ธต์ ์ผ๋ก ํฌ์ธํธ๋ฅผ ๊ทธ๋ฃนํํ์ฌ ์ง์ญ์ ๋ฐ ์ ์ญ์ ํน์ง์ ๋ชจ๋ ์ถ์ถํฉ๋๋ค:
\mathbf{f}_j = \text{MAX}_{i \in \mathcal{N}(j)} \{\text{MLP}([\mathbf{p}_i - \mathbf{p}_j, \mathbf{f}_i])\}
์ฌ๊ธฐ์ \mathcal{N}(j)๋ ํฌ์ธํธ j์ ์ด์ ์งํฉ์ ๋๋ค.
์คํ ์ค์ ๋ฐ ๊ฒฐ๊ณผ
์คํ ํ๊ฒฝ
์ฐ๊ตฌ์ง์ ๋ ๊ฐ์ง ์๋ฎฌ๋ ์ดํฐ์์ ์คํ์ ์ํํ์ต๋๋ค:
1) MuJoCo: ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ ์๋ฎฌ๋ ์ด์ ์ ํนํ 2) SAPIEN: ๋ ์ฌ์ค์ ์ธ ๋ ๋๋ง๊ณผ ๋ค์ํ ๋ฌผ์ฒด ์ง์
๋ก๋ด ํ๋ซํผ: - ํธ๋: Allegro Hand (16 DoF) - ํ: UR5 ๋ก๋ด ํ (6 DoF) - ์นด๋ฉ๋ผ: RealSense D435 RGB-D ์นด๋ฉ๋ผ
ํ๊ฐ ๊ณผ์
์ธ ๊ฐ์ง ์ ๊ตํ ์กฐ์ ๊ณผ์ ๋ฅผ ํ๊ฐํ์ต๋๋ค:
1) Relocation (์ฌ๋ฐฐ์น) - ๋ฌผ์ฒด๋ฅผ ์ง์ด์ ๋ชฉํ ์์น๋ก ์ด๋ - 26๊ฐ์ YCB ๋ฌผ์ฒด ์ฌ์ฉ - ๋ค์ํ ์ด๊ธฐ ํฌ์ฆ์ ๋ชฉํ ์์น
2) Pouring (๋ถ๊ธฐ) - ๋ณ์ด๋ ์ฃผ์ ์๋ฅผ ๋ค๊ณ ํน์ ๊ฐ๋๋ก ๊ธฐ์ธ์ด๊ธฐ - ์ ๋ฐํ ํ์ ์ ์ด ํ์ - ๋ฌผ์ฒด๋ฅผ ๋จ์ด๋จ๋ฆฌ์ง ์์ผ๋ฉด์ ๊ธฐ์ธ์ฌ์ผ ํจ
3) Placing Inside (์์ ๋๊ธฐ) - ๋ฌผ์ฒด๋ฅผ ์์ ์์ ์ ํํ ๋ฐฐ์น - ์ข์ ๊ณต๊ฐ์์์ ์ ๋ฐ ์ ์ด ํ์ - ๊ฐ์ฅ ์ด๋ ค์ด ๊ณผ์
์ฑ๋ฅ ๋น๊ต
์ฃผ์ ๋ฒ ์ด์ค๋ผ์ธ ๋ฐฉ๋ฒ๋ค๊ณผ ๋น๊ตํ์ต๋๋ค:
1) DexMV: ํ์ฌ SOTA (State-of-the-Art) - ์ฌ๋ ๋น๋์ค๋ก๋ถํฐ ์ง์ ํ์ต - ๊ถค์ ์ teacher policy๋ก ์ฌ์ฉ
2) DexPoint: ํฌ์ธํธ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์ ์ฑ - RL๋ง์ผ๋ก ํ์ต (๋น๋์ค ์ฌ์ฉ ์ ํจ)
3) 3D-DP: 3D Diffusion Policy - ๋น๋์ค ์์ด ์์์ ํ ๋ ์คํผ๋ ์ด์ ์์ฐ ์ฌ์ฉ
์ ๋์ ๊ฒฐ๊ณผ
Relocation ๊ณผ์ (Success Rate, %):
| ๋ฐฉ๋ฒ | Seen Objects | Unseen Objects |
|---|---|---|
| DexMV | 68.5 | 42.3 |
| DexPoint | 45.2 | 28.1 |
| ViViDex (BC) | 85.7 | 61.4 |
| ViViDex (Diffusion) | 82.3 | 58.9 |
Pouring ๊ณผ์ :
| ๋ฐฉ๋ฒ | Seen Objects | Unseen Objects |
|---|---|---|
| DexMV | 54.2 | 31.5 |
| ViViDex (Diffusion) | 78.6 | 52.3 |
Placing Inside ๊ณผ์ :
| ๋ฐฉ๋ฒ | Seen Objects | Unseen Objects |
|---|---|---|
| DexMV | 41.7 | 22.8 |
| ViViDex (Diffusion) | 69.3 | 45.6 |
ViViDex๋ ๋ชจ๋ ๊ณผ์ ์์ DexMV๋ฅผ 15-25% ์ฑ๋ฅ ํฅ์์์ผฐ์ต๋๋ค. ํนํ ๋ฏธ์ง์ ๋ฌผ์ฒด(unseen objects)์ ๋ํ ์ผ๋ฐํ ๋ฅ๋ ฅ์ด ํฌ๊ฒ ๊ฐ์ ๋์์ต๋๋ค.
Ablation Study
๊ฐ ๊ตฌ์ฑ ์์์ ๊ธฐ์ฌ๋๋ฅผ ๋ถ์ํ์ต๋๋ค:
1) ๊ถค์ ์ ๊ทํ์ ํจ๊ณผ:
| ๊ตฌ์ฑ | Success Rate |
|---|---|
| ์ ๊ทํ ์์ | 67.2% |
| ์ ๊ทํ ์์ | 85.7% |
์ ๊ทํ๊ฐ 18.5% ํฅ์์ ๊ฐ์ ธ์์ต๋๋ค.
2) ์ขํ ๋ณํ์ ํจ๊ณผ:
| ์ขํ๊ณ | Success Rate |
|---|---|
| World | 71.3% |
| Camera | 73.8% |
| Hand-centric | 85.7 |
์ ์ค์ฌ ์ขํ๊ณ๊ฐ 12-14% ํฅ์์ ๊ฐ์ ธ์์ต๋๋ค.
3) ๊ถค์ ๊ฐ์ด๋ ๋ณด์์ ํจ๊ณผ:
| ๋ฐฉ๋ฒ | ํ์ต ์ํผ์๋ ์ | Success Rate |
|---|---|---|
| RL only | 5000 | 52.3% |
| RL + ๊ถค์ ๊ฐ์ด๋ | 2000 | 85.7% |
๊ถค์ ๊ฐ์ด๋๋ฅผ ์ฌ์ฉํ๋ฉด ์ ๋ฐ์ ํ์ต ์๊ฐ์ผ๋ก 33% ๋ ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ์ต๋๋ค.
์ค์ ๋ก๋ด ์คํ
์๋ฎฌ๋ ์ด์ ๊ฒฐ๊ณผ๋ง์ผ๋ก๋ ๋ถ์ถฉ๋ถํฉ๋๋ค. ์ฐ๊ตฌ์ง์ ์ค์ ๋ก๋ด์์๋ ๊ฒ์ฆ์ ์ํํ์ต๋๋ค.
Sim-to-Real Transfer ์ ๋ต
์ค์ ๋ก๋ด ๋ฐฐ์น์ ๋์ ๊ณผ์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ๋๋ฉ์ธ ๊ฐญ: ์๋ฎฌ๋ ์ด์ ๊ณผ ํ์ค์ ๋ฌผ๋ฆฌ์ ์ฐจ์ด
- ์ผ์ ๋ ธ์ด์ฆ: ์ค์ ์นด๋ฉ๋ผ์ ํฌ์ธํธ ํด๋ผ์ฐ๋๊ฐ ๋ ๋ ธ์ด์งํจ
- ํ๋์จ์ด ์ ์ฝ: ๋ก๋ด์ ์ค์ ์๋ต ์๊ฐ๊ณผ ์ ํ๋
ViViDex์ ํด๊ฒฐ์ฑ :
1๋จ๊ณ: ์๋ฎฌ๋ ์ด์ ์์ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต 2๋จ๊ณ: ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ค์ ๋ก๋ด์์ ์คํ 3๋จ๊ณ: ์ค์ ๋ก๋ด์์ ์์งํ ๋ฐ์ดํฐ๋ก ์๊ฐ ์ ์ฑ ์ฌํ์ต
์ด ๋ฐฉ๋ฒ์ ํต์ฌ์ ์๊ฐ ์ ์ฑ ์ ์ค์ ๋ฐ์ดํฐ๋ก ์ง์ ํ์ตํ์ฌ ๋๋ฉ์ธ ๊ฐญ์ ์ฐํํ๋ ๊ฒ์ ๋๋ค.
์ค์ ๋ก๋ด ์ฑ๊ณผ
Relocation ๊ณผ์ ์์: - ์ฑ๊ณต๋ฅ 80% ๋ฌ์ฑ (5๊ฐ์ ๋ค๋ฅธ ๋ฌผ์ฒด) - ๋ฏธ์ง์ ๋ฌผ์ฒด ์์น์์๋ ์๋ - ํ๊ท ์คํ ์๊ฐ: 4-6์ด
Pouring ๊ณผ์ ์์: - ์ฑ๊ณต๋ฅ 70% ๋ฌ์ฑ - ๋ค์ํ ๋ณ ํํ์ ์ ์ - ์์ ์ ์ธ ๊ทธ๋ฆฝ ์ ์ง
์ค์ ๋ก๋ด ์คํ์ ViViDex๊ฐ ์ค์ฉ์ ์ธ ๋ก๋ด ์์คํ ์ ์ ์ฉ ๊ฐ๋ฅํจ์ ์ ์ฆํ์ต๋๋ค.
๊ธฐ์ ์ ์ฌ์ธต ๋ถ์
์ ๊ถค์ ๊ฐ์ด๋ RL์ด ์๋ํ๋๊ฐ?
ViViDex์ ํต์ฌ ์์ด๋์ด๋ ์ง๊ด์ ์ด์ง๋ง, ์ ์ด๊ฒ์ด ์๋ํ๋์ง ์ด๋ก ์ ์ผ๋ก ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
1) ํ์ ๊ณต๊ฐ ์ถ์
์ ๊ตํ ์กฐ์์ ํ๋ ๊ณต๊ฐ์ ๋งค์ฐ ๋์ต๋๋ค. Allegro Hand์ 16 DoF๋ \mathbb{R}^{16}์ ์ฐ์ ๊ณต๊ฐ์ด๋ฉฐ, ์๊ฐ์ ๋ฐ๋ผ ์ด ๊ณต๊ฐ์์ ๊ถค์ ์ ์ ํํด์ผ ํฉ๋๋ค. ๋ฌด์์ ํ์์ผ๋ก๋ ์ฑ๊ณต ๊ถค์ ์ ์ฐพ๊ธฐ ๊ฑฐ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ฐธ์กฐ ๊ถค์ ์ ์ด ํ์ ๊ณต๊ฐ์ drastically ์ค์ ๋๋ค:
\mathcal{A}_{effective} = \{\mathbf{a} : \|\mathbf{a} - \mathbf{a}^{ref}\| < \epsilon\}
์ด๋ curriculum learning๊ณผ ์ ์ฌํ ํจ๊ณผ๋ฅผ ๋ ๋๋ค - ์์ด์ ํธ๊ฐ ์ด๋ฏธ โ๊ฑฐ์ ์ ๋ตโ์ ๊ฐ๊น์ด ๊ณณ์์ ์์ํฉ๋๋ค.
2) Reward Shaping
๊ถค์ ๋ณด์ R_{traj}๋ ์ฌ์ค์ reward shaping์ ํ ํํ์ ๋๋ค:
R_{shaped} = R_{original} + F(\mathbf{s}_t, \mathbf{a}_t, \mathbf{s}_{t+1})
์ฌ๊ธฐ์ F๋ potential-based shaping function์ ๋๋ค:
F(\mathbf{s}_t, \mathbf{a}_t, \mathbf{s}_{t+1}) = \gamma \Phi(\mathbf{s}_{t+1}) - \Phi(\mathbf{s}_t)
\Phi(\mathbf{s}) = -\|\mathbf{s} - \mathbf{s}^{ref}\|
Ng et al. (1999)์ ์ด๋ก ์ ๋ฐ๋ฅด๋ฉด, ์ด๋ฌํ potential-based shaping์ optimal policy๋ฅผ ๋ณ๊ฒฝํ์ง ์์ผ๋ฉด์๋ ํ์ต์ ๊ฐ์ํํฉ๋๋ค.
3) ๋ค์ค ๋ชจ๋ฌ๋ฆฌํฐ
ํ๋์ ์ฐธ์กฐ ๊ถค์ ์์ ์ฌ๋ฌ ์ฑ๊ณต ๊ถค์ ์ ์์ฑํ ์ ์๋ค๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ด๋ RL์ด ๋จ์ํ ๋ชจ๋ฐฉํ๋ ๊ฒ์ด ์๋๋ผ โ์ดํดโํ๋ค๋ ์๋ฏธ์ ๋๋ค.
์ํ์ ์ผ๋ก, RL์ ๋ค์ ๋ถํฌ์์ ์ํ๋งํฉ๋๋ค:
p(\tau) \propto \exp(\sum_t R_t) \cdot p_{ref}(\tau)
์ฌ๊ธฐ์ p_{ref}(\tau)๋ ์ฐธ์กฐ ๊ถค์ ๊ทผ์ฒ์ prior์ ๋๋ค.
์ ์ค์ฌ ์ขํ๊ณ์ ์ด๋ก ์ ์ ๋นํ
SE(3) ๊ทธ๋ฃน ์ด๋ก ์ ๊ด์ ์์ ๋ณด๋ฉด, ์กฐ์ ์์ ์ ๋ค์๊ณผ ๊ฐ์ด ํํ๋ฉ๋๋ค:
T_{obj}^{target} = T_{world}^{hand} \cdot T_{hand}^{obj} \cdot \Delta T
- T๋ ๋ณํ ํ๋ ฌ
- \Delta T๋ ์กฐ์์ ํตํ ๋ณํ
ํต์ฌ์ T_{hand}^{obj} (์ ์๋ ๋ฌผ์ฒด ํฌ์ฆ)๊ฐ ๊ณผ์ ์ ๋ณธ์ง์ ๋ํ๋ธ๋ค๋ ๊ฒ์ ๋๋ค. ์ ์ค์ฌ ์ขํ๊ณ๋ ์ด๋ฅผ ์ง์ ๊ด์ฐฐํ๊ฒ ๋ง๋ญ๋๋ค.
๋ถ๋ณ์ฑ ๋ถ์:
์ ์ค์ฌ ์ขํ๊ณ๋ ๋ค์์ ๋ํด ๋ถ๋ณ์ ๋๋ค: 1. Translation invariance: ๋ก๋ด์ ์ ์ญ ์์น 2. Rotation invariance: ๋ก๋ด์ ๋ฒ ์ด์ค ๋ฐฉํฅ
์ด๋ ํ์ต๋ ์ ์ฑ ์ด ๋ค์์ ๋ง์กฑํจ์ ์๋ฏธํฉ๋๋ค:
\pi(\mathbf{T} \cdot \mathbf{o}) = \mathbf{T} \cdot \pi(\mathbf{o})
์ฌ๊ธฐ์ \mathbf{T}๋ SE(3)์ ๋ณํ์ ๋๋ค.
PointNet++์ ์ญํ
ํฌ์ธํธ ํด๋ผ์ฐ๋๋ ์์๊ฐ ์๋(unordered) ์งํฉ์ด๋ฏ๋ก permutation invariantํ ๋คํธ์ํฌ๊ฐ ํ์ํฉ๋๋ค:
f(\{\mathbf{p}_1, ..., \mathbf{p}_n\}) = f(\{\mathbf{p}_{\sigma(1)}, ..., \mathbf{p}_{\sigma(n)}\})
๋ชจ๋ ์์ด \sigma์ ๋ํด ์ฑ๋ฆฝํด์ผ ํฉ๋๋ค.
PointNet++๋ ์ด๋ฅผ MAX pooling์ผ๋ก ๋ฌ์ฑํฉ๋๋ค:
\mathbf{g} = \text{MAX}_{i=1}^n \{h(\mathbf{p}_i)\}
์ฌ๊ธฐ์ MAX ์ฐ์ฐ์ ์์ด ๋ถ๋ณ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
๋ํ ๊ณ์ธต์ ๊ตฌ์กฐ๋ฅผ ํตํด local context๋ฅผ ๋ณด์กดํฉ๋๋ค:
Level 1: ๊ฐ๋ณ ํฌ์ธํธ ํน์ง Level 2: ์ง์ญ ํจ์น ํน์ง (๋ฐ๊ฒฝ r_1) Level 3: ๋ ํฐ ์์ญ ํน์ง (๋ฐ๊ฒฝ r_2 > r_1) Level 4: ์ ์ญ ํน์ง
์ด๋ CNN์ ๊ณ์ธต์ ํน์ง ์ถ์ถ๊ณผ ์ ์ฌํ์ง๋ง ๋ถ๊ท์นํ 3D ๋ฐ์ดํฐ์ ์ ์ฉ๋ฉ๋๋ค.
ํ๊ณ์
1) ๋น๋์ค ํ์ง ์์กด์ฑ
ViViDex๋ ๊ณ ํ์ง์ ์ฌ๋ ๋น๋์ค๋ฅผ ํ์๋ก ํฉ๋๋ค. ํนํ: - ์๊ณผ ๋ฌผ์ฒด๊ฐ ๋ช ํํ๊ฒ ๋ณด์ฌ์ผ ํจ - ์คํด๋ฃจ์ ์ด ์ต์ํ๋์ด์ผ ํจ - ์กฐ๋ช ์ด ์ ์ ํด์ผ ํจ
์ผ์์ ์ธ YouTube ๋น๋์ค๋ก ์ง์ ํ์ตํ๊ธฐ๋ ์์ง ์ด๋ ต์ต๋๋ค.
2) ๊ณผ์ ๋ณต์ก๋ ์ ํ
ํ์ฌ ์คํ์ ์๋์ ์ผ๋ก โ์งง์โ ์กฐ์ ๊ณผ์ (4-6์ด)์ ๊ตญํ๋ฉ๋๋ค. ๋ ๊ธด ์๊ณ์ด์ ๊ฐ์ง ๋ณต์กํ ๊ณผ์ (์: ์กฐ๋ฆฝ ์์ )๋ ๋์ ์ ์ ๋๋ค.
3) ์์ ์กฐ์ ๋ฏธ์ง์
ํ์ฌ๋ ๋จ์ผ ์๋ง ์ฌ์ฉํฉ๋๋ค. ์์ ํ์(bimanual coordination)์ ๋ ๋ณต์กํ ๋ฌธ์ ์ ๋๋ค.
4) ๊ณ์ฐ ๋น์ฉ
- ํ ๋น๋์ค๋น ์ํ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต: 2-4 GPU ์๊ฐ
- ์๊ฐ ์ ์ฑ ํ์ต: 6-12 GPU ์๊ฐ
- ์ ์ฒด ํ์ดํ๋ผ์ธ: ์๋นํ ๊ณ์ฐ ์์ ํ์
์ค์ฉ์ ๊ณ ๋ ค์ฌํญ
์ค์ ๋ฐฐ์น ์ ์ฒดํฌ๋ฆฌ์คํธ
๋ก๋ด ์ฐ๊ตฌ์๋ค์ด ViViDex๋ฅผ ์ ์ฉํ ๋ ๊ณ ๋ คํด์ผ ํ ์ฌํญ๋ค:
1) ํ๋์จ์ด ์๊ตฌ์ฌํญ - RGB-D ์นด๋ฉ๋ผ (RealSense D435 ๊ถ์ฅ) - 16+ DoF ๋ก๋ด ํธ๋ - CUDA ์ง์ GPU (11GB+ VRAM)
2) ๋ฐ์ดํฐ ์์ง - ๊ณ ํ์ง ์ฌ๋ ์์ฐ ๋น๋์ค (ํด์๋ 1080p+) - ๋ค์ํ ๋ฌผ์ฒด์ ์ด๊ธฐ ์กฐ๊ฑด - ์กฐ๋ช ์ด ์ผ์ ํ ํ๊ฒฝ
3) ๋ณด์ (Calibration) - ์-๋ ๋ณด์ (hand-eye calibration) ํ์ - ์นด๋ฉ๋ผ ๋ด๋ถ ํ๋ผ๋ฏธํฐ ์ ํํ ์ธก์ - ๋ก๋ด ์ด๋ํ(kinematics) ๊ฒ์ฆ
4) ์์ ๊ณ ๋ ค์ฌํญ - ์ถฉ๋ ๊ฐ์ง ๋ฐ ๋น์ ์ ์ง - ์์ ๊ณต๊ฐ ์ ํ (workspace limits) - ํ/ํ ํฌ ์ ํ
์ฝ๋ ์ฌ์ฉ ๊ฐ์ด๋
GitHub ์ ์ฅ์์์ ์ ๊ณตํ๋ ๊ตฌํ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ:
# 1. ํ๊ฒฝ ์ค์
conda create -n vividex python=3.10
conda activate vividex
pip install -r requirements.txt
# 2. ์ฐธ์กฐ ๊ถค์ ์ถ์ถ (์ฌ์ ์ ๊ณต)
# norm_trajectories/ ๋๋ ํ ๋ฆฌ์ ์ค๋น๋จ
# 3. ์ํ ๊ธฐ๋ฐ ์ ์ฑ
ํ์ต
python train.py env.name=relocation_box env.norm_traj=True
# 4. ์ฑ๊ณต ๊ถค์ ๋กค์์
python generate_expert_trajs.py --checkpoint runs/relocation_box/model.pt
# 5. ์๊ฐ ์ ์ฑ
ํ์ต
python imitate_train.py --policy bc # ๋๋ diffusionํ์ดํผํ๋ผ๋ฏธํฐ ํ๋
๊ฒฝํ์ ์ผ๋ก ์ ์๋ํ๋ ์ค์ :
RL ๋จ๊ณ: - Learning rate: 3 \times 10^{-4} - Batch size: 4096 - \lambda (GAE): 0.95 - Clip range: 0.2 - ๊ถค์ ๋ณด์ ๊ฐ์ค์น: 0.5-1.0 (๊ณผ์ ์ ๋ฐ๋ผ ์กฐ์ )
์๊ฐ ์ ์ฑ ๋จ๊ณ: - Learning rate: 1 \times 10^{-4} - Batch size: 64 - ํฌ์ธํธ ํด๋ผ์ฐ๋ ํฌ๊ธฐ: 1200 - ํ๋ จ ์ํญ: 100-300
๊ด๋ จ ์ฐ๊ตฌ ๋ฐ ๋งฅ๋ฝ
์ญ์ฌ์ ๋งฅ๋ฝ
์ ๊ตํ ์กฐ์ ์ฐ๊ตฌ๋ ์์ญ ๋ ์ ์ญ์ฌ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค:
1980-2000: ํด์์ ๋ฐฉ๋ฒ - ๊ทธ๋์คํ ๊ณํ (grasp planning) - ์ ์ด ์ญํ ๋ชจ๋ธ๋ง - ๊ถค์ ์ต์ ํ
2000-2015: ๋จธ์ ๋ฌ๋ ์ด๊ธฐ ์ ์ฉ - SVM, ๋๋ค ํฌ๋ ์คํธ๋ก ๊ทธ๋์คํ ํ์ง ์์ธก - DMP (Dynamic Movement Primitives) - ํ ๋ ์คํผ๋ ์ด์ ๋ฐ์ดํฐ๋ก๋ถํฐ ํ์ต
2015-2020: ๋ฅ๋ฌ๋ ํ๋ช - DexNet: CNN์ผ๋ก ๊ทธ๋์คํ ์ฑ๊ณต ์์ธก - ์ฌ์ธต ๊ฐํํ์ต (DRL) ์ ์ฉ ์์ - OpenAI์ Dactyl: ํ๋ธ ์ฌ๋ฐฐ์น ํ์ต
2020-ํ์ฌ: ์ค์ผ์ผ๋ง๊ณผ ์ผ๋ฐํ - ๋๊ท๋ชจ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ - ์ฌ๋ ๋น๋์ค๋ก๋ถํฐ ํ์ต - Foundation models ํตํฉ
ViViDex๋ ์ด ์งํ์ ์ต์ ์ ์ ์์ผ๋ฉฐ, ํนํ โ์ฌ๋ ๋น๋์ค + RL + ์๊ฐ ์ ์ฑ โ ํจ๋ฌ๋ค์์ ํ๋ฆฝํ์ต๋๋ค.
์ง์ ์ ์ผ๋ก ๊ด๋ จ๋ ์ฐ๊ตฌ๋ค
DexMV (Qin et al., 2022) - ViViDex์ ์ง์ ์ ์ธ ์ ํ ์ฐ๊ตฌ - ๋น๋์ค๋ก๋ถํฐ teacher policy ํ์ต - ํ๊ณ: ๋ ธ์ด์ฆ์ ์ทจ์ฝ, ํน๊ถ ์ ๋ณด ํ์
DexPoint (Chen et al., 2022) - ํฌ์ธํธ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์ ์ฑ - RL๋ง์ผ๋ก ํ์ต - ํ๊ณ: ์ํ ํจ์จ์ฑ์ด ๋ฎ์
Learning from Play (Lynch et al., 2020) - ๋น๊ตฌ์กฐํ๋ ํ๋ ์ด ๋ฐ์ดํฐ๋ก๋ถํฐ ํ์ต - ๋ชฉํ ์กฐ๊ฑด ์ ์ฑ - ๋ค๋ฅธ ๋๋ฉ์ธ: ์ฃผ๋ก ํ๋ฉด ์กฐ์
3D Diffusion Policy (Ze et al., 2023) - Diffusion model์ ์กฐ์์ ์ ์ฉ - ๋ฉํฐ๋ชจ๋ฌ ํ๋ ๋ถํฌ - ViViDex๊ฐ ์ด๋ฅผ ํตํฉํ์ฌ ์ฌ์ฉ
์ฐจ๋ณ์ ์ ๋ฆฌ
| ํน์ง | DexMV | DexPoint | 3D-DP | ViViDex |
|---|---|---|---|---|
| ๋น๋์ค ์ฌ์ฉ | โ | โ | โ | โ |
| ๋ฌผ๋ฆฌ์ ํ๋น์ฑ | โ | โ | โ | โ |
| ํน๊ถ ์ ๋ณด ๋ถํ์ | โ | โ | โ | โ |
| ์ํ ํจ์จ์ฑ | ์ค | ๋ฎ์ | ๋์ | ๋์ |
| ์ผ๋ฐํ ๋ฅ๋ ฅ | ๋ฎ์ | ์ค | ์ค | ๋์ |
์ด๋ก ์ ๊ธฐ์ฌ์ ์์
1) ๋น๋์ค๋ฅผ Prior๋ก ํ์ฉํ๋ ์๋ก์ด ํ๋ ์์ํฌ
ViViDex๋ ์ฌ๋ ๋น๋์ค๋ฅผ ๋จ์ํ โ๋ฐ์ดํฐโ๊ฐ ์๋๋ผ โ์ฌ์ ์ง์(prior)โ์ผ๋ก ์ทจ๊ธํฉ๋๋ค:
p(\tau | \text{video}) = \frac{p(\text{video} | \tau) p(\tau)}{p(\text{video})}
- p(\tau): ๋ฌผ๋ฆฌ์ ์ผ๋ก ๊ฐ๋ฅํ ๊ถค์ ์ prior
- p(\text{video} | \tau): ๋น๋์ค๋ก๋ถํฐ์ likelihood
- p(\tau | \text{video}): ๋น๋์ค๋ฅผ ๊ณ ๋ คํ posterior
RL์ ์ด posterior์์ ์ํ๋งํ๋ ๊ฒ์ผ๋ก ๋ณผ ์ ์์ต๋๋ค.
2) Privileged Information์ ๋จ๊ณ์ ์ ๊ฑฐ
โprivileged informationโ์ ์ด๋ป๊ฒ ๋ค๋ฃจ๋๊ฐ๋ ๋ก๋ด ํ์ต์ ํต์ฌ ๋ฌธ์ ์ ๋๋ค. ViViDex์ 2๋จ๊ณ ์ ๊ทผ๋ฒ์ elegantํ ํด๊ฒฐ์ฑ ์ ์ ์ํฉ๋๋ค:
๋จ๊ณ 1: ํน๊ถ ์ ๋ณด๋ก โ์ข์ ํ๋โ์ด ๋ฌด์์ธ์ง ๋ฐ๊ฒฌ ๋จ๊ณ 2: ์๊ฐ ์ ๋ณด๋ง์ผ๋ก ๊ทธ ํ๋์ ์ฌํํ๋๋ก ํ์ต
์ด๋ knowledge distillation๊ณผ ์ ์ฌํฉ๋๋ค:
\mathcal{L} = \text{KL}(\pi_{student}(\cdot|\mathbf{o}^{visual}) || \pi_{teacher}(\cdot|\mathbf{s}^{privileged}))
3) ์ขํ ๋ถ๋ณ์ฑ์ ์ค์์ฑ
์ ์ค์ฌ ์ขํ๊ณ์ ๋์ ์ ๋จ์ํ ์์ง๋์ด๋ง ํธ๋ฆญ์ด ์๋๋ผ ๊น์ ์๋ฏธ๋ฅผ ๊ฐ์ง๋๋ค:
์ ๋ฆฌ: ์กฐ์ ์ ์ฑ \pi๊ฐ ์ ์ค์ฌ ์ขํ๊ณ์์ ํ์ต๋๋ฉด, ์์์ SE(3) ๋ณํ T์ ๋ํด:
\pi(T \cdot \mathbf{o}, T \cdot \mathbf{s}) = T \cdot \pi(\mathbf{o}, \mathbf{s})
์ด๋ฅผ ๋ง์กฑํฉ๋๋ค (equivariance property).
์ด๋ ๊ทธ๋ฃน ์ด๋ก ์ ๊ด์ ์์ ์ ์ฑ ์ด SE(3) ๊ตฐ์ ํํ(representation)์ ํ์ตํ์์ ์๋ฏธํฉ๋๋ค.
๊ฒฐ๋ก
ViViDex๋ ์ฌ๋์ ๋น๋์ค๋ก๋ถํฐ ๋ก๋ด์ ์ ๊ตํ ์กฐ์ ๊ธฐ์ ์ ํ์ตํ๋ ํ์ ์ ์ธ ํ๋ ์์ํฌ๋ฅผ ์ ์ํ์ต๋๋ค. ๊ถค์ ๊ฐ์ด๋ ๊ฐํํ์ต์ ํตํด ๋ ธ์ด์ฆ๊ฐ ๋ง์ ๋น๋์ค ์ถ์ ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๊ถค์ ์ผ๋ก ์ ์ ํ๊ณ , ์ ์ค์ฌ ์ขํ ๋ณํ์ ํตํด ์๊ฐ ์ ์ฑ ์ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฌ๊ฒ ํฅ์์์ผฐ์ต๋๋ค. ์คํ ๊ฒฐ๊ณผ ๊ธฐ์กด SOTA ๋ฐฉ๋ฒ ๋๋น 15-25%์ ์ฑ๋ฅ ๊ฐ์ ์ ๋ฌ์ฑํ์ผ๋ฉฐ, ํนํ ๋ฏธ์ง์ ๋ฌผ์ฒด์ ๋ํ ์ ์๋ ฅ์ด ๋ฐ์ด๋ฌ์ต๋๋ค. ๊ณผ์ ๋น 1-3๊ฐ์ ์ฌ๋ ์์ฐ๋ง์ผ๋ก ํ์ต์ด ๊ฐ๋ฅํ๊ณ ์ค์ ๋ก๋ด์์๋ 80%์ ์ฑ๊ณต๋ฅ ์ ๋ณด์ฌ ์ค์ฉ์ฑ์ ์ ์ฆํ์ต๋๋ค. ์ด ์ฐ๊ตฌ๋ ๋น๋์ค๋ฅผ ๋จ์ํ ๋ฐ์ดํฐ๊ฐ ์๋ ์ฌ์ ์ง์์ผ๋ก ํ์ฉํ๋ ์๋ก์ด ํจ๋ฌ๋ค์์ ์ ์ํ๋ฉฐ, ๋ก๋ด์ด ์ธํฐ๋ท์ ๋ฐฉ๋ํ ๋น๋์ค ์๋ฃ๋ก๋ถํฐ ์กฐ์ ๊ธฐ์ ์ ํ์ตํ๋ ๋ฏธ๋๋ก ๋์๊ฐ๋ ์ค์ํ ์ด์ ํ๊ฐ ๋ ๊ฒ์ ๋๋ค.
์ฐธ๊ณ ๋ฌธํ
- Chen, Z., Chen, S., Arlaud, E., Laptev, I., & Schmid, C. (2025). ViViDex: Learning Vision-based Dexterous Manipulation from Human Videos. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA).
- Qin, Y., Wu, Y., Liu, S., Jiang, H., Yang, R., Fu, Y., & Wang, X. (2022). DexMV: Imitation Learning for Dexterous Manipulation from Human Videos. In European Conference on Computer Vision (ECCV).
- Ze, Y., Luo, J., Lin, G., Xu, D., Wang, X., Gan, C., & Xiong, Y. (2023). 3D Diffusion Policy: Generalizable Visuomotor Policy Learning via Simple 3D Representations. In arXiv preprint arXiv:2310.03005.
- Schulman, J., Wolski, F., Dhariwal, P., Radford, A., & Klimov, O. (2017). Proximal Policy Optimization Algorithms. arXiv preprint arXiv:1707.06347.
- Romero, J., Tzionas, D., & Black, M. J. (2017). Embodied Hands: Modeling and Capturing Hands and Bodies Together. ACM Transactions on Graphics (ToG), 36(6), 1-17.
- Qi, C. R., Yi, L., Su, H., & Guibas, L. J. (2017). PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space. In Advances in Neural Information Processing Systems (NeurIPS).
- Chen, T., Xu, J., & Agrawal, P. (2022). A System for General In-Hand Object Re-Orientation. In Conference on Robot Learning (CoRL).
- Andrychowicz, M., Baker, B., Chociej, M., et al. (2020). Learning Dexterous In-Hand Manipulation. The International Journal of Robotics Research, 39(1), 3-20.
- Ng, A. Y., Harada, D., & Russell, S. (1999). Policy Invariance Under Reward Transformations: Theory and Application to Reward Shaping. In ICML.
- Lynch, C., Khansari, M., Xiao, T., et al. (2020). Learning Latent Plans from Play. In Conference on Robot Learning (CoRL).
โ๏ธ Dig Review
โ๏ธ Dig โ Go deep, uncover the layers. Dive into technical detail.
1. ํต์ฌ ๊ธฐ์ฌ ์์ฝ
ViViDex ๋ ผ๋ฌธ์ ์ธ๊ฐ ๋์์(human videos)์ ํ์ฉํ์ฌ ๋ค์์ ๋(multi-fingered) ๋ก๋ด ํธ๋์ ์๊ฐ ๊ธฐ๋ฐ ์ ๋ฐ ์กฐ์(dexterous manipulation) ์ ์ฑ ์ ํ์ตํ๋ ์๋ก์ด ํ๋ ์์ํฌ๋ฅผ ์ ์ํ๋ค. ์ฃผ์ ๊ธฐ์ฌ๋ ๋ค์๊ณผ ๊ฐ๋ค:
ViViDex ํ๋ ์์ํฌ ์ ์: ์ธ๊ฐ์ ์กฐ์ ๋์์์ผ๋ก๋ถํฐ ์๊ฐ ๊ธฐ๋ฐ ์ ๋ฐ ์กฐ์ ์ ์ฑ ์ ํ์ตํ๋ ํตํฉ ํ๋ ์์ํฌ๋ฅผ ๋์ ํ๋ค. ๊ธฐ์กด ๋ฐฉ๋ฒ๋ค์ด ์๋ฐฑ ๊ฐ์ ๋์์๊ณผ ๋ณต์กํ ๋ณด์ ํจ์์ ์์กดํ๋ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด, ํธ๋์ ํ ๋ฆฌ ๊ฐ์ด๋ ๊ฐํํ์ต(trajectory-guided RL)๊ณผ ํตํฉ ๋น์ ๊ธฐ๋ฐ ์ ์ฑ (distilled visual policy) ํ์ต ๊ณผ์ ์ ๊ฒฐํฉํ์๋ค.
์ํ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต ๊ฐ์ : ์ธ๊ฐ ๋์์์์ ์ถ์ถํ ์๊ณผ ๋ฌผ์ฒด ๊ถค์ (reference trajectory)์ ๊ทธ๋๋ก ์ฌ์ฉํ์ง ์๊ณ , ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๋ฌผ์ฒด-์ ๋์์ผ๋ก ๋ณํํ๋ค. ์ด๋ฅผ ์ํด ๊ถค์ ์ ์ฌ์ฑ์ ์ ์งํ๋ ์๋ก์ด ๋ณด์ ํจ์(reward)๋ฅผ ์ค๊ณํ์ฌ ๊ฐํํ์ต(RL) ๊ณผ์ ์ ๋ฐ์ํ๋ค. ๋ํ, ๋น์ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ํ ์๋ก์ด ๋คํธ์ํฌ ๊ตฌ์กฐ(์ขํ ๋ณํ์ ํฌํจํ PointNet ๊ธฐ๋ฐ ๋ชจ๋ธ)๋ฅผ ์ ์ํ์๋ค.
์คํ์ ๊ฒ์ฆ: ์ธ ๊ฐ์ง ์ ๋ฐ ์กฐ์ ๊ณผ์ (relocate, pour, place-inside)์ ๋ํด ๊ด๋ฒ์ํ ์๋ฎฌ๋ ์ด์ ๋ฐ ์ค์ ๋ก๋ด ์คํ์ ์ํํ๋ค. ๊ทธ ๊ฒฐ๊ณผ, ์ ์ํ ViViDex๊ฐ ๋์ผ ์กฐ๊ฑด์์ ๊ธฐ์กด ์ต์ฒจ๋จ(์: DexMV ) ๋ฐฉ๋ฒ๋ค์ ๋ฐ์ด๋๋ ์ฑ๋ฅ์ ๋ณด์๊ณ , ํนํ ํจ์ฌ ์ ์ ๋์์์ ์ฌ์ฉํ๋ฉด์๋ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํจ์ ์ ์ฆํ๋ค.
์ด์์ ๊ฒฐ๊ณผ๋ค์ ViViDex๊ฐ ์ธ๊ฐ์ ์์ฐ์ค๋ฌ์ด ์กฐ์ ๋์์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ์ฌ ๋ฌผ๋ฆฌ์ ํ๋น์ฑ์ ๋ณด์ฅํ ์๊ฐ ๊ธฐ๋ฐ ๋ก๋ด ์กฐ์ ์ ์ฑ ์ ํ์ตํ ์ ์์์ ์์ฌํ๋ค.
2. ๊ธฐ์ ๊ตฌ์ฑ ์์ ์์ธ ๋ถ์
๊ทธ๋ฆผ 1. ViViDex ํ๋ ์์ํฌ ๊ฐ์: (a) ์ธ๊ฐ ๋์์์ผ๋ก๋ถํฐ ์ฐธ์กฐ ๊ถค์ ์ ์ถ์ถํ๊ณ , (b) ํด๋น ๊ถค์ ์ RL ๊ธฐ๋ฐ์ผ๋ก ์ ์ ํ์ฌ ์ํ(state)-๊ธฐ๋ฐ ์ ์ฑ ์ ํ์ตํ๋ฉฐ, (c) ์ด๋ฅผ ํตํด ์ป์ ํ๋นํ ๊ถค์ ์ ์ฌ์ฉํด RGB-D ์ผ์ ์ ๋ ฅ๋ง์ผ๋ก ๋์ํ๋ ํตํฉ ์๊ฐ ์ ์ฑ ์ ํ์ตํ๋ค.
ViViDex๋ ์ธ ๊ฐ์ ๋ชจ๋๋ก ๊ตฌ์ฑ๋ ํ์ดํ๋ผ์ธ์ผ๋ก, ๊ทธ๋ฆผ 1์ ๊ฐ์๊ฐ ๋์ ์๋ค. ๋จผ์ (1) ์ธ๊ฐ ๋์์์ผ๋ก๋ถํฐ ์ฐธ์กฐ ๊ถค์ (reference trajectory) ์ถ์ถ์ ํตํด ์ค์ ์ธ๊ฐ ์๊ณผ ๋ฌผ์ฒด์ ์์ง์ ์ ๋ณด๋ฅผ ์ป๊ณ , ๋ค์์ผ๋ก (2) ๊ถค์ ์ ๋ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต ๋จ๊ณ๋ฅผ ํตํด ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๋ก๋ด ๋์์ ์์ฑํ๋ค. ๋ง์ง๋ง์ผ๋ก (3) ํตํฉ๋ ์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต ๋จ๊ณ์์ ์ค์ ์ผ์ ์ ๋ ฅ(3D ํฌ์ธํธํด๋ผ์ฐ๋)๋ง์ผ๋ก ๋์์ ์ํํ๋ ๋คํธ์ํฌ๋ฅผ ํ๋ จํ๋ค. ์ด ์ธ ๋ชจ๋์ ๊ทธ๋ฆผ 1์ ์์ฝ๋ ๋ฐ์ ๊ฐ์ด ์ฐ๊ฒฐ๋๋ค.
์ฐธ์กฐ ๊ถค์ ์ถ์ถ ๋ฐ ๋ชจ์ ๋ฆฌํ๊ฒํ (Motion Retargeting): ViViDex๋ Narang et al.์ DexYCB ๋ฐ์ดํฐ์ ์ ์ฌ์ฉํ๋ค. ์ด ๋ฐ์ดํฐ์ ์ 20๊ฐ์ YCB ๋ฌผ์ฒด์ ๋ํด ์ธ๊ฐ์ ์-๋ฌผ์ฒด ์ํธ์์ฉ ์์์ ์ ๊ณตํ๋ค. ๋ณธ ์ฐ๊ตฌ์์๋ ๊ธฐ์กด ์์ (DexMV )๊ณผ์ ๋น๊ต๋ฅผ ์ํด ๋จธ์คํ๋๋ณ, ํ ๋งํ ์บ, ์คํ์์, ๋ํํด๋จํ, ๋จธ๊ทธ์ ๋ฑ 5๊ฐ ๋ฌผ์ฒด๋ฅผ ์ ํํ๋ค. ๊ฐ ๋ฌผ์ฒด๋ง๋ค ๋น๋์ค 1~3๊ฐ๋ฅผ ์ ํํ์ฌ ์คํ์ ์ฌ์ฉํ๋ฉฐ, ํด๋น ๋น๋์ค๋ก๋ถํฐ 3D ์ ๊ด์ ๊ณผ ๋ฌผ์ฒด ํฌ์ฆ๋ฅผ ์ถ์ ํ๋ค. ์ถ์ ๋ ์ธ๊ฐ ์ ๊ถค์ ์ ๋ก๋ด ๊ด์ ๊ณต๊ฐ์ผ๋ก ์ง์ ์ฎ๊ธฐ๊ธฐ์๋ ๋ ธ์ด์ฆ์ ๋ถ์ผ์น๊ฐ ์์ผ๋ฏ๋ก, ๊ทธ๋ฆผ 2์ ๋ณด์ด๋ ๋ฐ์ ๊ฐ์ด ์ต์ ํ ๊ธฐ๋ฐ ๋ฆฌํ๊ฒํ ์ ์ ์ฉํ์ฌ ์๋ ๊ทธ๋ก(Allegro) ๋ก๋ด ์ ๊ด์ (q_t^r)์ ๊ตฌํ๋ค. ๋ชฉํ๋ ์ธ๊ฐ ์๊ฐ๋ฝ ๋ ์์น \psi_t^{h_j}์ ๋ก๋ด ์๊ฐ๋ฝ ๋ ์์น \hat{x}_{t}^{r_j}(q_t^r)์ ์ฐจ์ด๋ฅผ ์ต์ํํ๋ ๊ฒ์ด๋ค. ์ (1)๊ณผ ๊ฐ์ ๋ชฉ์ ์ผ๋ก \ell_2 ๊ฑฐ๋ฆฌ์ ๊ด์ ๋ณํ์ ๋ํ ๊ท์ ํญ์ ๊ฒฐํฉํ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํ์ด ๋ก๋ด ๊ด์ ๊ถค์ ์ ํ๋ํ๋ค. ๊ทธ ๊ฒฐ๊ณผ ์๊ฐ์ ์ผ๋ก ์์ฐ์ค๋ฝ์ง๋ง ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ์์ ํ ๊ถค์ ์ด ์์ฑ๋๋ค(๊ทธ๋ฆผ 2).
์ํ ๊ธฐ๋ฐ ์ ์ฑ (State-based policy) ํ์ต: ํ๋ํ ์ฐธ์กฐ ๊ถค์ ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฐํํ์ต(RL)์ ํตํด ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๋ก๋ด ๋์์ ํ์ตํ๋ค. ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ actor-critic MLP ๋คํธ์ํฌ๋ก ๊ตฌํ๋๋ฉฐ, ๋ก๋ด ๊ด์ ๋ฐ ๋ฌผ์ฒด์ ์ํ ์ ๋ณด๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ก๋ด ๊ด์ ์ ์ด ๋ช ๋ น์ ์ถ๋ ฅํ๋ค. ์ฌ๊ธฐ์ ํต์ฌ์ ํธ๋์ ํ ๋ฆฌ-์ ๋ ๋ณด์ ํจ์(trajectory-guided reward)์ ์ค๊ณ์ด๋ค. ์ฐธ์กฐ ๊ถค์ ์ โํ๋ฆฌ๊ทธ๋ฉ(pre-grasp) ๋จ๊ณโ(๋ฌผ์ฒด ์ ๊ทผ)์ โ๋งค๋ํฐ๋ ์ด์ ๋จ๊ณโ(๋ฌผ์ฒด ์กฐ์)๋ก ๋๋๊ณ , ๊ฐ ๋จ๊ณ๋ง๋ค ๋ค์๊ณผ ๊ฐ์ ๋ณด์์ ๋ถ๊ณผํ๋ค(๊ทธ๋ฆผ 2):
ํ๋ฆฌ๊ทธ๋ฉ ๋จ๊ณ ๋ณด์ (R_p): ๋ก๋ด ์๊ฐ๋ฝ ๋์ ํ์ฌ ์์น x_t^r๊ฐ ์ฐธ์กฐ ๊ถค์ ์ ๋ก๋ด ์๊ฐ๋ฝ ๋ ์์น \hat{x}_t^r์ ๊ฐ๊น์ธ์๋ก ๋ณด์์ด ์ฆ๊ฐํ๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, T_p ์๊ฐ ๋์ ๋ค์๊ณผ ๊ฐ์ ๋ณด์์ ์ฌ์ฉํ๋ค:
R_p = \sum_{t}^{T_p} 10\,\exp\Bigl(-10\,|x_t^r - \hat{x}_t^r|^2\Bigr).
๋งค๋ํฐ๋ ์ด์ ๋จ๊ณ ๋ณด์ (R_m): ๋ฌผ์ฒด๋ฅผ ๋ชฉํ ์์น๋ก ์ด๋ยท์กฐ์ํ๋ ๋จ๊ณ๋ก, ๋ก๋ด ์๊ณผ ๋ฌผ์ฒด ๋์์ ํจ๊ป ์ ์ฝํ๋ ์ข ํฉ ๋ณด์์ ์ ์ฉํ๋ค. ์ฐธ์กฐ ๊ถค์ ์ ์์ฌ ๋จ๊ณ t=T_p+1๋ถํฐ T_r๊น์ง์ ๋ํด ๋ค์์ ์ ์ํ๋ค:
R_m = \sum_{t=T_p+1}^{T_r}\bigl[\lambda_1 R^m_h + \lambda_2 R^m_o + \lambda_3\,1_{\text{contact}} + \lambda_4\,1_{\text{lift}}\bigr].
์ฌ๊ธฐ์ R^m_h๋ ํ๋ฆฌ๊ทธ๋ฉ ๋จ๊ณ์ ์ ์ฌํ๊ฒ ์ ์์ง์์ ์ฐธ์กฐ ๊ถค์ ๊ณผ ๊ฐ๊น๊ฒ ์ ์งํ๋ ์ ๋์ ๋ณด์, R^m_o = \exp\bigl(-\alpha_1(|x_t^o - \hat{x}_t^o|^2 + \alpha_2\phi(\theta_t^o,\hat{\theta}_t^o))\bigr)๋ ๋ฌผ์ฒด ์์น ๋ฐ ์์ธ๊ฐ ์ฐธ์กฐ์ ์ ์ฌํ ์๋ก ์ฆ๊ฐํ๋ ๋ฌผ์ฒด ๋ณด์์ด๋ค. ๋ํ 1_{\text{contact}}๋ ์๊ฐ๋ฝ ๋์ด ๋ฌผ์ฒด์ ์ ์ดํ ๊ฐ์, 1_{\text{lift}}๋ ๋ฌผ์ฒด๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ค์ด์ฌ๋ ธ์ ๋ ์ถ๊ฐ๋ก ์ฃผ์ด์ง๋ ๋ณด๋์ค ํญ์ด๋ค. ์คํ์์๋ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ \lambda_1=4,\lambda_2=10,\lambda_3=0.5,\alpha_1=50,\alpha_2=0.1 ๋ฑ์ผ๋ก ์ค์ ํ๋ค. ์ด์ ๊ฐ์ ๋ณด์ ์ค์ ์ผ๋ก ํ์ต๋ ์ ์ฑ ์ ์ฐธ์กฐ ๊ถค์ ์ ๋ฐ๋ผ ๋ฌผ์ฒด๋ฅผ ์กฐ์ํ๋ฉด์ ๋ฌผ๋ฆฌ์ ์ ์ฝ์ ๋ง์กฑํ๋๋ก ํ์ต๋๋ค.
ํ์ต ๋์ค ๋ฐ์ดํฐ ๋ค์์ฑ์ ํ๋ณดํ๊ธฐ ์ํด ๊ถค์ ์ฆ๊ฐ(trajectory augmentation)์ ์ํํ๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์ด๊ธฐ ๋ฌผ์ฒด ์์น๋ ํ์ ์ ๋ฌด์์๋ก ๋ณ๊ฒฝํ๊ณ ์ฐธ์กฐ ๊ถค์ ์ ์ฒด๋ฅผ ๋ณํํ๊ฑฐ๋, ๋ชฉํ ๋ฌผ์ฒด ์์น๋ฅผ ๋ณํ์ํค๋ฉฐ ์ ๋์ ๊ถค์ ์ ์ ํ ๋ณด๊ฐํ๋ค. ์ด๋ฅผ ํตํด ์ ์ฑ ์ ์ฐธ์กฐ ๊ถค์ ๊ณผ ๋ค๋ฅธ ์ด๊ธฐ/๋ชฉํ ์กฐ๊ฑด์์๋ ์ผ๋ฐํ๋ ์ ์๋๋ก ํ์ต๋๋ค.
์ผ์ชฝ์ ํ๋ฆฌ๊ทธ๋ฉ ๋จ๊ณ, ์ค๋ฅธ์ชฝ์ ๋งค๋ํฐ๋ ์ด์ ๋จ๊ณ์ด๋ค. R1, R2, R3๋ ์๋ก ๋ค๋ฅธ ๋ณด์ ํจ์ ์ค์ (์ ๋ณด์ ์ /๋ฌด)์ ๋ํ๋ธ๋ค. R3(์ ์ ๋ฐฉ์, ์ ๋ณด์์ ์ ๋จ๊ณ์ ๋ชจ๋ ํฌํจ)์ ๊ฐ์ฅ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ณด์ธ๋ค.
๋ณด์ ํจ์์ ํจ๊ณผ: Table I์ ๊ทธ๋ฆผ 3์ ๋น๊ต์์ ์ ์ ์๋ฏ, ํ๋ฆฌ๊ทธ๋ฉ ๋จ๊ณ์ ๋งค๋ํฐ๋ ์ด์ ๋จ๊ณ ๋ชจ๋์์ ์ ๊ถค์ ์ ์ฌ์ฑ์ ์ ๋ํ๋ ๋ณด์(R3 ๋ฐฉ์)์ ์ฌ์ฉํ ๋, ๊ฐ์ฅ ํ์ค์ ์ด๊ณ ์ฑ๊ณต์ ์ธ ์กฐ์์ด ๊ฐ๋ฅํ๋ค. ์ ๋ณด์์ ๋๋ฝํ R1, R2 ๋ฐฉ์์ ๊ฐ๊ฐ ์ ๊ทผ ๋๋ ์ง๊ธฐ ๋จ๊ณ์์ ๋นํ์ค์ ์ธ ๋์์ ์ ๋ฐํ์๊ณ , ์ฑ๊ณต๋ฅ ๋ ๋ฎ์๋ค. ํนํ R3 ์ ์ฑ ์ ๋ชจ๋ ๊ฐ์ฒด์ ๋ํด \text{SR}_3=1.00์ ๋ฌ์ฑํ ๋งํผ ์์ ์ ์ธ ์ฑ๋ฅ์ ๋ณด์๋ค.
์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ (Vision-based policy) ํ์ต: ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ๋ก๋ด ๊ณ ์ ์ํ์ ๋ฌผ์ฒด ์ํ๋ฅผ ๋ชจ๋ ํ์๋ก ํ๋ค. ๊ทธ๋ฌ๋ ์ค์ ํ๊ฒฝ์์๋ ๋ฌผ์ฒด์ ์ ํํ ์์น/์์ธ๋ฅผ ์ธก์ ํ๊ธฐ ์ด๋ ค์ฐ๋ฏ๋ก, ViViDex๋ RGB-D ์นด๋ฉ๋ผ๋ก ์ป์ 3D ํฌ์ธํธํด๋ผ์ฐ๋๋ง์ ์ ๋ ฅ์ผ๋ก ํ๋ ์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ถ๊ฐ๋ก ํ์ตํ๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์์ ์ป์ ์ฌ๋ฌ ์ฑ๊ณต ์๋ฎฌ๋ ์ด์ ๊ถค์ ์ ๋กค์์ํ๋ฉด์ ๊ฐ ์๊ฐ๋ง๋ค 3D ํฌ์ธํธํด๋ผ์ฐ๋ PC^w\in\mathbb{R}^{N\times3}์ ๋ก๋ด ๊ด์ ์ํ๋ฅผ ๊ธฐ๋กํ๋ค.
์ด๋ ๊ฒ ์์ง๋ ๋น์ฃผ์ผ ๋ฐ์ดํฐ๋ฅผ ํ์ต์ ํ์ฉํ๊ธฐ ์ํด, ์ขํ ๋ณํ(coordinate transformation) ๊ธฐ๋ฒ์ ์ ์ฉํ๋ค. ๋จผ์ , ์ธ๊ณ ์ขํ๊ณ(PC^w)๋ฅผ ๋ชฉํ ๋ฌผ์ฒด ์ค์ฌ ์ขํ๊ณ(PC^t)๋ก ์ด๋์์ผ ๋คํธ์ํฌ๊ฐ ๋ชฉํ ์์น๋ฅผ ๋ ์ ์ธ์ํ๋๋ก ํ๋ค. ์์ธ๋ฌ, ๋ ์์ธํ ์ํธ์์ฉ ์ ๋ณด๋ฅผ ์ป๊ธฐ ์ํด ์ ์ฒด ํฌ์ธํธํด๋ผ์ฐ๋๋ฅผ ๋ก๋ด์ ์๋ชฉ ๋ฐ ๊ฐ ์๊ฐ๋ฝ ๋์ขํ๊ณ(์ด 6๊ฐ)์ ์ขํ๊ณ๋ก ์ถ๊ฐ ๋ณํํ๋ค. ์ด๋ ๊ฒ ๋ณํ๋ ํฌ์ธํธํด๋ผ์ฐ๋๋ค์ ํฉ์ณ(PointNet ๊ธฐ๋ฐ) ์๊ฐ ํน์ง์ ์ถ์ถํ๊ณ , ์ด ํน์ง๊ณผ ๋ก๋ด ๊ด์ ์ํ๋ฅผ ์ ๋ ฅ์ผ๋ก ์ต์ข MLP๊ฐ ์ ์ด ๋ช ๋ น์ ์์ธกํ๋ค(๊ทธ๋ฆผ 3 ์ฐธ์กฐ).
๊ทธ๋ฆผ 3. ViViDex์ ์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ ๋คํธ์ํฌ ๊ตฌ์กฐ. ์ธ๊ณ ์ขํ(PC^w)์์ ๋ชฉํ ๋ฌผ์ฒด ์ขํ๊ณ(PC^t)์ ๋ค์์ ์ ๊ด์ ์ขํ๊ณ๋ก ํฌ์ธํธํด๋ผ์ฐ๋๋ฅผ ๋ณํํ์ฌ PointNet์ ์ ๋ ฅํ๋ค. ์ถ์ถ๋ ์๊ฐ ํน์ง๊ณผ ๋ก๋ด ๊ด์ ์ํ๋ฅผ ํจ๊ป ์ฌ์ฉํ์ฌ ํ๋์ ์์ธกํ๋ค.
ํ์ต ๋ฐฉ์์ผ๋ก๋ ํ๋ ๋ณต์ (Behavior Cloning)์ ํ์ฐ ์ ์ฑ (Diffusion policy) ๋ ๊ฐ์ง๋ฅผ ๋น๊ตํ๋ค. ์คํ ๊ฒฐ๊ณผ, ์ถฉ๋ถํ ์ ๋ฐ๋(point density)์ ํ์ฐ ๋ชจ๋ธ์ ์ฌ์ฉํ ์๋ก ์ฑ๋ฅ์ด ํฅ์๋์๋ค. ์๋ฅผ ๋ค์ด, ํฌ์ธํธํด๋ผ์ฐ๋๋ฅผ 512๊ฐ๊ฐ ์๋ 2048๊ฐ๋ก ๋๋ฆฌ๊ณ ํ์ฐ ์ ์ฑ ์ ์ฌ์ฉํ ๋ ์ฑ๊ณต๋ฅ ์ด ์ฆ๊ฐํจ์ด ํ์ธ๋์๋ค. Diffusion ์ ์ฑ ์ ๋ ธ์ด์ฆ์ ๋ ๊ฐ๊ฑดํ์ฌ ๋์ ์์ธก ์์ ์ฑ์ด ๋์๊ณ , ์ ๋ฐ์ ์ผ๋ก BC๋ณด๋ค ์ฑ๋ฅ์ด ์ฐ์ํ๋ค. ํ์ต ๋ฐ์ดํฐ๋ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ผ๋ก๋ถํฐ ์ป์ ์ฝ 100ํ ์ด์ ์ฑ๊ณต ๊ถค์ ์ด๋ฉฐ, ๋จ์ผ ์ํผ์๋ ํ์ต์ BC ์ฝ 10์๊ฐ, ํ์ฐ ์ ์ฑ ์ฝ 20์๊ฐ์ด ์์๋์๋ค.
3. ๊ด๋ จ ์ฐ๊ตฌ์์ ๋น๊ต ๋ถ์
ViViDex๋ ์ธ๊ฐ ๋์์์ ์ด์ฉํ ํ์ต๊ณผ ์๊ฐ ๊ธฐ๋ฐ ์กฐ์ ํ์ต ๋ถ์ผ์ ์ฌ๋ฌ ์ ํ ์ฐ๊ตฌ๋ค๊ณผ ์ฐ๊ด๋๋ค. ์ฃผ์ ๋น๊ต ๋์์ ๋ค์๊ณผ ๊ฐ๋ค.
DexMV (Qin et al., ECCV 2022): ์ธ๊ฐ ์กฐ์ ๋์์์์ 3D ์๊ณผ ๋ฌผ์ฒด ์์ธ๋ฅผ ์๋ ์ถ์ถํ ๋ค, ์ด๋ฅผ ๋ก๋ด ์๋ฎฌ๋ ์ด์ ๋ฐ๋ชจ๋ก ๋ณํํ์ฌ RL ์ ์ฑ ํ์ต์ ํ์ฉํ๋ค. ๋์์์ผ๋ก๋ถํฐ ์ถ์ถ๋ ๊ถค์ ์ ์ต์ ํ ๊ธฐ๋ฐ์ผ๋ก ๋ก๋ด ๊ด์ ๊ถค์ ์ผ๋ก ๋ฆฌํ๊ฒํ ํ๊ณ , DAPG ๋ฑ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํ์ตํ๋ค. ๊ทธ๋ฌ๋ ์ด ๋ฐฉ๋ฒ์ ํฌ์ฆ ์ถ์ ์ก์์ด ์ปค์ ๊ฐ์ฒด๋น ์์ญ~์๋ฐฑ ๊ฐ์ ์์์ด ํ์ํ๋ฉฐ, ๋ณด์ ํจ์ ์กฐ์ ๊ณผ ๋ฌผ์ฒด CAD ๋ชจ๋ธ ๋ฑ ํน๊ถ ์ ๋ณด(privileged information)์ ์์กดํ๋ค๋ ๋จ์ ์ด ์๋ค.
DexVIP (Mandikal & Grauman, CoRL 2022): ์ ํ๋ธ ๋์์ ๋ฑ ์ค์ ํ๊ฒฝ์ in-the-wild ์์์์ ์ธ๊ฐ ์-๋ฌผ์ฒด ์ํธ์์ฉ์ ์ถ์ถํ์ฌ ๋ก๋ด ๊ทธ๋ฆฌํ(grasping) ์ ์ฑ ์ ํ์ตํ๋ค. ํนํ ์ธ๊ฐ ์์ ํฌ์ฆ์ ๋ํ ์ฌ์ (prior)์ ๊ฐํํ์ต์ ๋์ ํ์ฌ ํ์ต ์๋์ ์ผ๋ฐํ์ฑ์ ํฅ์์ํจ๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ค์ํ ๊ฐ์ฒด๋ก์ ํ์ฅ์ฑ์ด ๋ฐ์ด๋๋ฉฐ, ์ ๋ฌธ์ ์ฅ๋น๊ฐ ํ์ ์๋ ๋น์ฉ ํจ์จ์ ์ธ ์ ๊ทผ๋ฒ์ ์ ์ํ๋ค. ๊ทธ๋ฌ๋, DexVIP๋ ์ฃผ๋ก ๊ทธ๋ฆฝ ๋์์ ํ์ ๋์ด ์์ผ๋ฉฐ, ์์ ํ ์ ๋์ ์ ์ด๊น์ง ํฌํจํ์ง ์๋๋ค.
VideoDex (Shaw et al., CoRL 2022): ์ธ๊ฐ์ ์กฐ์ ๋์์์์ ์๊ฐ/ํ๋/๋ฌผ๋ฆฌ์ ์ ํ ์ง์์ ์ถ์ถํ์ฌ ๋ก๋ด ์ ์ฑ ํ์ต์ ํ์ฉํ๋ค. ์์์ผ๋ก๋ถํฐ ํ์ตํ visual prior์ physical prior๋ฅผ ๋คํธ์ํฌ์ ์ ์ฉํด ๋ค์ํ ์กฐ์ ๊ณผ์ ์์ ๊ฐ๊ฑดํ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ์๋ค. ์ค์ ํ๊ฒฝ์์ ๋ค์์ ๊ฐ์ฒด๋ฅผ ๋ค๋ฃฐ ์ ์๋ ๋ฒ์ฉ์ ์ธ ์ ์ฑ ํ์ต์ด ๋ชฉํ์ด๋ค.
๊ธฐํ ์ฐ๊ตฌ๋ค: DexRepNet, VideoDex ๋ฑ ์ฌ๋ฌ ์ฐ๊ตฌ๊ฐ ๊ธฐํํ์ ํํ, ํ ๋ ์คํผ๋ ์ด์ , ๊ฐํํ์ต ๋ณด์กฐ ์ ๋ณด ๋ฑ์ ํตํด ์ ๋ฐ ์กฐ์์ ๋ค๋ฃจ์๋ค. ๊ทธ๋ฌ๋ ๋๋ถ๋ถ์ ๋ชจ๋ ธ-์ด๋ ๋์ผ ์นด๋ฉ๋ผ ์ ๋ ฅ์ด๋ ํน์ ์ฅ๋น(์: VR ๊ธ๋ฌ๋ธ)์ ์์กดํ๊ฑฐ๋, ๊ด๋ฒ์ํ ์ ๋ฌธ๊ฐ ๋ฐ์ดํฐ ์์ง์ ์๊ตฌํ๋ค.
์ด๋ค์ ๋นํด ViViDex์ ์ฐจ๋ณ์ ์ ๋ค์๊ณผ ๊ฐ๋ค. ์ฒซ์งธ, ๋จ์ผ ๋น๋์ค(๊ฐ์ฒด๋น 1~3ํธ)๋ง์ผ๋ก๋ ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ ๋งํผ ๋ฐ์ดํฐ ํจ์จ์ฑ์ด ๋ฐ์ด๋๋ค. ์ค์ ๋ก ํ II์์ ์ ์ ๋ฐฉ๋ฒ(S6, S7)์ ๊ฐ์ฒด๋ง๋ค 1ํธ์ ํ๋ จ ๋์์๋ง ์ฌ์ฉํ์ฌ ๋ชจ๋ ๊ฐ์ฒด์ Relocate ๊ณผ์ ์์ \text{SR}_3=1.00์ ๋ฌ์ฑํ๋๋ฐ, DexMV๋ ์์ญ~์๋ฐฑ ํธ์ ๋์์์ผ๋ก๋ ์ผ๋ถ ๊ฐ์ฒด์์ ๋ฎ์ ์ฑ๋ฅ์ ๋จธ๋ฌผ๋ ๋ค. ๋์งธ, ViViDex๋ ๋ก๋ด์ ๋ฌผ์ฒด CAD ๋ชจ๋ธ์ด๋ ground-truth ๋ฌผ์ฒด ํฌ์ฆ ๊ฐ์ ํน๊ถ ์ ๋ณด๋ฅผ ์ ํ ์ฌ์ฉํ์ง ์๋๋ค. ๋์ , 3D ํฌ์ธํธํด๋ผ์ฐ๋๋ฅผ ํตํด ๊ด์ธก๋ ์ ๋ณด๋ง์ผ๋ก ์ ์ฑ ์ ํ์ตํ๋ค. ์ด๋ ์ค์ ๋ก๋ด ์ ์ฉ ์ ์ผ์๋ง์ผ๋ก๋ ์ ์ฑ ์คํ์ด ๊ฐ๋ฅํจ์ ์๋ฏธํ๋ค. ์ ์งธ, RL ๋ณด์์ ์ฐธ์กฐ ๊ถค์ ๊ณผ ์ผ์น์ํค๋ ๋ฐฉ์์ผ๋ก ์ค๊ณํ์ฌ ๋ณ๋์ ๋ณต์กํ ๋ณด์ ์์ง๋์ด๋ง์ ์ต์ํํ๊ณ , ์ขํ ๋ณํ์ ํฌํจํ ๋คํธ์ํฌ ๊ตฌ์กฐ ๊ฐ์ ์ผ๋ก ์๊ฐ ์ ๋ณด๋ฅผ ํจ์จ์ ์ผ๋ก ํ์ฉํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ViViDex๋ ๊ธฐ์กด์ ์ธ๊ฐ ๋์์ ๊ธฐ๋ฐ ๋ฐฉ๋ฒ๋ค์ด ๊ฐ๋ ์ก์ ๋ฌธ์ ์ ํ์ฅ์ฑ ํ๊ณ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ทน๋ณตํ๋ค.
4. ์คํ ์ค์ ๋ฐ ๊ฒฐ๊ณผ
๋ ผ๋ฌธ์ ์ธ ๊ฐ์ง ์ ๋ฐ ์กฐ์ ๊ณผ์ (relocate, pour, place inside)์ ๋ํด ์ฌ์ธต ์คํ์ ์ํํ๋ค. ๋ค์์ ์ฃผ์ ์คํ ์ธ๋ถ ์ฌํญ๊ณผ ๊ฒฐ๊ณผ์ด๋ค.
๋ฐ์ดํฐ์ ๋ฐ ํ๊ฒฝ: ์คํ์๋ DexYCB ๋ฐ์ดํฐ์ ์ 5๊ฐ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๋ค. ๊ฐ ๊ฐ์ฒด์ ๋ํด ํ๋กํ ์ฝ #1(๊ฐ์ฒด๋ณ ๊ฐ๋ณ ์ ์ฑ , ์ด๊ธฐ ์์น๋ ๊ทธ๋ฆผ2์ ์ฒซ ๋ฒ์งธ ํ ์ฐธ์กฐ)๊ณผ ํ๋กํ ์ฝ #2(๋ค์ค ๊ฐ์ฒด ํตํฉ ์ ์ฑ , ๊ฐ ๊ฐ์ฒด๋ณ 3๊ฐ์ง ์ด๊ธฐ ์์น ์ฌ์ฉ) ๋ ๊ฐ์ง ํ๊ฐ ์ค์ ์ ์ ์ฉํ๋ค. ๋ํ Adroit ๋ค์ค ์์ ๋ ํธ๋ ๋ฐ MuJoCo ์๋ฎฌ๋ ์ดํฐ๋ฅผ ๊ธฐ๋ณธ ํ๊ฒฝ์ผ๋ก ์ฌ์ฉํ๋, ์ค์ ์ฑ๊ณผ ์๋ ํฅ์์ ์ํด Allegro ํธ๋๋ฅผ UR5 ์์ ์ฐ๊ฒฐํ์ฌ SAPIEN ์๋ฎฌ๋ ์ดํฐ์์๋ ํ๋ จ์ ์งํํ๋ค.
ํ๊ฐ ์งํ: ์ฃผ์ ํ๊ฐ์งํ๋ ์ฑ๊ณต๋ฅ (success rate, SR)์ด๋ค. Relocate ๊ณผ์ ์ ๊ฒฝ์ฐ DexMV ์ฐ๊ตฌ๋ค๊ณผ ์ผ๊ด๋๊ฒ ๋ฌผ์ฒด-๋ชฉํ๊ฐ ๊ฑฐ๋ฆฌ 10cm ์ด๋ด์ \text{SR}_{10}์ ์ฌ์ฉํ์ผ๋ฉฐ, ๋ ์๊ฒฉํ 3cm ์ด๋ด \text{SR}_3๋ ํจ๊ป ์ธก์ ํ๋ค. ๋ํ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ฐธ์กฐ ๊ถค์ ์ผ์น๋๋ฅผ ํ๊ฐํ๊ธฐ ์ํด E_o (๋ฌผ์ฒด ์์น ์ค์ฐจ ํ๊ท ), E_h (์๋ ์์น ์ค์ฐจ ํ๊ท ), \text{SR}_o(E_o<1cm ๋น์จ), \text{SR}_h(E_h<5cm ๋น์จ) ์งํ๋ฅผ ์ด์ฉํ๋ค. ๋น์ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ฃผ๋ก \text{SR}_3๋ฅผ ๋ณด๊ณ ์ฑ๊ณต ์ฌ๋ถ๋ฅผ ํ๋จํ๋ค.
๋ฒ ์ด์ค๋ผ์ธ ๋ฐ ๋น๊ต: DexMV์์ ์ ์๋ ๋ค์ํ ํ์ต ๋ฐฉ๋ฒ(TRPO, SOIL, GAIL+, DAPG)์ ์ฌํํ์ฌ ๋น๊ตํ๋ค. ํนํ DAPG๋ DexMV ๋ ผ๋ฌธ์์ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ฐ์ํ ๋ฐฉ๋ฒ์ด์๋ค. ViViDex์์๋ PPO๋ฅผ ์ฌ์ฉํ์ฌ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ํ์ตํ๊ณ , ๋น์ ์ ์ฑ ์ ํ๋ ๋ณต์ ์ ํ์ฐ ์ ์ฑ ์ ๋น๊ต ์คํํ๋ค.
์ฃผ์ ๊ฒฐ๊ณผ
Relocate ๊ณผ์ (์ํ ๊ธฐ๋ฐ ์ ์ฑ ): ํ II์ Relocate ๊ณผ์ ์ ์ฑ๋ฅ ๋น๊ต๊ฐ ์์ฝ๋์ด ์๋ค. ์ ์ ๋ฐฉ๋ฒ(S6: Adroit/PPO, S7: Allegro/PPO)์ ๊ฐ์ฒด๋น ๋จ 1ํธ์ ๋์์์ผ๋ก ํ๋ จํ์์๋ ๋ชจ๋ ๊ฐ์ฒด์์ \text{SR}_{10} = \text{SR}_3 = 1.00์ ๋ฌ์ฑํ๋ค. ๋ฐ๋ฉด, DexMV์ DAPG ๊ธฐ๋ฐ ์ ์ฑ (S4)์ ์ผ๋ถ ๊ฐ์ฒด(์: ์คํ์์)์์ \text{SR}_3=0์ผ๋ก ๋จ์ด์ง๊ณ , ๋ํํด๋จํยท๋จธ๊ทธ์์ ๋ฎ์ ์ฑ๋ฅ์ ๋ณด์๋ค. S6/S7์ ์ ์ฑ ์ DexMV๊ฐ ์์ญ ๊ฐ์ ๋์์์ ์ฌ์ฉํด๋ ๋ฌ์ฑํ์ง ๋ชปํ๋ 5๊ฐ ๊ฐ์ฒด ๋ชจ๋์ ๋ํ ์์ ํ ์ฑ๊ณต๋ฅ ์ ์ป์๋ค. ์ฃผ๋ชฉํ ์ ์ S6(Adroit)์ S7(Allegro)์ ์ฑ๋ฅ์ด ๊ฑฐ์ ๋์ผํ๋ค๋ ๊ฒ์ผ๋ก, ์ด๋ ์ ์ ๊ธฐ๋ฒ์ด ๋ก๋ด ํธ๋์ ๊ตฌ์ฒด์ ๋ชจ๋ธ ์ฐจ์ด์๋ ๊ฐ๊ฑดํจ์ ์์ฌํ๋ค. ๊ฐํํ์ต ๋จ๊ณ์์ ์ขํ ํ์ ์ฆ๊ฐ์ ์ ๊ฑฐํ S8์ ์ฝ๊ฐ์ ์ฑ๋ฅ ์ ํ๋ง ๋ณด์ฌ, ํ์ต๋ ์ ์ฑ ์ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํ์ธํ๋ค.
์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ๋ณด์ ํจ์ ํ๊ฐ: Table I(๊ทธ๋ฆผ ์ฐธ์กฐ)์ ๋ํ๋ ์ธ ๊ฐ์ง ๋ณด์ ์ค์ (R1, R2, R3) ์คํ ๊ฒฐ๊ณผ, ์์ ์ธ๊ธํ ๋ฐ์ ๊ฐ์ด R3 ๋ฐฉ์(ํ๋ฆฌ๊ทธ๋ฉ/๋งค๋ํฐ๋ ์ด์ ๋จ๊ณ ๋ชจ๋์์ ์ ์์น ๋ณด์ ์ฌ์ฉ)์ด ํ๊ท ์๋ ์ค์ฐจ(E_h)๋ฅผ ์ต์ํํ๊ณ \text{SR}_3๋ฅผ 1.00์ผ๋ก ๋ฌ์ฑํ์ฌ ์ต๊ณ ์ฑ๋ฅ์ ๋ณด์๋ค. ์ด๋ ์ ๊ถค์ ๋ณด์์ ์ฌ์ฉํ๋ ๊ฒ์ด ์์ ์ ์ธ ์๋น ์ ๊ทผ ๋ฐ ์ง๊ธฐ ๋์์ ํ์์ ์์ ํ์ธํ๋ค.
์๊ฐ ๊ธฐ๋ฐ ์ ์ฑ ํ์ต ๊ฒฐ๊ณผ: ๋น์ ์ ์ฑ ํ์ต์๋ ์ํ ์ ์ฑ ๋กค์์์ผ๋ก ์ป์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค(์ฝ 100๊ฐ์ ์ฑ๊ณต ๊ถค์ ). ํ III๋ Relocate ๊ณผ์ ์์ \text{SR}_3๋ฅผ ๋ณด์ฌ์ค๋ค. ํฌ์ธํธํด๋ผ์ฐ๋ ์๋ฅผ 512๊ฐ(V1)์์ 2048๊ฐ(V2)๋ก ๋๋ฆฌ์ ์ ์ฒด ์ฑ๊ณต๋ฅ ์ด 0.86\to0.96๋ก ์ฆ๊ฐํ์ผ๋ฉฐ, ํ์ฐ ์ ์ฑ (V3)์ ์ ์ฉํ์ ํ๊ท 0.99๋ก ๋์ฑ ํฅ์๋์๋ค. ์ฆ, ๊ณ ๋ฐ๋ ํฌ์ธํธ ์ฌ์ฉ๊ณผ ํ์ฐ ๋ชจ๋ธ์ด ์๊ฐ ์ ์ฑ ์ ์ฑ๋ฅ์ ๋์ด์ฌ๋ ธ๋ค. ๋น์ ์ ์ฑ ์ ์ํ ์ ์ฑ ์ ๋นํด ์ฝ๊ฐ์ ์ฑ๋ฅ ์์ค์ ๋ณด์์ง๋ง, ์ค์ ๋ฌผ์ฒด ๊ด์ธก ์ ๋ณด๋ง์ผ๋ก๋ ๋งค์ฐ ๋์ ์ฑ๊ณต๋ฅ ์ ๊ตฌํํ๋ค.
ํตํฉ ์ ์ฑ (๋ค์ค ๊ฐ์ฒด) ํ์ต: Protocol #2 ์ค์ ์์ ๋ค์ค ๊ฐ์ฒด๋ฅผ ํตํฉํ์ฌ ํ์ตํ ๊ฒฐ๊ณผ๋ ์ํธํ๋ค. ํ IV(๋ ผ๋ฌธ)์๋ 5๊ฐ ๊ฐ์ฒด๋ฅผ ๋ชจ๋ ๊ณ ๋ คํ ๋จ์ผ ์ ์ฑ ์ ์ฑ๋ฅ์ด ์ ์๋์๋ค. ์ขํ ๋ณํ ๋ชจ๋ ์ถ๊ฐ ๋ฐ ์ ๊ด์ ์ขํ๊ณ์ ์ธ๋ถ ๋ณํ ์ ์ฉ์ \text{SR}_3๋ฅผ ํฌ๊ฒ ํฅ์์์ผฐ๋ค(Behavior Cloning ๊ธฐ์ค ํ๊ท 81%โ95%, Diffusion ๊ธฐ์ค 93%โ99%). ์ฆ, ์ ์๋ ์๊ฐ์ ํผ์ณ ๋ณํ ๊ธฐ๋ฒ์ด ๋ค์ค ๊ฐ์ฒด ์ผ๋ฐํ ์ฑ๋ฅ์ ๊ธ์ ์ ์ํฅ์ ์ฃผ์๋ค.
Pour ๋ฐ Place-Insde ๊ณผ์ : ViViDex์ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ๋๋จธ์ง ๋ ๊ณผ์ ์์๋ ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์๋ค. ํ V๋ฅผ ๋ณด๋ฉด, Adroit ํธ๋๋ฅผ ์ด์ฉํ ์ ์ ๋ฐฉ๋ฒ(L5)์ Pour ๊ณผ์ ์์ 97%, Place-Insde ๊ณผ์ ์์ 68% ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ๋ค. ์ด๋ DexMV์ ์ต์ ๊ธฐ๋ฒ(DAPG, L4)์ด ๊ฐ๊ฐ 27%์ 31%์ ๊ทธ์น ๊ฒ๋ณด๋ค ํ์ ํ ๋๋ค. ์ฆ, ๋จ ํ ํธ์ ๋์์๋ง์ผ๋ก๋ ๊ธฐ์กด ๋ฐฉ๋ฒ๋ณด๋ค ์๋ฑํ ์ฑ๋ฅ์ ์ป์๋ค. ํต์ ์คํ์ผ๋ก BC์ Diffusion์ ๋น๊ตํ ๊ฒฐ๊ณผ, ๋ ๋ฐฉ์ ๋ชจ๋ 97%/68%๋ก ์ ์ฌํ์ผ๋ฉฐ, Diffusion์ด ์ํญ ํฅ์๋ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์๋ค.
์ค์ ๋ก๋ด ์คํ: UR5 ์๊ณผ Allegro ํธ๋, ๋จ์ผ RGB-D ์นด๋ฉ๋ผ๋ฅผ ์ด์ฉํ์ฌ ์ค์ ์ธ๊ณ์์ ์คํ์ ์ํํ๋ค. ์๋ฎฌ๋ ์ดํฐ์์ ํ์ต๋ ์ํ ๊ธฐ๋ฐ ์ ์ฑ ์ ์ค์ ์ ์ ์ฉํ์ฌ ๋ฐ์ดํฐ(ํฌ์ธํธํด๋ผ์ฐ๋, ๊ด์ ์ํ)๋ฅผ ์์งํ ๋ค ๋น์ ์ ์ฑ ์ ํ์ตํ๋ค. ๊ทธ๋ฆผ 4์ ํ VI์ ์์ฝ๋ ๋ฐ์ ๊ฐ์ด, ์ ์๋ ํตํฉ ๋น์ ์ ์ฑ (R3, Diffusion)์ 5๊ฐ์ ์คํ ๋ฌผ์ฒด์ ๋ํด ํ๊ท 80%์ ์ฑ๊ณต๋ฅ ์ ๊ธฐ๋กํ๋ค(๊ฐ๋ณ ์ ์ฑ R1: 88%, ํตํฉ BC R2: 72%). ๋ํ 5๊ฐ์ ๋ฏธ์ง์ ๋ฌผ์ฒด(ํฌ๋์ปค๋ฐ์ค, ์คํ๋ ์ด๋ณ ๋ฑ)์๋ 68%์ ์ฑ๊ณต๋ฅ ์ ๋ณด์ฌ, ์ ์๋ ๋ชจ๋ธ์ด ๋ฏธ์ง ๊ฐ์ฒด๋ก์ ํ์ฅ์์๋ ํจ๊ณผ์ ์์ ํ์ธํ๋ค.
์์ฝํ๋ฉด, ViViDex๋ ์ ํ๋ ์์ ์ธ๊ฐ ๋์์์ผ๋ก๋ถํฐ ๊ณ ํ์ง์ ๊ถค์ ์ ์์ฑํ๊ณ ์ด๋ฅผ ์ ์ฑ ํ์ต์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ์ฌ, ์ธ ๊ฐ์ง ๊ณผ์ ์์ ๊ธฐ์กด ๋ฐฉ๋ฒ์ ๋ฅ๊ฐํ๋ ์ฑ๋ฅ์ ์ ์ฆํ๋ค. ํนํ, ๋ณต์ ๊ฐ์ฒด ๋ฐ ์ค์ ํ๊ฒฝ์ผ๋ก๋ ์ ์ผ๋ฐํ๋๋ ์ ์ด ์ฃผ๋ชฉํ ๋งํ๋ค.