flowchart LR
subgraph S1["1 Data Collection & Curation"]
V[๋ชจ์
์์<br/>GVHMR ๋ณต์] --> R[๋ก๋ด์ผ๋ก retarget<br/>contact-constrained IK]
M[Mocap ๋ฐ์ดํฐ] --> R
R --> AUG["Motion Augmentation<br/>์งํ ๋์ด ์ค์ผ์ผ๋ง<br/>+ ๋๋ค ๋ฐ์ค ์ฝ์
"]
AUG --> DS[(Motion Dataset<br/>์ฝ 1์๊ฐ)]
end
subgraph S2["2 Pre-training"]
DS --> GEN["Diffusion<br/>Motion Generator"]
DS --> TRK["RL Motion Tracker<br/>(DeepMimic + PPO)"]
end
subgraph S3["3 RL Fine-tuning"]
GENf["Generator (frozen)"] --> TRKf["Motion Tracker<br/>(RL ์ฌํ์ต)"]
TRKf -->|robot states<br/>past 2 frames| GENf
DIR[Direction Command] --> GENf
HS[Height Scan] --> TRKf
end
GEN --> GENf
TRK --> TRKf
๐Whole-Body Loco
- ๐ค ๋ณธ ๋ ผ๋ฌธ์ Motion Generation๊ณผ Motion Tracking์ ๊ฒฐํฉํ์ฌ ๊ณ ์ฐจ์ ์ ์ด ๋ฐ ์งํ ์ ์์ ์ด๋ ค์์ด ์๋ ์ ์ ํด๋จธ๋ ธ์ด๋ ๋ก์ฝ๋ชจ์ ํ๋ ์์ํฌ๋ฅผ ์ ์ํฉ๋๋ค.
- โ๏ธ ์ด ํ๋ ์์ํฌ๋ ์งํ ์ธ์ Motion Generation์ ์ํ Diffusion ๋ชจ๋ธ๊ณผ Motion Tracking์ ์ํ RL ๊ธฐ๋ฐ ํธ๋์ปค๋ฅผ ์ฌ์ ํ์ตํ ํ, ๊ณ ์ ๋ ์์ฑ๊ธฐ์ ํจ๊ป ํธ๋์ปค๋ฅผ Closed-loop๋ก ๋ฏธ์ธ ์กฐ์ ํ์ฌ ๊ฐ๊ฑด์ฑ๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฅ์์ํต๋๋ค.
- ๐ Unitree G1 ๋ก๋ด์ ๋ฐฐํฌ๋ ์ด ์์คํ ์ ๋ค์ํ ๋ณตํฉ ์งํ์์ ์ฑ๊ณต์ ์ธ ํก๋จ์ ์์ฐํ์ผ๋ฉฐ, ์จ๋ผ์ธ Motion Generation ๋ฐ ํธ๋์ปค ๋ฏธ์ธ ์กฐ์ ์ ํตํ ์ ๋์ ๊ฐ์ ์ ์ ์ฆํ์ต๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
์ด ๋ ผ๋ฌธ์ ๋ชจ์ ์์ฑ(Motion Generation)๊ณผ ๋ชจ์ ํธ๋ํน(Motion Tracking)์ ๊ฒฐํฉํ์ฌ ์ ์ (Whole-Body) ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ์ง๊ฐ ๊ธฐ๋ฐ(perceptive) ์ด๋(Locomotion)์ ํ์ตํ๋ ํ๋ ์์ํฌ๋ฅผ ์ ์ํฉ๋๋ค. ๋์ ์์ ๋(Degrees of Freedom)์ ํํํ์ ๋ถ์์ ์ฑ(morphological instability)์ผ๋ก ์ธํด ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ์ด๋์ ๊น๋ค๋กญ์ต๋๋ค. ๊ธฐ์กด ๊ฐํ ํ์ต(Reinforcement Learning, RL)์ ์ข ์ข ํ์ฒด ์์ฃผ์ ๋์์ ํ์ตํ๊ฑฐ๋, ๋ชจ๋ฐฉ ๊ธฐ๋ฐ RL์ ๋ ํผ๋ฐ์ค ๋ชจ์ (reference motions) ์ฌ์์ ๊ตญํ๋์ด ์งํ์ ๋ํ ์จ๋ผ์ธ ์ ์์ฑ(online adaptation)์ด ๋ถ์กฑํ๋ค๋ ํ๊ณ๊ฐ ์์ต๋๋ค.
์ ์ํ๋ ๋ฐฉ๋ฒ๋ก ์ ์ธ ๊ฐ์ง ์ฃผ์ ๋จ๊ณ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค:
- ๋ฐ์ดํฐ ์์ง ๋ฐ ํ๋ ์ด์
(Data Collection & Curation):
- ์ด๊ธฐ ๋ชจ์ ๋ฐ์ดํฐ๋ ์์ฒด ์ดฌ์๋ ๋ชจ์ ๋น๋์ค์ ๊ณต๊ฐ ๋ฐ์ดํฐ์ ([12, 30])์์ ์์ง๋ ์ฝ 5๋ถ ๋ถ๋์ ๋ชจ์ ํด๋ฆฝ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ 50cm ์์ ๋ฑ๋ฐ, 35cm ํ๋ค ๋๊ธฐ, 50cm ์์์์ ์ ํ, 20cm ๊ณ๋จ ์ค๋ฅด๋ด๋ฆฌ๊ธฐ ๋ฑ ๋ค์ํ ์งํ ์คํฌ์ ํฌํจํฉ๋๋ค.
- ๋น๋์ค์์ ์ถ์ถ๋ ๋ชจ์ ์ GVHMR [31]์ ์ฌ์ฉํ์ฌ ์ธ๊ฐ ๋ชจ์ ์ ์ฌ๊ตฌ์ฑ(reconstruct)ํ ํ, Drake [32]์ ์ ์ด ์ ์ฝ์ด ์๋ ์ญ์ด๋ํ(contact-constrained IK) ์๋ฒ๋ฅผ ์ฌ์ฉํ์ฌ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ๋ฆฌํ๊ฒํ (retarget)๋ฉ๋๋ค.
- ์ดํ, ์ด๊ธฐ ๋ฆฌํ๊ฒํ ๋ ๊ถค์ (trajectories)์ ์ง์ ์ฌ์ฉํ์ง ์๊ณ , DeepMimic ์คํ์ผ์ ํธ๋ํน ์ ์ฑ (tracking policy)์ผ๋ก Refineํ์ฌ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ์์ฑํฉ๋๋ค.
- ๋ชจ์ ์ฆ๊ฐ(Motion Augmentation)์ ํตํด ๋ฐ์ดํฐ์ ์ ํ์ฅํฉ๋๋ค. ์ฅ์ ๋ฌผ ๋์ด ์กฐ์ (์: 35-75cm ์์, 25-45cm ํ๋ค, 15-20cm ๊ณ๋จ) ๋ฐ ๋ฌด์์๋ก ์์ ์์ ์ฝ์ ๋ฑ์ผ๋ก ์งํ ๊ธฐํํ(terrain geometry)์ ๋ค์ํํฉ๋๋ค. ์ต์ ํ๋ ๊ถค์ ๋ํ ํธ๋ํน ์ ์ฑ ์ ํตํด Refine๋์ด ๋ฌผ๋ฆฌ์ ํ๋น์ฑ์ ์ ์งํฉ๋๋ค.
- ์ฌ์ ํ๋ จ (Pre-training Stage):
- ์ ์ ๋ชจ์
ํธ๋์ปค (Whole-body Motion Tracker): DeepMimic ์คํ์ผ์ RL ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋จ์ผ ์ ์ ๋ชจ์
ํธ๋์ปค๋ฅผ ํ๋ จํฉ๋๋ค. PPO ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ฉฐ, IsaacLab [33]์์ ์งํ๋ฉ๋๋ค.
- ๋ณด์ ํจ์๋ ๋ชจ๋ฐฉ ๋ณด์(imitation reward) r_{mimic}์ ์ ๊ทํ ํญ(regularization terms) r_{reg}๋ก ๊ตฌ์ฑ๋ฉ๋๋ค: R_{pre} = r_{mimic} + r_{reg}.
- r_{mimic}๋ Base Pose Tracking, Base Velocity Tracking, Joint Position Tracking, Joint Velocity Tracking, Body Pos Tracking ๋ฑ์ ํฌํจํฉ๋๋ค.
- r_{reg}๋ Action Rate (First-Order, Second-Order), Joint Position Limits, Joint Velocity Limits, Torque Limits, Joint Torques, Body Linear Acceleration ๋ฑ์ ํฌํจํฉ๋๋ค.
- ํธ๋์ปค์ ๊ด์ธก(observation)์ ๋ ํผ๋ฐ์ค ์ํ(์ ํ/๊ฐ์๋, ๊ด์ ์์น/์๋, ์ฃผ์ ์ ์ฒด ์์น), ๊ณ ์ ์์ฉ์ฑ(proprioceptive) ์ ๋ณด(์ด์ ์ก์ ํฌํจ), ์งํ ๋์ด ์ค์บ(terrain height scans)์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- ์ ์ฑ ์ 23์ฐจ์ ํ๊ฒ ๊ด์ ์์น(target joint positions)๋ฅผ ์ก์ ์ผ๋ก ์ถ๋ ฅํฉ๋๋ค.
- ํ์ฐ ๊ธฐ๋ฐ ๋ชจ์
์์ฑ๊ธฐ (Diffusion-based Motion Generator): MDM [17, 21] ์ํคํ
์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฐ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ์ ์ ๋ ํผ๋ฐ์ค ๋ชจ์
์ํ์ค๋ฅผ ์์ธกํฉ๋๋ค.
- ๋ชจ๋ธ์ 0.5์ด ์์ธก ๋ฒ์(25ํ๋ ์)์ ๊ฑธ์ณ ๋ฏธ๋ ๋ชจ์ ํน์ง(root position/orientation, joint positions, body link positions)์ ์์ธกํฉ๋๋ค.
- ํ๊ฒ ํค๋ฉ ๋ฒกํฐ(target heading vector), ์งํ ๋์ด ์ค์บ, ๊ณผ๊ฑฐ ๋ ํ๋ ์์ ๋ชจ์ ํน์ง์ ์กฐ๊ฑด์ผ๋ก ํฉ๋๋ค.
- ํ๋ จ ์ค, ๋ฐ์ดํฐ์ ์์ ๋ฌด์์๋ก ๋ชจ์ ์ํ์ค๋ฅผ ์ํ๋งํ๊ณ , ๋ฒ ์ด์ค ํฌ์ฆ(base pose) ์ฐจ์ด๋ก๋ถํฐ ํค๋ฉ ๋ฒกํฐ๋ฅผ ๊ณ์ฐํ๋ฉฐ, ์ฒ์ ๋ ํ๋ ์์ ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉํ์ฌ ๋๋จธ์ง ํ๋ ์์ ์์ธกํฉ๋๋ค.
- ์ฌ๊ตฌ์ฑ ์์ค(reconstruction loss) ์ธ์ ์๋, ๊ด์ ์ผ๊ด์ฑ, ์งํ ์นจํฌ(terrain penetration) ์์ค๊ณผ ๊ฐ์ ๊ธฐํํ์ ์์ค(geometric losses)์ ํฌํจํฉ๋๋ค.
- ํ๋ จ ์ค ๋์ด ์ค์บ ๋ฐ ์ด์ ์ํ ์กฐ๊ฑด์ ์ถ๊ฐ์ ์ธ ๋ ธ์ด์ฆ๋ฅผ ์ฃผ์ ํ์ฌ ๊ฐ๊ฑด์ฑ(robustness)์ ํฅ์์ํต๋๋ค.
- ์ ์ ๋ชจ์
ํธ๋์ปค (Whole-body Motion Tracker): DeepMimic ์คํ์ผ์ RL ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋จ์ผ ์ ์ ๋ชจ์
ํธ๋์ปค๋ฅผ ํ๋ จํฉ๋๋ค. PPO ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ฉฐ, IsaacLab [33]์์ ์งํ๋ฉ๋๋ค.
- RL ๋ฏธ์ธ ์กฐ์ (RL Fine-tuning Stage):
- ์ฌ์ ํ๋ จ๋ ์์ฑ๊ธฐ์ ํธ๋์ปค๋ฅผ ์ง์ ๊ฒฐํฉํ ๊ฒฝ์ฐ, ์์ฑ๋ ๋ชจ์ ์ ์ํฐํฉํธ(artifacts)์ ๋ถ์์ ํ ๋ ํผ๋ฐ์ค๋ก ์ธํ ํธ๋ํน ์คํจ, ํ๋ จ ๋ฐ์ดํฐ์ ์ ๋ฒ์ด๋๋ ์งํ ๋ฐ ํ๊ฒ ๋ฐฉํฅ์ ๋ํ ์ผ๋ฐํ ๋ถ์กฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
- ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด, ๋ชจ์ ์์ฑ๊ธฐ๋ ๊ณ ์ (frozen)๋ ์ํ๋ก ์ ์งํ๊ณ ๋ชจ์ ํธ๋์ปค๋ฅผ RL๋ก ๋ฏธ์ธ ์กฐ์ ํฉ๋๋ค.
- ๋ฏธ์ธ ์กฐ์ ๋จ๊ณ์์ ๋ชจ์ ์์ฑ๊ธฐ๋ ๋ก๋ด ์ํ์ ๊ณผ๊ฑฐ ๋ ํ๋ ์์ ์กฐ๊ฑด์ผ๋ก ๋ ํผ๋ฐ์ค ํ๋ ์์ ์์ฑํ์ฌ ํ์ ๋ฃจํ(closed-loop) ๋ชจ์ ์์ธก ํ๋ก์ธ์ค๋ฅผ ํ์ฑํฉ๋๋ค.
- ์จ๋ณด๋ ๊ณ์ฐ ์ ํ ํ์ ๋ฐฐํฌ ์ง์ฐ ์๊ฐ(deployment latency)์ ์ค์ด๊ธฐ ์ํด ๋ชจ์ ์์ฑ๊ธฐ์์ ๋จ 2๊ฐ์ Denoising ๋จ๊ณ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ์ค์ ํ๊ฒฝ ๊ต๋(real-world disturbances)์ ๋ํ ๊ฐ๊ฑด์ฑ ํฅ์์ ์ํด ๋ชจ์ ์์ฑ๊ธฐ ์ถ๋ก ํ๋ก์ธ์ค ๋ฐ ํธ๋์ปค ๊ด์ธก ๋ชจ๋์ ์ถ๊ฐ ๋ ธ์ด์ฆ๋ฅผ ์ฃผ์ ํฉ๋๋ค.
- ํ๊ฒ ํค๋ฉ ๋ฐฉํฅ์ ๋ฌด์์ํํ๊ณ , ํค๋ฉ ํธ๋ํน ๋ณด์ r_{task}๋ฅผ ๋์ ํ์ฌ ์์คํ ์ด ์ฌ์ ํ๋ จ๋ ๋ชจ์ ์ฌ์ (motion priors)์ ํ์ฉํ๋ฉด์ ์ํ๋ ๋ฐฉํฅ์ ๋ฐ๋ฅด๋๋ก ์ฅ๋ คํฉ๋๋ค. ์ ์ฒด ๋ณด์ ํจ์๋ R_{post} = r_{mimic} + r_{reg} + r_{task}๊ฐ ๋ฉ๋๋ค. r_{task}๋ ๋ชฉํ ๋ฐฉํฅ ๋ฒกํฐ d์ ๋ํ base linear velocity v_b์ ์ ๋ ฌ์ ๋ณด์ํ๋ฉฐ \langle v_b, d \rangle / ||v_b||๋ก ์ ์๋ฉ๋๋ค.
- ํ๋ จ ์งํ์ ๋์ฑ ๋ค์ํํ์ฌ 15-25cm ์คํ ๋์ด์ ๊ณ๋จ, 25-55cm ๋์ด์ ์ฐ์์ ์ธ ํ๋ค, 30-85cm ๋์ด์ ๋ค์ํ ๋๋น์ ์/ํผ์น ๊ฐ๋๋ฅผ ๊ฐ์ง ์ฌ๋ฌ ๊ฐ์ ๋ฑ๋ฐ ์์ ๋ฐ ํผ๋ผ๋ฏธ๋ ์คํ ์ ํฌํจํฉ๋๋ค.
- ๋ฏธ์ธ ์กฐ์ ์ ํตํด ํธ๋ํน ์ ์ฑ ์ ๋ชจ์ ํํฐ(motion filter) ์ญํ ์ ํ๋ฉฐ, ์์ฑ๊ธฐ๊ฐ ์์ฑํ ๋ ํผ๋ฐ์ค๋ฅผ ์ถ์ ํ๋ฉด์ ์ธ๋ถ ์งํ ๊ด์ธก์ ์ฌ์ฉํ์ฌ ์์ ํ์ง ์์ ๋์์ ์ต์ ํฉ๋๋ค.
ํ๋์จ์ด ๋ฐฐํฌ๋ฅผ ์ํด ์ ์ฒด ํ์ดํ๋ผ์ธ์ Unitree G1 ๋ก๋ด์ ์จ๋ณด๋๋ก ๋ฐฐํฌ๋ฉ๋๋ค. DLIO [34]๋ LiDAR์ IMU๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๋ด ๋ฒ ์ด์ค ํฌ์ฆ๋ฅผ ์ถ์ ํ๊ณ , ์ด๋ ๋ชจ์ ์์ฑ์ ์ ๋ ฅ๋ฉ๋๋ค. ์งํ ์ธ์์ ์ํด Elevation Mapping CuPy [35]๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ชจ์ ์์ฑ ๊ฐ์ํ๋ฅผ ์ํด TensorRT๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๋ก ์๊ฐ์ ์ฝ 0.02์ด๋ก ๋จ์ถํ์ต๋๋ค. ์์ฑ๊ธฐ๋ Jetson Thor์์, ํธ๋์ปค ๋ฐ ๊ธฐํ ๋ชจ๋์ Jetson Orin์์ ์คํ๋ฉ๋๋ค.
์คํ ๊ฒฐ๊ณผ๋ ์ ์๋ ์์คํ ์ด ์์ ๋ฑ๋ฐ/ํ๊ฐ, ๊ณ๋จ ์ค๋ฅด๋ด๋ฆฌ๊ธฐ, ์ฐ์ ํ๋ค ๋๊ธฐ ๋ฑ ๋ค์ํ ์งํ์์ ํจ๊ณผ์ ์์ ๋ณด์ฌ์ค๋๋ค. ํนํ, ์์ ์์์ ๋ฐฉํฅ์ ๋ฐ๊พธ๋ ๋ฑ์ ๋ค์ฌ๋ค๋ฅํ ๋ฑ๋ฐ ๋์๊ณผ, ์งํ ์กฐํฉ(vaulting, stairs, box climbing)์ ๋ฐ๋ผ ๋์ ์ผ๋ก ๋ชจ์ ์คํ์ผ์ ์ ํํ๋ ๋ฅ๋ ฅ์ ์ ์ฆํฉ๋๋ค. ์ ๋์ ๋ถ์์ ์จ๋ผ์ธ ๋ชจ์ ์์ฑ(Online Motion Generation)์ด ์ผ๋ฐํ(generalization)์ ์ค์ํ๋ฉฐ, ํธ๋์ปค ๋ฏธ์ธ ์กฐ์ (Tracker Fine-tuning)์ด ๊ฐ๊ฑด์ฑ(robustness) ๋ฐ ์ฑ๊ณต๋ฅ ํฅ์์ ํ์์ ์์ ๋ณด์ฌ์ค๋๋ค. ๊ณ ์ ๋ ๋ ํผ๋ฐ์ค ํธ๋ํน(Fixed-Reference Tracking) ๋๋น ์จ๋ผ์ธ ๋ชจ์ ์์ฑ ๊ธฐ๋ฅ์ด ์๋ ์์คํ ์ ์งํ ๋ณํ์ ๋ํ ํจ์ฌ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ณด์์ผ๋ฉฐ, ๋ฏธ์ธ ์กฐ์ ์ ํนํ ๋์ ์ ์ธ ์์ง ์ ํ(vertical transitions) ๋ฐ ๋ ํฐ ์คํ ๋์ด์์ ํธ๋์ปค์ ์ฑ๋ฅ์ ํฌ๊ฒ ํฅ์์์ผฐ์ต๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
์๋ก
์ฌ์กฑ๋ณดํ(quadruped)์์๋ ๋ฅ RL์ด ํ์ง ์ฃผํ์ ํฐ ์ฑ๊ณต์ ๊ฑฐ๋์ง๋ง, ํด๋จธ๋ ธ์ด๋๋ก ์ฎ๊ฒจ๊ฐ๋ฉด ๋๋๊ฐ ๊ธ๊ฒฉํ ์ฌ๋ผ๊ฐ๋๋ค. ์ฌ๋ ํํ์ ๋ก๋ด์ ์์ ๋๊ฐ ํจ์ฌ ๋ง๊ณ , ํํ์ ์ผ๋ก ๋ถ์์ ํ๋ฉฐ, ํ์๋ ์ ์ ๋์์ด ์์ผ๋ฉด ํฐ ์ฅ์ ๋ฌผ์ ๋์ ์ ์์ต๋๋ค. ํนํ ํด๋จธ๋ ธ์ด๋ ํ์ฟ ๋ฅด(parkour) ์ฒ๋ผ ๋ฐ์ค์ ๊ธฐ์ด์ค๋ฅด๊ฑฐ๋ ํ๋ค์ ๋ฐ์ด๋๋ ์์ ์ ์ยท๋ฐยท๋ชธํต์ด ํจ๊ป ์์ง์ฌ์ผ ํฉ๋๋ค.
๋ฌธ์ ๋ ์ด๋ฐ ํ์ ๋์์ ์ด๋ป๊ฒ ์ป๋๋์ ๋๋ค.
- ๋ณด์ ์ค๊ณ๋ง์ผ๋ก RL์ ๋๋ฆฌ๋ฉด, ํ์(exploration)์ด ๋นํจ์จ์ ์ด๋ผ ์๊ณผ ์์ฒด๋ฅผ ๊ฑฐ์ ์ ์ฐ๋ ๋จ์กฐ๋ก์ด ๋ณดํ์ผ๋ก ์๋ ดํ๊ธฐ ์ฝ์ต๋๋ค. ๋ช ์์ ์ธ ๊ตฌ์กฐ์ ๊ฐ์ด๋๊ฐ ์์ผ๋ฉด ๋ณต์กํ ์งํ ๋ํ๊ฐ ์ด๋ ต์ต๋๋ค.
- ๋ชจ์ ์ถ์ (motion tracking) ์ ์ฌ๋ ๋ชจ์ ๋ฐ์ดํฐ๋ก ํ์๋ ์ ์ ์คํฌ์ ํจ์จ์ ์ผ๋ก ์ฎ๊ฒจ์ฌ ์ ์์ง๋ง, ๋ณธ์ง์ ์ผ๋ก ์ง์ฌ์ง ๊ถค์ ์ ์ฌ์ํ๋ ๊ฒ์ด๋ผ ๋น์ ํยท๋ค์ํ ํ๊ฒฝ์ ๋ํ ์ ์์ฑ๊ณผ ๋ฐ์์ฑ์ด ๋ถ์กฑํฉ๋๋ค.
์ ์๋ค์ด ๋์ง๋ ์ง๋ฌธ์ ์ด๊ฒ์ ๋๋ค. โ์ฌ๋ ์์ค์ ์ง๊ฐ ๊ธฐ๋ฐ ์ฃผํ์ ํ๋ ค๋ฉด, ์ค์๊ฐ ์ง๊ฐ ์ ๋ ฅ์ ๋ฐ๋ผ ์ฅ์ ๋ฌผ๋ณ๋ก ์ ์ ํ ๋์ ์คํ์ผ์ ์กฐํฉยท์กฐ์ ํ๋ ์์ ๋ฉ์ปค๋์ฆ์ด ํ์ํ์ง ์์๊น?โ
๊ธฐ์กด์ ์ฌ๋ฌ ์ ๋ฌธ๊ฐ(teacher) ์ ์ฑ ์ ๋ฐ๋ก ํ์ตํด distillation(์ฆ๋ฅ) ์ผ๋ก ํฉ์น๋ ๋ฐฉ์์ด ์ฃผ๋ฅ์์ง๋ง, ์ด๋ ์ ๋ฌธ๊ฐ ๋ฐฐ์ ยท๋ฐ์ดํฐ ๋ถํฌ ์ค๊ณ ๊ฐ์ ์ ๊ตํ ํ์ดํ๋ผ์ธ์ ์์กดํฉ๋๋ค. ํํธ ์์ฑ ๋ชจ๋ธ(diffusion ๋ฑ)์ ๋๊ท๋ชจ ๋ชจ์ ๋ฐ์ดํฐ๋ก ์ค์ผ์ผ์ด ์ ๋์ง๋ง, ์์ฑ๋ ์ด๋ํ์ ๊ถค์ ์ ์ค์ ๋ก๋ด์ ๊ทธ๋๋ก ์ฌ๋ฆฌ๋ฉด ๋ฐ ๋ฏธ๋๋ฌ์ง(foot sliding)ยท์๊ฐ์ ๋ถ์ฐ์ ๊ฐ์ ์ํฐํฉํธ๊ฐ ์๊ฒจ ๋์ด์ง ์ ์์ต๋๋ค.
์ด ๋ ผ๋ฌธ์ ํ ์ค ์์ฝ: ์ฌ๋ ๋ชจ์ ์ผ๋ก ํ์ตํ diffusion ๋ชจ์ ์์ฑ๊ธฐ๋ฅผ โ์คํฌ ์กฐํฉ ๋ชจ๋โ๋ก ์ฐ๊ณ , ๊ทธ ์ถ๋ ฅ์ RL ๋ชจ์ ์ถ์ ๊ธฐ๊ฐ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ๊ฒ ์คํํ๊ฒ ํ๋ฉฐ, ๋์ closed-loop๋ก ๋ฏธ์ธ์กฐ์ ํด ์ค์ ํด๋จธ๋ ธ์ด๋์ ์ง๊ฐ ๊ธฐ๋ฐ ์ ์ ์ฃผํ์ ๋ฌ์ฑํ๋ค โ ๋ฌด๊ฑฐ์ด distillation ์์ง๋์ด๋ง ์์ด.
๋ฐฉ๋ฒ
์ ์ฒด ํ๋ ์์ํฌ๋ 3๋จ๊ณ์ ๋๋ค. (1) ๋ค์ํ ์งํ์ฉ ์ ์ ๋ชจ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๋ก๋ด ๊ถค์ ์ผ๋ก ๋ณํ, (2) ์ด ๋ฐ์ดํฐ๋ก ๋ชจ์ ์ถ์ ๊ธฐ์ diffusion ๋ชจ์ ์์ฑ๊ธฐ๋ฅผ ๊ฐ๊ฐ ์ฌ์ ํ์ต, (3) ์์ฑ๊ธฐ๋ฅผ ๊ณ ์ ํ ์ฑ ์ถ์ ๊ธฐ๋ฅผ ๋ ๋ค์ํ ์งํ์์ RL๋ก ๋ฏธ์ธ์กฐ์ ํ๊ณ , ๋ฐฐํฌ ์์ ์์ฑ๊ธฐ๋ฅผ receding-horizon์ผ๋ก ๋๋ฆฝ๋๋ค.
1๋จ๊ณ: ๋ฐ์ดํฐ ์์ง ๋ฐ ํ๋ ์ด์
์ด๊ธฐ ๋ฐ์ดํฐ๋ ์ฝ 5๋ถ ๋ถ๋์ ๋ชจ์ ํด๋ฆฝ์ ๋๋ค. ๋ ์ถ์ฒ์์ ๋ชจ์๋๋ค.
- ์ง์ ์ดฌ์ํ ๋ชจ์ ์์: GVHMR ๋ก raw ์์์์ ์ฌ๋ ๋ชจ์ ์ ๋ณต์ํฉ๋๋ค.
- ๊ณต๊ฐ mocap ๋ฐ์ดํฐ์ .
๊ฐ ์งํ ์คํฌ๋ง๋ค ๋ํ ๋์ ํ๋์ฉ์ ๋ด์ต๋๋ค: 50cm ๋ฐ์ค ๊ธฐ์ด์ค๋ฅด๊ธฐ, 35cm ํ๋ค ๋ฐ์ด๋๊ธฐ, 50cm ๋ฐ์ค์์ ๋ฐ์ด๋ด๋ฆฌ๊ธฐ, ์ฝ 20cm ๊ณ๋จ ์ค๋ฅด๋ด๋ฆฌ๊ธฐ, ๊ทธ๋ฆฌ๊ณ ์ง์ง/ํ์ ๊ฐ์ ์ ๋ฐฉํฅ ๋ณดํ์ ๋๋ค.
๋ณต์ยท์์งํ ๋ชจ์ ์ contact-constrained IK ์๋ฒ(Drake) ๋ก ํด๋จธ๋ ธ์ด๋์ retargetํฉ๋๋ค. ๊ทธ ๋ค ์งํ ๋ฌผ์ฒด๋ฅผ ์๋ ๋์์ ๋ง๊ฒ ์๋ ๋ฐฐ์นํด ๋ก๋ด-ํ๊ฒฝ ์ํธ์์ฉ์ ๋ณด์กดํฉ๋๋ค. ์ค์ํ ๋ํ ์ผ: raw retarget ๊ถค์ ์ ๊ทธ๋๋ก ์ฐ์ง ์์ต๋๋ค. ๋์ ๊ทธ ์์ DeepMimic ์คํ์ผ ์ถ์ ์ ์ฑ ์ ํ์ต์์ผ, ๊ฑฐ๊ธฐ์ ๋์จ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ๊ถค์ ์ ๋ฐ์ดํฐ๋ก ์ฌ์ฉํฉ๋๋ค(์ํฐํฉํธ ์ ๊ฑฐ).
Motion Augmentation (๋ชจ์ ์ฆ๊ฐ). 5๋ถ์ผ๋ก๋ ๋ถ์กฑํ๋ฏ๋ก ์ด๋ํ ๊ธฐ๋ฐ ์ฆ๊ฐ์ผ๋ก ์ฝ 1์๊ฐ ๋ถ๋๊น์ง ํค์๋๋ค. ๊ธฐ์กด ๋ชจ์ ์ ์งํ ๊ธฐํ๋ฅผ ๋ฐ๊ฟ(์ฅ์ ๋ฌผ ๋์ด ์ค์ผ์ผ๋ง, ๋์ ๊ฒฝ๋ก์ ๋๋ค ๋ฐ์ค ์ฝ์ ) ์ ๋ชจ์ ์ ๋ง๋ค๊ณ , ์งํ ์นจํฌ(terrain penetration)ยท๋ชจ์ ๋ถ๋๋ฌ์(smoothness) ์์ค๋ก ์ต์ ํํด(PARC ๋ฐฉ์) ์ถฉ๋ยท๋ถ์ฐ์์ ์ค์ ๋๋ค. ์ฌ๊ธฐ์๋ ์ต์ ํ๋ ๊ถค์ ์ ์ง์ ์ฐ์ง ์๊ณ ์ถ์ ์ ์ฑ ์ ๋ค์ ํ์ต์์ผ ๋ฌผ๋ฆฌ์ ํ๋น์ฑ์ ํ๋ณดํฉ๋๋ค. ๊ฒฐ๊ณผ ๋ฐ์ดํฐ์ ์ 35โ75cm ๋ฐ์ค ๋ฑ๋ฐ/๋ฐ์ด๋ด๋ฆฌ๊ธฐ, 25โ45cm ํ๋ค vaulting, 15โ20cm ๊ณ๋จ, ๋๋ค ๋ฐ์ค๊ฐ ๊น๋ฆฐ ์ ๋ฐฉํฅ ๋ณดํ์ ํฌํจํฉ๋๋ค.
2๋จ๊ณ: ์ฌ์ ํ์ต
(A) ์ ์ ๋ชจ์ ์ถ์ ๊ธฐ (Whole-body Motion Tracker). DeepMimic ์คํ์ผ RL ์ PPO(IsaacLab) ๋ก ํ์ตํฉ๋๋ค. ๋ชจ๋ฐฉ ๋ณด์ r_{\text{mimic}} ๊ณผ ์ ๊ทํ ํญ r_{\text{reg}} ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
R_{\text{pre}} = r_{\text{mimic}} + r_{\text{reg}}
- ๊ด์ธก(observation): ๋ ํผ๋ฐ์ค ์ํ(base frame ๊ธฐ์ค ์ /๊ฐ์๋, ๊ด์ ์์น/์๋, ํต์ฌ ์ ์ฒด ์์น) + ์๊ธฐ์์ฉ(proprioceptive: base ๊ฐ์๋ 5ํ๋ ์, ํฌ์ ์ค๋ ฅ, ๊ด์ ์์น/์๋, ์ง์ action) + ์งํ ๋์ด ์ค์บ(height scan).
- ์ถ๋ ฅ(action): 23์ฐจ์ ๋ชฉํ ๊ด์ ์์น.
๋ชจ๋ฐฉ ๋ณด์์ base pose/velocity, ๊ด์ ์์น/์๋, ์ ์ฒด ์์น ์ถ์ ๋ฑ์ ์ง์ ๋ณด์์ผ๋ก ๋ฌถ๊ณ , ์ ๊ทํ ํญ์ action rate, ๊ด์ ํ๊ณ, ํ ํฌ, ๊ฐ์๋ ๋ฑ์ ํ๋ํฐ๋ก ์ค๋๋ค(๋ ผ๋ฌธ Table II). ํฅ๋ฏธ๋ก์ด ์ : ์์ฐ์ด ์ถฉ๋ถํ ์ ํํ๋ฉด ์งํ ์ ๋ณด๊ฐ ๊ผญ ํ์ํ์ง ์์ง๋ง, ์ด ๋จ๊ณ๋ถํฐ ์ธ์์ฉ(exteroceptive) ์ ๋ ฅ์ ๋ฃ์ด๋๋ฉด ์ดํ ๋ฏธ์ธ์กฐ์ ์ ์ ๋ฆฌํ๋ค๊ณ ํฉ๋๋ค.
(B) Diffusion ๋ชจ์ ์์ฑ๊ธฐ. MDM ์ํคํ ์ฒ(๋ชจ์ diffusion model) ๊ธฐ๋ฐ์ผ๋ก, ๋ฏธ๋ ๋ชจ์ ์ํ์ค๋ฅผ ์์ธกํฉ๋๋ค.
- ์์ธก ๋์: 0.5์ด ์งํ์ (25ํ๋ ์)์ ๊ฑธ์ณ root ์์น \mathbb{R}^3, root ๋ฐฉํฅ \mathbb{R}^4, ๊ด์ ์์น \mathbb{R}^{23}, ์ ์ฒด ๋งํฌ ์์น \mathbb{R}^{23\times3}.
- ์กฐ๊ฑด(conditioning): ๋ชฉํ heading ๋ฒกํฐ, ์งํ ๋์ด ์ค์บ, ์ง์ 2ํ๋ ์์ ๋ชจ์ ํน์ง.
- ์์ค: ์ฌ๊ตฌ์ฑ ์์ค + ๊ธฐํ ์์ค(velocity, joint consistency, terrain penetration). ๋ ธ์ด์ฆ๊ฐ ๋ ๋ก๋ด ์ํ์ ๊ฐ๊ฑดํ๋๋ก height scan๊ณผ ์ง์ ์ํ๋ฅผ ํ์ต ์ค perturbํฉ๋๋ค.
๋ค๋ง ์ฌ์ ํ์ต๋ ์์ฑ๊ธฐ์ ์ถ์ ๊ธฐ๋ฅผ ๋จ์ํ ํฉ์น๋ฉด, ์์ฑ ๋ชจ์ ์ ์ํฐํฉํธ ๋๋ฌธ์ (๊ณ ํ์ง ๋ ํผ๋ฐ์ค๋ก๋ง ํ์ต๋) ์ถ์ ๊ธฐ๊ฐ ์คํจํ ์ ์์ต๋๋ค. ์ด๋ฅผ 3๋จ๊ณ๊ฐ ํด๊ฒฐํฉ๋๋ค.
3๋จ๊ณ: RL ๋ฏธ์ธ์กฐ์ (ํต์ฌ)
์์ฑ๊ธฐ๋ฅผ ๊ณ ์ (frozen) ํ ์ฑ, ์ถ์ ๊ธฐ๋ง ๋ ๋ค์ํ ์งํ + ๋ฌด์์ ๋ชฉํ ๋ฐฉํฅ์์ RL๋ก ๋ค์ ํ์ตํฉ๋๋ค. ์ด๋ ์์ฑ๊ธฐ๋ ์ง์ 2ํ๋ ์์ ๋ก๋ด ์ํ๋ฅผ ์กฐ๊ฑด์ผ๋ก ๋ ํผ๋ฐ์ค๋ฅผ ๋ง๋ค์ด closed-loop ๋ชจ์ ์์ธก์ ํ์ฑํฉ๋๋ค โ ์ฆ ์๊ธฐ ์์ธก์ ์๊ฐํ๊ท(autoregressive)๋ก ํผ๋๋ฐฑํ๋ ๊ฒ ์๋๋ผ, ์ค์ ๋ก๋ด ์ํ๋ฅผ ๋ฐ์ ๋ณด์ ํฉ๋๋ค.
- ์ถ๋ก ์ง์ฐ ์ ๊ฐ: denoising์ ๋จ 2 ์คํ ๋ง ์ํํฉ๋๋ค.
- ๊ฐ๊ฑด์ฑ: ์์ฑ ๊ณผ์ ๊ณผ ์ถ์ ๊ธฐ ๊ด์ธก์ ์ถ๊ฐ ๋ ธ์ด์ฆ๋ฅผ ์ฃผ์ ํด ์ค์ธ๊ณ ์ธ๋์ ๋๋นํฉ๋๋ค.
- ๋ฐฉํฅ ์ถ์ข : heading ์ถ์ ๋ณด์ r_{\text{task}} ์ ์ถ๊ฐํฉ๋๋ค.
R_{\text{post}} = r_{\text{mimic}} + r_{\text{reg}} + r_{\text{task}}
๋ฏธ์ธ์กฐ์ ์งํ์ ๋ ๋์ด์ง๋๋ค: 15โ25cm ๊ณ๋จ, 25โ75cm ํ๋ค, 30โ85cm ๋ฑ๋ฐ ๋ฐ์คยทํผ๋ผ๋ฏธ๋ ๊ณ๋จ. ๋ฏธ์ธ์กฐ์ ํ ์ถ์ ๊ธฐ๋ ์ผ์ข ์ โ๋ชจ์ ํํฐโ ์ฒ๋ผ ์๋ํฉ๋๋ค โ ์์ฑ๊ธฐ๊ฐ ๋ง๋ ๋ ํผ๋ฐ์ค๋ฅผ ๋ฐ๋ผ๊ฐ๋, ์ธ์์ฉ ์งํ ๊ด์ธก์ผ๋ก ์คํ์ ์กฐ์ ํด ์ํํ ๋์์ ์ต์ ํฉ๋๋ค. denoising์ 2์คํ ์ผ๋ก ์ค์ฌ ์์ฑ ํ์ง์ด ๋ค์ ๋จ์ด์ ธ๋ ์ถ์ ๊ธฐ๊ฐ ๊ฐ๊ฑดํ๊ฒ ๋ฐ๋ผ๊ฐ, ํ์ต์ ์๋ ํ๋(๋ฐ์ค ๋ชจ์๋ฆฌ ๋ฑ๋ฐ, ์์์ ๋ฐฉํฅ ์ ํ ํ ํ๊ฐ, ์ฐ์ vaulting)๊น์ง ๊ฐ๋ฅํด์ง๋๋ค.
ํ๋์จ์ด ๋ฐฐํฌ
์ ํ์ดํ๋ผ์ธ์ด Unitree G1(23-DoF) ์ ์์ ์จ๋ณด๋๋ก ์ฌ๋ผ๊ฐ๋๋ค.
| ๊ตฌ์ฑ | ์ฅ๋น/๋ฐฉ๋ฒ |
|---|---|
| Base pose ์ถ์ | DLIO + Livox MID360 LiDAR + IMU |
| ์งํ ์ธ์ง | Elevation Mapping CuPy (์งํ ๋์ด ๋ณต์) |
| ์์ธ ๋ณด์ | G1 ๋ชฉ ๊ด์ ์ด passive โ LiDAR IMU + ๋ชธํต IMU ์ตํฉ์ผ๋ก head pitch ๋ณด์ |
| ์์ฑ๊ธฐ ๊ฐ์ | TensorRT๋ก ์ถ๋ก โ 0.02์ด |
| ๊ฐฑ์ ์ฃผ๊ธฐ | 0.5์ด ์์ธก(2Hz)์ด์ง๋ง ๋ฐฐํฌ ์ 0.25์ด๋ง๋ค receding-horizon ์ผ๋ก ๋ ํผ๋ฐ์ค ๊ฐฑ์ |
| ์ฐ์ฐ ๋ถ๋ด | ์์ฑ๊ธฐ โ ๋ฑ์ ์น์ Jetson Thor / ์ถ์ ๊ธฐยท๊ธฐํ ๋ชจ๋ โ ๋ด์ฅ Jetson Orin |
์คํ
ํ๋์จ์ด ๊ฒฐ๊ณผ (์ ์ฑ)
์ค์ G1์์ ๋ค์ํ ์งํ์ ํ๊ฐํ์ต๋๋ค.
- ๋ค์ฌ๋ค๋ฅํ ๋ฐ์ค ๋ฑ๋ฐ: 75cm ๋ฐ์ค์ ์ฌ๋ผ๊ฐ ์ธ ๊ฐ์ง ๋ฐฉ์์ผ๋ก ๋ฐ์ด๋ด๋ฆผ โ (a) ์ ๋ฉด ๋ฑ๋ฐยทํ๊ฐ, (b) ์ ๋ฉด ๋ฑ๋ฐ ํ 90ยฐ ์ฐํ์ ยท์ธก๋ฉด ํ๊ฐ, (c) ๋ฐ์ค ๋ชจ์๋ฆฌ์์ ๋ฑ๋ฐยทํ๊ฐ. ๋ฑ๋ฐ ์ ๋ฌด๋ฆยท์์ผ๋ก ์ง์ง, ํ๊ฐ ์ ์์ผ๋ก ์ถฉ๊ฒฉ ํก์(ํ์ต ๋ฐ์ดํฐ์ ์คํ์ผ๊ณผ ์ผ์น).
- ๊ณ๋จ & Vaulting: ๊ณ๋จ ์ฃผํ, ์๋ก ๋ค๋ฅธ ๋์ด์ ํ๋ค์ ์ฐ์์ผ๋ก โ ๋ณดํต ๊ทธ ์์ ์ฌ๋ผํ์ง ์๊ณ ๊ณง์ฅ ๋ฐ์ด๋์.
- Local Navigation: ๋ชฉํ ๋ฐฉํฅ๋๋ก ๊ฐ๋ฉด ์ฅ์ ๋ฌผ ๋ํ๊ฐ ์ด๋ ค์ด ์ํ์ผ ๋, ์ถ์ ์ ์ฑ ์ด ๋ ํผ๋ฐ์ค๋ฅผ ๋ถ๋ถ์ ์ผ๋ก ๋ฌด์ํ๊ณ ์์ผ๋ก ์ฐํํด ์คํจ๋ฅผ ํผํ๋ฉฐ ๋ชฉํ ๋๋ฌ.
- ๋ณตํฉ ์งํ(Mixed Terrain): vaulting โ ๊ณ๋จ โ ๋ฐ์ค ๋ฑ๋ฐ์ ํ ๋ฒ์ ์ํ์ค๋ก ์ฐ์ ์ํ(์งํ์ ๋ฐ๋ผ ์คํ์ผ ์ ํ, ์: ์ ํ-๋ค์ด ํ ๊ณ๋จ ๋ฑ๋ฐ).
์ ๋ ๊ฒฐ๊ณผ โ : ์จ๋ผ์ธ ๋ชจ์ ์์ฑ์ ํจ๊ณผ
๊ณ ์ ๋ ํผ๋ฐ์ค ์ถ์ (Tracker Only) vs ํ ์์คํ (Tracker + Gen) ์ ๋น๊ตํฉ๋๋ค. ์๋ฎฌ๋ ์ด์ ์์ ๊ฐ ์์ ๋น ๋ก๋ด 500๊ฐ๋ฅผ ๋ฌด์์ ์ด๊ธฐ ์์ธ๋ก ์คํฐํ๊ณ , ํ ์คํธ ์์ ์ ์งํ ๋์ดยทyaw๋ฅผ ๋ฐ๊ฟ ์ผ๋ฐํ๋ฅผ ์ธก์ ํฉ๋๋ค. ์ฑ๊ณต ๊ธฐ์ค์ ๋ชฉํ ์์น ๋๋ฌ์ ๋๋ค.
| ์์ | Tracker Only | Tracker + Gen |
|---|---|---|
| Box Climbing | 0.859 ยฑ 0.252 | 0.987 ยฑ 0.014 |
| Vaulting | 0.805 ยฑ 0.231 | 0.990 ยฑ 0.026 |
| Ascending Stairs | 0.845 ยฑ 0.300 | 0.997 ยฑ 0.005 |
ํด์: ๊ณ ์ ๋ ํผ๋ฐ์ค ์ถ์ ๊ธฐ๋ ๋ช ๋ชฉ ์กฐ๊ฑด ๊ทผ์ฒ์์ ์ํ์ง๋ง, ์ฅ์ ๋ฌผ ๋์ดยท๋ฐฉํฅ์ด ๋ฐ๋๋ฉด ๊ธ๊ฒฉํ ์ทจ์ฝํด์ง๋๋ค(ํนํ ํฐ ๋ณํ์์). ํ๊ท ์ด ๋์๋ ํ์คํธ์ฐจ๊ฐ ํฌ๋ค๋ ์ (ยฑ0.25~0.30)์ด ์ด๋ฅผ ๋ณด์ฌ์ค๋๋ค. ๋ฐ๋ฉด ํ ์์คํ ์ ๋ชจ๋ ์ค์ ์์ ์ผ๊ด๋๊ฒ 0.99 ์์ค์ผ๋ก ๊ฐ๊ฑดํฉ๋๋ค. ์ฆ ์จ๋ผ์ธ ์์ฑ ๋ชจ์ ์ด ์งํ์ ๋ง์ถฐ ๋์ ์์ฒด(ํ์ด๋ฐยท์คํ์ผ)๋ฅผ ๋ฐ๊ฟ์ฃผ๋ ๊ฒ์ด ์ ์์ ํต์ฌ์ ๋๋ค. ๊ณ ์ ์ถ์ ๊ธฐ๋ height scan์ ๋ณด๊ธด ํ์ง๋ง, ๊ธฐ๊ปํด์ผ ์์ ๋ถ์ผ์น๋ฅผ ํก์ํ๋ ์ ํ์ ๊ตญ์ ์ผ๋ฐํ์ ๊ทธ์นฉ๋๋ค.
์ ๋ ๊ฒฐ๊ณผ โก: ์ถ์ ๊ธฐ ๋ฏธ์ธ์กฐ์ ์ ํจ๊ณผ
์์ฑ๊ธฐ๋ ๋์ผํ๊ฒ ๋ ์ฑ, ์ฌ์ ํ์ต ์ถ์ ๊ธฐ vs ๋ฏธ์ธ์กฐ์ ์ถ์ ๊ธฐ๋ฅผ ๋น๊ตํฉ๋๋ค(5๊ฐ ์์ : ๋ฑ๋ฐ up/down, vaulting, ๊ณ๋จ up/down). ๊ฐ ์์ ๋น ๋ก๋ด 500๊ฐ, ์ฅ์ ๋ฌผ ๋ค์ ๋ชฉํ๋ฅผ ๋๊ณ ์ฑ๊ณต๋ฅ ์ธก์ .
๊ฒฐ๊ณผ(Fig. 4): ๋ฏธ์ธ์กฐ์ ์ด ๋ชจ๋ ์์ ์์ ์ผ๊ด๋๊ฒ ์ฑ๊ณต๋ฅ ์ ๋์ด๋ฉฐ, ์ด๋ ค์ด ์งํ์ผ์๋ก ์ด๋์ด ํฝ๋๋ค. ์์ปจ๋ ๋ฐ์ค ๋์ด๊ฐ ์ปค์ง์๋ก(๋ฑ๋ฐ/ํ๊ฐ ๋ชจ๋) ๊ฒฉ์ฐจ๊ฐ ๋ฒ์ด์ง๋๋ค. ์ด์ ๋ก ์ ์๋ค์, ์ฌ์ ํ์ต ์ถ์ ๊ธฐ๋ ๋ถ๋๋ฝ๊ฒ ์ ์ ๋ ๊ณ ์ ์คํ๋ผ์ธ ๊ถค์ ์ผ๋ก ํ์ต๋์ง๋ง, ๋ฐฐํฌ ์ ์์ฑ๊ธฐ๋ ๋ ธ์ด์ฆ ๋ ๋ก๋ด ์ํยท๋ชฉํยท์งํ์ผ๋ก ์กฐ๊ฑดํ๋ (๋ถ์ฐ์ยท์ํฐํฉํธ ์๋) ๋ ํผ๋ฐ์ค๋ฅผ ๋ด๋์ ๋ถํฌ ๋ถ์ผ์น(distribution mismatch) ๊ฐ ์๊ธด๋ค๊ณ ์ค๋ช ํฉ๋๋ค. ๋ฏธ์ธ์กฐ์ ์ ์ถ์ ๊ธฐ๊ฐ ์ด ์์ฑ ๋ถํฌ์ ์ ์ํ๊ณ , ๋ชจ์ ํจํด์ ์์ ์์์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ๋ฉฐ, ์ํ ๋์์ ์ต์ ํ๋๋ก ๋ง๋ญ๋๋ค.
๋นํ์ ๊ณ ์ฐฐ
๊ฐ์
- ๋ ํจ๋ฌ๋ค์์ ๊น๋ํ ๊ฒฐํฉ. โํ์์ ์์ฑ ๋ชจ๋ธ์ด, ๋ฌผ๋ฆฌ์ ํ๋น์ฑ์ RL ์ถ์ ๊ธฐ๊ฐโ ์ฑ ์์ง๋ ์ญํ ๋ถ๋ด์ด ๋ช ํํฉ๋๋ค. distillation์ ์ ๊ตํ ์ ๋ฌธ๊ฐ ๋ฐฐ์ ยท๋ฐ์ดํฐ ์ค๊ณ ๋ถ๋ด์ ๋๋ฉด์, ๋ค์ํ ์คํฌ์ ํ ์์คํ ์ ๋ด์์ต๋๋ค.
- ์ค์ ํด๋จธ๋ ธ์ด๋ ์จ๋ณด๋ ๋ฐฐํฌ. ์๋ฎฌ๋ ์ด์ ์ ๊ทธ์น์ง ์๊ณ , G1์ LiDARยทelevation mappingยทTensorRTยท์ด์ค Jetson๊น์ง ์ฌ๋ ค ์์ ์จ๋ณด๋๋ก ๋ณตํฉ ์งํ์ ์ฃผํํ ์ ์ด ์ธ์์ ์ ๋๋ค. closed-loop generation์ 2 denoising ์คํ + receding-horizon์ผ๋ก ์ค์๊ฐํํ ์์ง๋์ด๋ง์ด ํต์ฌ ๊ธฐ์ฌ์ ๋๋ค.
- ๋ ์ค๊ณ ์์์ ๋ ๋ฆฝ์ ๊ฒ์ฆ. ์จ๋ผ์ธ ์์ฑ(๊ฒฐ๊ณผ โ )๊ณผ ์ถ์ ๊ธฐ ๋ฏธ์ธ์กฐ์ (๊ฒฐ๊ณผ โก)์ ๊ฐ๊ฐ ํต์ ๋น๊ตํด, โ๋ ๋ค ํ์ํ๋คโ๋ฅผ ์ ๋์ ์ผ๋ก ๋ถ๋ฆฌํด ๋ณด์์ต๋๋ค. ํนํ ํ์คํธ์ฐจ๋ก ๊ฐ๊ฑด์ฑ์ ๋๋ฌ๋ธ ์ ์ด ์ค๋๋ ฅ ์์ต๋๋ค.
- ์๋ ๋ฐ์ดํฐ์์ ์ถ๋ฐ. ๋จ 5๋ถ์ ๋ชจ์ ์ ์ด๋ํ ์ฆ๊ฐ์ผ๋ก 1์๊ฐ๊น์ง ๋๋ ค ๋ค์ํ ์งํ์ ์ปค๋ฒํ์ต๋๋ค. ๋ฐ์ดํฐ ํจ์จ ์ธก๋ฉด์ ์ค์ฉ์ ๋ ์ํผ์ ๋๋ค.
์ฝ์ ๊ณผ ํ๊ณ
- ์ธ์์ฉ ์ธ์ง ์์กด์ฑ(์ ์๋ ์ธ์ ). ์ ์ฒด๊ฐ LiDAR ๊ธฐ๋ฐ elevation mapping ์ ํฌ๊ฒ ์์กดํฉ๋๋ค. ์ผ์ฑ ๋ ธ์ด์ฆ๋ก ๋งคํ ํ์ง์ด ๋จ์ด์ง๋ฉด ์ฃผํ ์ฑ๋ฅ์ด ํฌ๊ฒ ์ ํ๋ ์ ์์ต๋๋ค. ์ ์๋ค์ neural mapping์ด๋ belief encoder๋ฅผ ํ์ ๋ฐฉํฅ์ผ๋ก ์ ์ํฉ๋๋ค.
- ํ๋์จ์ด ํ๊ฐ๊ฐ ์ ์ฑ ์์ฃผ. ์ค๋ก๋ด ๊ฒฐ๊ณผ๋ ์์ฐ ์์ยท์ค๋ ์ท ์ค์ฌ์ด๊ณ , ์ ๋(์ฑ๊ณต๋ฅ ) ๋น๊ต๋ ๋๋ถ๋ถ ์๋ฎฌ๋ ์ด์ ์์ ์ด๋ค์ก์ต๋๋ค. sim-to-real ๊ฐญ์ ์ ๋์ ๋ถ์์ ์ ํ์ ์ ๋๋ค. (์์์ ์์ ๋์ผ๋ก ๋ณด์ด๋ ์ค์ด ์์ด, ์คํจ์จยท๋์ ๋น๋ ๋ฑ ์ค์ธ๊ณ ์ ๋ขฐ์ฑ ์์น๋ ๋ ํ์ํด ๋ณด์ ๋๋ค โ ์ถ์ธก.)
- ์์ฑ ์ง์ฐ vs ํ์ง ํธ๋ ์ด๋์คํ. 2 denoising ์คํ ์ผ๋ก ์ค์ด๋ฉด ์์ฑ ํ์ง์ด ๋จ์ด์ง๋๋ฐ, ์ถ์ ๊ธฐ๊ฐ ์ด๋ฅผ ๋ฉ์ด๋ค๊ณ ํ์ง๋ง ํ์ง ์ ํ์ ์ ๋์ ์ํฅ(์: ์คํ ์์ ๋ฐ๋ฅธ ์ฑ๊ณต๋ฅ ๊ณก์ )์ ์ถฉ๋ถํ ์ ์๋์ง ์์์ต๋๋ค.
- ๋จ์ผ ์๋ฒ ๋๋จผํธ. Unitree G1 ํ ์ข ๋ฅ์ ์ง์ค๋์ด, ๋ค๋ฅธ ํด๋จธ๋ ธ์ด๋๋ก์ ์ผ๋ฐํ๋ ๊ฒ์ฆ๋์ง ์์์ต๋๋ค.
- ์์ locomotion์ ํ์ . ์์ผ๋ก ๋ฌผ์ฒด๋ฅผ ๋ค๋ฃจ๋ loco-manipulation์ด๋ ์ผ์ธ ๋น์ ํ ํ๊ฒฝ์ ๋ค๋ฃจ์ง ์์์ต๋๋ค(์ ์๋ ํ์ ๊ณผ์ ๋ก ์ธ๊ธ).
์์ฝ ๋ฐ ๊ฒฐ๋ก
์ด ๋ ผ๋ฌธ์ ํด๋จธ๋ ธ์ด๋ ์ ์ ์ฃผํ์ ์ค๋ ๋๋ ๋ง โ ๋ณด์ ์ค๊ณ RL์ ํ์ ๋ถ์กฑ vs ๋ชจ์ ์ถ์ ์ ์ ์ ๋ถ์กฑ โ ๋ฅผ โ์์ฑ + ์ถ์ โ์ ๊ฒฐํฉ์ผ๋ก ๊ณต๋ตํฉ๋๋ค. ์ฌ๋ ๋ชจ์ ์ผ๋ก ํ์ตํ diffusion ๋ชจ์ ์์ฑ๊ธฐ๊ฐ ์งํยท๋ฐฉํฅ์ ๋ง๋ ๋ ํผ๋ฐ์ค๋ฅผ ์ค์๊ฐ ์์ฑํ๊ณ , RL ๋ชจ์ ์ถ์ ๊ธฐ๊ฐ ์ด๋ฅผ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ๊ฒ ์คํํ๋ฉฐ, ์์ฑ๊ธฐ๋ฅผ ๊ณ ์ ํ ์ฑ ์ถ์ ๊ธฐ๋ฅผ closed-loop๋ก ๋ฏธ์ธ์กฐ์ ํด ๋ถ์์ ํ ์์ฑ์๋ ๊ฐ๊ฑดํ๊ฒ ๋ง๋ญ๋๋ค.
ํต์ฌ ์์น๋ก ์ ๋ฆฌํ๋ฉด, ํ ์์คํ ์ ๊ณ ์ ๋ ํผ๋ฐ์ค ์ถ์ ๋๋น ๋ฐ์ค ๋ฑ๋ฐ 0.86 โ 0.99, vaulting 0.81 โ 0.99, ๊ณ๋จ ๋ฑ๋ฐ 0.85 โ 1.00 ์ผ๋ก ์ฑ๊ณต๋ฅ ์ ๋์ด์ฌ๋ ธ๊ณ (ํ์คํธ์ฐจ๋ ํฌ๊ฒ ๊ฐ์), ๋ฏธ์ธ์กฐ์ ์ ์ด๋ ค์ด ์งํ์ผ์๋ก ํฐ ์ด๋์ ๋ณด์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ชจ๋ ๊ฒ์ด Unitree G1์ ์์ ์จ๋ณด๋๋ก ์ฌ๋ผ๊ฐ ๋ฐ์คยทํ๋คยท๊ณ๋จยท๋ณตํฉ ์งํ์ ์ค์ ๋ก ์ฃผํํ์ต๋๋ค.
์ค๋ฌด ๊ด์ ์์ ์ด ์ฐ๊ตฌ์ ๊ฐ์น๋ โ๋ฌด๊ฑฐ์ด distillation ์์ด๋, ์์ฑ ๋ชจ๋ธ์ ์คํฌ ์กฐํฉ๊ธฐ๋ก ์ฐ๊ณ RL ์ถ์ ๊ธฐ๋ก ๋ฌผ๋ฆฌ์ ํ๋น์ฑ์ ๋ณด์ฅํ๋ฉด ์ง๊ฐ ๊ธฐ๋ฐ ํด๋จธ๋ ธ์ด๋ ์ฃผํ์ด ๊ฐ๋ฅํ๋คโ ๋ ์ฒญ์ฌ์ง์ ์ ์ํ ๋ฐ ์์ต๋๋ค. LiDAR ์ธ์ง ์์กด, ์ ์ฑ ์์ฃผ์ ์ค๋ก๋ด ํ๊ฐ, ๋จ์ผ ์๋ฒ ๋๋จผํธ๋ผ๋ ํ๊ณ๋ ๋ถ๋ช ํ์ง๋ง, ์์ฑ-์ถ์ ๋ถ๋ฆฌ + closed-loop ๋ฏธ์ธ์กฐ์ ์ด๋ผ๋ ํ์ ํฅํ ํด๋จธ๋ ธ์ด๋ ์ ์ ์ ์ด์ ์ ๋ ฅํ ๋ฐฉํฅ์ ๋ณด์ฌ์ค๋๋ค.