unilab.tasks.locomotion.go2w.manager_terms.Go2WMixedAction

class unilab.tasks.locomotion.go2w.manager_terms.Go2WMixedAction[source]

Bases: ActionTerm

Convert one community action term into Go2W motor torques per substep.

Parameters:

Methods

__init__(cfg, env)

apply_actions()

process_actions(actions)

reset([env_ids])

Resets the manager term.

set_motor_gain_multipliers(env_ids, ...)

Attributes

action_dim

leg_kd

leg_kp

motor_torque

name

num_envs

previous_raw_action

processed_action

raw_action

Clipped policy action, matching the legacy observable action buffer.

requires_substep_state_feedback

Whether apply_actions needs state produced by the previous physics substep.

cfg

requires_substep_state_feedback: ClassVar[bool] = True

Whether apply_actions needs state produced by the previous physics substep.

False declares that the generated control is invariant across all physics substeps in one control step, so the env may apply it once before a batched backend step. State-feedback terms must override this declaration with True.

cfg: Go2WMixedActionCfg
__init__(cfg, env)[source]
Parameters:
property action_dim: int
property raw_action: ndarray

Clipped policy action, matching the legacy observable action buffer.

property previous_raw_action: ndarray
property processed_action: ndarray
property motor_torque: ndarray
property leg_kp: ndarray
property leg_kd: ndarray
process_actions(actions)[source]
Parameters:

actions (ndarray)

Return type:

None

apply_actions()[source]
Return type:

None

set_motor_gain_multipliers(env_ids, kp_multiplier, kd_multiplier)[source]
Parameters:
Return type:

None

reset(env_ids=None)[source]

Resets the manager term.

Parameters:

env_ids (ndarray | slice | None)

Return type:

None

__call__(*args, **kwargs)

Returns the value of the term required by the manager.

Return type:

Any

property name: str
property num_envs: int