← 목록
TL;DR
3→6
Restore 복원 (집기 16→18 중)
0.37→0.41
동시 2회 pick (230셀)
- 파일럿의 base −0.7 놓기 실패(20/20)를 막으려 운반 중 base 높이를 상판 z − 0.64로 맞추는 규칙을 구현.
- place probe에서 높이 켬 복원/집기 3/16 → 6/18이지만 n이 작음.
- 같은 설정 반복에서 pick 성공이 59/43/52(115 중)로 흔들려, 10/18의 pick 0.40→0.51 (p=0.047)은 과대 추정으로 판단.
1배경/목적
GT execute 파일럿에서 바닥에서 다시 집은 물체를 운반할 때 base가 −0.7에 머물러 놓기 20/20이 surface_out_of_reach로 실패했다(Restore 2/40). 학습 데이터 기준으로 운반 높이를 맞추고, 효과를 VLM 없이 확인하려 했다. 또한 휴대폰(6844__2)이 책 위에 놓였는데 placed_on이 False인 판정 원인도 확인했다.
2작업 내용
학습 데이터 측정: Dataset/molmo_augment_place, 성공 클립 728개
놓기 클립 시작 시 TCP는 base보다 0.79 m 위 (중앙값, 10/90% = 0.67/0.99), 놓는 순간까지 0.17 m 하강
하네스는 상판 + 0.15 m에서 정책에 넘김 → base z = 상판 z + 0.15 − 0.79 = 상판 z − 0.64
구현: nav0.CARRY_BASE_Z_OFFSET = -0.64, base_z_for_carry, carry_height() (RRBENCH_CARRY_HEIGHT; 미설정이면 base_height를 따름)
운반 중 receptacle navigate에서 preplace_surface_points 중앙값 z로 설정, 든 물체도 같은 dz 이동(apply_se2_delta, nav0 teleport + drive.snap_to)
run_conditions에 carry_height 기록 · tests 946 passed, 6 skipped
place probe(tmp/nav_analysis/place_probe.py, Restore 56셀): navigate→pick→운반 navigate→pick_and_place→done. arm0 높이 끔 / arm1 파일럿(운반 z 유지) / arm2 운반 높이. 처음 jobs 201593–201595는 9셀에서 probe assert로 중단되어, 목표 면을 plan.gt_faces의 original에서 가져오도록 고쳐 201777–201779로 완료.
휴대폰 판정: is_placed_on의 두 경로가 직접 지지만 인정(접촉 경로는 서랍장 geom 직접 접촉, fallback은 물체 바닥이 상판 위 1 cm 이내). 휴대폰 중심 z 0.723, 상판 0.7015 → 바닥이 약 1.6 cm 위(책 위).
3결과
place probe (Restore 56셀)
| arm | 집기 성공 | 놓기 시도 | 원래 자리 복원 | 복원/집기 |
| 0 높이 끔 | 20 | 16 | 2 | 2/20 |
| 1 파일럿 | 16 | 16 | 3 | 3/16 |
| 2 운반 높이 | 18 | 18 | 6 | 6/18 |
arm1 vs arm2 짝: arm2만 성공 4, arm1만 1, 둘 다 2. 둘 다 집은 12셀에서 복원 3→6.
반복 pick probe (Finding 59 + Restore 56 = 115셀, 링 켬, jobs 202158–202165)
| run | 높이 끔 | 높이 켬 | 끔만 / 켬만 성공 |
| 10/18 (따로 실행) | 46/115 | 59/115 | 12 / 25 |
| rep r1 (동시) | 43/115 | 43/115 | 21 / 21 |
| rep r2 (동시) | 41/115 | 52/115 | 13 / 24 |
| 동시 2회 합 | 84/230 (0.37) | 95/230 (0.41) | 34 / 45 |
재현성: 같은 셀·같은 설정(링+높이) pick 성공이 어제 30/56 vs 오늘 16/56(arm1), 18/56(arm2). 짝 비교 15 대 1. 배제: 코드 경로, 도착 거리 분포(중앙값 0.44 m 동일), 체크포인트·GPU·프롬프트, 장면 복원(match_ratio 1.0), 앞 plan 영향. 시드 고정 없음(정책·카메라·접근 샘플링 무작위).
도착 기하별 pick 성공 (7 run 합산, 셀 중복 포함)
| 도착 거리 | 성공 | 방향 차 | 성공률 |
| <0.30 m | 11/18 (0.61) | 0–15° | 0.45 |
| 0.30–0.45 m | 209/451 (0.46) | 15–30° | 0.40 |
| 0.45–0.55 m | 56/187 (0.30) | 30–45° | 0.33 |
| ≥0.55 m | 43/149 (0.29) | | |
사례: 파일럿 find_episodes/09975fd49fb1(rollforward-v3) — 안락의자 좌면(z 0.34) 리모컨, 도착 0.53 m·29°, base z −0.41. 손목 화면에서 그리퍼가 의자에 막힌 채 pick 17회 연속 실패 후 done.
휴대폰 사례: 파일럿 Restore 40행 중 같은 유형(정답 물체가 목표보다 0.3~12 cm 위, 0.7 m 이내) 2행(같은 질의). 측정 모호성은 맞지만 Restore 저조의 주원인은 아님.
4Takeaway
운반 높이는 방향상 맞다(복원/집기 3/16→6/18, 둘 다 집은 12셀 3→6). 다만 n이 작아 확정 불가.
높이 맞춤의 pick 효과는 동시 비교 기준 +4%p(0.37→0.41). 10/18의 0.40→0.51 (p=0.047)은 기준·비교군을 다른 시각에 돌려 실행 간 변동(±8/115)이 섞인 값. 앞으로 A/B는 동시 실행+반복이 필요.
5Next Steps
- 링 효과(0.30→0.40)는 반복하지 않았으므로 동시 2회 반복으로 재검증.
- 도착 yaw를 학습 노이즈 ±45° 대신 정면으로(
RRBENCH_PICK_FACE_EXACT) 하는 A/B — 방향 차 0–15° 0.45 vs 30–45° 0.33.
- 0.30 m 미만 표본이 18개뿐이라 더 가까운 도착의 효과 추가 측정.
- placed_on에 "물체 아래 지지물 위" 판정 추가 여부 결정.
- 운반 높이 켠 상태로 GT execute 재실행(약 $430 재추정) 승인 요청.