mani_skill.agents.multi_agent ============================= .. py:module:: mani_skill.agents.multi_agent Attributes ---------- .. autoapisummary:: mani_skill.agents.multi_agent.T Classes ------- .. autoapisummary:: mani_skill.agents.multi_agent.MultiAgent Module Contents --------------- .. py:class:: MultiAgent(agents) Bases: :py:obj:`mani_skill.agents.base_agent.BaseAgent`, :py:obj:`Generic`\ [\ :py:obj:`T`\ ] Base class for agents/robots, forming an interface of an articulated robot (SAPIEN's physx.PhysxArticulation). Users implementing their own agents/robots should inherit from this class. A tutorial on how to build your own agent can be found in :doc:`its tutorial ` :param scene: simulation scene instance. :type scene: ManiSkillScene :param control_freq: control frequency (Hz). :type control_freq: int :param control_mode: uid of controller to use :type control_mode: str | None :param fix_root_link: whether to fix the robot root link :type fix_root_link: bool :param agent_idx: an index for this agent in a multi-agent task setup If None, the task should be single-agent :type agent_idx: str | None :param initial_pose: the initial pose of the robot. Important to set for GPU simulation to ensure robot :type initial_pose: sapien.Pose | Pose | None :param does not collide with other objects in the scene during GPU initialization which occurs before `env._initialize_episode` is called: .. py:method:: before_simulation_step() Code that runs before each simulation step. By default it calls the controller's before_simulation_step method. .. py:method:: get_controller_state() Get the state of the controller. .. py:method:: get_proprioception() Get the proprioceptive state of the agent, default is the qpos and qvel of the robot and any controller state. .. py:method:: reset(init_qpos=None) Reset the robot to a rest position or a given q-position .. py:method:: set_action(action) Set the agent's action which is to be executed in the next environment timestep .. py:method:: set_control_mode(control_mode = None) Set the controller, drive properties, and reset for each agent. If given control mode is None, will set defaults .. py:method:: set_controller_state(state) Set the state of the controller. .. py:attribute:: _sensor_config_agent_map :type: dict[str, int] .. py:property:: _sensor_configs :type: list[mani_skill.sensors.base_sensor.BaseSensorConfig] Returns a list of sensor configs for this agent. It contains the sensor configs of the individual agents. .. py:property:: action_space .. py:attribute:: agents :type: T .. py:attribute:: agents_dict :type: dict[str, mani_skill.agents.base_agent.BaseAgent] .. py:property:: control_mode Get the currently activated controller uid of each robot .. py:property:: controller Get currently activated controller. .. py:attribute:: scene .. py:attribute:: sensor_configs :value: [] .. py:property:: single_action_space .. py:data:: T