unilab.envs.manager_based_rl_env¶
Community-compatible manager lifecycle on UniLab’s NumPy runtime.
Functions
|
Construct the generic Registry-owned Manager-Based production runtime. |
Classes
alias of |
|
alias of |
|
Manager-Based API adapter that reuses the single |
|
Configuration for the manager-based NumPy environment. |
- unilab.envs.manager_based_rl_env.ManagerBasedRLEnv¶
alias of
ManagerBasedRlEnv
- unilab.envs.manager_based_rl_env.ManagerBasedRLEnvCfg¶
alias of
ManagerBasedRlEnvCfg
- class unilab.envs.manager_based_rl_env.ManagerBasedRlEnv[source]¶
Bases:
NpEnvManager-Based API adapter that reuses the single
NpEnvlifecycle.- Parameters:
cfg (
ManagerBasedRlEnvCfg)backend (
SimBackend)num_envs (
int)
- is_vector_env = True¶
- event_manager: EventManager¶
- command_manager: CommandManager | NullCommandManager¶
- action_manager: ActionManager¶
- observation_manager: ObservationManager¶
- termination_manager: TerminationManager¶
- reward_manager: RewardManager¶
- curriculum_manager: CurriculumManager | NullCurriculumManager¶
- metrics_manager: MetricsManager | NullMetricsManager¶
- recorder_manager: RecorderManager | NullRecorderManager¶
- __init__(cfg, backend, num_envs)[source]¶
- Parameters:
cfg (
ManagerBasedRlEnvCfg)backend (
SimBackend)num_envs (
int)
- obs_buf: dict[str, np.ndarray]¶
- extras: dict[str, Any]¶
- property obs_groups_spec: dict[str, int]¶
101}.
Subclasses MUST override this property.
- Type:
Return observation group dimensions, e.g. {“obs”
- Type:
98, “critic”
- property unwrapped: ManagerBasedRlEnv¶
- get_playback_debug_overlays()[source]¶
Aggregate playback overlays from command terms that provide one.
Terms opt in by implementing
playback_debug_overlay_getter(), which returns a per-frame getter following theunisim.backend.base.DebugOverlayGettercontract. The returned getter merges primitives per env across all providing terms. ReturnsNonewhen no term provides an overlay.- Return type:
DebugOverlayGetter | None
- step(actions)[source]¶
Step the environment with given actions, return new state
- Parameters:
actions (
ndarray)- Return type:
- apply_action(actions, state)[source]¶
Subclasses implement the action-to-control conversion.
- Parameters:
actions (
ndarray)state (
NpEnvState)
- Return type:
- update_state(state)[source]¶
Subclasses compute observation, reward, and termination state.
- Parameters:
state (
NpEnvState)- Return type:
- set_episode_length_buf(values)[source]¶
Overwrite per-env episode counters (cold path, runner-init only).
episode_length_bufmirrorsstate.info["steps"]: each step writesinfo["steps"] + 1into the buffer andreset()zeroes both, so a direct assignment must update the two together. RL runners (e.g. RSL-RLinit_at_random_ep_len) call this once before learning starts to stagger initial episode lengths across envs.
- class unilab.envs.manager_based_rl_env.ManagerBasedRlEnvCfg[source]¶
Bases:
EnvCfgConfiguration for the manager-based NumPy environment.
Production task owners declare these fields in Hydra. The Registry materializes them into this plain typed config on the cold path; Python factories do not mirror task-specific manager or term declarations.
- Parameters:
sim_dt (
float)ctrl_dt (
float)render_spacing (
float)render_offset_mode (
str)drake_backend_mode (
str)drake_nthread (
int)superdex_num_workers (
int)superdex_execution_mode (
str)superdex_allow_contact_approximation (
bool)post_step_forward_sensor (
bool)adaptive_chunk_size (
bool)newton_capacity_check_steps (
int)isaacsim_render_width (
int)isaacsim_render_height (
int)is_finite_horizon (
bool)auto_reset (
bool)scale_rewards_by_dt (
bool)policy_observation_group (
str)
- observations: dict[str, ObservationGroupCfg | None]¶
- actions: dict[str, ActionTermCfg | None]¶
- events: dict[str, EventTermCfg | None]¶
- rewards: dict[str, RewardTermCfg | None]¶
- terminations: dict[str, TerminationTermCfg | None]¶
- commands: dict[str, CommandTermCfg | None]¶
- curriculum: dict[str, CurriculumTermCfg | None]¶
- metrics: dict[str, MetricsTermCfg | None]¶
- recorders: dict[str, RecorderTermCfg | None]¶
- seed: int | None = None¶
- is_finite_horizon: bool = False¶
- auto_reset: bool = True¶
- scale_rewards_by_dt: bool = True¶
- policy_observation_group: str = 'policy'¶
- critic_observation_group: str | None = None¶
- __init__(scene=None, sim_dt=0.01, max_episode_seconds=None, ctrl_dt=0.01, render_spacing=1.0, render_offset_mode='grid', drake_backend_mode='batch', drake_nthread=0, superdex_num_workers=0, superdex_execution_mode='batch', superdex_assets_root=None, superdex_effort_limits=None, superdex_allow_contact_approximation=False, motrix_max_iterations=None, post_step_forward_sensor=False, adaptive_chunk_size=True, chunk_size=None, cpu_ids=None, mjwarp_nconmax=None, mjwarp_njmax=None, newton_device=None, newton_nconmax=None, newton_njmax=None, newton_capacity_check_steps=1, isaacgym_device_id=None, isaacgym_worker_timeout_s=None, genesis_device_id=None, genesis_integrator=None, genesis_constraint_solver=None, genesis_friction_cone=None, genesis_solver_iterations=None, isaacsim_device_id=None, isaacsim_worker_timeout_s=None, isaacsim_render_mode=None, isaacsim_render_width=1280, isaacsim_render_height=720, observations=<factory>, actions=<factory>, events=<factory>, rewards=<factory>, terminations=<factory>, commands=<factory>, curriculum=<factory>, metrics=<factory>, recorders=<factory>, seed=None, is_finite_horizon=False, auto_reset=True, scale_rewards_by_dt=True, policy_observation_group='policy', critic_observation_group=None)¶
- Parameters:
sim_dt (
float)ctrl_dt (
float)render_spacing (
float)render_offset_mode (
str)drake_backend_mode (
str)drake_nthread (
int)superdex_num_workers (
int)superdex_execution_mode (
str)superdex_allow_contact_approximation (
bool)post_step_forward_sensor (
bool)adaptive_chunk_size (
bool)newton_capacity_check_steps (
int)isaacsim_render_width (
int)isaacsim_render_height (
int)is_finite_horizon (
bool)auto_reset (
bool)scale_rewards_by_dt (
bool)policy_observation_group (
str)
- unilab.envs.manager_based_rl_env.make_manager_based_rl_env(cfg, num_envs=1, backend_type='mujoco')[source]¶
Construct the generic Registry-owned Manager-Based production runtime.
- Parameters:
cfg (
ManagerBasedRlEnvCfg)num_envs (
int)backend_type (
str)
- Return type: