Exemplo n.º 1
0
 def __init__(self, goal_direction=None):
     self.goal_direction = goal_direction if goal_direction else 1.0
     MujocoEnv.__init__(self, 'ant.xml', 5)
     gym.utils.EzPickle.__init__(self)
 def __init__(self, task=None):
     MetaEnv.__init__(self, task)
     MujocoEnv.__init__(self, 'humanoid.xml', 5)
     gym.utils.EzPickle.__init__(self)
Exemplo n.º 3
0
 def __init__(self):
     self.set_task(self.sample_tasks(1)[0])
     MujocoEnv.__init__(self, 'swimmer.xml', 4)
     gym.utils.EzPickle.__init__(self)
Exemplo n.º 4
0
 def __init__(self):
     self.goal = np.ones((3, ))
     MujocoEnv.__init__(
         self, os.path.join(os.path.dirname(__file__), "assets", "pr2.xml"),
         2)
     gym.utils.EzPickle.__init__(self)
Exemplo n.º 5
0
 def __init__(self):
     MujocoEnv.__init__(self, 'humanoid.xml', 5)
     gym.utils.EzPickle.__init__(self)
Exemplo n.º 6
0
 def __init__(self):
     utils.EzPickle.__init__(self)
     MujocoEnv.__init__(self, 'inverted_pendulum.xml', 2)
Exemplo n.º 7
0
    def __init__(self,
                 #goal=(0, -1),
                 eef_to_puck_distance_cost_coeff=0,
                 goal_to_puck_distance_cost_coeff=1.0,
                 ctrl_cost_coeff=0.1,
                 puck_initial_x_range=(0, 1),
                 puck_initial_y_range=(-1, -0.5),
                 goal_x_range=(-1, 0),
                 goal_y_range=(-1, 1),
                 num_goals=-1,
                 swap_goal_upon_completion=True,
                 reset_mode="random",
                 initial_distribution_path="",
                 goal_mode="random",
                 goal_sampling_radius_increment=0,
    ):
        """
        goal (`list`): List of two elements denoting the x and y coordinates of
            the goal location. Either of the coordinate can also be a string
            'any' to make the reward not to depend on the corresponding
            coordinate.
        arm_distance_coeff ('float'): Coefficient for the arm-to-object distance
            cost.
        goal_distance_coeff ('float'): Coefficient for the object-to-goal
            distance cost.
        goal_mode ('string'): Scheme for goal sampling.
            - "random", randomly sample a goal within the goal range
            - "curriculum-radius", sample a goal from a gradually increasing
                                   region around the puck
        """
        self._Serializable__initialize(locals())

        self._eef_to_puck_distance_cost_coeff = eef_to_puck_distance_cost_coeff
        self._goal_to_puck_distance_cost_coeff = goal_to_puck_distance_cost_coeff
        self._ctrl_cost_coeff = ctrl_cost_coeff
        self._first_step = True

        self._puck_initial_x_range = puck_initial_x_range
        self._puck_initial_y_range = puck_initial_y_range
        self._goal_x_range = goal_x_range
        self._goal_y_range = goal_y_range
        self._num_goals = num_goals
        self._swap_goal_upon_completion = swap_goal_upon_completion

        # For multigoal setting, sample goals
        if self._num_goals > 0:
            self._goals = list(np.random.uniform(
                low=(goal_x_range[0], goal_y_range[0]),
                high=(goal_x_range[1], goal_y_range[1]),
                size=(num_goals, 2)
            ))
            if self._swap_goal_upon_completion:
                self._current_goal_index = 0
        else:
            self._swap_goal_upon_completion = False

        self._reset_mode = reset_mode
        if self._reset_mode == "distribution":
            self._init_states = self._get_init_pool(initial_distribution_path)

        self._goal_mode = goal_mode
        if self._goal_mode == "curriculum-radius":
            self.goal_sampling_radius = 0
            self._goal_sampling_radius_increment = goal_sampling_radius_increment

        MujocoEnv.__init__(self, model_path=self.MODEL_PATH, frame_skip=5)
        self.model.stat.extent = 10

        self._last_qpos = np.concatenate([
            self.sim.data.qpos.flat[self.QPOS_JOINT_INDS].copy(),
            [np.mean(puck_initial_x_range), np.mean(puck_initial_y_range)],
            self.init_qpos.squeeze()[self.QPOS_GOAL_INDS],
        ])
Exemplo n.º 8
0
 def __init__(self):
     MujocoEnv.__init__(self, 'hopper.xml', 4)
     gym.utils.EzPickle.__init__(self)
Exemplo n.º 9
0
 def __init__(self, file_path: str, frame_skip: int) -> None:
     MujocoEnv.__init__(self, file_path, frame_skip)
     EzPickle.__init__(self)