flowchart TD
subgraph limit["MimicGen์ ํ๊ณ"]
A["๋จ์ผ ์๋ธํ์คํฌ ์ํ์ค"] --> B["์ํ ๋
๋ฆฝ ๋์ ๋ถ๊ฐ"]
C["๊ณ ์ ๋ ์๊ฐ ์ ๋ ฌ"] --> D["๋น๋๊ธฐ ์คํ ๋ถ๊ฐ"]
E["๋จ์ผ ์ฐธ์กฐ ๋ฌผ์ฒด"] --> F["์์ ํ์ ์ด๋ ค์"]
end
subgraph require["์ํ ์กฐ์์ ์๊ตฌ์ฌํญ"]
G["๊ฐ ํ์ด ๋
๋ฆฝ์ ์ผ๋ก ๋ค๋ฅธ ๋ชฉํ ์ํ"]
H["์ํ์ด ๋์์ ํ๋์ ๋ชฉํ ํ์
"]
I["ํ ํ์ด ๋จผ์ ์๋ฃ ํ ๋ค๋ฅธ ํ ์์"]
end
B --> G
D --> H
F --> I
๐DexMimicGen ๋ฆฌ๋ทฐ
๐ Ping. ๐ Ring. โ๏ธ Dig. A tiered review series: quick look, key ideas, deep dive.
- ๐ค DexMimicGen์ ์์์ ์ธ๊ฐ ์์ฐ์ ํ์ฉํ์ฌ bimanual dexterous manipulation์ ์ํ ๋๊ท๋ชจ ์๋ฎฌ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก ์์ฑํ๋ ์์คํ ์ ๋๋ค.
- ๐ก ์ด ์์คํ ์ MimicGen์ ํ์ฅํ์ฌ ๋ ํ์ ๋ ๋ฆฝ์ ์ธ ํํ subtask, ์ ๋ฐํ ์กฐ์ ์ ์๊ตฌํ๋ coordination subtask, ํน์ ์์๊ฐ ํ์ํ sequential subtask๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋๋ก ์ค๊ณ๋์์ต๋๋ค.
- ๐ DexMimicGen์ 9๊ฐ์ง ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์์ 21K๊ฐ์ ๋ฐ๋ชจ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ์์ฑํ์ผ๋ฉฐ, real-to-sim-to-real ํ์ดํ๋ผ์ธ์ ํตํด ์ค์ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ can sorting task์ ์ ์ฉ๋์ด 90%์ ์ฑ๊ณต๋ฅ ์ ์ ์ฆํ์ต๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
DexMimicGen์ ๋ชจ๋ฐฉ ํ์ต(Imitation Learning)์ ํตํด ๋ก๋ด ์กฐ์ ๊ธฐ์ ์ ๊ฐ๋ฅด์น๋ ๋ฐ ์์ด, ํนํ ๋ฐ์ด๋งค๋ด์ผ(bimanual) ๋ฐ ์์ฌ์ฃผ ์๋(dexterous) ๋ก๋ด์ ์ํ ๋ฐ์ดํฐ ํ๋์ ์ฃผ์ ๋ณ๋ชฉ ํ์์ ํด๊ฒฐํ๊ณ ์ ํฉ๋๋ค. ํด๋จธ๋ ธ์ด๋์ ๊ฐ์ ๋ฐ์ด๋งค๋ด์ผ ๋ก๋ด์ ๋ ํ๊ณผ ๋ค์ค ์๊ฐ๋ฝ์ ๋์์ ์ ์ดํ๊ธฐ ์ด๋ ค์ ๋ฐ์ดํฐ ์์ง์ด ๋์ฑ ๋ณต์กํฉ๋๋ค. ์ด ๋ ผ๋ฌธ์ ์์์ ์ธ๊ฐ ์์ฐ(demonstrations)์ผ๋ก๋ถํฐ ๋๊ท๋ชจ์ ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก ํฉ์ฑํ๋ ์์คํ ์ธ DexMimicGen์ ์๊ฐํ๋ฉฐ, ์๋ฎฌ๋ ์ด์ ๊ธฐ๋ฐ์ ๋ฐ์ดํฐ ์์ฑ ๋ฐฉ์์ ์ ์ํฉ๋๋ค.
์ฃผ์ ๊ธฐ์ฌ:
- DexMimicGen ์์คํ : ๋ฐ์ด๋งค๋ด์ผ ๋ฐ ์์ฌ์ฃผ ์๋ ๋ก๋ด ์กฐ์์ ์ํ ๋ฐ์ดํฐ ์์ฑ ์์คํ ์ ์๊ฐํฉ๋๋ค. ์ด๋ ๋น๋๊ธฐ์(asynchronous) ํ๋ณ ์คํ ์ ๋ต(per-arm execution strategy), ๋๊ธฐํ(synchronization), ์์ฐจ์ ์ ์ฝ(sequential constraints)๊ณผ ๊ฐ์ ํต์ฌ ์ค๊ณ ์์๋ฅผ ํฌํจํ์ฌ ๋ค์ค ํ ํ์ ์ ์ฒ๋ฆฌํ ์ ์๊ฒ ํฉ๋๋ค.
- ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ ๋ฐ ๋ฐ์ดํฐ์ : ์ธ ๊ฐ์ง ๋ค๋ฅธ ๊ตฌํ์ฒด(embodiment) ์ ํ์ ๊ฑธ์ณ ์ํ ๊ฐ์ง ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ๊ตฌ์ถํฉ๋๋ค. ๋จ 60๊ฐ์ ์๋ณธ ์ธ๊ฐ ์์ฐ์ ์ฌ์ฉํ์ฌ ์ด ์์ ๋ค ์ ๋ฐ์ ๊ฑธ์ณ 21,000๊ฐ์ ๋ฐ๋ชจ๋ฅผ ์์ฑํ๊ณ , ๋ฐ์ดํฐ ์์ฑ ๋ฐ ์ ์ฑ ํ์ต ๊ฒฐ์ ์ด ์์ด์ ํธ ์ฑ๋ฅ์ ๋ฏธ์น๋ ์ํฅ์ ์ฐ๊ตฌํฉ๋๋ค.
- ์ค์ธ๊ณ ๋ฐฐํฌ: ์ค์ธ๊ณ ์บ ๋ถ๋ฅ ์์ ์ ๋์งํธ ํธ์(digital twin)์ ํ์ฉํ Real-to-Sim-to-Real ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ์ฌ, ์์ฑ๋ ๊ถค์ (trajectories)์ ์ค์ธ๊ณ ๋ก๋ด์ ์ ์ฉํ์ฌ 90%์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํฉ๋๋ค. ์ด๋ ์๋ณธ ๋ฐ๋ชจ๋ง ์ฌ์ฉํ์ ๋์ 0% ์ฑ๊ณต๋ฅ ๊ณผ ๋์กฐ์ ์ ๋๋ค.
ํต์ฌ ๋ฐฉ๋ฒ๋ก (DexMimicGen):
DexMimicGen์ MimicGen [17]์ ๊ธฐ๋ฐ์ผ๋ก ํ์ง๋ง, ๋ฐ์ด๋งค๋ด์ผ ๋ฐ ์์ฌ์ฃผ ์๋ ์กฐ์์ ๊ณ ์ ํ ๋์ ์ ํด๊ฒฐํฉ๋๋ค. MimicGen์ ๋จ์ผ ๋ก๋ด ํ๊ณผ ํํ ์ง๊ฒ(parallel-jaw gripper)์ ์ด์ ์ ๋ง์ถ์ด ๊ฐ ์์ ์ ์ผ๋ จ์ ์๋ธํ์คํฌ(subtasks)๋ก ๋ถํดํ๊ณ , ๊ฐ์ฒด ์ค์ฌ(object-centric) ์ขํ๊ณ๋ฅผ ์ฌ์ฉํ์ฌ ๊ถค์ ์ ๋ณํํฉ๋๋ค. DexMimicGen์ MimicGen์ ๊ฐ์ ์ ์ ์งํฉ๋๋ค:
- (A1) ์ก์ ๊ณต๊ฐ(action space) A๋ ๊ฐ ๋ก๋ด ํ์ ๋ํด ์๋ ์ดํํฐ(end effector) ์ ์ด๊ธฐ์ ์ ๋์ ๋ช ๋ น์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- (A2) ๊ฐ ์์ ์ ๊ฐ์ฒด ์ค์ฌ ์๋ธํ์คํฌ๋ก ๋๋ ์ ์์ต๋๋ค.
- (A3) ๋ก๋ด ํ์ด ๊ฐ์ฒด์ ์ ์ดํ๊ธฐ ์ ์ ๊ฐ์ฒด์ ์์ธ(pose)๋ฅผ ๊ด์ฐฐํ๊ฑฐ๋ ์ถ์ ํ ์ ์์ต๋๋ค.
๋ฐ์ด๋งค๋ด์ผ ํ๊ฒฝ์์ MimicGen์ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด DexMimicGen์ ์ธ ๊ฐ์ง ์ ํ์ ์๋ธํ์คํฌ๋ฅผ ๋์ ํฉ๋๋ค:
- ๋ณ๋ ฌ ์๋ธํ์คํฌ (Parallel Subtasks):
- ๋ ํ์ด ๋ ๋ฆฝ์ ์ผ๋ก ์๋ํ์ฌ ๋ค๋ฅธ ๋ชฉํ๋ฅผ ๋ฌ์ฑํด์ผ ํ๋ ๊ฒฝ์ฐ์ ํด๋นํฉ๋๋ค. (์: ๋ ๊ฐ์ ๋ค๋ฅธ ๋ฌผ๊ฑด์ ๋์์ ์ก๋ ๊ฒฝ์ฐ).
- DexMimicGen์ ๊ฐ ํ์ ๋ํด ๋ณ๋์ ์๋ธํ์คํฌ ์ํ์ค๋ฅผ ์ ์ํฉ๋๋ค: S_{a1}^1(o_1), ..., S_{a1}^{M1}(o_{M1}) ๋ฐ S_{a2}^1(o_1), ..., S_{a2}^{M2}(o_{M2}).
- ๋น๋๊ธฐ์ ์คํ ์ ๋ต(Asynchronous execution strategy)์ ์ฌ์ฉํฉ๋๋ค. ๊ฐ ํ์ ๋ํ ์ก์ ํ(action queue)๋ฅผ ์ ์งํ๋ฉฐ, ๊ฐ ํ์ ๋ณ๋ ฌ๋ก ์ก์ ์ ๋ํ(dequeue)ํฉ๋๋ค. ํ ํ์ ํ๊ฐ ๋น๋ฉด, ๋ค์ ์๋ธํ์คํฌ์ ํด๋นํ๋ ๋ณํ๋ ์ธ๊ทธ๋จผํธ๋ก ํ๋ฅผ ์ฑ์๋๋ค. ์ด ๋ฐฉ์์ ์๋ธํ์คํฌ ๊ฐ์ ์ ๋ ฌ ์์ด๋ ๋ ํ์ ์ก์ ์คํ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ์กฐ์ ์๋ธํ์คํฌ (Coordination Subtasks):
- ๋ ํ์ด ๊ณต์ ๋ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ์ ๋ฐํ ํ์ ์ด ํ์ํ ๊ฒฝ์ฐ์ ๋๋ค. (์: ์์์ผ๋ก ๋๊ป์ ๋๋ ๊ฒฝ์ฐ).
- ๋ ํ ๋ชจ๋์ ๊ถค์ ์ด ๋์ผํ ๋ณํ(transformation)์ผ๋ก ์์ฑ๋๊ณ , ์คํ ์ค์ ๋ ์๋ ์ดํํฐ ๊ฐ์ ์๋์ ์์ธ๊ฐ ์๋ณธ ์์ฐ๊ณผ ์ผ์นํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
- ๋๊ธฐํ ์ ๋ต(Synchronization strategy): ์๋ณธ ๋ฐ๋ชจ ์ธ๋ถํ ์ ์กฐ์ ์๋ธํ์คํฌ๊ฐ ๋์ผํ ํ์์คํ ์์ ๋๋๋๋ก ๊ฐ์ ํฉ๋๋ค. ์คํ ์, ๊ฐ ํ์ ๋ค๋ฅธ ํ์ด ์กฐ์ ์๋ธํ์คํฌ์์ ๋จ์ ๋จ๊ณ ์๊ฐ ๊ฐ์์ง ๋๊น์ง ๊ธฐ๋ค๋ฆฝ๋๋ค.
- ๋ณํ ์คํด(Transformation schemes):
- Transform ์คํด: ๊ฐ์ฒด์ ํ์ฌ ์์ธ T_{o'i}^W์ ํด๋น ์๋ณธ ์ธ๊ทธ๋จผํธ์ ๊ฐ์ฒด ์์ธ T_{oi}^W์์ ๊ณ์ฐ๋ ๋ณํ ํ๋ ฌ T_{o'i}^W (T_{oi}^W)^{-1}์ ์ฌ์ฉํฉ๋๋ค.
- Replay ์คํด: ๋ณํ ์์ด ์๋ณธ ๊ถค์ ์ ์ง์ ์ฌ์ฉํฉ๋๋ค. ํธ๋์ค๋ฒ(handover)์ ๊ฐ์ด ํน์ ์กฐ์์์๋ ํค๋ค๋งํฑ ํ๊ณ ๋ด์์ ์คํ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฅํ๋ฏ๋ก ์ ์ฉํฉ๋๋ค.
- ์์ฐจ์ ์๋ธํ์คํฌ (Sequential Subtasks):
- ํน์ ์์๋ก ์๋ฃ๋์ด์ผ ํ๋ ์๋ธํ์คํฌ๊ฐ ์๋ ๊ฒฝ์ฐ์ ๋๋ค. (์: ํ ์์ผ๋ก ๊ณต์ ๊ทธ๋ฆ์ ๋ถ๊ณ ๋ค๋ฅธ ์์ผ๋ก ๊ทธ๋ฆ์ ํจ๋๋ก ์ฎ๊ธฐ๋ ๊ฒฝ์ฐ).
- ์ ๋ ฌ ์ ์ฝ ๋ฉ์ปค๋์ฆ(Ordering constraint mechanism): ์ฌ์ ์ โpre-subtaskโ(์ ํ ์๋ธํ์คํฌ)์ โpost-subtaskโ(ํํ ์๋ธํ์คํฌ)๋ฅผ ์ ์ํฉ๋๋ค. ํํ ์๋ธํ์คํฌ๋ฅผ ์คํํ๋ ํ์ ๋ค๋ฅธ ํ์ ์ ํ ์๋ธํ์คํฌ๊ฐ ์๋ฃ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋๋ก ํฉ๋๋ค.
๋ฐ์ดํฐ ์์ฑ ์ํฌํ๋ก์ฐ (IV-D):
- ์๋ณธ ๋ฐ๋ชจ ์ธ๋ถํ(Segmentation): ์๋์ผ๋ก ์ ์๋ ํด๋ฆฌ์คํฑ(heuristics) ๋๋ ์ธ๊ฐ ์ฃผ์(human annotation)์ ํตํด ๊ฐ ํ์ ์๋ธํ์คํฌ๋ก ์๋ณธ ๋ฐ๋ชจ๋ฅผ ๋ถํ ํฉ๋๋ค.
- ์ฅ๋ฉด ๋ฌด์์ํ(Randomization): ์๋ก์ด ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์์ ์ฅ๋ฉด์ด ๋ฌด์์ํ๋๊ณ ์๋ณธ ์์ฐ์ด ์ ํ๋ฉ๋๋ค.
- ๊ถค์ ์์ฑ ๋ฐ ์คํ: ๊ฐ ํ์ ๊ฐ ์๋ธํ์คํฌ์ ๋ํด ๊ถค์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์์ฑํ๊ณ ๋ณ๋ ฌ๋ก ์คํํฉ๋๋ค. ์ฐธ์กฐ ๊ฐ์ฒด(reference object)์ ์์ธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ณํ(๊ฐ์ฒด-์ค์ฌ ๊ถค์ ๋ณํ)์ ์ ์ฉํ์ฌ ์๋ณธ ๊ถค์ ์ ๋ณํํฉ๋๋ค. ์๊ฐ๋ฝ ์์ง์์ ์๋ณธ ๋ฐ๋ชจ์ ์๊ฐ๋ฝ ๊ด์ ์ก์ ์ ์ฌ์ํ์ฌ ์์ฑํฉ๋๋ค.
- ์ฑ๊ณต ํํฐ๋ง: ์์ฑ๋ ๊ฐ ๋ฐ๋ชจ๋ ์์ ์ฑ๊ณต ์ฌ๋ถ๊ฐ ํ์ธ๋๋ฉฐ, ์ฑ๊ณตํ ๋ฐ๋ชจ๋ง ๋ฐ์ดํฐ์ ์ ํฌํจ๋ฉ๋๋ค.
์คํ ๋ฐ ๊ฒฐ๊ณผ:
- ์ฑ๋ฅ ํฅ์: DexMimicGen์ผ๋ก ์์ฑ๋ ๋ฐ์ดํฐ์ ์ผ๋ก ํ๋ จ๋ ๋ก๋ด์ ์์์ ์๋ณธ ๋ฐ์ดํฐ์ ๋ง์ผ๋ก ํ๋ จ๋ ๋ก๋ด๋ณด๋ค ๋ชจ๋ ์์ ์์ ์ ์ฑ ์ฑ๊ณต๋ฅ ์ด ํฌ๊ฒ ํฅ์๋์์ต๋๋ค (์: Drawer Cleanup 0.7%์์ 76.0%๋ก, Threading 1.3%์์ 69.3%๋ก).
- ๋ค์ํ ์ด๊ธฐ ์ํ ๋ถํฌ: DexMimicGen์ ์๋ณธ ๋ฐ๋ชจ์ ์ด๊ธฐ ๋ถํฌ(D0)์์ ๋ ๋์ ์ด๊ธฐ ์ํ ๋ถํฌ(D1, D2)๋ฅผ ๊ฐ์ง ๋ฐ์ดํฐ์ ์ ์์ฑํ๋ฉฐ, ์ด๋ฅผ ํตํด ํ๋ จ๋ ์ ์ฑ ์ ์๋ก์ด ๋ถํฌ์์๋ ๋์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค.
- ๋ฐ์ดํฐ ์์ฑ ์ ๋ต ๋น๊ต:
- Demo-Noise vs. DexMimicGen: ์๋ณธ ๋ฐ๋ชจ์ ์ก์ ๋ ธ์ด์ฆ(action noise)๋ฅผ ์ถ๊ฐํ๋ Demo-Noise baseline๋ณด๋ค DexMimicGen์ด 58% ์ด์ ๋ ๋์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค. Demo-Noise๋ ์๋ณธ ๋ฐ๋ชจ์ ์ด๊ธฐ ๊ตฌ์ฑ๋ง ์ฌ์ํ ์ ์์ด ์๋ก์ด ์ด๊ธฐ ๊ตฌ์ฑ์ ์์ฑํ ์ ์์ต๋๋ค.
- Replay vs. Transform (์กฐ์ ์๋ธํ์คํฌ): ํธ๋์ค๋ฒ(handover) ์์ ์์๋ Replay ์คํด์ด ๋ ๋์ ์ ์ฑ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค (Transport: 63.3% vs 46.0%). Can Sorting์์๋ ์ ์ฌํ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค (97.3% vs 98.6%).
- ์ ๋ ฌ ์ ์ฝ(Ordering Constraints) ์ ๋ฌด (์์ฐจ ์๋ธํ์คํฌ): ์ ๋ ฌ ์ ์ฝ๊ณผ ํจ๊ป ์์ฑ๋ ๋ฐ์ดํฐ๋ก ํ๋ จํ ๊ฒฝ์ฐ, ์ ์ฝ ์์ด ํ๋ จํ ๊ฒฝ์ฐ๋ณด๋ค ์ผ๊ด๋๊ฒ ์ฑ๋ฅ์ด ์ฐ์ํ์ต๋๋ค (Drawer Cleanup: 50.7% vs 48.0%, Pouring: 88.7% vs 76.7%).
- ์ ์ฑ ์ํคํ ์ฒ ๋น๊ต: Diffusion Policy [54]๊ฐ ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ์ํคํ ์ฒ(BC-RNN-GMM [1], BC-RNN [1])๋ณด๋ค ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, DexMimicGen์ ๋ฐ์ด๋งค๋ด์ผ ๋ฐ ์์ฌ์ฃผ ์๋ ๋ก๋ด ์กฐ์์ ์ํ ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์์ฑ์ ์๋ํํ์ฌ, ๋ชจ๋ฐฉ ํ์ต์ ํจ์จ์ฑ๊ณผ ํ์ฅ์ฑ์ ํฌ๊ฒ ํฅ์์ํต๋๋ค. ์ด ์์คํ ์ ์ค์ธ๊ณ ๋ก๋ด์ ์ ์ฉ ๊ฐ๋ฅํ ๊ฐ๋ ฅํ ์ ์ฑ ํ์ต์ ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ํฅํ ์ด ๋ถ์ผ์ ์ฐ๊ตฌ๋ฅผ ์ํ ์ค์ํ ๊ธฐ๋ฐ์ ์ ๊ณตํฉ๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
1. ์๋ก : ์ ์ด ์ฐ๊ตฌ๊ฐ ํ์ํ๊ฐ?
1.1 ๋ฐ์ดํฐ ๋ณ๋ชฉ ํ์ โ ํด๋จธ๋ ธ์ด๋ ์๋์ ๊ฐ์ฅ ํฐ ์ฅ๋ฒฝ
์ฌ๋ฌ๋ถ, ์์ํด ๋ณด์ธ์. ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์๊ฒ ์ปคํผ๋ฅผ ๋ง๋๋ ๋ฒ์ ๊ฐ๋ฅด์น๊ณ ์ถ๋ค๊ณ ํฉ์๋ค. ์์์ผ๋ก ์ปต์ ์ก๊ณ , ์ปคํผ ์๋๋ฅผ ๋ฐ๋ฅด๊ณ , ๋๊ป์ ๋ซ๋ ์ผ๋ จ์ ๋์์ ๋ง์ด์ฃ . ์ด๋ป๊ฒ ํด์ผ ํ ๊น์?
๊ฐ์ฅ ์ง๊ด์ ์ธ ๋ฐฉ๋ฒ์ ๋ชจ๋ฐฉ ํ์ต(Imitation Learning)์ ๋๋ค. ์ฌ๋์ด ๋ก๋ด์ ์๊ฒฉ ์กฐ์ข ํด์ ์๋ฒ์ ๋ณด์ฌ์ฃผ๊ณ , ๋ก๋ด์ ๊ทธ๊ฑธ ๋ณด๊ณ ๋ฐฐ์ฐ๋ ๊ฑฐ์ฃ . ๋ง์น ์์ด๊ฐ ๋ถ๋ชจ์ ํ๋์ ๋ฐ๋ผํ๋ฏ์ด์.
ํ์ง๋ง ์ฌ๊ธฐ์ ์ฌ๊ฐํ ๋ฌธ์ ๊ฐ ์๊น๋๋ค. RT-1์ด๋ RT-2 ๊ฐ์ ๋๊ท๋ชจ ๋ก๋ด ํ์ต ํ๋ก์ ํธ๋ฅผ ๋ณด๋ฉด, ๋จ์ผ ๋ก๋ด ํ ํ๋๋ฅผ ํ๋ จ์ํค๋ ๋ฐ๋ ์๊ฐ์์ ์ธ๋ ฅ๊ณผ ์๋ฐฑ ์๊ฐ์ ๋ฐ๋ชจ ๋ฐ์ดํฐ๊ฐ ํ์ํ์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์์? ๋ ๊ฐ์ ํ, ๊ทธ๋ฆฌ๊ณ ๊ฐ ํ๋ง๋ค ๋ค๊ด์ ์๊ฐ๋ฝ(๋ณดํต 6~16 ์์ ๋)์ ์ ์ดํด์ผ ํฉ๋๋ค. ํ ๋ ์คํผ๋ ์ด์ ์ ๋ณต์ก๋๊ฐ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํ๋ ๊ฑฐ์ฃ .
๋จ์ผ ํ ๊ทธ๋ฆฌํผ: ~7 DoF (ํ 6DoF + ๊ทธ๋ฆฌํผ 1DoF)
์ํ + ์์ฌ์ฃผ ์: ~38 DoF (ํ 2ร7DoF + ์ 2ร12DoF)
โ ์ ์ด ๋ณต์ก๋ ์ฝ 5๋ฐฐ ์ด์ ์ฆ๊ฐ
1.2 ํต์ฌ ์ง๋ฌธ
์ด ๋ ผ๋ฌธ์ด ๋์ง๋ ์ง๋ฌธ์ ๋ช ํํฉ๋๋ค:
โ์์์ ์ธ๊ฐ ์์ฐ๋ง์ผ๋ก ๋๊ท๋ชจ์ ์ํ ์์ฌ์ฃผ ์กฐ์ ๋ฐ์ดํฐ๋ฅผ ์๋ ์์ฑํ ์ ์์๊น?โ
๋ต์ โ์โ์ ๋๋ค. DexMimicGen์ ๋จ 60๊ฐ์ ์ธ๊ฐ ์์ฐ์์ 21,000๊ฐ ์ด์์ ํ์ต ๊ฐ๋ฅํ ๊ถค์ ์ ์์ฑํ์ต๋๋ค. ์ด๊ฒ์ด ์ด๋ป๊ฒ ๊ฐ๋ฅํ์ง, ์ง๊ธ๋ถํฐ ๊น์ด ๋ค์ด๊ฐ ๋ณด๊ฒ ์ต๋๋ค.
2. ๋ฐฐ๊ฒฝ ์ง์: MimicGen์์ DexMimicGen์ผ๋ก
2.1 MimicGen์ ํต์ฌ ์์ด๋์ด
DexMimicGen์ ์ดํดํ๋ ค๋ฉด ๋จผ์ ๊ทธ ์ ๋ฐฐ ๊ฒฉ์ธ MimicGen์ ์์์ผ ํฉ๋๋ค.
MimicGen์ ๊ธฐ๋ณธ ์์ด๋์ด๋ ์์ฃผ ์ฐ์ํฉ๋๋ค. ๋ก๋ด์ด ๋ฌผ์ฒด๋ฅผ ์ก๋ ๋์์ ์๊ฐํด ๋ณด์ธ์. ํ๋ ํ๋ธ๋ฅผ ์ง์ด์ ๋นจ๊ฐ ์์์ ๋ฃ๋ ์์ ์ด๋ผ๊ณ ํฉ์๋ค.
ํต์ฌ ํต์ฐฐ: ํ๋ ํ๋ธ๋ฅผ ์ก๋ ์๋์ ์ธ ์์ ์์ง์์ ํ๋ธ๊ฐ ํ ์ด๋ธ ์ด๋์ ์๋ ๊ฑฐ์ ๋์ผํฉ๋๋ค. ํ๋ธ๊ฐ ์ผ์ชฝ์ ์์ผ๋ฉด ๋ก๋ด์ด ์ผ์ชฝ์ผ๋ก ๊ฐ๊ณ , ์ค๋ฅธ์ชฝ์ ์์ผ๋ฉด ์ค๋ฅธ์ชฝ์ผ๋ก ๊ฐ๋ฉด ๋ฉ๋๋ค. ํ์ง๋ง ํ๋ธ ๊ธฐ์ค์ผ๋ก ๋ณด๋ฉด, ์์ ํญ์ ์์์ ๋ด๋ ค์์ ์ ์์ ๊ฐ์ธ๋ ๋๊ฐ์ ํจํด์ ๋ณด์ ๋๋ค.
์ด๊ฒ์ด ๋ฐ๋ก SE(3) ๋ฑ๋ณ์ฑ(Equivariance)์ ๋๋ค:
\text{๋ง์ฝ ๋ฌผ์ฒด pose } T^o_W \text{๊ฐ ๋ณํ } \Delta T \text{๋ฅผ ๋ฐ์ผ๋ฉด,} \text{๋ก๋ด action } T^C_W \text{๋ ๋์ผํ } \Delta T \text{๋ฅผ ๋ฐ์๋ ๋๋ค}
์ํ์ ์ผ๋ก ํํํ๋ฉด, ์๋ณธ ๋ฐ๋ชจ์์ ๋ฌผ์ฒด์ ํฌ์ฆ๊ฐ T^o_W์ด๊ณ ์ ํ๊ฒฝ์์์ ๋ฌผ์ฒด ํฌ์ฆ๊ฐ T^{o'}_W์ผ ๋, ๋ณํ ํ๋ ฌ์:
\Delta T = T^{o'}_W \cdot (T^o_W)^{-1}
์ด ๋ณํ์ ์๋ณธ ๊ถค์ ์ ๋ชจ๋ end-effector ํฌ์ฆ์ ์ ์ฉํ๋ฉด, ์๋ก์ด ๋ฌผ์ฒด ์์น์ ๋ง๋ ์ ๊ถค์ ์ด ํ์ํฉ๋๋ค!
2.2 ์ MimicGen๋ง์ผ๋ก๋ ๋ถ์กฑํ๊ฐ?
MimicGen์ ๋จ์ผ ํ์์ ๋ฐ์ด๋ ์ฑ๋ฅ์ ๋ณด์์ง๋ง, ์ํ ์์ฌ์ฃผ ์กฐ์์๋ ์ธ ๊ฐ์ง ๊ทผ๋ณธ์ ์ธ ํ๊ณ๊ฐ ์์ต๋๋ค:
์๋ฅผ ๋ค์ด ์ค๋ช ํด ๋ณด๊ฒ ์ต๋๋ค:
์๋๋ฆฌ์ค 1 - Piece Assembly (๋ณ๋ ฌ ์์ ) - ์ผ์: ์ค๋ชฉํ ์กฐ๊ฐ ์ง๊ธฐ - ์ค๋ฅธ์: ๋ณผ๋กํ ์กฐ๊ฐ ์ง๊ธฐ - ๊ฐ ์์ด ๋ ๋ฆฝ์ ์ผ๋ก ์๊ธฐ ๋ฌผ์ฒด๋ฅผ ํฅํด ์์ง์
์๋๋ฆฌ์ค 2 - Box Cleanup (ํ์ ์์
)
- ์์์ด ๋์์ ์์ ๋๊ป์ ์์ชฝ์ ์ก๊ณ ๋ซ๊ธฐ - ๋ ์์ ์๋์ ์์น๊ฐ ์ ํํ ์ ์ง๋์ด์ผ ํจ
์๋๋ฆฌ์ค 3 - Pouring (์์ฐจ ์์ ) - ๋จผ์ : ํ ์์ผ๋ก ๊ณต์ ๊ทธ๋ฆ์ ๋ถ๊ธฐ - ๊ทธ ๋ค์: ๋ค๋ฅธ ์์ผ๋ก ๊ทธ๋ฆ์ ์ด๋ - ์์๊ฐ ๋ฐ๋๋ฉด ์คํจ
MimicGen์ ๋จ์ผ ์ํ์ค ๋ถํ ๋ก๋ ์ด๋ฐ ๋ค์ํ ํจํด์ ํํํ ์ ์์ต๋๋ค.
3. DexMimicGen ๋ฐฉ๋ฒ๋ก : ์ธ ๊ฐ์ง ์๋ธํ์คํฌ ์ ํ
3.1 ์ ์ฒด ์์คํ ์ํคํ ์ฒ
DexMimicGen์ ํต์ฌ์ ์๋ธํ์คํฌ ์ ํ ๋ถ๋ฅ๋ฒ(Taxonomy of Subtask Types)์ ๋๋ค. ๋ชจ๋ ์ํ ์กฐ์์ ์ธ ๊ฐ์ง ์ ํ์ผ๋ก ๋ถ๋ฅํฉ๋๋ค:
flowchart LR
subgraph subtask["์๋ธํ์คํฌ ์ ํ"]
P["Parallel - ๋ณ๋ ฌ"]
C["Coordination - ํ์"]
S["Sequential - ์์ฐจ"]
end
P --> PA["๊ฐ ํ ๋
๋ฆฝ ์คํ, ๋น๋๊ธฐ ํ ๊ด๋ฆฌ"]
C --> CA["์ํ ๋๊ธฐํ, ๋์ผ ๋ณํ ์ ์ฉ"]
S --> SA["์์ ์ ์ฝ ์ ์ฉ, pre/post ํ์คํฌ"]
PA --> OUT["ํตํฉ ๊ถค์ ์์ฑ"]
CA --> OUT
SA --> OUT
3.2 Parallel Subtasks (๋ณ๋ ฌ ์๋ธํ์คํฌ)
๊ฐ๋ : ๊ฐ ํ์ด ๋ ๋ฆฝ์ ์ผ๋ก ์๋ก ๋ค๋ฅธ ๋ชฉํ๋ฅผ ์ํํฉ๋๋ค.
๊ฐ์ฅ ์ค์ํ ํ์ ์ ํ๋ณ ๋ ๋ฆฝ ์๋ธํ์คํฌ ์ํ์ค์ ๋๋ค:
MimicGen (๊ธฐ์กด):
์ ์ฒด ํ์คํฌ: Sโ(oโ) โ Sโ(oโ) โ ... โ Sโ(oโ)
DexMimicGen (์๋ก์ด ๋ฐฉ์):
์ผํ: Sยนโ(oโ) โ Sยนโ(oโ) โ ... โ Sยนโโ(oโโ)
์ค๋ฅธํ: Sยฒโ(oโ) โ Sยฒโ(oโ) โ ... โ Sยฒโโ(oโโ)
๋น๋๊ธฐ ์คํ ์ ๋ต (Asynchronous Execution Strategy)
๊ฐ ํ๋ง๋ค ๋ณ๋์ ์ก์ ํ(Action Queue)๋ฅผ ์ ์งํฉ๋๋ค:
# ์์ฌ ์ฝ๋: ๋น๋๊ธฐ ์คํ ๋ฃจํ
while not task_complete:
for arm in [left_arm, right_arm]:
if arm.action_queue.empty():
# ๋ค์ ์๋ธํ์คํฌ์ ๋ณํ๋ ์ธ๊ทธ๋จผํธ๋ก ํ ์ฑ์ฐ๊ธฐ
next_segment = transform_segment(
source_segment=arm.get_next_source_segment(),
current_object_pose=get_object_pose(arm.reference_object),
source_object_pose=arm.source_object_pose
)
arm.action_queue.extend(next_segment)
# ํ์์ ์ก์
ํ๋์ฉ ๋ํํ์ฌ ์คํ
action = arm.action_queue.dequeue()
arm.execute(action)ํต์ฌ ์ฅ์ : ๋ ํ์ ์๋ธํ์คํฌ๊ฐ ์๋ก ๋ค๋ฅธ ์์ ์ ์์ํ๊ณ ๋๋๋ ๋ฌธ์ ์์ต๋๋ค. ๋ง์น ๋ ๋ช ์ ์๋ฆฌ์ฌ๊ฐ ๊ฐ์์ ์๋๋ก ์ฌ๋ฃ๋ฅผ ์ค๋นํ๋ ๊ฒ์ฒ๋ผ์.
3.3 Coordination Subtasks (ํ์ ์๋ธํ์คํฌ)
๊ฐ๋ : ์ํ์ด ํจ๊ป ํ๋์ ๊ณต์ ๋ชฉํ๋ฅผ ๋ฌ์ฑํฉ๋๋ค.
ํ์ ์๋ธํ์คํฌ์์๋ ๋ ๊ฐ์ง๊ฐ ๋ณด์ฅ๋์ด์ผ ํฉ๋๋ค:
- ์๊ฐ์ ์ ๋ ฌ (Temporal Alignment): ์ํ์ด ๋๊ธฐํ๋์ด ์คํ
- ๊ณต๊ฐ์ ์ผ๊ด์ฑ (Spatial Consistency): ๋ end-effector ๊ฐ์ ์๋์ ํฌ์ฆ๊ฐ ์๋ณธ ๋ฐ๋ชจ์ ์ผ์น
๋๊ธฐํ ์ ๋ต:
์์ค ๋ฐ๋ชจ ๋ถํ ์, ํ์ ์๋ธํ์คํฌ๋ ๊ฐ์ ํ์์คํ ์์ ๋๋๋๋ก ๊ฐ์ ํฉ๋๋ค.
# ๋๊ธฐํ ์คํ ์ ๋ต
def execute_coordination_subtask(left_segment, right_segment):
# ์ํ์ด ๋จ์ ์คํ
์๊ฐ ๊ฐ์์ง ๋๊น์ง ๋๊ธฐ
while len(left_segment) != len(right_segment):
if len(left_segment) > len(right_segment):
wait(left_arm)
else:
wait(right_arm)
# ๋์ ์คํ
for left_action, right_action in zip(left_segment, right_segment):
execute_simultaneously(left_action, right_action)๋ณํ ๋ฐฉ์ ์ ํ:
| ๋ฐฉ์ | ์ค๋ช | ์ ํฉํ ์ํฉ |
|---|---|---|
| Transform | ๋ฌผ์ฒด ํฌ์ฆ ๋ณํ ํ๋ ฌ ์ ์ฉ | ์ผ๋ฐ์ ์ธ ํ์ ์์ |
| Replay | ์์ค ๊ถค์ ๊ทธ๋๋ก ์ฌ์ | ํธ๋์ค๋ฒ ๋ฑ ์ด๋ํ์ ํ๊ณ ๊ทผ์ ์์ |
Replay ๋ฐฉ์์ ํนํ ํธ๋์ค๋ฒ(ํ ์์์ ๋ค๋ฅธ ์์ผ๋ก ๋ฌผ์ฒด ์ ๋ฌ) ์์ ์์ ์ค์ํฉ๋๋ค. ๋ณํ์ ์ ์ฉํ๋ฉด ๋ก๋ด์ ์ด๋ํ์ ํ๊ณ๋ฅผ ๋ฒ์ด๋๋ ๊ถค์ ์ด ์์ฑ๋ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
3.4 Sequential Subtasks (์์ฐจ ์๋ธํ์คํฌ)
๊ฐ๋ : ํน์ ์๋ธํ์คํฌ๊ฐ ์๋ฃ๋ ํ์์ผ ๋ค๋ฅธ ์๋ธํ์คํฌ๋ฅผ ์์ํ ์ ์์ต๋๋ค.
์ ํ์ ์ธ ์: Pouring ํ์คํฌ 1. Pre-task: ์ผ์์ผ๋ก ๊ณต์ ๊ทธ๋ฆ์ ๋ถ๊ธฐ 2. Post-task: ์ค๋ฅธ์์ผ๋ก ๊ทธ๋ฆ์ ๋ น์ ํจ๋๋ก ์ด๋
๊ณต์ ๋ถ๊ธฐ ์ ์ ๊ทธ๋ฆ์ ์ด๋ํ๋ฉดโฆ ๋น์ฐํ ์คํจํฉ๋๋ค!
์์ ์ ์ฝ ๋ฉ์ปค๋์ฆ (Ordering Constraint Mechanism):
def execute_with_ordering_constraint(pre_subtask, post_subtask, pre_arm, post_arm):
pre_complete = False
while not task_complete:
# Pre-task๋ ํญ์ ์คํ
if not pre_complete:
pre_arm.execute_next_action()
if pre_arm.subtask_complete():
pre_complete = True
# Post-task๋ pre-task ์๋ฃ ํ์๋ง ์คํ
if pre_complete:
post_arm.execute_next_action()3.5 ์ ์ฒด ๋ฐ์ดํฐ ์์ฑ ์ํฌํ๋ก์ฐ
๋ค์ ๋ค์ด์ด๊ทธ๋จ์ DexMimicGen์ ์ ์ฒด ํ์ดํ๋ผ์ธ์ ๋ณด์ฌ์ค๋๋ค:
flowchart TB
subgraph step1["1๋จ๊ณ: ์์ค ๋ฐ๋ชจ ์์ง ๋ฐ ๋ถํ "]
A["์ธ๊ฐ ํ
๋ ์คํผ๋ ์ด์
"] --> B["์์ค ๋ฐ๋ชจ ์์ง"]
B --> C["ํ๋ณ ์๋ธํ์คํฌ ๋ถํ "]
C --> D["์ฐธ์กฐ ๋ฌผ์ฒด ํฌ์ฆ ๊ธฐ๋ก"]
end
subgraph step2["2๋จ๊ณ: ์๋ ๋ฐ์ดํฐ ์์ฑ"]
E["์ ํ๊ฒฝ ์ด๊ธฐํ"] --> F{"์์ค ๋ฐ๋ชจ ์ ํ"}
F --> G["ํ์ฌ ๋ฌผ์ฒด ํฌ์ฆ ๊ด์ธก"]
G --> H["๋ณํ ํ๋ ฌ ๊ณ์ฐ"]
H --> I["์์ค ๊ถค์ ๋ณํ"]
I --> J["์๋ธํ์คํฌ ์ ํ๋ณ ์คํ"]
J --> K{"ํ์คํฌ ์ฑ๊ณต?"}
K -->|Yes| L["๋ฐ๋ชจ ์ ์ฅ"]
K -->|No| E
L --> M{"์ถฉ๋ถํ ๋ฐ์ดํฐ?"}
M -->|No| E
M -->|Yes| N["๋ฐ์ดํฐ์
์์ฑ"]
end
subgraph step3["3๋จ๊ณ: ์ ์ฑ
ํ์ต"]
N --> O["Behavioral Cloning"]
O --> P["Diffusion Policy / BC-RNN"]
end
4. ์์คํ ์ค๊ณ: ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ๊ณผ ํ ๋ ์คํผ๋ ์ด์
4.1 ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ
DexMimicGen์ RoboSuite ํ๋ ์์ํฌ์ MuJoCo ๋ฌผ๋ฆฌ ์์ง์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
์ธ ๊ฐ์ง ๋ก๋ด ์ ํ:
| ๋ก๋ด ์ ํ | ๊ตฌ์ฑ | ์ ์ด๊ธฐ |
|---|---|---|
| ์ํ Panda + ํํ ๊ทธ๋ฆฌํผ | 2ร7DoF ํ + 2ร1DoF ๊ทธ๋ฆฌํผ | OSC (Operational Space Control) |
| ์ํ Panda + ์์ฌ์ฃผ ์ | 2ร7DoF ํ + 2ร6DoF ์ | OSC + Joint Position Control |
| GR-1 ํด๋จธ๋ ธ์ด๋ | ์์ฒด + 2ร6DoF ์ | IK (Inverse Kinematics) + Joint Position |
9๊ฐ์ง ํ์คํฌ ๋ฒค์น๋งํฌ:
flowchart TB
subgraph gripper["ํํ ๊ทธ๋ฆฌํผ ํ์คํฌ"]
T1["Threading - ์ค ๊ฟฐ๊ธฐ"]
T2["Piece Assembly - ์กฐ๊ฐ ์กฐ๋ฆฝ"]
T3["Transport - ๋ฌผ์ฒด ์ด๋ฐ"]
end
subgraph dex["์์ฌ์ฃผ ์ ํ์คํฌ"]
T4["Box Cleanup - ์์ ์ ๋ฆฌ"]
T5["Drawer Cleanup - ์๋ ์ ๋ฆฌ"]
T6["Tray Lift - ํธ๋ ์ด ๋ค๊ธฐ"]
end
subgraph humanoid["ํด๋จธ๋
ธ์ด๋ ํ์คํฌ"]
T7["Pouring - ๋ถ๊ธฐ"]
T8["Coffee - ์ปคํผ ๋ง๋ค๊ธฐ"]
T9["Can Sorting - ์บ ๋ถ๋ฅ"]
end
T1 --> COORD["๋ค์ํ ์กฐ์ ์๊ตฌ์ฌํญ"]
T2 --> COORD
T3 --> COORD
T4 --> COORD
T5 --> COORD
T6 --> COORD
T7 --> COORD
T8 --> COORD
T9 --> COORD
4.2 ํ ๋ ์คํผ๋ ์ด์ ์์คํ
ํํ ๊ทธ๋ฆฌํผ ๋ก๋ด: iPhone ๊ธฐ๋ฐ RoboTurk ์ธํฐํ์ด์ค
์์ฌ์ฃผ ์ ๋ก๋ด: Apple Vision Pro ๊ธฐ๋ฐ ์์คํ - VisionProTeleop ์ํํธ์จ์ด๋ก ์๋ชฉ/์๊ฐ๋ฝ ํฌ์ฆ ์บก์ฒ - OmniH2O์ ๋ฆฌํ๊ฒํ ๋ฐฉ๋ฒ์ผ๋ก ์ธ๊ฐ ์๊ฐ๋ฝ ํฌ์ฆ โ ๋ก๋ด ๊ด์ ์์น ๋ณํ
์บ๋ฆฌ๋ธ๋ ์ด์ ํ๋ก์ธ์ค:
1. ์กฐ์์๊ฐ ๊ณ ์ ํฌ์ฆ๋ก ์์
2. ์์คํ
์ด ์๋์ผ๋ก ์๋ ๋ณํ ํ๋ ฌ ๊ณ์ฐ
3. ์ธ๊ฐ ํฌ์ฆ โ ๋ก๋ด ํ๊ฒ ๋งคํ ์์ฑ
5. ์คํ ๊ฒฐ๊ณผ: ์ซ์๊ฐ ๋งํด์ฃผ๋ ๊ฒ
5.1 ํต์ฌ ๊ฒฐ๊ณผ ์์ฝ
๋ฐ์ดํฐ์ ํต๊ณ: - ์์ค ์ธ๊ฐ ๋ฐ๋ชจ: 60๊ฐ (๊ทธ๋ฆฌํผ ํ์คํฌ 10๊ฐร3, ์์ฌ์ฃผ ํ์คํฌ 5๊ฐร6) - ์์ฑ๋ ๋ฐ๋ชจ: 21,000๊ฐ ์ด์ - ๋ฐ์ดํฐ ํ๋ ๋น์จ: 350๋ฐฐ
์ ์ฑ ์ฑ๋ฅ ๋น๊ต (1000๊ฐ ์์ฑ ๋ฐ๋ชจ ๊ธฐ์ค, Diffusion Policy):
| ํ์คํฌ | ์์ค ๋ฐ๋ชจ๋ง | DexMimicGen ๋ฐ์ดํฐ | ํฅ์ํญ |
|---|---|---|---|
| Piece Assembly | 3.3% | 80.7% | +77.4% |
| Threading | 1.3% | 69.3% | +68.0% |
| Drawer Cleanup | 0.7% | 76.0% | +75.3% |
| Can Sorting | 0.7% | 97.3% | +96.6% |
| Tray Lift | 3.3% | 88.7% | +85.4% |
| Pouring | 0.7% | 79.3% | +78.6% |
| Coffee | 14.7% | 77.3% | +62.6% |
ํต์ฌ ๋ฐ๊ฒฌ: ์์ค ๋ฐ๋ชจ๋ง์ผ๋ก๋ ๊ฑฐ์ ๋ถ๊ฐ๋ฅํ๋ ํ์คํฌ๋ค(0.7~3.3% ์ฑ๊ณต๋ฅ )์ด DexMimicGen ๋ฐ์ดํฐ๋ก ํ๋ จํ๋ฉด 70~97% ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํฉ๋๋ค.
5.2 ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ์ํฅ
์ฑ๊ณต๋ฅ (%)
100 โค โญโโโโ Can Sorting
โ โญโโโโโโฏ
80 โค โญโโโโโโฏ โญโโ Pouring
โ โญโโโโโโฏ โญโโโโโโฏ
60 โค โญโโโโโโฏ โญโโโโโโฏ
โ โญโโโโโโฏ โญโโโโโโฏ
40 โคโญโโโโโโฏ โญโโโโโโฏ
โญโฏ โญโโโโโโฏ
20 โค โญโโโโโโฏ
โโโโโฏ
0 โผโโโโโโโโโโฌโโโโโโโโโโฌโโโโโโโโโโฌโโโโโโโโโโค
100 500 1000 5000
๋ฐ์ดํฐ์
ํฌ๊ธฐ
๊ด์ฐฐ: 100โ500โ1000 ๋ฐ๋ชจ์์ ํฐ ์ฑ๋ฅ ํฅ์์ด ์์ง๋ง, 1000โ5000์์๋ ์ํ ์ฒด๊ฐ์ด ๋ฐ์ํฉ๋๋ค. ํ์คํฌ์ ๋ฐ๋ผ ์ต์ ์ ๋ฐ์ดํฐ ํฌ๊ธฐ๊ฐ ๋ค๋ฅด๋ค๋ ๊ฒ์ ์์ฌํฉ๋๋ค.
5.3 Demo-Noise ๋ฒ ์ด์ค๋ผ์ธ๊ณผ์ ๋น๊ต
Demo-Noise: ์์ค ๋ฐ๋ชจ๋ฅผ ์ก์ ๋ ธ์ด์ฆ์ ํจ๊ป ์ฌ์ํ์ฌ ๋ฐ์ดํฐ ์์ฑ
| ํ์คํฌ | Demo-Noise | DexMimicGen | ์ฐจ์ด |
|---|---|---|---|
| Piece Assembly | 12.7% | 74.0% | +61.3% |
| Tray Lift | 16.7% | 75.3% | +58.6% |
| Pouring | 26.7% | 79.3% | +52.6% |
ํต์ฌ ์ฐจ์ด์ : Demo-Noise๋ ์ด๊ธฐ ๋ฌผ์ฒด ๋ฐฐ์น๊ฐ ๋ค๋ฅธ ํ๊ฒฝ์์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. DexMimicGen์ ๋ฌผ์ฒด ํฌ์ฆ ๋ณํ์ ํ์ฉํ๋ฏ๋ก ๋ค์ํ ์ด๊ธฐ ๋ถํฌ์์ ์ ํจํ ๋ฐ์ดํฐ๋ฅผ ์์ฑํฉ๋๋ค.
5.4 ์ ์ฑ ์ํคํ ์ฒ ๋น๊ต
| ์ํคํ ์ฒ | ํน์ง | ํ๊ท ์ฑ๋ฅ |
|---|---|---|
| Diffusion Policy | ์ก์ ๋ํจ์ , ๋ฉํฐ๋ชจ๋ฌ ๋ถํฌ | ์ต๊ณ |
| BC-RNN | RNN ๊ธฐ๋ฐ, ๊ฐ๋จ | ์ค๊ฐ |
| BC-RNN-GMM | GMM ์ก์ ํค๋ | ์๋์ ์ ์กฐ |
ํฅ๋ฏธ๋ก์ด ๋ฐ๊ฒฌ: RoboMimic ์ฐ๊ตฌ์์๋ GMM ํค๋๊ฐ ์ ๋ฆฌํ์ง๋ง, ์์ฌ์ฃผ ์กฐ์์์๋ ์คํ๋ ค ์ญํจ๊ณผ๋ฅผ ๋ณด์์ต๋๋ค. ๊ณ ์ฐจ์ ์ก์ ๊ณต๊ฐ์์ GMM์ ๋ชจ๋ ๋ถ๊ดด ๋ฌธ์ ๊ฐ ์์ฌ๋ฉ๋๋ค.
5.5 ์ค์ธ๊ณ ๋ฐฐํฌ ๊ฒฐ๊ณผ
Real2Sim2Real ํ์ดํ๋ผ์ธ:
flowchart LR
A["์ค์ธ๊ณ 4๊ฐ ์์ฐ"] --> B["๋์งํธ ํธ์์์ ์ฌ์"]
B --> C["DexMimicGen์ผ๋ก 40๊ฐ ๋ฐ๋ชจ ์์ฑ"]
C --> D["์๋ฎฌ๋ ์ด์
์์ ์ ์ฑ
ํ์ต"]
D --> E["์ค์ธ๊ณ ๋ฐฐํฌ"]
F["์์ค ๋ฐ๋ชจ๋ง์ผ๋ก ํ์ตํ ์ ์ฑ
"] --> G["0% ์ฑ๊ณต"]
E --> H["90% ์ฑ๊ณต"]
ํ๋์จ์ด: Fourier GR-1 ํด๋จธ๋ ธ์ด๋ + Inspire 6-DoF ์์ฌ์ฃผ ์ ํ์คํฌ: Can Sorting (์บ ๋ถ๋ฅ) ๊ฒฐ๊ณผ: 4๊ฐ ์์ค ๋ฐ๋ชจ โ 0% ์ฑ๊ณต, 40๊ฐ DexMimicGen ๋ฐ๋ชจ โ 90% ์ฑ๊ณต
6. ๊ธฐ์ ์ ์ฌ์ธต ๋ถ์
6.1 SE(3) ๋ฑ๋ณ์ฑ์ ํ์ฉ
DexMimicGen์ ์ํ์ ๊ธฐ๋ฐ์ SE(3) ๋ฑ๋ณ์ฑ์ ๋๋ค. ์ง๊ด์ ์ผ๋ก ์ค๋ช ํ๋ฉด:
โ๋ฌผ์ฒด๊ฐ ์ด๋๋ก ์์ง์ด๋ , ๋ฌผ์ฒด ๊ธฐ์ค์ผ๋ก ๋ณธ ๋ก๋ด์ ์์ง์์ ๋์ผํ๋คโ
์ํ์ ์ผ๋ก:
\tau' = \Delta T \cdot \tau
์ฌ๊ธฐ์: - \tau = (T^{C_0}_W, T^{C_1}_W, ..., T^{C_K}_W): ์๋ณธ end-effector ๊ถค์ - \Delta T = T^{o'}_W \cdot (T^o_W)^{-1}: ๋ฌผ์ฒด ํฌ์ฆ ๋ณํ - \tau': ๋ณํ๋ ์ ๊ถค์
์ด ์๋ฆฌ๊ฐ ์ ์๋ํ๋์ง ๋ฌผ๋ฆฌ์ ์ผ๋ก ์๊ฐํด ๋ด ์๋ค. ์ปต์ ์ก๋ ๋์์์ ์๊ฐ๋ฝ์ด ์ปต ํ๋ฉด์ ๊ฐ์ธ๋ ํจํด์ ์ปต์ด ํ ์ด๋ธ ์ด๋์ ์๋ ๋์ผํฉ๋๋ค. ๋ณํ๋ ๊ฒ์ ๋ก๋ด์ด ์ปต์ ์ ๊ทผํ๋ ์ ์ญ ๊ฒฝ๋ก๋ฟ์ ๋๋ค.
6.2 ์๊ฐ๋ฝ ๋์ ์ฒ๋ฆฌ
์์ฌ์ฃผ ์กฐ์์์ ์ค์ํ ํฌ์ธํธ: ์๊ฐ๋ฝ ๋์์ ๋ณํํ์ง ์์ต๋๋ค
์ด์ : ์๊ฐ๋ฝ ์์ง์์ ํญ์ end-effector(์๋ชฉ) ๊ธฐ์ค์ ์๋์ ์์ง์์ ๋๋ค. ์๋ชฉ์ด ์ด๋์ ์๋ โ์๊ฐ๋ฝ์ ์ค๋ฏ๋ ค์ ์ก๊ธฐโ ๋์ ์์ฒด๋ ๋์ผํฉ๋๋ค.
def generate_finger_motion(source_demo, generated_ee_trajectory):
# End-effector ๊ถค์ ์ ๋ณํ๋ ๊ฒ ์ฌ์ฉ
ee_trajectory = generated_ee_trajectory
# ์๊ฐ๋ฝ ๊ด์ ์ก์
์ ์์ค ๋ฐ๋ชจ์์ ๊ทธ๋๋ก ์ฌ์
finger_actions = source_demo.finger_joint_actions
return combine(ee_trajectory, finger_actions)6.3 ์ ์ด๊ธฐ ์ ํ์ ์ค์์ฑ
Panda ํ: OSC (Operational Space Control) - ์ฅ์ : ์ง๊ด์ ์ธ end-effector ํฌ์ฆ ๋ช ๋ น - ๋จ์ : ๋์ ๊ณ์ฐ ๋น์ฉ
ํด๋จธ๋ ธ์ด๋: IK (Inverse Kinematics) via mink ๋ผ์ด๋ธ๋ฌ๋ฆฌ - ์ด์ : ํด๋จธ๋ ธ์ด๋์ ๋ณต์กํ ์ด๋ํ์ ํธ๋ฆฌ(์ํ์ด ๋จ์ผ ํ ๋ฅด์์ ์ฐ๊ฒฐ)์์ OSC ์ ์ฉ์ด ์ด๋ ค์ - ์ฅ์ : ์ ์ญ end-effector ํฌ์ฆ โ ๊ด์ ์์น ๋ณํ์ด ์์ ์
7. ๋นํ์ ๊ณ ์ฐฐ
7.1 ๊ฐ์
1. ํ์ฅ์ฑ (Scalability) - ์์์ ์ธ๊ฐ ์์ฐ์์ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์์ฑ - 350๋ฐฐ ๋ฐ์ดํฐ ํ๋ ๋ฌ์ฑ
2. ๋ฒ์ฉ์ฑ (Generality) - ์ธ ๊ฐ์ง ๋ก๋ด ํ์(๊ทธ๋ฆฌํผ, ์์ฌ์ฃผ ์, ํด๋จธ๋ ธ์ด๋)์์ ๊ฒ์ฆ - ๋ค์ํ ํ์ ํจํด(๋ณ๋ ฌ, ํ์, ์์ฐจ) ์ง์
3. ์ค์ฉ์ฑ (Practicality) - Real2Sim2Real ํ์ดํ๋ผ์ธ์ผ๋ก ์ค์ธ๊ณ ์ ์ฉ ์ ์ฆ - ์คํ์์ค ์ฝ๋ ๋ฐ ๋ฐ์ดํฐ์ ๊ณต๊ฐ
4. ๋ชจ๋์ฑ (Modularity) - ๊ธฐ์กด MimicGen ์์ ๊ตฌ์ถํ์ฌ ํธํ์ฑ ์ ์ง - BiGym ๊ฐ์ ๋ค๋ฅธ ๋ฒค์น๋งํฌ์๋ ์ ์ฉ ๊ฐ๋ฅ
7.2 ์ฝ์ ๋ฐ ํ๊ณ
1. ์ ์ ํ๊ฒฝ ๊ฐ์ - ๋ฌผ์ฒด๊ฐ ์กฐ์ ์ ๊น์ง ์ ์ ์ด๋ผ๊ณ ๊ฐ์ - ๋์ ํ๊ฒฝ(์์ง์ด๋ ๋ฌผ์ฒด)์์๋ ์ ์ฉ ์ด๋ ค์
2. ํด๋ฆฌ์คํฑ ๊ธฐ๋ฐ ๋ถํ - ์๋ธํ์คํฌ ๋ถํ ์ด ์๋ ์ด๋ ธํ ์ด์ ๋๋ ํด๋ฆฌ์คํฑ์ ์์กด - ์๋ก์ด ํ์คํฌ๋ง๋ค ๋ถํ ์ ์ ํ์
3. ์ฑ๊ณต ์กฐ๊ฑด ์์กด์ฑ - ์๋ฎฌ๋ ์ด์ ์์ ํ์คํฌ ์ฑ๊ณต ์ฌ๋ถ ํ๋จ์ ์์กด - ๋ณต์กํ ํ์คํฌ์์ ์ฑ๊ณต ์กฐ๊ฑด ์ ์๊ฐ ์ด๋ ค์ธ ์ ์์
4. Sim-to-Real Gap - ์๋ฎฌ๋ ์ด์ ์์ ์์ฑ๋ ๋ฐ์ดํฐ์ ์ค์ธ๊ณ ์ ์ด ํ๊ณ - ๋์งํธ ํธ์ ์ ํ๋์ ์์กด
5. ์ ํ๋ ์ด๊ธฐ ๋ถํฌ ํ์ฅ - D0โD1โD2๋ก ๊ฐ์๋ก ์ฑ๋ฅ ๊ฐ์ (Piece Assembly: 74%โ67%โ44%) - ํฌ๊ฒ ๋ค๋ฅธ ์ด๊ธฐ ๋ถํฌ์ ๋ํ ์ผ๋ฐํ ํ๊ณ
7.3 ๊ฐ์ ๊ฐ๋ฅํ ๋ฐฉํฅ
| ํ๊ณ์ | ์ ์๋ ๊ฐ์ ๋ฐฉํฅ |
|---|---|
| ์๋ ์๋ธํ์คํฌ ๋ถํ | LLM ๊ธฐ๋ฐ ์๋ ํ์คํฌ ๋ถํด |
| ์ ์ ํ๊ฒฝ ๊ฐ์ | ๋์ ๋ฌผ์ฒด ์ถ์ + ์จ๋ผ์ธ ์ฌ๊ณํ |
| Sim-to-Real Gap | Domain Randomization ๊ฐํ |
| ๊ณ ์ ๋ ์ด๊ธฐ ๋ถํฌ | Adaptive sampling ์ ๋ต |
8. ๊ด๋ จ ์ฐ๊ตฌ์์ ๋น๊ต
8.1 ๋ฐ์ดํฐ ์์ง/์์ฑ ๋ฐฉ๋ฒ๋ก
flowchart TB
subgraph collect["์ธ๊ฐ ๋ฐ๋ชจ ์์ง"]
A1["RoboTurk - ๋๊ท๋ชจ ํฌ๋ผ์ฐ๋์์ฑ"]
A2["ALOHA - ์ ๋น์ฉ ์ํ ํ
๋ ์คํผ๋ ์ด์
"]
A3["UMI - ๋ก๋ด ์๋ ๋ฐ๋ชจ ์์ง"]
end
subgraph autogen["์๋ ๋ฐ์ดํฐ ์์ฑ"]
B1["RLBench - ํ๋ก๊ทธ๋๋ฐ๋ ์ ๋ฌธ๊ฐ"]
B2["RoboGen - ์์ฑ์ ์๋ฎฌ๋ ์ด์
"]
B3["MimicGen - ๋ฐ๋ชจ ๋ณํ ๋ฐ ์ฌ์"]
B4["DexMimicGen - ์ํ ์์ฌ์ฃผ ํ์ฅ"]
end
subgraph augment["๋ฐ์ดํฐ ์ฆ๊ฐ"]
C1["์ด๋ฏธ์ง ์ฆ๊ฐ - RAD, DrQ"]
C2["๊ถค์ ์ฆ๊ฐ - MOCODA"]
C3["GenAug - ์์ฑ ๋ชจ๋ธ ํ์ฉ"]
end
A1 --> HUMAN["๋์ ๋น์ฉ"]
A2 --> HUMAN
A3 --> HUMAN
B1 --> PROG["ํ์ฅ์ฑ ์ ํ"]
B3 --> B4
B4 --> SCALE["๋์ ํ์ฅ์ฑ"]
์ฐจ๋ณ์ : DexMimicGen์ MimicGen์ ์๋ฆฌ๋ฅผ ์ํ ์์ฌ์ฃผ ์ค์ ์ผ๋ก ๋น์๋ช ํ๊ฒ(non-trivially) ํ์ฅํ์ต๋๋ค. ๋จ์ํ ๋ ํ์ MimicGen์ ๋ ๋ฒ ์ ์ฉํ๋ ๊ฒ์ด ์๋๋ผ, ํ ๊ฐ ํ์์ ๋ช ์์ ์ผ๋ก ๋ชจ๋ธ๋งํฉ๋๋ค.
8.2 ์ํ ์กฐ์ ์ฐ๊ตฌ
| ์ฐ๊ตฌ | ์ ๊ทผ๋ฒ | DexMimicGen๊ณผ์ ์ฐจ์ด |
|---|---|---|
| ALOHA | ์ ๋น์ฉ ํ ๋ ์คํผ๋ ์ด์ | ๋ฐ์ดํฐ ์์ง์ ์ด์ , ์๋ ์์ฑ ์์ |
| HumanPlus | ํด๋จผ ์๋์ + ๋ชจ๋ฐฉ | ์ค์๊ฐ ์ถ์ข , ์คํ๋ผ์ธ ๋ฐ์ดํฐ ์์ฑ๊ณผ ๋ชฉ์ ๋ค๋ฆ |
| BiGym | ์ํ ๋ฒค์น๋งํฌ | DexMimicGen์ด BiGym ํ์คํฌ์๋ ์ ์ฉ |
| OmniH2O | ํด๋จผ-ํด๋จธ๋ ธ์ด๋ ํ ๋ ์คํผ๋ ์ด์ | DexMimicGen์ด ๋ฆฌํ๊ฒํ ๋ฐฉ๋ฒ ํ์ฉ |
9. ์์ฉ ๋ฐ ํ์ฅ ๊ฐ๋ฅ์ฑ
9.1 ์ค์ ๋ก๋ด ์ ์ฉ ์๋๋ฆฌ์ค
1. ์ ์กฐ์ ์กฐ๋ฆฝ ๋ผ์ธ - ์์ ํ์์ด ํ์ํ ์ ๋ฐ ์กฐ๋ฆฝ - ์์์ ์๋ฒ ํ ๋๊ท๋ชจ ํ์ต ๋ฐ์ดํฐ ์์ฑ
2. ๊ฐ์ ์ฉ ์๋น์ค ๋ก๋ด - ์๋ฆฌ, ์ฒญ์, ์ ๋ฆฌ ์์ - Coffee ํ์คํฌ๊ฐ ์ข์ ์์
3. ๋ฌผ๋ฅ ๋ถ๋ฅ - Can Sorting ํ์คํฌ์ ํ์ฅ - ๋ค์ํ ๋ฌผ์ฒด ๋ถ๋ฅ ์์
9.2 ํ์ ์ฐ๊ตฌ ๋ฐฉํฅ
1. ์ธ์ด ์กฐ๊ฑด ํ์ฅ - โ์ผ์์ผ๋ก ๋นจ๊ฐ ์ปต์ ์ก๊ณ , ์ค๋ฅธ์์ผ๋ก ํ๋ ์ปต์ ์ก์โ ๊ฐ์ ๋ช ๋ น ์ฒ๋ฆฌ - VLA (Vision-Language-Action) ๋ชจ๋ธ๊ณผ์ ํตํฉ
2. ์ฅ๊ธฐ ์์ ์ค์ผ์ผ๋ง - ํ์ฌ 9๊ฐ ํ์คํฌ โ ์๋ฐฑ ๊ฐ ํ์คํฌ๋ก ํ์ฅ - ํ์คํฌ ๊ฐ ์ง์ ์ ์ด ์ฐ๊ตฌ
3. ์จ๋ผ์ธ ์ ์ - ์คํ ์ค ์คํจ ๊ฐ์ง ๋ฐ ๋ณต๊ตฌ - ํ๊ฒฝ ๋ณํ์ ๋ํ ์ค์๊ฐ ์ ์
4. ๋ค์ํ ๋ก๋ด ํ์ - 3๊ฐ ์ด์์ ํ์ ๊ฐ์ง ๋ก๋ด - ๋ค๋ฆฌ๋ฅผ ํ์ฉํ ์ ์ ์กฐ์
9.3 ์คํ์์ค ํ์ฉ ๊ฐ์ด๋
# ํ๊ฒฝ ์ค์น
git clone https://github.com/ARISE-Initiative/robosuite
pip install -e robosuite
git clone https://github.com/NVlabs/dexmimicgen.git
cd dexmimicgen
pip install -e .
# ํ๊ฒฝ ํ
์คํธ
python scripts/demo_random_action.py --env TwoArmThreading --render
# ์ ์ฑ
ํ์ต (robomimic ์ค์น ํ์)
git clone https://github.com/ARISE-Initiative/robomimic.git -b dexmimicgen
cd robomimic
pip install -e .
# ํ์ต ์ค์ ์์ฑ ๋ฐ ์คํ
python scripts/generate_training_config.py \
--dataset_dir /path/to/datasets \
--config_dir /path/to/save/config \
--output_dir /path/to/save/output
python scripts/train.py --config /path/to/config10. ์์ฝ ๋ฐ ๊ฒฐ๋ก
10.1 ํต์ฌ ๊ธฐ์ฌ ์์ฝ
| ๊ธฐ์ฌ | ์ค๋ช |
|---|---|
| ์๋ธํ์คํฌ ๋ถ๋ฅ๋ฒ | ๋ณ๋ ฌ, ํ์, ์์ฐจ์ ์ธ ๊ฐ์ง ์ ํ์ผ๋ก ์ํ ์กฐ์ ํจํด ์ฒด๊ณํ |
| ๋น๋๊ธฐ ์คํ ์ ๋ต | ํ๋ณ ๋ ๋ฆฝ ์ก์ ํ๋ก ์ ์ฐํ ์คํ ๊ฐ๋ฅ |
| ๋๊ธฐํ ๋ฉ์ปค๋์ฆ | ํ์ ์๋ธํ์คํฌ์์ ์๊ณต๊ฐ์ ์ ๋ ฌ ๋ณด์ฅ |
| ๋๊ท๋ชจ ๋ฒค์น๋งํฌ | 3๊ฐ์ง ๋ก๋ด, 9๊ฐ์ง ํ์คํฌ, 21K+ ๋ฐ๋ชจ |
| Real2Sim2Real | ์ค์ธ๊ณ ํด๋จธ๋ ธ์ด๋์์ 90% ์ฑ๊ณต๋ฅ ๋ฌ์ฑ |
10.2 ๋ก๋ด๊ณตํ์๋ฅผ ์ํ ํ ์ดํฌ์ด์จ์ด
๋ฐ์ดํฐ ํจ์จ์ฑ: ์์์ ๊ณ ํ์ง ์ธ๊ฐ ์์ฐ์ด ๋๊ท๋ชจ ์ ํ์ง ๋ฐ์ดํฐ๋ณด๋ค ๊ฐ์น ์์ ์ ์์ต๋๋ค.
ํ์คํฌ ๋ถํด์ ์ค์์ฑ: ๋ณต์กํ ์ํ ํ์คํฌ๋ ์๋ธํ์คํฌ๋ก ๋ถํดํ๋ฉด ๊ด๋ฆฌ ๊ฐ๋ฅํด์ง๋๋ค.
์๋ฎฌ๋ ์ด์ ์ ๊ฐ์น: ์๋ฎฌ๋ ์ด์ ์์์ ์๋ ๋ฐ์ดํฐ ์์ฑ์ ์ค์ธ๊ณ ๋ฐ์ดํฐ ์์ง ๋น์ฉ์ ํฌ๊ฒ ์ค์ ๋๋ค.
์ ์ฑ ์ ํ: Diffusion Policy๊ฐ ์ํ ์์ฌ์ฃผ ์กฐ์์์ BC-RNN, BC-RNN-GMM์ ์ํํฉ๋๋ค.
์ค์ผ์ผ๋ง ๊ณ ๋ ค: 1000๊ฐ ๋ฐ๋ชจ๊ฐ ๋๋ถ๋ถ์ ํ์คํฌ์์ ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๋ฉฐ, ๊ทธ ์ด์์ ์ํ ์ฒด๊ฐ์ด ๋ฐ์ํฉ๋๋ค.
10.3 ๋ฏธ๋ ์ ๋ง
DexMimicGen์ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ์ํ ์กฐ์ ํ์ต์์ ๋ฐ์ดํฐ ๋ณ๋ชฉ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์ค์ํ ์ฒซ๊ฑธ์์ ๋๋ค. ์์ผ๋ก ์ธ์ด ์กฐ๊ฑด, ์จ๋ผ์ธ ์ ์, ๋ ๋ณต์กํ ํ์คํฌ๋ก์ ํ์ฅ์ด ๊ธฐ๋๋ฉ๋๋ค.
ํ์ธ๋ง์ด ๋งํ๋ฏ์ด, โ์ฐ๋ฆฌ๊ฐ ๋ง๋ค ์ ์๋ ๊ฒ์ ์ดํดํ์ง ๋ชปํ ๊ฒ์ด๋คโ. DexMimicGen์ ๋ก๋ด์ด ์ธ๊ฐ์ ์์ฌ์ฃผ๋ฅผ ๋ง๋ค์ด๋ด๋(์ฌํํ๋) ๋ฐฉ๋ฒ์ ํ ๋จ๊ณ ๋ฐ์ ์์ผฐ์ต๋๋ค. ํ์ง๋ง ์ง์ ํ ์ดํด, ์ฆ ์ ์ด ์์ง์์ด ํจ๊ณผ์ ์ธ์ง๋ฅผ ์๋ ๊ฒ์ ์์ง ๊ฐ ๊ธธ์ด ๋ฉ๋๋ค. ๊ทธ๊ฒ์ด ์ฐ๋ฆฌ ๋ก๋ด๊ณตํ์๋ค์ด ํ์ด์ผ ํ ๋ค์ ๋ฌธ์ ์ ๋๋ค.
์ฐธ๊ณ ๋ฌธํ
์ฃผ์ ์ฐธ๊ณ ๋ฌธํ๋ง ์ ๋ณํ์ฌ ์๋กํฉ๋๋ค:
- MimicGen: Mandlekar et al., โMimicGen: A Data Generation System for Scalable Robot Learning Using Human Demonstrations,โ CoRL 2023
- Diffusion Policy: Chi et al., โDiffusion Policy: Visuomotor Policy Learning via Action Diffusion,โ RSS 2023
- OmniH2O: He et al., โOmniH2O: Universal and Dexterous Human-to-Humanoid Whole-Body Teleoperation and Learning,โ arXiv 2024
- BiGym: Chernyadev et al., โBiGym: A Demo-Driven Mobile Bi-Manual Manipulation Benchmark,โ arXiv 2024
- RoboMimic: Mandlekar et al., โWhat Matters in Learning from Offline Human Demonstrations for Robot Manipulation,โ CoRL 2021
โ๏ธ Dig Review
โ๏ธ Dig โ Go deep, uncover the layers. Dive into technical detail.
์๋ก
๋ก๋ด ์กฐ์์์ ๋ชจ๋ฐฉ ํ์ต์ ์ฌ๋์ ์๋ฒ์ ํ์ต์ ํ์ฉํด ๋ณต์กํ ๋์์ ์ตํ๋ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ด๋ค. ๊ทธ๋ฌ๋ ํนํ ์์์ ์ด์ฉํ ์ ๋ฐ ์กฐ์ ๊ณผ์ ์์๋ ์์ฐ ๋ฐ์ดํฐ ์์ง์ด ๋งค์ฐ ์ด๋ ต๋ค. ๋ ํ๊ณผ ๊ฐ ์๊ฐ๋ฝ์ ๋์์ ์กฐ์ํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. ์ด ๋ ผ๋ฌธ์์๋ ์๋ฎฌ๋ ์ด์ ๊ธฐ๋ฐ์ผ๋ก ์์์ ์ฌ๋ ์์ฐ์ผ๋ก๋ถํฐ ์๋ง ๊ฐ์ ์์ ์กฐ์ ๊ถค์ ์ ์์ฑํ๋ DexMimicGen ์์คํ ์ ์ ์ํ๋ค. ์๋ฅผ ๋ค์ด Tray Lift ๊ณผ์ ์์ ์ฌ๋ ์กฐ์์ฌ๊ฐ ๋ ์์ผ๋ก ํธ๋ ์ด๋ฅผ ๋ค์ด์ฌ๋ฆฌ๋ ์์ฐ์ 5ํ๋ง ๊ธฐ๋กํด๋, DexMimicGen์ ์๋ฎฌ๋ ์ด์ ์์ ์ด๋ฅผ ๋ณํใป์ฌ์ํ์ฌ 1๋ง ๊ฐ ์ด์์ ์ฑ๊ณต ๊ถค์ ์ ์๋์ผ๋ก ์์ฑํ ์ ์๋คใ10โ ใ.
DexMimicGen ๊ฐ์: (์ผ์ชฝ) ์ฌ๋-๋ก๋ด ์๊ฒฉ ์กฐ์ข (teleoperation)์ผ๋ก ์์์ ๋ฐ๋ชจ๋ฅผ ์์งํ๊ณ , (์ค๊ฐ) ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์์ ๋ฐ๋ชจ๋ฅผ ๋ณํยท์ฌ์ํ์ฌ ๋๊ท๋ชจ ๋ฐ๋ชจ๋ฅผ ํฉ์ฑํ๋ฉฐ, (์ค๋ฅธ์ชฝ) ์ด๋ ๊ฒ ์์ฑ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก ์ ์ฑ ์ ํ์ตํด ์ค์ ๋ก๋ด์ ์ ์ฉํ๋ค. ์ด ํ์ดํ๋ผ์ธ์ ํตํด 60ํ์ ์์ค ์์ฐ์์ 21,000๊ฐ ์ด์์ ๋ฐ๋ชจ๋ฅผ ๋ง๋ค ์ ์์๊ณ , ํ์ต๋ ์ ์ฑ ์ ์ค์ ๋ก๋ด์ ์บ ๋ถ๋ฅ ๊ณผ์ (Real-World Can Sorting)์์ ์ฑ๊ณต์ ๋ณด์๋ค.
- ๋ชจ๋ฐฉ ํ์ต๊ณผ ๋ฐ์ดํฐ ๋ณ๋ชฉ: ๊ธฐ์กด ์ฐ๊ตฌ๋ค์ ๋จ์ผ ํ ์กฐ์์์ ์ฌ๋ฌ ์ฌ๋์ ๋๊ท๋ชจ ์์ฐ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ๋ฐ์ด๋ ์ฑ๊ณผ๋ฅผ ๋ณด์๋ค. ๊ทธ๋ฌ๋ ์์ ์กฐ์์์๋ ์์ฐ์์๊ฒ ๊ฐํด์ง๋ ๋ถ๋ด์ด ํฌ๊ณ , ํน์ํ ์๊ฒฉ ์กฐ์ข ์ฅ๋น๊ฐ ํ์ํด ๋ฐ์ดํฐ ์์ง์ด ๋ ํ๋ค๋ค. DexMimicGen์ ์๋ฎฌ๋ ์ด์ ์ ํ์ฉํด ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ์ฌ๋์ ์์ ์์ฐ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ๋ชจ ๋ณํ(Demonstration Transformation) ๊ธฐ๋ฒ์ ์ฌ์ฉํด ์๋ก์ด ์ด๊ธฐ ์ํ์ ํ๊ฒฝ์์ ๊ถค์ ์ ์์ฑํ๋ฉฐ, ์ฌ๋์ด ์๋ ์๋ฎฌ๋ ์ดํฐ๊ฐ ๋๋์ ๋ฐ์ดํฐ๋ฅผ โ์ค์ค๋กโ ๋ง๋ ๋ค. ์ด ๋ฐฉ์์ ์จ๋ผ์ธ์ผ๋ก ์ค์ ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ ์ ํตํด ๊ถค์ ์ ์ป๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ๋ค.
- ์ฃผ์ ๊ธฐ์ฌ: DexMimicGen์ (1) ์ ์ ์์ ์ธ๊ฐ ์์ฐ์ผ๋ก๋ถํฐ ์๋ง ๊ฐ์ ์์ ์กฐ์ ๊ถค์ ์ ์๋ ์์ฑํ๋ ํ๋ ์์ํฌ๋ฅผ ์ ์ํ๋ฉฐ, (2) ๊ฐ ํ์ ์๋ธํ์คํฌ๋ฅผ ๋น๋๊ธฐ์ ์ผ๋ก ์คํํ๋ ๊ธฐ๋ฒ, ๋ ํ ๋์์ ๋๊ธฐํํ๋ ์ ๋ต, ์์ ์ ์ฝ ๋ฉ์ปค๋์ฆ ๋ฑ ๋คํ ์กฐ์ ํนํ ์ค๊ณ๋ฅผ ๋์ ํ๋ค. ๋ํ (3) ์ธ ์ข ๋ฅ์ ๋ก๋ด ์ฒด๊ณ(ํํ ์ฃ๋ฅด ๊ทธ๋ฆฌํผ๋ฅผ ๋จ 2ํ, ์ฌ์ธํ ํธ๋๋ฅผ ๋จ 2ํ, ๊ทธ๋ฆฌ๊ณ ์ ์ ํด๋จธ๋ ธ์ด๋ 1๋)์ ๊ฑธ์น 9๊ฐ์ง ์๋ฎฌ๋ ์ด์ ๊ณผ์ ๋ฅผ ์ ์ํ๊ณ , (4) ์์ง๋ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํด ์ค์ ๋ก๋ด์์๋ ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ ์ ์์์ ๋ณด์๋ค. ์ด ๋ฐ์ดํฐ์ ๊ณผ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ๊ณต๊ฐ๋ ์์ ์ด๋ค.
๋ฐฉ๋ฒ
DexMimicGen์ ํต์ฌ์ ์๋ธํ์คํฌ ๋ถํด์ ๊ถค์ ๋ณํ์ด๋ค. ๋จผ์ ์ฌ๋ ์์ฐ์ ํ๋ณ ์๋ธํ์คํฌ(segment)๋ก ๋ถํ ํ๋ค. ์๋ฅผ ๋ค์ด โ์บ ๋ถ๋ฅโ ๊ณผ์ ์์ ์ผ์์ ์บ์ ์ง๋ ๋์, ์ค๋ฅธ์์ ์ฐ๋ ๊ธฐํต์ ๋ฃ๋ ๋์์ผ๋ก ๋๋ ์ ์๋ค. ๊ฐ ์๋ธํ์คํฌ๋ ํ๋์ ๊ฐ์ฒด์ ์ขํ๊ณ์์ ์ ์๋ ๊ถค์ (segment)์ผ๋ก ๊ฐ์ฃผ๋๋ค. ์ด๋ ๊ฒ ๋ถํ ํ ๋ค, ์๋ก์ด ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ๋ง๊ฒ ์๋ธํ์คํฌ ๊ถค์ ์ ๊ธฐ์ค ๊ฐ์ฒด(reference object)์ ์์น์ ๋ง์ถฐ ๋ณํํ๋ค. ์๋ฅผ ๋ค์ด ํธ๋ ์ด๋ฅผ ๋ค๋ ค๋ ๊ณผ์ ์์ ํธ๋ ์ด์ ์์น๊ฐ ์์ฐ ๋ฐ์ดํฐ์ ๋ฌ๋ผ์ง๋ฉด, ํธ๋ ์ด์ ๋ํ ์๋ ๋ณํ(ํ์ ๋ฐ ์ด๋)์ ๊ณ์ฐํด ์ฌ๋์ ๋๋จ ๊ถค์ ์ ์ด๋์ํค๋ ์์ด๋ค. ์ด๋ ํธ๋ ๊ด์ ์ ๋์์ ์ฃผ๋ก ๋๋จ์ ์์ง์์ ์๋์ ์ธ ๋ฐฉ์์ด๋ฏ๋ก, ์๊ฐ๋ฝ ๋์์ ์์ฐ ๋ฐ์ดํฐ ๊ทธ๋๋ก ์ฌ์ํ์ฌ ๊ตฌํํ๋ค.
๊ฐ ํ์ ๋น๋๊ธฐ ์คํ(asynchronous execution)๋๋ค. ์ฆ, ๋ ํ์ ์๋ธํ์คํฌ๊ฐ ๋๋๋ ์์ ์ด ๋ฐ๋์ ์ผ์นํ์ง ์์๋ ๋๋ค. ์๋ฅผ ๋ค์ด ํ ํ์ด ๋ฌผ์ฒด๋ฅผ ๋จผ์ ์ง์ด ๋ค ๋, ๋ค๋ฅธ ํ์ ์์ง ์ค๋น ๋จ๊ณ์ ์์ ์ ์๋ค. ์ด๋ฅผ ์ํด ๊ฐ ํ๋ง๋ค ๋์ ํ(queue)๋ฅผ ์ ์งํ๊ณ , ํ๊ฐ ๋น๋ฉด ๋ค์ ์๋ธํ์คํฌ ๊ถค์ ์ ๋ถ๋ฌ์ค๋ ๋ฐฉ์์ผ๋ก ๋ ํ์ ๋ณ๋ ฌ๋ก ์ฒ๋ฆฌํ๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ ํ์ ๋์์ ํ๋์ ๊ณ ์ ์์์ ๋ง์ถ ํ์ ์์ด ์๋ก ๋ ๋ฆฝ์ ์ผ๋ก ์ํํ ์ ์๋ค.
flowchart TB
subtask["์๋ธํ์คํฌ ์ ํ"] --> parallel["๋ณ๋ ฌ Parallel"]
subtask --> coord["ํ๋ Coordination"]
subtask --> seq["์์ฐจ Sequential"]
parallel --> async["๊ฐ ํ ๋
๋ฆฝ ์คํ"]
coord --> sync["๋ ํ ๋๊ธฐํ ์คํ"]
seq --> order["์์ ๋ณด์ฅ ์คํ"]
์ ๋ค์ด์ด๊ทธ๋จ: DexMimicGen์ด ๋ค๋ฃจ๋ ์๋ธํ์คํฌ ์ ํ. ์ผ์ชฝ(๋ณ๋ ฌ) ์ฒ๋ฆฌ๋ ๋ ํ์ด ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ ๋, ์ค๊ฐ(ํ๋) ์ฒ๋ฆฌ๋ ๋ ํ์ด ํจ๊ป ํ๋ ฅํด์ผ ํ ๋, ์ค๋ฅธ์ชฝ(์์ฐจ) ์ฒ๋ฆฌ๋ ํ ํ์ ๋์ ์๋ฃ ํ์ ๋ค๋ฅธ ํ ๋์์ด ์ด์ด์ ธ์ผ ํ๋ ๊ฒฝ์ฐ๋ฅผ ๋ปํ๋ค. DexMimicGen์ ๋ณ๋ ฌ ์๋ธํ์คํฌ์ ๋น๋๊ธฐ ์คํ, ํ๋ ์๋ธํ์คํฌ์ ๋๊ธฐํ๋ ์คํ, ์์ฐจ ์๋ธํ์คํฌ์ ์์ ์ ์ฝ์ ์ ์ฉํ๋ค.
ํ๋ ์๋ธํ์คํฌ์ ์๋ก๋ ๋ ํ์ด ํจ๊ป ๋ฌผ์ฒด๋ฅผ ์์ง์ด๊ฑฐ๋ ๋์ฌ๋ฅผ ์กฐ๋ฆฝํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ ๋ ํ์ ๋๋จ ์์น๊ฐ ์๋ก ์ผ์น๋ ํ์ด๋ฐ์ ์์ง์ฌ์ผ ํ๋ฏ๋ก, DexMimicGen์ ํ๋ ๊ตฌ๊ฐ์์๋ ๋๊ธฐํ ์ ๋ต์ ์ด๋ค. ์ฆ, ๋ ํ์ด ๋์์ ์๋ธํ์คํฌ๋ฅผ ๋ง์น๋๋ก ๊ฐ ํ์ด ๋จ์ ๋์ ์๊ฐ ๊ฐ์์ง ๋๊น์ง ๋๊ธฐ์์ผ ํ์ด๋ฐ์ ๋ง์ถ๋ค. ๋ํ ๋ ํ์ ๊ถค์ ์ ๊ฐ์ ๊ธฐ์ค๊ฐ์ฒด ๋ณํ์ ์ฌ์ฉํด ์์ฑํ๊ฑฐ๋(Transform) ์์ ์์ฐ ๊ถค์ ์ ๊ทธ๋๋ก ์ฌ์(Replay)ํ๋ค. ์๋ฅผ ๋ค์ด ๋ฌผ๊ฑด์ ํ ์์์ ๋ค๋ฅธ ์์ผ๋ก ๋๊ฒจ์ค ๋๋ ์์์ค ๊ถค์ ์ ๊ทธ๋๋ก ๋ฐ๋ผ๊ฐ๋ ๊ฒ์ด ๊ถค์ ์์ ์ฑ ์ธก๋ฉด์์ ์ ๋ฆฌํ๋ค๊ณ ๋ณด๊ณ ์๋ค.
์์ฐจ ์๋ธํ์คํฌ๋ โ๋จผ์ A ์์ ์ ํ ๋ค B ์์ ์ ํด์ผ ํ๋โ ๊ฒฝ์ฐ์ด๋ค. ์๋ฅผ ๋ค์ด ๋ฌผ ๋ถ๊ธฐ(Pouring) ๊ณผ์ ์์๋ ํ ์์ผ๋ก ์ปต์ ๊ณต์ ๋ถ๊ณ ๋ ๋ค, ๋ค๋ฅธ ์์ผ๋ก ์ปต์ ํ ์ด๋ธ ์์ ๋์์ผ ํ๋ค. ์ด๋ ๊ผญ ์ง์ผ์ผ ํ ์ ํ ๊ด๊ณ๋ฅผ ์ํด DexMimicGen์ ์์ฐจ ์ ์ฝ์ ๋๋ค. ์ฆ, ํ์ ์๋ธํ์คํฌ๋ฅผ ์ํํ๋ ํ์ ๋ค๋ฅธ ํ์ ์ ํ ์๋ธํ์คํฌ๊ฐ ์๋ฃ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฐ๋ค.
๋ชจ๋ ์๋ธํ์คํฌ ๊ถค์ ์ ์ด๋ฆฐ ๋ฃจํ ๋ฐฉ์์ผ๋ก ์๋ฎฌ๋ ์ดํฐ ๋ด์์ ์คํ๋๋ค. ์๋ฅผ ๋ค์ด ๋ก๋ณด์ค์ํธ(RoboSuite)์ MuJoCo ๋ฌผ๋ฆฌ์์ง์ ์ด์ฉํด ๊ฐ ์ข ๋ก๋ด ๋ชจ๋ธ(ํํ ์ฃ๋ฅด ๊ทธ๋ฆฌํผ ์ฅ์ฐฉ 2ํ, ์ฌ์ธํ ํธ๋ ์ฅ์ฐฉ 2ํ, GR-1 ํด๋จธ๋ ธ์ด๋ 1๋)์ ๊ตฌํํ๋ค. Panda ๋ก๋ดํ์๋ ์ด์๊ณต๊ฐ ์ ์ด(Operational Space Control)๋ฅผ, ํด๋จธ๋ ธ์ด๋์๋ ์ญ๊ธฐ๊ตฌํ ์ปจํธ๋กค๋ฌ๋ฅผ ์ฌ์ฉํด ์ต์ข ๊ด์ ํ ํฌ๋ฅผ ๊ณ์ฐํ๋ค. ์ฌ๋์ด ์กฐ์ข ํ ์์ ์์ฐ ๋ฐ์ดํฐ(์์ธ, ์๋์ ๋ฑ)๋ iPhone์ด๋ VisionPro ๊ธฐ๋ฐ ์ธํฐํ์ด์ค๋ฅผ ํตํด ์์ง๋๋ฉฐ, ์ด๋ DexMimicGen์ ์์ค ๋ฐ๋ชจ๋ก ์ฐ์ธ๋ค.
์คํ ๋ฐ ๊ฒฐ๊ณผ
์คํ ์ค์ : ๊ฐ ๊ณผ์ ๋ณ๋ก ํํ ๊ทธ๋ฆฌํผ๋ฅผ ์ด ๊ฒฝ์ฐ 10ํ, ํธ๋๋ฅผ ์ด ๊ฒฝ์ฐ 5ํ์ ์ธ๊ฐ ์์ฐ์ ์๊ฒฉ์กฐ์ข ์ผ๋ก ์์งํ๋ค. DexMimicGen์ ์ด์ฉํด ๊ณผ์ ๋น 1000๊ฐ์ ์๋ฎฌ๋ ์ด์ ๋ฐ๋ชจ๋ฅผ ์์ฑํ ํ, ์ด๋ฅผ ํ๋ ๋ณต์ (Behavioral Cloning)๋ก ํ์ต์์ผฐ๋ค. ํ์ต์๋ ์๊ฐ ๊ด์ธก์ ์ ๋ ฅ์ผ๋ก ๋ฐ๋ RNN ๊ธฐ๋ฐ ์ ์ฑ , GMM(ํผํฉ ๊ฐ์ฐ์์) ์ก์ ํค๋๋ฅผ ์ด RNN, ๊ทธ๋ฆฌ๊ณ ์ต๊ทผ ๋ฐฉ๋ฒ์ธ ํ์ฐ ์ ์ฑ (Diffusion Policy)์ ์ฌ์ฉํ๋ค. ๊ฐ ์คํ์ 3๊ฐ์ง ๋ค๋ฅธ ์๋๋ก ๋ฐ๋ณตํ์ฌ ์ฑ๊ณต๋ฅ ์ ๊ณ์ฐํ๋ค.
๊ณผ์ : ์ด 9๊ฐ ๊ณผ์ (3๊ฐ์ง ๋ก๋ด ร 3๊ณผ์ )์์ ํ๊ฐํ๋ค. ๋ํ์ ์ผ๋ก Threading, Piece Assembly, Box Cleanup, Coffee ๋ฑ ๊ณ ์ ๋ฐ ์กฐ์ ๊ณผ์ ์, Drawer Cleanup ๊ฐ์ ๊ด์ ๊ฐ์ฒด ์กฐ์, Transport ๊ฐ์ ์ฅ๊ธฐ ๊ณผ์ ๋ฅผ ํฌํจํ๋ค. ๋ช๋ช ๊ณผ์ ๋ ๋ ํ ํ๋(Tray Lift, Can Sorting, Transport ๋ฑ)์ด๋ ์์ฐจ์ ์กฐ์(Pouring, Coffee, Piece Assembly ๋ฑ)์ ํ์๋ก ํ๋ค. ์ด ์ธ์๋ ์ด๊ธฐ ์ํ ๋ถํฌ๋ฅผ ๋ํ ๋ณํ ๊ณผ์ ๋ค์ ์ถ๊ฐํ์ฌ, ๋ ๋ค์ํ ํ๊ฒฝ์์์ ๋ฐ์ดํฐ ์์ฑ ํจ๊ณผ๋ฅผ ์คํํ๋ค.
์ฑ๋ฅ ๊ฒฐ๊ณผ: DexMimicGen์ ๋ฐ์ดํฐ๋ก ํ์ตํ ์ ์ฑ ์ ์์ ๋ฐ๋ชจ๋ง ์ฌ์ฉํ์ ๋๋ณด๋ค ํฌ๊ฒ ํฅ์๋์๋ค. ์๋ฅผ ๋ค์ด Drawer Cleanup ๊ณผ์ ์์๋ ์ฑ๊ณต๋ฅ ์ด 0.7%์์ 76.0%๋ก, Threading์ 1.3%์์ 69.3%๋ก, Piece Assembly๋ 3.3%์์ 80.7%๋ก ๋์์ก๋ค. ์ฆ, ์์ญ ํ์ ์์ฐ๋ง์ผ๋ก๋ ๊ฑฐ์ ๋ถ๊ฐ๋ฅํ๋ ์กฐ์๋ DexMimicGen์ ์ฆ๊ฐ๋ ๋ฐ์ดํฐ๋ก๋ ์๋นํ ์ ์ํํ ์ ์๊ฒ ๋์๋ค. ๊ฐ ๊ณผ์ ์ ๋ง๊ฒ ์ด๊ธฐ ์ํ๋ฅผ ๋ฌด์์๋ก ๋๋ฆฐ ์คํ์์๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์๋ค. ์ถ๊ฐ๋ก, BiGym์ด๋ผ๋ ์๋ก์ด ํด๋จธ๋ ธ์ด๋ ๋ชจ๋ฐ์ผ ์กฐ์ ๋ฒค์น๋งํฌ์ FlipCup, DishwasherLoadPlates, CupBoardsCloseAll ๊ณผ์ ์ ๊ฐ๊ฐ 1000๊ฐ ๋ฐ๋ชจ๋ฅผ ์์ฑํด ์ฑ๊ณต๋ฅ 29.1%, 43.6%, 76.4%๋ฅผ ์ป์๋ค.
๊ธฐ๋ฒ ๋น๊ต ๋ฐ ๋ถ์: ๋ฐ๋ชจ-๋ ธ์ด์ฆ(Demo-Noise)๋ผ๋ ๊ฐ๋จํ ๋์กฐ๊ตฐ(์์ ๋ฐ๋ชจ์ ๋์ ๋ ธ์ด์ฆ๋ง ์ฃผ์ )์ ๋น๊ตํด ๋ณด์๋ค. ๊ทธ ๊ฒฐ๊ณผ, DexMimicGen์ด ์์ฑํ ๋ฐ์ดํฐ๋ก ํ์ตํ ์ ์ฑ ์ ๋ชจ๋ ๊ณผ์ ์์ ๋ฐ๋ชจ-๋ ธ์ด์ฆ ๋๋น 58% ์ด์ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ณด์๋ค. ์ด๋ DexMimicGen์ด ๋ ๋ค์ํ ์ด๊ธฐ ์ํ์ ๊ฐ์ฒด ๋ฐฐ์น๋ฅผ ๊ฒฝํ์์ผ์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฐ์ดํฐ ์์ ํจ๊ณผ๋ ํ์ธํ๋ค. ๋ฐ์ดํฐ ํฌ๊ธฐ๋ฅผ 100โ500โ1000๊ฐ๋ก ๋๋ฆฌ๋ฉด ์ฑ๋ฅ์ด ํฌ๊ฒ ํฅ์๋์๊ณ , ์ดํ 5000๊ฐ๋ก ๋๋ฆฐ ๊ฒฝ์ฐ์๋ ๊ณผ์ ์ ๋ฐ๋ผ ์ฝ๊ฐ์ ์ฑ๋ฅ ์ ์ฒด๊ฐ ๊ด์ฐฐ๋์๋ค.
ํ๋ ์๋ธํ์คํฌ์ ๋ณํ ๋ฐฉ์(Transform vs Replay)๋ ๊ฒ์ฆํ๋ค. ๋ฌผ๊ฑด์ ๋๊ฒจ์ฃผ๋ ๊ณผ์ (Transport)์์๋ Replay ๋ฐฉ์์ด 63.3%์ ์ฑ๊ณต๋ฅ ๋ก 46.0%์ Transform๋ณด๋ค ๋์๊ณ , ์บ ๋ถ๋ฅ ๊ณผ์ (Can Sorting)์์๋ ๋ ๋ฐฉ๋ฒ์ด ๊ฑฐ์ ๋น์ทํ๋ค(97.3% vs 98.6%). ๋ฐ๋ผ์ ์ ์๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ์๋๊ฒจ์ฃผ๊ธฐ์ ๊ฐ์ ํ๋ ๊ตฌ๊ฐ์๋ Replay๋ฅผ ์ฌ์ฉํ๋ค. ์์ฐจ ์ ์ฝ์ ์ ํจ์ฑ๋ ํ์ธ๋์๋ค. ๊ฐ ํ์ ์๋ก ๋ค๋ฅธ ์์ฐ์ ํผํฉํ์ฌ ์์ฑํ ๋, ์์ฐจ ์ ์ฝ์ ์ ์ฉํ๋ฉด ์ ์ฉํ์ง ์์ ๋๋ณด๋ค ์ ์ฑ ์ฑ๋ฅ์ด ๊ฐ์ ๋์๋ค(์: Drawer 50.7% vs 48.0%, Pouring 88.7% vs 76.7%).
์ค์ ๋ก๋ด ๋ฐฐํฌ: DexMimicGen์ ๋์งํธ ํธ์(real-to-sim) ํ์ดํ๋ผ์ธ์ ํตํด ์ค์ ๋ก๋ด์์๋ ์ ์ฉ๋์๋ค. GR-1 ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ๋ ๋์ 6์ถ ํธ๋๋ฅผ ์ฅ์ฐฉํ๊ณ , ์ค์ ์์ ์ฅ๊ณผ ๋์ผํ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ๋ง๋ ๋ค(๊ฐ์ฒด ์์น ์ธ์์ ํตํด ์ด๊ธฐํ), ์บ ๋ถ๋ฅ ๊ณผ์ ์์ ์์ ๋ฐ๋ชจ 4๊ฐ๋ฅผ ์์งํ์ฌ ์๋ฎฌ์์ 40๊ฐ์ ์ ๋ฐ๋ชจ๋ฅผ ์์ฑํ๋ค. ์ด ๋ฐ์ดํฐ๋ก ํ์ตํ ์ ์ฑ ์ ์ค์ ์ํ์์ ์บ์ ์ ํํ ๋ถ๋ฅํ๋ ๋ฐ ์ฑ๊ณตํ์ง๋ง, ์์ ๋ฐ๋ชจ๋ง์ผ๋ก ํ์ตํ ์ ์ฑ ์ ๋ชจ๋ ์คํจํ๋ค. ์ด๋ DexMimicGen์ ์๋ํ๋ ๋ฐ์ดํฐ ์์ฑ์ด ์ค์ ๋ก๋ด ํ์ต์๋ ํจ๊ณผ์ ์์ ๋ณด์ฌ์ค๋ค.
๋นํ์ ๊ณ ์ฐฐ
์ฅ์ : DexMimicGen์ ๋์ฉ๋ ๋ฐ์ดํฐ๊ฐ ํ์ํ ๋ณต์กํ ์์ ์กฐ์์์๋ ์ฌ๋ ์์ง ๋ถ๋ด์ ํฌ๊ฒ ์ค์ด๋ ํ์ ์ ๋ฐฉ๋ฒ์ด๋ค. ์๋ฎฌ๋ ์ด์ ์ ํ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์์ฑ๋น์ฉ์ด ๊ฑฐ์ ๋ค์ง ์์ผ๋ฉฐ, ์์ฑ๋ ๊ถค์ ์ ์ค์ ๋ฌผ๋ฆฌ ๋ชจ๋ธ์์ ๋์จ ๊ฒ์ด์ด์ ํ์ค์ ์ด๋ค. ๋ํ ์ํ ํน์ ์ ์กฐ์ ๋ฌธ์ (๋น๋๊ธฐ, ๋๊ธฐํ, ์์)๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ๋ค๋ฃฐ ์ ์๋๋ก ์ค๊ณ๋ ๊ฒ์ด ํฐ ์ฅ์ ์ด๋ค. ์ ์๋ค์ ๊ณต๊ฐ ํ๊ฒฝ๊ณผ ๋ฐ์ดํฐ์ ์ ํฅํ ๋ค๋ฅธ ์ฐ๊ตฌ์๋ค์ด ์ฝ๊ฒ ์๋ก์ด ์์ ์กฐ์ ๋ฌธ์ ๋ฅผ ์คํํด๋ณผ ์ ์๊ฒ ํ ๊ฒ์ด๋ค.
์ฝ์ ๋ฐ ํ๊ณ: ๊ทธ๋ฌ๋ ๋ช ๊ฐ์ง ํ๊ณ๋ ์๋ค. ์ฒซ์งธ, DexMimicGen์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๋ฆฐ ๋ฃจํ ๊ถค์ ์ฌ์์ ์์กดํ๋ค. ์ฆ, ์ ์ฑ ์ ํ์ตํ ํ์๋ ์ค์ ๋์ ์ค ์๊ธฐ์น ๋ชปํ ์ํฉ ๋์ ๋ฅ๋ ฅ์ ์ ํ์ ์ผ ์ ์๋ค. ์ผ์ ํผ๋๋ฐฑ์ ํ์ฉํ ๋ซํ ๋ฃจํ ์ ์ด๋ ์ถ๊ฐ ์ฐ๊ตฌ๊ฐ ํ์ํ๋ค. ๋์งธ, ์๋ฎฌ๋ ์ด์ ๊ณผ ์ค์ ๊ฐ์ ๋๋ฉ์ธ ๊ฐญ ๋ฌธ์ ๋ค. ์ค์ ์ธ๊ณ์ ๋ง์ฐฐ, ๋ง์ปค ์ถ์ ์ค์ฐจ ๋ฑ์ด ์๋ฎฌ๋ ์ดํฐ์ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, ์์ฑ๋ ๋ฐ์ดํฐ๊ฐ ๊ทธ๋๋ก ํ์ค์์๋ ์๋ฒฝํ ์ ์ฉ๋๋ค๊ณ ๋ณด์ฅํ๊ธฐ ์ด๋ ต๋ค. ์ค์ ์คํ์์๋ ๋์งํธ ํธ์์ผ๋ก ์์ ์ ํ๋ณดํ์ง๋ง, ๋ค์ํ ์ธ๋์ ๊ฒฌ๋๋๋ก ํ๊ธฐ ์ํด ๋๋ฉ์ธ ๋๋คํ๋ ์ฌ์ ์ถ๊ฐ ํ์ต์ด ํ์ํ ๊ฒ์ด๋ค. ์ ์งธ, DexMimicGen์ โ๊ฐ์ฒด ์ค์ฌ ์๋ธํ์คํฌโ๋ผ๋ ๊ฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ค. ๋ณต์กํ ๊ณผ์ ์์ ์ฌ๋ฐ๋ฅธ ์๋ธํ์คํฌ ๋ถํ ์ด ํ์ํ๋ฉฐ, ์ด๋ฅผ ์ฌ๋์ ์์์ ์ผ๋ก ํด์ผ ํ๋ค๋ฉด ์๋ํ๊ฐ ๋จ์ ์์ ๋ค. ๋ง์ง๋ง์ผ๋ก, ์ง๊ธ๊น์ง ์ ์๋ ๊ณผ์ ๋ค์ ์ฐ์์ ์ผ๋ก ํด๊ฒฐํด์ผ ํ ๋ช ์์ ๋ชฉํ๊ฐ ์๋ ๊ณ ์ ๋ ์์ ๋ค์ด๋ค. ์๋ฅผ ๋ค์ด ์์ ํ ์๋ก์ด ์๋ฌด(์: ๊ฐ์์ค๋ฐ ์ฅ์ ๋ฌผ ํํผ)์๋ ์ด๋ป๊ฒ ๋์ํ ์ง ๋ฏธ๋ฆฌ ์ฐ๊ตฌ๊ฐ ํ์ํ๋ค.
์์ฉ ๋ฐ ํ์ฅ
์ด ์ฐ๊ตฌ๋ ์ค์ ๋ก๋ด ์์คํ ์ผ๋ก ํ์ฅ๋ ๊ฐ๋ฅ์ฑ์ด ํฌ๋ค. ์๋ฅผ ๋ค์ด ์ฐ์ ์ฉ ์กฐ๋ฆฝ ๋ผ์ธ์์ ๋ ๋ก๋ดํ์ด ํ๋ํ์ฌ ๋ฌผ๊ฑด์ ์ด๋ฐํ๊ฑฐ๋ ์กฐ๋ฆฝํ ๋, DexMimicGen๊ณผ ๊ฐ์ ํ์ดํ๋ผ์ธ์ผ๋ก ๋๋์ ์๋ฎฌ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ฉด ํ๋ จ ํจ์จ์ด ํฌ๊ฒ ๋์์ง ์ ์๋ค. ๋ฟ๋ง ์๋๋ผ ๋ณต์กํ ๊ฐ์ ์ฉ ๋ก๋ด(์: ํด๋จธ๋ ธ์ด๋ ๊ฐ์ฌ ๋ก๋ด)์๊ฒ๋ ์ ์ฉํ ์ ์๋ค. ํ์ ์ฐ๊ตฌ์์๋ ๋ ๋ค์ํ ํด๋จธ๋ ธ์ด๋ ํ๊ฒฝ(๋ชจ๋ฐ์ผ ๋ฒ ์ด์ค ํฌํจ ๋ฑ)์์ DexMimicGen์ ์ ์ฉํด ๋ณด๊ณ , ์ค์ ์ผ์ ํผ๋๋ฐฑ์ ํฌํจํ ํ์ํ ์ ์ฑ ์ด๋ ๊ฐํํ์ต๊ณผ์ ๊ฒฐํฉ์ ํตํด ๊ฐ๊ฑด์ฑ์ ๋์ด๋ ๋ฐฉํฅ๋ ๊ธฐ๋ํ ์ ์๋ค. ๋ํ, ํด๋จธ๋ ธ์ด๋ ์๊ฒฉ์กฐ์ข ๊ธฐ์ ์ ๋ฐ์ ์ ํ์ ์ด ์ด๊ธฐ ์์ฐ ์์ง์ ๋์ฑ ์ฉ์ดํ๊ฒ ๋ง๋ค๊ณ , ๊ฐ์ฒด ๊ฒ์ถ๊ณผ ์์ธ ์ถ์ ์ ์๋ํํ์ฌ ํ์ดํ๋ผ์ธ์ ์์จ์ฑ์ ๊ทน๋ํํ๋ ๊ฒ๋ ์ค์ํ ๊ณผ์ ๋ค. ๋ง์ง๋ง์ผ๋ก, DexMimicGen์ ์ค๊ณ ์์น(์๋ธํ์คํฌ ๋ถํด, ๋๊ธฐํ ๋ฑ)์ ๋จ์ผ ๋ก๋ด ์๋ฌด์๋ ์์ฉํ ์ ์์ด, ๋ก๋ด ํ์ ์ด๋ ๋ค์ค ์์ด์ ํธ ์์ญ์์๋ ์๊ฐ์ ์ค ์ ์๋ค.
์์ฝ ๋ฐ ๊ฒฐ๋ก
DexMimicGen์ ์ํ ๋ค์ง๋ฅ ๋ก๋ด ์กฐ์์์ ๋ฐ์ดํฐ ๋ถ์กฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์๋ ์๋ํ ๋ฐ์ดํฐ ์์ฑ ์์คํ ์ด๋ค. ์ฌ๋์ ์์ ์์ฐ์์ ์์ํด ์๋ธํ์คํฌ๋ณ๋ก ๋ถํ ใป๋ณํํ์ฌ ์๋ฎฌ๋ ์ดํฐ์์ ์๋ง ๊ฐ์ ๊ถค์ ์ ์์ฑํจ์ผ๋ก์จ, ํ๋ ๋ณต์ ๋ฅผ ์ํ ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์ ์ป๋๋ค. ๋น๋๊ธฐ ์คํ, ํ๋ ์๋ธํ์คํฌ ๋๊ธฐํ, ์์ฐจ์ ์์ ์ ์ฝ ๊ฐ์ ์์๋ฅผ ๋์ ํด ๋ ํ ํน์ ์ ํ์ ๋์์ ์ฒ๋ฆฌํ๋ค. ๋ค์ํ ์๋ฎฌ๋ ์ด์ ๊ณผ์ ์์์ ์คํ ๊ฒฐ๊ณผ, DexMimicGen์ด ์์ฑํ ๋ฐ์ดํฐ๋ก ํ์ตํ ์ ์ฑ ์ ๊ธฐ์กด ์๊ท๋ชจ ๋ฐ๋ชจ๋ง์ผ๋ก ํ์ตํ ์ ์ฑ ๋ณด๋ค ํจ์ฌ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ณด์์ผ๋ฉฐ, ์ค์ ๋ก๋ด์์๋ ์ฑ๊ณต์ ์ธ ๋ถ๋ฅ ์์ ์ ๋ฌ์ฑํ๋ค. ์ด๋ฌํ ๊ฒฐ๊ณผ๋ ๋ก๋ด๊ณตํ์์ ๋ชจ๋ฐฉ ํ์ต์ ๋ฒ์๋ฅผ ํ์ฅํ ๋ฟ ์๋๋ผ, ๋ฐ์ดํฐ ๋ถ์กฑ์ด๋ผ๋ ์ค์ฉ์ ๋ฌธ์ ๋ฅผ ์๋ฎฌ๋ ์ด์ ์ผ๋ก ํธ๋ ์๋ก์ด ๊ธธ์ ์ ์ํ๋ค. ์์ผ๋ก DexMimicGen์ ๊ณต๊ฐ ๋ฐ์ดํฐ์ ๊ณผ ํด์ ๋ฐํ์ผ๋ก ๋ ๋ค์ํ ์ํ ์กฐ์ ๊ณผ์ ์ ํ์ต ์๊ณ ๋ฆฌ์ฆ์ ์ฐ๊ตฌํด ๋๊ฐ๋ฉด, ๋ก๋ด์ ๋ณต์กํ ํ์ ์กฐ์ ๋ฅ๋ ฅ ํฅ์์ ํฐ ์ง์ ์ด ์์ ๊ฒ์ด๋ค.