common¶

Module Contents¶

Classes¶

PolicySpec

FastNumpyNetwork

Three-layer MLP with tanh activations for deterministic replay.

Functions¶

num_network_params(→ int)

resolve_site_id(→ int)

get_actuated_joint_ids(→ list[int])

get_joint_state(→ tuple[numpy.ndarray, numpy.ndarray])

set_target_position(→ None)

build_observation(→ numpy.ndarray)

apply_position_delta_control(→ None)

build_model(→ tuple[mujoco.MjModel, mujoco.MjData, ...)

Attributes¶

NUM_JOINTS = 6¶
NUM_TUBES = 5¶
TUBE_MIN = 0.1¶
TUBE_MAX = 1.0¶
DEFAULT_TARGET¶
DEFAULT_SIM_STEPS = 3500¶
DEFAULT_CTRL_FREQ = 20¶
DEFAULT_TOUCH_THRESHOLD = 0.01¶
DEFAULT_ACTION_SCALE = 0.25¶
DEFAULT_MAX_DELTA = 0.12¶
class PolicySpec¶
input_size: int = 15¶
hidden_size: int = 32¶
output_size: int = 6¶
action_scale: float = 0.25¶
max_delta: float = 0.12¶
class FastNumpyNetwork(input_size: int, hidden_size: int, output_size: int, weights: numpy.ndarray)¶

Three-layer MLP with tanh activations for deterministic replay.

w1¶
b1¶
w2¶
b2¶
w3¶
b3¶
forward(x: numpy.ndarray) numpy.ndarray¶
num_network_params(spec: PolicySpec) int¶
resolve_site_id(model: mujoco.MjModel, base_name: str) int¶
get_actuated_joint_ids(model: mujoco.MjModel, count: int = NUM_JOINTS) list[int]¶
get_joint_state(model: mujoco.MjModel, data: mujoco.MjData, joint_ids: list[int]) tuple[numpy.ndarray, numpy.ndarray]¶
set_target_position(model: mujoco.MjModel, data: mujoco.MjData, target_site_id: int, target: numpy.ndarray) None¶
build_observation(model: mujoco.MjModel, data: mujoco.MjData, joint_ids: list[int], tcp_sid: int, tgt_sid: int) numpy.ndarray¶
apply_position_delta_control(model: mujoco.MjModel, data: mujoco.MjData, joint_ids: list[int], action: numpy.ndarray, action_scale: float, max_delta: float) None¶
build_model(tube_lengths: numpy.ndarray) tuple[mujoco.MjModel, mujoco.MjData, int, int, list[int]]¶