solve(env) + 시뮬 정답 부품 pose + 관대한 판정의 결과.동일 FurnitureBench one_leg에서 두 해법의 성공률 격차(11/11 vs 2/5)가 무엇에서 오는지 분리. 비교 대상: EmbodiedSWE/experiments/furniture_one_leg_franka/solution/solve.py, robobench/suites/assembly/{scenes,grader}/furniture_one_leg.py.
두 repo의 context.md, solver, scene/grader 코드를 읽고 항목별 비교(코드 실행 없음).
| 항목 | EmbodiedSWE | GPT-Policy |
|---|---|---|
| 누가 푸나 | 코딩 에이전트가 solve(env)를 오프라인 반복 디버깅 (trace, save/load state, skip-to-screw) | VLM이 매 에피소드 온라인 결정, 재시도/리플레이 없음 |
| 관측 | 시뮬 정답 부품 pose (scene.leg.data.root_pos_w, scene.seated()) | RGB + proprioception, 부품 pose 미제공 |
| 제어 루프 | 매 physics step 서보, 정체 감지, 손가락 상태 대기 | 결정당 ~10s, 사이 open-loop |
| 튜닝 | seed 0에서 측정한 상수 (Q_STAND, PINCH, 10°×9 회전, 재파지 높이) | 범용 도구 + 지시문 |
| 성공 판정 | 나사축 수직(cos≥0.94) + 위치 5mm + 높이, 아무 구멍, yaw 무관, 다리 1개 장면 | 원판정: 세 축 모두 cos≥0.94 (yaw ±20°), leg4만 |
| 시뮬레이터 | Isaac Lab 2.3.2 (PhysX 5), SDF 512, solver iter 64 | FurnitureSim (Isaac Gym PP4) + 자체 관절 임피던스 어댑터 |
| 삽입 | 다리 pose 폐루프로 ~12mm 눌러 넣은 뒤 놓음, 재파지는 몸통 아래쪽(짧은 레버) | 얕게 꽂고 놓음 → 넘어짐 (seed 2, 3 실패) |
11/11은 "정답 상태를 보는 손으로 짠 프로그램 + 관대한 판정", 2/5는 "픽셀만 보는 온라인 VLM + 원판정" — 같은 숫자로 비교 불가. 차용 가능: 삽입 깊이(~12mm 눌러 넣고 놓기), 재파지 위치(몸통 아래쪽), 회전 단위(10° 증분; 30°는 하중에 멈춤).
(1) 지시문/도구에 삽입 깊이·재파지 위치 반영 — 주 실패(놓으면 넘어짐) 해결 가설. (2) 기존 run들을 EmbodiedSWE식 판정(나사축만)으로 재채점해 판정 차이 영향 정량화.