Building a Healthcare Robot from Simulation to Deployment with NVIDIA Isaac

๐Ÿ“ ์š”์•ฝ

NVIDIA Isaac for Healthcare๋Š” ํ—ฌ์Šค์ผ€์–ด ๋กœ๋ณดํ‹ฑ์Šค ๋ถ„์•ผ์˜ ๋ฐ์ดํ„ฐ ๊ฒฉ์ฐจ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜๊ณผ ์‹ค์ œ ํ•˜๋“œ์›จ์–ด๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. v0.4 ๋ฆด๋ฆฌ์Šค๋Š” SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ์™€ "์ž์ฒด ์ˆ˜์ˆ ์‹ค ๊ตฌ์ถ•" ํŠœํ† ๋ฆฌ์–ผ์„ ์ œ๊ณตํ•˜๋ฉฐ, ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ ํ›ˆ๋ จ, ๋ฐฐํฌ๊นŒ์ง€์˜ ์ „์ฒด ์›Œํฌํ”Œ๋กœ๋ฅผ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ค์ œ ํ•˜๋“œ์›จ์–ด์—์„œ ์ž์œจ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ• ๋ฐ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด ์›Œํฌํ”Œ๋กœ๋Š” ์‹ค์ œ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘, GR00t N1.5 ๋ชจ๋ธ ํ›ˆ๋ จ, ํ•˜๋“œ์›จ์–ด ๋ฐฐํฌ๋ฅผ ํฌํ•จํ•˜๋Š” 3๋‹จ๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌํ˜„ํ•˜๋ฉฐ, ํŠนํžˆ 93% ์ด์ƒ์˜ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ ํ•ฉ์„ฑ์ ์œผ๋กœ ์ƒ์„ฑ๋˜์–ด Sim2Real ์ ‘๊ทผ ๋ฐฉ์‹์˜ ํšจ๊ณผ๋ฅผ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค.


์†Œ๊ฐœ

์‹œ๋ฎฌ๋ ˆ์ด์…˜์€ ๋ฐ์ดํ„ฐ ๊ฒฉ์ฐจ๋ฅผ ํ•ด์†Œํ•˜๊ธฐ ์œ„ํ•ด ์˜๋ฃŒ ์˜์ƒ ๋ถ„์•ผ์—์„œ ์˜ค๋žซ๋™์•ˆ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ด์™”์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ง€๊ธˆ๊นŒ์ง€ ํ—ฌ์Šค์ผ€์–ด ๋กœ๋ณดํ‹ฑ์Šค ๋ถ„์•ผ์—์„œ๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ๋„ˆ๋ฌด ๋А๋ฆฌ๊ฑฐ๋‚˜, ๋ถ„๋ฆฌ๋˜์–ด ์žˆ๊ฑฐ๋‚˜, ์‹ค์ œ ์‹œ์Šคํ…œ์œผ๋กœ์˜ ์ „ํ™˜์ด ์–ด๋ ค์šด ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค.

AI ํ—ฌ์Šค์ผ€์–ด ๋กœ๋ณดํ‹ฑ์Šค๋ฅผ ์œ„ํ•œ ๊ฐœ๋ฐœ์ž ํ”„๋ ˆ์ž„์›Œํฌ์ธ NVIDIA Isaac for Healthcare๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜๊ณผ ํ•˜๋“œ์›จ์–ด ๋ชจ๋‘์—์„œ ์ž‘๋™ํ•˜๋Š” ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘, ํ›ˆ๋ จ ๋ฐ ํ‰๊ฐ€ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ œ๊ณตํ•˜์—ฌ ์ด๋Ÿฌํ•œ ๊ณผ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ฌ์Šค์ผ€์–ด ๋กœ๋ณดํ‹ฑ์Šค ๊ฐœ๋ฐœ์ž๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ Isaac for Healthcare v0.4 ๋ฆด๋ฆฌ์Šค๋Š” ํ—ฌ์Šค์ผ€์–ด ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์—”๋“œํˆฌ์—”๋“œ SO - ARM ๊ธฐ๋ฐ˜ ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ์™€ ์ž์ฒด ์ˆ˜์ˆ ์‹ค ๊ตฌ์ถ• ํŠœํ† ๋ฆฌ์–ผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ๋Š” MedTech ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ ํ›ˆ๋ จ, ๋ฐฐํฌ์— ์ด๋ฅด๋Š” ์ „์ฒด ์›Œํฌํ”Œ๋กœ๋ฅผ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ค์ œ ํ•˜๋“œ์›จ์–ด์—์„œ ์ฆ‰์‹œ ์ž์œจ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ• ๋ฐ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง„์ž… ์žฅ๋ฒฝ์„ ๋‚ฎ์ถฅ๋‹ˆ๋‹ค.

์ด ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ์™€ ํ•ด๋‹น ๊ธฐ์ˆ  ๊ตฌํ˜„ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ๋‹จ๊ณ„๋ณ„๋กœ ์‚ดํŽด๋ณด๋ฉฐ, ์ด์ „๊ณผ๋Š” ๋น„๊ตํ•  ์ˆ˜ ์—†์„ ์ •๋„๋กœ ์งง์€ ์‹œ๊ฐ„์— ์ˆ˜์ˆ  ๋ณด์กฐ ๋กœ๋ด‡์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๊ฒ ์Šต๋‹ˆ๋‹ค.

SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ; ์ฒดํ™”๋œ ์ˆ˜์ˆ  ๋ณด์กฐ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ๋Š” ์ˆ˜์ˆ  ๋ณด์กฐ ์ž‘์—…์„ ํƒ์ƒ‰ํ•˜๋Š” ์ƒˆ๋กœ์šด ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ•˜๋ฉฐ, ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ž์œจ ์ˆ˜์ˆ  ๋ณด์กฐ๋ฅผ ์œ„ํ•œ ์™„์ „ํ•œ ์—”๋“œํˆฌ์—”๋“œ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • LeRobot์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์ œ ์„ธ๊ณ„ ๋ฐ ํ•ฉ์„ฑ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘
  • GR00t N1.5 ๋ฏธ์„ธ ์กฐ์ •, IsaacLab์—์„œ ํ‰๊ฐ€ ํ›„ ํ•˜๋“œ์›จ์–ด์— ๋ฐฐํฌ

์ด ์›Œํฌํ”Œ๋กœ๋Š” ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ˆ˜์ˆ ์‹ค๋กœ ์ด๋™ํ•˜๊ธฐ ์ „์— ๋ณด์กฐ ๊ธฐ์ˆ ์„ ํ›ˆ๋ จํ•˜๊ณ  ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์•ˆ์ „ํ•˜๊ณ  ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ๊ตฌํ˜„

์›Œํฌํ”Œ๋กœ๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜๊ณผ ์‹ค์ œ ํ•˜๋“œ์›จ์–ด๋ฅผ ํ†ตํ•ฉํ•˜๋Š” 3๋‹จ๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘: SO101 ๋ฐ LeRobot์„ ์‚ฌ์šฉํ•œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜๊ณผ ์‹ค์ œ ์„ธ๊ณ„์˜ ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜ ์‹œ์—ฐ ํ˜ผํ•ฉ
  2. ๋ชจ๋ธ ํ›ˆ๋ จ: ๋“€์–ผ ์นด๋ฉ”๋ผ ๋น„์ „์„ ๊ฐ–์ถ˜ ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ์…‹์—์„œ GR00T N1.5 ๋ฏธ์„ธ ์กฐ์ •
  3. ์ •์ฑ… ๋ฐฐํฌ: RTI DDS ํ†ต์‹ ์„ ์‚ฌ์šฉํ•œ ๋ฌผ๋ฆฌ์  ํ•˜๋“œ์›จ์–ด์—์„œ์˜ ์‹ค์‹œ๊ฐ„ ์ถ”๋ก 

ํŠนํžˆ, ์ •์ฑ… ํ›ˆ๋ จ์— ์‚ฌ์šฉ๋œ ๋ฐ์ดํ„ฐ์˜ 93% ์ด์ƒ์ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ ํ•ฉ์„ฑ์ ์œผ๋กœ ์ƒ์„ฑ๋˜์–ด ๋กœ๋ด‡ ๋ฐ์ดํ„ฐ ๊ฒฉ์ฐจ๋ฅผ ํ•ด์†Œํ•˜๋Š” ๋ฐ ์žˆ์–ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜์˜ ๊ฐ•์ ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค.

Sim2Real ํ˜ผํ•ฉ ํ›ˆ๋ จ ์ ‘๊ทผ ๋ฐฉ์‹

์ด ์›Œํฌํ”Œ๋กœ๋Š” ์‹ค์ œ ์„ธ๊ณ„์—์„œ ๋กœ๋ด‡์„ ํ›ˆ๋ จํ•˜๋Š” ๊ฒƒ์ด ๋น„์‹ธ๊ณ  ์ œํ•œ์ ์ด๋ฉฐ, ์ˆœ์ˆ˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์€ ์‹ค์ œ ์„ธ๊ณ„์˜ ๋ณต์žก์„ฑ์„ ํฌ์ฐฉํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ทผ๋ณธ์ ์ธ ๊ณผ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜๊ณผ ์‹ค์ œ ์„ธ๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ๋‹ค์–‘ํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค์™€ ํ™˜๊ฒฝ ๋ณ€ํ™”๋ฅผ ์œ„ํ•œ ์•ฝ 70๊ฐœ์˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์—ํ”ผ์†Œ๋“œ์™€ ์ง„์ •์„ฑ ๋ฐ ๊ธฐ๋ฐ˜ํ™”๋ฅผ ์œ„ํ•œ 10-20๊ฐœ์˜ ์‹ค์ œ ์„ธ๊ณ„ ์—ํ”ผ์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ˜ผํ•ฉ ํ›ˆ๋ จ์€ ๋‹จ์ผ ๋„๋ฉ”์ธ์„ ๋„˜์–ด ์ผ๋ฐ˜ํ™”๋˜๋Š” ์ •์ฑ…์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

ํ•˜๋“œ์›จ์–ด ์š”๊ตฌ ์‚ฌํ•ญ

์›Œํฌํ”Œ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด๋ฅผ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค.

  • GPU: GR00TN1.5 ์ถ”๋ก ์„ ์œ„ํ•ด ≥30GB VRAM์„ ๊ฐ–์ถ˜ RT Core ์ง€์› ์•„ํ‚คํ…์ฒ˜(Ampere ์ด์ƒ)
  • SO-ARM101 ํŒ”๋กœ์›Œ: ๋“€์–ผ ์นด๋ฉ”๋ผ ๋น„์ „(์†๋ชฉ ๋ฐ ๋ฐฉ)์„ ๊ฐ–์ถ˜ 6-DOF ์ •๋ฐ€ ์กฐ์ž‘๊ธฐ. SO-ARM101์€ 3D ํ”„๋ฆฐํŠธ ์–ด๋Œ‘ํ„ฐ๊ฐ€ ์žฅ์ฐฉ๋œ ์†๋ชฉ ์นด๋ฉ”๋ผ๋ฅผ ํฌํ•จํ•œ WOWROBO ๋น„์ „ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํŠน์ง•์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.
  • SO-ARM101 ๋ฆฌ๋”: ์ „๋ฌธ๊ฐ€ ์‹œ์—ฐ ์ˆ˜์ง‘์„ ์œ„ํ•œ 6-DOF ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜ ์ธํ„ฐํŽ˜์ด์Šค

ํŠนํžˆ ๊ฐœ๋ฐœ์ž๋Š” DGX Spark ํ•˜๋‚˜์—์„œ ๋ชจ๋“  ์‹œ๋ฎฌ๋ ˆ์ด์…˜, ํ›ˆ๋ จ ๋ฐ ๋ฐฐํฌ(๋ฌผ๋ฆฌ์  AI๋ฅผ ์œ„ํ•œ 3๋Œ€์˜ ์ปดํ“จํ„ฐ ํ•„์š”)๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๊ตฌํ˜„

LeRobot์—์„œ ์ง€์›๋˜๋Š” SO-ARM101 ํ•˜๋“œ์›จ์–ด ๋˜๋Š” ๊ธฐํƒ€ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•œ ์‹ค์ œ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์˜ ๊ฒฝ์šฐ:

python lerobot-record \
  --robot.type=so101_follower \
  --robot.port=<follower_port_id> \
  --robot.cameras="{wrist: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}, room: {type: opencv, index_or_path: 2, width: 640, height: 480, fps: 30}}" \
  --robot.id=so101_follower_arm \
  --teleop.type=so101_leader \
  --teleop.port=<leader_port_id> \
  --teleop.id=so101_leader_arm \
  --dataset.repo_id=<user>/surgical_assistance/surgical_assistance \
  --dataset.num_episodes=15 \
  --dataset.single_task="Prepare and hand surgical instruments to surgeon"

์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์˜ ๊ฒฝ์šฐ:

# ํ‚ค๋ณด๋“œ ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜ ์‚ฌ์šฉ
python -m simulation.environments.teleoperation_record \
  --enable_cameras \
  --record \
  --dataset_path=/path/to/save/dataset.hdf5 \
  --teleop_device=keyboard

# SO-ARM101 ๋ฆฌ๋” ํŒ” ์‚ฌ์šฉ
python -m simulation.environments.teleoperation_record \
  --port=<your_leader_arm_port_id> \
  --enable_cameras \
  --record \
  --dataset_path=/path/to/save/dataset.hdf5

์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜ ์ œ์–ด

๋ฌผ๋ฆฌ์  SO-ARM101 ํ•˜๋“œ์›จ์–ด๊ฐ€ ์—†๋Š” ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ, ์›Œํฌํ”Œ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ์ธํŠธ ์ œ์–ด๋ฅผ ๊ฐ–์ถ˜ ํ‚ค๋ณด๋“œ ๊ธฐ๋ฐ˜ ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ์กฐ์ธํŠธ 1 (์–ด๊นจ ํŒฌ): Q (+) / U (-)
  • ์กฐ์ธํŠธ 2 (์–ด๊นจ ๋ฆฌํ”„ํŠธ): W (+) / I (-)
  • ์กฐ์ธํŠธ 3 (ํŒ”๊ฟˆ์น˜ ๊ตด๊ณก): E (+) / O (-)
  • ์กฐ์ธํŠธ 4 (์†๋ชฉ ๊ตด๊ณก): A (+) / J (-)
  • ์กฐ์ธํŠธ 5 (์†๋ชฉ ํšŒ์ „): S (+) / K (-)
  • ์กฐ์ธํŠธ 6 (๊ทธ๋ฆฌํผ): D (+) / L (-)
  • R ํ‚ค: ๋…นํ™” ํ™˜๊ฒฝ ์žฌ์„ค์ •
  • N ํ‚ค: ์—ํ”ผ์†Œ๋“œ๋ฅผ ์„ฑ๊ณต์œผ๋กœ ํ‘œ์‹œ

๋ชจ๋ธ ํ›ˆ๋ จ ํŒŒ์ดํ”„๋ผ์ธ

์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ ์‹ค์ œ ์„ธ๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋‘ ์ˆ˜์ง‘ํ•œ ํ›„, ํ›ˆ๋ จ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ์…‹์„ ๋ณ€ํ™˜ํ•˜๊ณ  ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค.

# ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ์ดํ„ฐ๋ฅผ LeRobot ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜
python -m training.hdf5_to_lerobot \
  --repo_id=surgical_assistance_dataset \
  --hdf5_path=/path/to/your/sim_dataset.hdf5 \
  --task_description="Autonomous surgical instrument handling and preparation"

# ํ˜ผํ•ฉ ๋ฐ์ดํ„ฐ์…‹์—์„œ GR00T N1.5 ๋ฏธ์„ธ ์กฐ์ •
python -m training.gr00t_n1_5.train \
  --dataset_path /path/to/your/surgical_assistance_dataset \
  --output_dir /path/to/surgical_checkpoints \
  --data_config so100_dualcam

ํ›ˆ๋ จ๋œ ๋ชจ๋ธ์€ "์™ธ๊ณผ ์˜์‚ฌ๋ฅผ ์œ„ํ•ด ๋ฉ”์Šค๋ฅผ ์ค€๋น„ํ•ด์ค˜" ๋˜๋Š” "ํฌ์…‰์„ ๊ฑด๋„ค์ค˜"์™€ ๊ฐ™์€ ์ž์—ฐ์–ด ์ง€์นจ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ํ•ด๋‹น ๋กœ๋ด‡ ๋™์ž‘์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. LeRobot ์ตœ์‹  ๋ฆด๋ฆฌ์Šค(0.4.0)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด LeRobot์—์„œ Gr00t N1.5๋ฅผ ๋„ค์ดํ‹ฐ๋ธŒ๋กœ ๋ฏธ์„ธ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

์—”๋“œํˆฌ์—”๋“œ Sim Collect–Train–Eval ํŒŒ์ดํ”„๋ผ์ธ

์‹œ๋ฎฌ๋ ˆ์ด์…˜์€ ๋ฃจํ”„์˜ ์ผ๋ถ€์ผ ๋•Œ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•ฉ๋‹ˆ๋‹ค: ์ˆ˜์ง‘ → ํ›ˆ๋ จ → ํ‰๊ฐ€ → ๋ฐฐํฌ.

v0.3๋ถ€ํ„ฐ IsaacLab์€ ์ด ์ „์ฒด ํŒŒ์ดํ”„๋ผ์ธ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ ํ•ฉ์„ฑ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ

  • ํ‚ค๋ณด๋“œ ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๋ด‡ ํ…”๋ ˆ์˜คํผ๋ ˆ์ด์…˜
  • ๋‹ค์ค‘ ์นด๋ฉ”๋ผ ๊ด€์ฐฐ, ๋กœ๋ด‡ ์ƒํƒœ ๋ฐ ๋™์ž‘ ์บก์ฒ˜
  • ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ์•ˆ์ „ํ•˜๊ฒŒ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์—†๋Š” ์—ฃ์ง€ ์ผ€์ด์Šค๊ฐ€ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ์…‹ ์ƒ์„ฑ

์ •์ฑ… ํ›ˆ๋ จ ๋ฐ ํ‰๊ฐ€

  • Isaac Lab์˜ RL ํ”„๋ ˆ์ž„์›Œํฌ์™€ PPO ํ›ˆ๋ จ์„ ์œ„ํ•œ ์‹ฌ์ธต ํ†ตํ•ฉ
  • ๋ณ‘๋ ฌ ํ™˜๊ฒฝ (๋™์‹œ์— ์ˆ˜์ฒœ ๊ฐœ์˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜)
  • ๋‚ด์žฅ๋œ ๊ถค์  ๋ถ„์„ ๋ฐ ์„ฑ๊ณต ์ง€ํ‘œ
  • ๋‹ค์–‘ํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค์— ๋Œ€ํ•œ ํ†ต๊ณ„์  ๊ฒ€์ฆ

๋ชจ๋ธ์„ TensorRT๋กœ ๋ณ€ํ™˜

  • ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์ž๋™ ์ตœ์ ํ™”
  • ๋™์  ๋ชจ์–‘ ๋ฐ ๋‹ค์ค‘ ์นด๋ฉ”๋ผ ์ถ”๋ก  ์ง€์›
  • ์‹ค์‹œ๊ฐ„ ์„ฑ๋Šฅ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•œ ๋ฒค์น˜๋งˆํ‚น ๋„๊ตฌ

์ด๋ฅผ ํ†ตํ•ด ์‹คํ—˜์—์„œ ๋ฐฐํฌ๊นŒ์ง€์˜ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๊ณ  sim2real์„ ์ผ์ƒ ๊ฐœ๋ฐœ์˜ ์‹ค์šฉ์ ์ธ ๋ถ€๋ถ„์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ

Isaac for Healthcare SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ๋ฅผ ์ง€๊ธˆ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์‹ญ์‹œ์˜ค.

  1. ์ €์žฅ์†Œ ๋ณต์ œ: git clone https://github.com/isaac-for-healthcare/i4h-workflows.git
  2. ์›Œํฌํ”Œ๋กœ ์„ ํƒ: ์ˆ˜์ˆ  ๋ณด์กฐ๋ฅผ ์œ„ํ•œ SO-ARM ์Šคํƒ€ํ„ฐ ์›Œํฌํ”Œ๋กœ๋กœ ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์›Œํฌํ”Œ๋กœ ํƒ์ƒ‰
  3. ์„ค์ • ์‹คํ–‰: ๊ฐ ์›Œํฌํ”Œ๋กœ์—๋Š” ์ž๋™ํ™”๋œ ์„ค์ • ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค (์˜ˆ: tools/env_setup_so_arm_starter.sh).

๋ฆฌ์†Œ์Šค


์›๋ฌธ ์ถœ์ฒ˜: https://huggingface.co/blog/lerobotxnvidia-healthcare

๋Œ“๊ธ€