Gather And Recall#
Language Instruction
Move all cubes onto the disc. A lamp will briefly flash while you work. After all cubes are placed, press the button matching the flash color.
Task Description
Concurrent manipulation plus cue recall: gather cubes while a lamp briefly flashes, then press the button matching the remembered color.
Source#
Module:
mikasa_robo_suite.vla.memory_envs.gather_and_recall_vlaSource file:
mikasa_robo_suite/vla/memory_envs/gather_and_recall_vla.py
Difficulty and Parameters#
More cubes increase manipulation time and interference with cue memory.
Variants#
Env ID |
Horizon |
Data Source |
|---|---|---|
|
200 |
MP |
|
400 |
MP |
|
600 |
MP |
|
800 |
MP |
|
1000 |
MP |
Run Example#
import gymnasium as gym
import torch
import mikasa_robo_suite.vla.memory_envs # registers VLA env IDs
from mikasa_robo_suite.vla.utils.apply_wrappers import apply_mikasa_vla_wrappers
env = gym.make(
"GatherAndRecall1-VLA-v0",
num_envs=1,
obs_mode="rgb",
control_mode="pd_ee_delta_pose",
render_mode="all",
)
env = apply_mikasa_vla_wrappers(env)
obs, info = env.reset(seed=42)
for _ in range(env.max_episode_steps):
action = env.action_space.sample()
if not torch.is_tensor(action):
action = torch.as_tensor(action, device=env.unwrapped.device)
obs, reward, terminated, truncated, info = env.step(action)
env.close()
Dataset Collection#
Motion-planning MIKASA-Robo-90 variants use planner plus replay collection:
uv run python mikasa_robo_suite/vla/dataset_collectors/get_mikasa_robo_datasets_motion_planning.py \
--env-id GatherAndRecall1-VLA-v0 \
--path-to-save-data data_mikasa_robo \
--num-train-data 250 \
--max-attempts 5000 \
--seed 0
Render Videos#
Generate a fresh MP4/GIF render with:
uv run python utils/prepare_benchmark_demo_videos.py \
--tasks GatherAndRecall1-VLA-v0 \
--output-dir videos/benchmark_demos \
--max-attempts-per-task 8 \
--overwrite
Generated media stays under videos/ and should be published deliberately rather than committed by default.