Skip to main content

Play Stacking Toy

RoboDojo simulation reference
RoboDojo simulation reference
SE3 Labs real setup
SE3 Labs real setup
Task ID
SE3 language instruction“Place each stacking piece on the table onto the peg holding the matching piece: blue triangle, green square, orange square, and red square.”
Official language instructionPlace all stacking toy pieces onto the correct pegs.
RoboDojo categoryLong-Horizon
Materialsa five-peg wooden geometric stacker; 5 starter pieces (purple circle, blue triangle, green square, orange square, red square) and 4 table pieces (blue triangle, green square, orange square, red square).
Differenceevery peg starts with one seated piece that shows its group; the single purple circle starts on its peg, and the policy places one more piece on each other peg (4 pieces) rather than stacking all 10 from the table. The photo shows the evaluation start state.
RoboDojo task pagePlay Stacking Toy

Progress score​

Score the highest milestone whose condition holds at the end of the episode; the episode succeeds at 100. Also record the failure mode and the execution metrics below.

A piece is seated when it is on the peg holding the matching starter piece and seated on that stack; starter pieces must stay on their pegs.

ProgressCondition
0No milestone below is reached.
5A loose piece is grasped and lifted clear of the table.
15A held piece is carried to the peg board.
30One piece is seated and the gripper is open.
50Two pieces are seated.
75Three pieces are seated.
100All four pieces are seated. Both arms are back at origin.

Execution metrics​

Record these alongside progress; they do not change it. Count over the whole episode, including events later corrected.

MetricWhat to countAnswer
Failed graspsGrasps that close on or around a task object without lifting it clear of the table.0 · 1 · 2 · 3+
DropsHeld objects that fall before they are released at a target.0 · 1 · 2 · 3+
Missed insertionsTimes a piece contacts a peg tip without sliding onto it.0 · 1 · 2 · 3+
Wrong-peg piecesPieces released onto a peg of another group.0 · 1 · 2 · 3+

Randomization ​

Each episode samples every variable below and records its values.

VariableDomain
Start layoutBase position near the back, yaw within ±20°; one starter piece seated on each peg; the 4 table pieces scattered anywhere clear of the base and the arms.
Schematic start layout, not to scale. Hover a shape for details.

Python SDK​

from se3labs.sdk.eval.tasks import TaskRegistry

definition = TaskRegistry.get_task("ROBODOJO-REAL-34")
# Sample one episode's parameters and initial layout.
task = definition.sample(seed=42)
# Sample 20 episodes with separate seeds; seed=42 reproduces the same set.
tasks = definition.sample_set(seed=42, episodes=20)

Create and run a job:

from se3labs.sdk import eval_client

job = TaskRegistry.get_job(
"ROBODOJO-REAL-34", policy=policy, seed=42, episodes=20,
)
report = eval_client.serve_policy("your-station", "your-relay:7443", job)

task.layout.visualize("layout.png") saves the sampled layout.