Repository navigation
Add composed spatial-generalization benchmarks - #779
Yuan-Xinyi wants to merge 7 commits into
Conversation
[Medium impact] Adds spatial-generalization benchmarks and motion-planning features. Restore success and shell summaries for the five contact skills before merging.
|
| attributed_cases = [ | ||
| case for case in population_cases if case.case_id not in bypassed | ||
| ] | ||
| population_records = [ | ||
| record | ||
| for case in population_cases | ||
| for case in attributed_cases | ||
| for record in by_algorithm_case[(planner.algorithm_id, case.case_id)] | ||
| if record.uses_selected_planner_backend |
There was a problem hiding this comment.
Five skills lose their results
Press, Twist, Slide, OpenDoor, and PushObject now set selected_planner_backend_used=False. This filter removes their measured runs from the generalization summaries, leaving success rates as None and shell bucket rates, counts, and failure stages empty—even after successful runs. The other report datasets exclude them too, with no separate summary preserving their results.
Keep these runs out of planner rankings, but report their skill and shell results under effective_motion_algorithm.
Prompt To Fix With AI
This is a comment left during a code review.
Path: scripts/benchmark/motion_generation/generalization.py
Line: 216-223
Comment:
**Five skills lose their results**
`Press`, `Twist`, `Slide`, `OpenDoor`, and `PushObject` now set `selected_planner_backend_used=False`. This filter removes their measured runs from the generalization summaries, leaving success rates as `None` and shell bucket rates, counts, and failure stages empty—even after successful runs. The other report datasets exclude them too, with no separate summary preserving their results.
Keep these runs out of planner rankings, but report their skill and shell results under `effective_motion_algorithm`.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
Description
Extends the strict spatial-generalization benchmark introduced by #772 with deterministic multi-factor, distance-shell, and bilateral-role domains.
sampling_pattern: stratifiedfor deterministic multi-factor coverage andsampling_pattern: workspace_shellfor ordered near/mid/far XY-offset radiiPickUp,Pour,AxisAlignobject_workspace_shelltask_frame_planarobject_planar_poseMoveHeldObjecttarget_relative_shelltask_frame_planarobject_target_spatial_posePlacetarget_relative_shelltask_frame_planarobject_target_planar_posePushObjecttarget_relative_shelltask_frame_planarobject_target_positionPress,Twist,Slide,OpenDoorarticulation_workspace_shelltask_frame_planararticulation_spatial_poseHandOvertarget_relative_shelltask_frame_planarobject_target_positionCoordinatedPickmenttarget_relative_shelltask_frame_planarobject_target_spatial_poseCoordinatedPlacementsupport_relative_shelltask_frame_planarobject_support_target_task_frame_poseThis is a stacked PR and depends on #772. It adds evaluation definitions, manifest/report metadata, and validation only; no benchmark results were run or committed.
Type of change
Screenshots
Not applicable.
Validation
black .(black==26.3.1)black --check --diff --color ./python docs/scripts/check_api_docs.py— 2613/2613 exports documentedpytest -q tests/benchmark/motion_generation— 326 passed, 1 skippedChecklist
black .command to format the code base.