Robo Use

Turn on the radio receiver that's on the table in the living room

behavior-turning-on-radioBEHAVIOR-1KGalaxea R1Pro mobile manipulatorManipulationeasy

Reference solution, 2 of 20 skill calls.

Instruction

Turn on the radio receiver that's on the table in the living room.

This is the BEHAVIOR-1K activity turning_on_radio in the house_double_floor_lower scene (rooms loaded: corridor_0, garden_0, kitchen_0, living_room_0), BEHAVIOR Challenge task instance 0. The robot starts where the challenge places it for that instance. The step budget is 20 skill calls.

BEHAVIOR's formal goal (BDDL; ?x are variables, _1, _2 number objects of one category) is:

(:goal 
        (and 
            (toggled_on ?radio_receiver.n.01_1)
        )
    )
How the robot is controlled and scored

You are controlling a simulated robot. Read the task below, then solve it by running the robo command in your shell (start with robo info and robo observe). Keep going until the task is done, then call robo done once. Do not stop to ask questions; there is no human to answer.

How to control the robot

You are the robot's high-level policy. You act only through the robo command in your shell; you cannot read or change the simulator, the scoring, or other files to succeed. The episode server checks BEHAVIOR's goal conditions on the final simulated state itself.

robo info                          # skills, step budget
robo observe                       # robot pose, held object, and every task object (name, category, room, position, distance, open/on state, inside/on-top relations)
robo observe --image               # also saves a third-person camera image and prints its path (open it to look)
robo observe --image --camera head # the robot's own head camera instead
robo skill navigate_to OBJ         # drive next to OBJ (a held object comes along)
robo skill grasp OBJ               # pick up OBJ (hand must be empty, OBJ within reach); things resting in or on OBJ come along
robo skill place_on_top OBJ        # put the held object on top of OBJ
robo skill place_inside OBJ        # put the held object inside OBJ (open OBJ first if it has a door or lid)
robo skill open OBJ                # open OBJ (hand must be empty)
robo skill close OBJ               # close OBJ (hand must be empty)
robo skill toggle_on OBJ           # switch OBJ on (hand must be empty)
robo skill toggle_off OBJ          # switch OBJ off (hand must be empty)
robo skill release                 # drop the held object where the hand is
robo done "short summary"          # end the episode and ask for scoring
robo give-up "reason"              # end the episode without claiming success
  • OBJ is an object name exactly as robo observe lists it (BEHAVIOR's BDDL instance names, e.g. bottle.n.01_1). Identical objects are numbered _1, _2, ...
  • The robot is an R1Pro wheeled mobile manipulator that carries one object at a time. Manipulation skills only work on objects within reach (about 1.25 m from the robot base); use navigate_to first. Objects inside a closed container must be taken out after opening it.
  • A skill can fail (the response says why, with ok: False); a failed skill still costs one step. Every skill call counts against the step budget (robo info).
  • Success is judged after you call robo done, with the robot holding still: every goal condition must hold at that moment. Call robo done exactly once when finished.

Run this task

robouse run \
  --task tasks/behavior/behavior-turning-on-radio \
  --harness oracle \
  --out runs/behavior-turning-on-radio

Pinned to robohub commit f4872875a63e. The verifier and the reference solution are not published.

Trial
GLM-5.3 · mini-swe-agentSolved2 / 2038 sTrial Compare
GLM-5.3 · Claude CodeSolved2 / 2024 sTrial Compare
GLM-5.3 · CodexSolved2 / 2030 sTrial Compare