Stack#
Task key: stack.
stack is a single-arm baseline task. Three cubes are spawned and the agent
must stack them into a tower: A (red) at the bottom, B (blue) in the middle,
and C (green) on top.
Goal#
Stack the three cubes into a stable tower (A, then B, then C).
Quickstart#
import dexsuite as ds
env = ds.make(
"stack",
manipulator="franka",
gripper="robotiq",
arm_control="osc_pose",
gripper_control="joint_position",
render_mode="human",
)
obs, info = env.reset()
obs, reward, terminated, truncated, info = env.step(env.action_space.sample())
env.close()
Task Entities#
cube_a: bottom cube (red).cube_b: middle cube (blue).cube_c: top cube (green).
Extra Observations#
Stack adds (under obs["state"]["other"]):
cube_a_pos,cube_b_pos,cube_c_pos(each shape(n_envs, 3))cube_a_quat,cube_b_quat,cube_c_quat(each shape(n_envs, 4), wxyz)
Termination#
Success: cube B is placed on cube A, and cube C is placed on cube B (within tolerances).
Failure: none beyond horizon truncation.
Truncation: episode reaches the horizon.
Simulation Settings#
SIM_DT = 0.01SUBSTEPS = 1HORIZON = 600control steps
Source#
Dexsuite/dexsuite/environments/single/baselines/stack.py